最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

【云原生 ? Docker】cAdvisor+Prometheus+Grafana 10分鐘搞定Docker容器監(jiān)控平臺(tái)

2023-03-26 00:47 作者:34895505520_bili  | 我要投稿

10分鐘搞定Docker容器監(jiān)控平臺(tái)

cAdvisor(Container Advisor)Google 開源的一個(gè)容器監(jiān)控工具,可用于對(duì)容器資源的使用情況和性能進(jìn)行監(jiān)控。用于收集、聚合、處理和導(dǎo)出正在運(yùn)行容器的有關(guān)信息。具體來說,該組件對(duì)每個(gè)容器都會(huì)記錄其資源隔離參數(shù)、歷史資源使用情況、完整歷史資源使用情況的直方圖和網(wǎng)絡(luò)統(tǒng)計(jì)信息。cAdvisor 本身就對(duì) Docker 容器支持,并且還對(duì)其它類型的容器盡可能的提供支持,力求兼容與適配所有類型的容器。

由以上介紹我們可以知道,cAdvisor 是用于監(jiān)控容器引擎的,由于其監(jiān)控的實(shí)用性,Kubernetes 已經(jīng)默認(rèn)將其與 Kubelet 融合作為容器監(jiān)控指標(biāo)的默認(rèn)工具,所以,對(duì)于云原生集群直接使用 Kubelet 組件提供的指標(biāo)采集地址即可。

cAdvisor部署

1、使用以下命令安裝啟動(dòng)cAdvisor組件

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?\
??google/cadvisor:latest

2、此時(shí),cAdvisor組件已經(jīng)啟動(dòng),我們可以使用瀏覽器訪問 http://自己IP地址:8080 訪問到cAdvisor組件Web UI

3、而在多主機(jī)的情況下,在所有節(jié)點(diǎn)上運(yùn)行一個(gè)cAdvisor再通過各自的Web UI查看監(jiān)控信息顯然不太方便,同時(shí)cAdvisor默認(rèn)只保存2分鐘的監(jiān)控?cái)?shù)據(jù)。好消息是cAdvisor已經(jīng)內(nèi)置了對(duì)Prometheus的支持。訪問http://自己的IP地址:8080/metrics即可獲取到標(biāo)準(zhǔn)的Prometheus監(jiān)控樣本輸出:

4、下面表格中列舉了一些cAdvisor中獲取到的典型監(jiān)控指標(biāo):

指標(biāo)名稱類型含義container_cpu_load_average_10sgauge過去10秒容器CPU的平均負(fù)載container_cpu_usage_seconds_totalcounter容器在每個(gè)CPU內(nèi)核上的累積占用時(shí)間 (單位:秒)container_cpu_system_seconds_totalcounterSystem CPU累積占用時(shí)間(單位:秒)container_cpu_user_seconds_totalcounterUser CPU累積占用時(shí)間(單位:秒)container_fs_usage_bytesgauge容器中文件系統(tǒng)的使用量(單位:字節(jié))container_fs_limit_bytesgauge容器可以使用的文件系統(tǒng)總量(單位:字節(jié))container_fs_reads_bytes_totalcounter容器累積讀取數(shù)據(jù)的總量(單位:字節(jié))container_fs_writes_bytes_totalcounter容器累積寫入數(shù)據(jù)的總量(單位:字節(jié))container_memory_max_usage_bytesgauge容器的最大內(nèi)存使用量(單位:字節(jié))container_memory_usage_bytesgauge容器當(dāng)前的內(nèi)存使用量(單位:字節(jié)container_spec_memory_limit_bytesgauge容器的內(nèi)存使用量限制machine_memory_bytesgauge當(dāng)前主機(jī)的內(nèi)存總量container_network_receive_bytes_totalcounter容器網(wǎng)絡(luò)累積接收數(shù)據(jù)總量(單位:字節(jié))container_network_transmit_bytes_totalcounter容器網(wǎng)絡(luò)累積傳輸數(shù)據(jù)總量(單位:字節(jié))

Prometheus部署

1、創(chuàng)建prometheus存儲(chǔ)數(shù)據(jù)外掛目錄,避免容器重啟丟失:

mkdir?-p?/disk/docker-monitor/prometheus/data
chmod?777?/disk/docker-monitor/prometheus/data

2、prometheus配置文件外掛出來,方便修改,vi /disk/docker-monitor/prometheus/prometheus.yml

global:
??scrape_interval:?15s
??evaluation_interval:?15s?

alerting:
??alertmanagers:
????-?static_configs:
????????-?targets:
??????????#?-?alertmanager:9093

rule_files:
??-?rule/record/*.yml

scrape_configs:
??-?job_name:?"prometheus"
????static_configs:
??????-?targets:?["localhost:9090"]
??-?job_name:?"cadvisor"
????static_configs:
??????-?targets:?["124.222.45.207:8080"]

?

job_name: "prometheus"配置抓取Prometheus自身相關(guān)指標(biāo);

job_name: "cadvisor"配置抓取之前配置的cAdvisor組件指標(biāo)。

?

3、Docker部署Prometheus

docker?run?-d?-p?9090:9090?--name?prometheus?\
????-v?/disk/docker-monitor/prometheus/conf:/opt/bitnami/prometheus/conf?\
????-v?/disk/docker-monitor/prometheus/data:/opt/bitnami/prometheus/data?\
????bitnami/prometheus:2.42.0?\
????--web.enable-lifecycle?--web.enable-admin-api\
????--config.file=/opt/bitnami/prometheus/conf/prometheus.yml\
????--storage.tsdb.path=/opt/bitnami/prometheus/data

?

--web.enable-lifecycle --web.enable-admin-api提供rest api接口方式管理prometheus,比如配置熱加載:curl -XPOST http://localhost:9090/-/reload。

注意:這里將prometheus配置文件和存儲(chǔ)目錄外掛出來,避免容器重啟后數(shù)據(jù)丟失。

?

4、Prometheus啟動(dòng)完成后,瀏覽器訪問:

訪問Status -> Targets頁面,發(fā)現(xiàn)配置的兩個(gè)抓取Job已經(jīng)顯示,并且State是綠色UP,則接入成功。

5、當(dāng)能夠正常采集到cAdvisor的樣本數(shù)據(jù)后,可以通過以下表達(dá)式計(jì)算容器的CPU使用率sum(irate(container_cpu_usage_seconds_total{image!=""}[1m])) without (cpu)

Grafana部署

1、部署Grafana

docker?run?-d?--name=grafana?-p?3000:3000?-v?grafana:/var/lib/grafana?grafana/grafana

?

/var/lib/grafana路徑外掛出來,該目錄存儲(chǔ)Grafana插件、數(shù)據(jù)信息,避免Docker容器重啟數(shù)據(jù)丟失。

?

2、訪問:http://自己的IP:3000/login,輸入賬號(hào)admin/admin

3、創(chuàng)建Prometheus類型數(shù)據(jù)源,指向剛才搭建的Prometheus

4、導(dǎo)入Docker容器監(jiān)控面板,這里使用11277

5、監(jiān)控面板就可以看到Docker容器運(yùn)行情況,如下圖,當(dāng)前運(yùn)行中容器有4個(gè),總占用內(nèi)存319MB,總CPU使用率大概1.84%,并以曲線方式展示每個(gè)容器的CPU使用率、內(nèi)存使用率、網(wǎng)絡(luò)IO和磁盤IO等。

[更多云原生監(jiān)控運(yùn)維,請(qǐng)關(guān)注微信公眾號(hào):Reactor2020]


【云原生 ? Docker】cAdvisor+Prometheus+Grafana 10分鐘搞定Docker容器監(jiān)控平臺(tái)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
育儿| 霍城县| 大丰市| 龙海市| 和静县| 临城县| 哈密市| 雷波县| 利津县| 鹤岗市| 保定市| 治县。| 屏南县| 逊克县| 兴和县| 临沧市| 深圳市| 杨浦区| 昌平区| 宁国市| 宜丰县| 洛宁县| 黔南| 长岛县| 重庆市| 汉沽区| 济南市| 怀柔区| 侯马市| 陆丰市| 鞍山市| 靖安县| 武义县| 团风县| 沐川县| 富蕴县| 青河县| 徐闻县| 兴安县| 孝昌县| 新密市|