前言:生產環境中監控容器的運行狀況十分重要,通過監控我們可以隨時掌握容器的運行狀態,做到線上隱患和問題早發現,早解決。
1、docker stats命令
docker stats nginx
2、cAdvisor監控
cAdvisor 是谷歌開源的一款通用的容器監控解決方案。cAdvisor 不僅可以採集機器上所有運行的容器信息,還提供了基礎的查詢界面和 HTTP 接口,更方便與外部系統結合。
所以,cAdvisor很快成了容器指標監控最常用組件,並且 Kubernetes 也集成了 cAdvisor 作爲容器監控指標的默認工具。
1、安裝鏡像
docker pull google/cadvisor
2、運行容器
docker run \
--volume=/:/rootfs:ro \
--volume=/var/run:/var/run:ro \
--volume=/sys:/sys:ro \
--volume=/var/lib/docker/:/var/lib/docker:ro \
--publish=8080:8080 \
--detach=true \
--name=cadvisor \
google/cadvisor
此時,cAdvisor 已經成功啓動,我們可以通過訪問http://localhost:8080 訪問到 cAdvisor 的 Web 界面。
訪問 http://localhost:8080/containers/ 地址,在首頁可以看到主機的資源使用情況,包含 CPU、內存、文件系統、網絡等資源。
如果你想要查看主機上運行的容器資源使用情況,可以訪問 http://localhost:8080/docker/,這個頁面會列出 Docker 的基本信息和運行的容器情況。
3、Prometheus監控
cAdvisor 已經內置了對 prometheus 的支持,我們只需要訪問http://localhost:8080/metrics
即可以獲取到標準的 prometheus 監控樣本的輸出。
修改prometheus.yml文件
- job_name: docker_cadvisor
static_configs:
- targets: ['192.168.56.10:8088']