Prometheus監(jiān)控docker容器運行狀態(tài),我們用到cadvisor服務(wù),cadvisor我們這里也采用docker方式直接運行。這里我們可以服務(wù)端和客戶端都使用cadvisor
客戶端
1.下載鏡像
[root@localhost opt]# docker pull google/cadvisor
2.運行
[root@localhost opt]# docker run \
--volume=/:/rootfs:ro \
--volume=/var/run:/var/run:ro \
--volume=/sys:/sys:ro \
--volume=/var/lib/docker/:/var/lib/docker:ro \
--volume=/dev/disk/:/dev/disk:ro \
--volume=/cgroup:/cgroup:ro \
--privileged=true \
--publish=9101:8080 \
--detach=true \
--name=cadvisor \
google/cadvisor
注意:這里是把容器8080端口映射到主機9101,cadvisor有web界面地址:http://IP:9101
服務(wù)端
1.安裝cadvisor,同客戶端
2.配置 Prometheus 添加docker容器監(jiān)控目標(biāo)
[root@prometheus-server ~]# vim /etc/prometheus/prometheus.yml
### 新增對對docker容器的監(jiān)控
- job_name: 'docker'
static_configs:
- targets: ['192.168.229.138:9101','192.168.229.139:9101'] ## 目標(biāo)主機
3.重啟prometheus
[root@localhost opt]# systemctl restart prometheus
4.瀏覽器訪問Prometheus Status > targets

image.png
5.下載模板
地址:https://grafana.com/dashboards/4170

image.png
6.修改Variables
因為我們在prometheus.yml 新增的 job_name是docker,所以修改如下

image.png
7.接入Grafana展示容器監(jiān)控數(shù)據(jù)
我們可以看到容器的內(nèi)存信息,如下圖所示:

image.png
注意:模板有些值并不適用,比如CPU的值并沒有取到,我們需要修改對應(yīng)的值,具體我們也可以通過Prometheus查詢界面確定value值。也就是說,我們必須要在Prometheus界面查詢到值才可以展示。這里不作具體介紹。
歡迎關(guān)注微信公眾號:軟件測試汪。軟件測試交流群:809111560
轉(zhuǎn)載請注意出處,謝謝合作