docker服務(wù)監(jiān)控中的cAdvisor詳解
概述
cAdvisor(Container Advisor)是谷歌開源的一款容器資源監(jiān)控工具,它可以收集容器的 CPU、內(nèi)存、磁盤 I/O、網(wǎng)絡(luò)等資源使用情況的信息,并提供了一個直觀的 Web 界面來展示這些數(shù)據(jù),方便用戶快速了解容器的運行狀態(tài)。
特點
資源監(jiān)控:能實時監(jiān)控容器的各項資源使用情況,包括 CPU 使用率、內(nèi)存使用量、磁盤讀寫速率、網(wǎng)絡(luò)帶寬等。例如,通過它可以查看某個容器是否占用了過多的 CPU 資源,導(dǎo)致其他容器運行緩慢。
容器拓撲結(jié)構(gòu)展示:可以展示容器之間的關(guān)系以及它們與宿主機的關(guān)系,使用戶清晰地了解容器的部署情況。
歷史數(shù)據(jù)存儲與查詢:支持將監(jiān)控數(shù)據(jù)存儲到后端數(shù)據(jù)庫中,如 InfluxDB,以便用戶查詢歷史數(shù)據(jù),分析容器資源使用的趨勢。
支持多種運行環(huán)境:不僅支持 Docker 容器,還能用于其他容器化技術(shù),如 runc、systemd-nspawn 等,具有很強的通用性。
工作原理
cAdvisor 通過收集宿主機和容器的相關(guān)信息來實現(xiàn)監(jiān)控功能。它利用了 Linux 系統(tǒng)的 cgroups(控制組)來獲取容器的資源使用數(shù)據(jù)。cgroups 為每個容器分配了獨立的資源限制和統(tǒng)計信息,cAdvisor 通過讀取這些信息來了解容器對 CPU、內(nèi)存、磁盤等資源的使用情況。同時,它還利用了 Linux 的網(wǎng)絡(luò)協(xié)議棧來收集網(wǎng)絡(luò)相關(guān)的統(tǒng)計數(shù)據(jù)。
部署cAdvisor監(jiān)控Docker
這里不要使用Google的cadvisor,否則會報
F0501 07:18:47.974792 1 cadvisor.go:146] Failed to create a Container Manager: mountpoint for cpu not found
我這里使用lagoudocker/cadvisor:v0.37.0
解決的
# 運行容器 [root@lb ~]# 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 \ --publish=8080:8080 \ --detach=true \ --name=cadvisor \ --privileged \ --device=/dev/kmsg \ lagoudocker/cadvisor:v0.37.0 # 查看 [root@lb ~]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES b1d70b85c056 lagoudocker/cadvisor:v0.37.0 "/usr/bin/cadvisor -…" 6 seconds ago Up 6 seconds (health: starting) 0.0.0.0:8080->8080/tcp, [::]:8080->8080/tcp cadvisor
直接訪問http://10.0.0.10:8080/
到此這篇關(guān)于docker服務(wù)監(jiān)控中的cAdvisor詳解的文章就介紹到這了,更多相關(guān)docker服務(wù)監(jiān)控cAdvisor內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Docker網(wǎng)絡(luò)配置(橋接網(wǎng)絡(luò)和自定義網(wǎng)絡(luò))自定義網(wǎng)絡(luò)設(shè)置ip方式
這篇文章主要介紹了Docker網(wǎng)絡(luò)配置(橋接網(wǎng)絡(luò)和自定義網(wǎng)絡(luò))自定義網(wǎng)絡(luò)設(shè)置ip方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01Docker安裝Tomcat、MySQL和Redis的步驟詳解
這篇文章主要介紹了Docker安裝Tomcat、MySQL和Redis的步驟詳解,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-11-11Docker 安裝 Nginx 并掛載目錄的實現(xiàn)示例
本文介紹了如何使用Docker拉取Nginx鏡像、創(chuàng)建容器,并設(shè)置掛載目錄,掛載目錄用于將容器內(nèi)配置文件與主機關(guān)聯(lián),便于直接修改影響容器配置,感興趣的可以了解一下2024-10-10