在被监控机上安装Node_Exporter后,配置监控机上的Prometheus.yml
内容如下:
- job_name: 'node_exporter'
static_configs:
- targets: ['ip:9100']
配置完毕后,重新加载配置文件
可以使用该命令,PID为Prometheus的进程ID
$ kill HUP PID
【PID如何获得?
$ ps -ef | grep prometheus
$ docker top CONTAINERID #CONTAINERID为docker容器中的进程ID,用命令docker ps查看
】
但是仍然没有生效,prometheus的Targets上面没有显示Node_Exporter
于是查看docker日志
$ docker logs CONTAINERID
发现程序读取的是docker容器内的yml文件,而我一直修改的本机安装的yml文件
解决办法:
1 映射,将docker容器外已修改好的yml文件映射到docker容器内的yml文件
2 docker内有vi编辑器的话,可以直接在docker容器内修改
进入容器命令
$ docker exec -it CONTAINERID sh#sh部分也可以替换为bash或/bin/sh,博主使用sh才进的去
修改yml文件后,重新加载yml文件,即可
参考文档:
https://www.wulaoer.org/?p=1265