本篇內(nèi)容主要講解“docker容器監(jiān)控的實(shí)現(xiàn)方法”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“docker容器監(jiān)控的實(shí)現(xiàn)方法”吧!
創(chuàng)新互聯(lián)專注于企業(yè)成都營(yíng)銷網(wǎng)站建設(shè)、網(wǎng)站重做改版、荷塘網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5建站、商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為荷塘等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
本文寫于2015年,所有PAAS平臺(tái)相關(guān)內(nèi)容都已經(jīng)在2015Q3完成,當(dāng)時(shí)使用的docker版本為1.6.2,雖然docker新版本發(fā)布很快,但是下面提到的監(jiān)控相關(guān)的內(nèi)容大致相同。
容器CPU、內(nèi)存、IO、網(wǎng)絡(luò)、應(yīng)用存活
宿主機(jī)監(jiān)控 zabbix可以實(shí)現(xiàn),容器內(nèi)部安裝zabbix?
(數(shù)據(jù)和宿主機(jī)一致,無(wú)法反應(yīng)容器真實(shí)狀態(tài))
看別人都如何實(shí)現(xiàn)?
Searching GitHub…
seagull
可以查看、啟停容器,管理鏡像,但不支持查看容器使用CPU、內(nèi)存、IO、網(wǎng)絡(luò)等情況。Prometheus
太龐大Docker官方stats接口
要求docker在1.5以上版本,有命令行和API兩種方式,API為非中斷式,不停的顯示數(shù)據(jù)Docker-mon
命令行工具,1.5以上版本,展示效果很好,但數(shù)據(jù)無(wú)法匯總,也無(wú)法查看歷史數(shù)據(jù)Dockernana
可以對(duì)docker宿主進(jìn)行日常cpu、內(nèi)存、IO進(jìn)行監(jiān)控,但無(wú)法監(jiān)控容器的資源使用。cAdvisor
可以查看容器對(duì)CPU、內(nèi)存、磁盤的使用情況,WEB界面方式,缺點(diǎn)是每個(gè)宿主都要起個(gè)容器,而且數(shù)據(jù)無(wú)法匯總,無(wú)法查看歷史數(shù)據(jù)。
圖1:Docker-mon
圖2:cAdvisor
最終腳本如下:
a1_user=`cat /cgroup/cpuacct/docker/$i/cpuacct.stat | grep user |awk '{print $2}'`
a1_sys=`cat /cgroup/cpuacct/docker/$i/cpuacct.stat | grep sys | awk '{print $2}'`
sleep 5
a2_user=`cat /cgroup/cpuacct/docker/$i/cpuacct.stat | grep user |awk '{print $2}'`
a2_sys=`cat /cgroup/cpuacct/docker/$i/cpuacct.stat | grep sys | awk '{print $2}'`
cpuall=$((a2_user + a2_sys - a1_user - a1_sys))
CPUSTAT=`echo "scale=2;$cpuall/5/100">
#@當(dāng)前使用內(nèi)存除以最大內(nèi)存限制
[root@BJ-YF-64-7 ~]#cat /cgroup/memory/docker/$DOCKERID/memory.limit_in_bytes
1073741824
[root@BJ-YF-64-7 ~]#cat /cgroup/memory/docker/$DOCKERID/memory.usage_in_bytes
186269696
#@根據(jù)容器PID來(lái)獲取該進(jìn)程的網(wǎng)絡(luò)狀態(tài)
PID=`docker inspect -f '{{.State.Pid}}' $i`
a1_rx=`cat /proc/$PID/net/dev | grep eth2 |awk '{print $2}'`
#@根據(jù)容器PID來(lái)獲取該進(jìn)程的網(wǎng)絡(luò)狀態(tài)
cat /proc/$PID/net/tcp
使用Shell打印結(jié)果:
使用InfluxDB+ Grafana展示結(jié)果:
數(shù)據(jù)展示問(wèn)題解決了,那數(shù)據(jù)報(bào)警呢? Zabbix
Zabbix一臺(tái)宿主機(jī)有N張圖,容器1CPU、容器1內(nèi)存、容器2CPU…
數(shù)據(jù)獲取很復(fù)雜,很困難
每個(gè)容器都運(yùn)行Zabbix
數(shù)據(jù)通過(guò)shell腳本打印到容器在宿主的映射目錄
歷史趨勢(shì)圖
到此,相信大家對(duì)“docker容器監(jiān)控的實(shí)現(xiàn)方法”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
新聞名稱:docker容器監(jiān)控的實(shí)現(xiàn)方法
當(dāng)前網(wǎng)址:http://muchs.cn/article28/jcpscp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、響應(yīng)式網(wǎng)站、用戶體驗(yàn)、電子商務(wù)、做網(wǎng)站、靜態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)