中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

docker容器監控的實現方法

發布時間:2021-07-08 17:33:04 來源:億速云 閱讀:374 作者:chen 欄目:大數據

本篇內容主要講解“docker容器監控的實現方法”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“docker容器監控的實現方法”吧!

本文寫于2015年,所有PAAS平臺相關內容都已經在2015Q3完成,當時使用的docker版本為1.6.2,雖然docker新版本發布很快,但是下面提到的監控相關的內容大致相同。

一、 docker容器有哪些指標需要監控?

  • 容器CPU、內存、IO、網絡、應用存活

二、 如何監控?

宿主機監控 zabbix可以實現,容器內部安裝zabbix?
(數據和宿主機一致,無法反應容器真實狀態)
看別人都如何實現?
Searching GitHub…

  • seagull
    可以查看、啟停容器,管理鏡像,但不支持查看容器使用CPU、內存、IO、網絡等情況。

  • Prometheus
    太龐大

  • Docker官方stats接口
    要求docker在1.5以上版本,有命令行和API兩種方式,API為非中斷式,不停的顯示數據

  • Docker-mon
    命令行工具,1.5以上版本,展示效果很好,但數據無法匯總,也無法查看歷史數據

  • Dockernana
    可以對docker宿主進行日常cpu、內存、IO進行監控,但無法監控容器的資源使用。

  • cAdvisor
    可以查看容器對CPU、內存、磁盤的使用情況,WEB界面方式,缺點是每個宿主都要起個容器,而且數據無法匯總,無法查看歷史數據。

圖1:Docker-mon
docker容器監控的實現方法
圖2:cAdvisor
docker容器監控的實現方法
最終腳本如下:

  1. a1_user=`cat /cgroup/cpuacct/docker/$i/cpuacct.stat | grep user |awk '{print $2}'`

  2. a1_sys=`cat /cgroup/cpuacct/docker/$i/cpuacct.stat | grep sys | awk '{print $2}'`

  3. sleep 5

  4. a2_user=`cat /cgroup/cpuacct/docker/$i/cpuacct.stat | grep user |awk '{print $2}'`

  5. a2_sys=`cat /cgroup/cpuacct/docker/$i/cpuacct.stat | grep sys | awk '{print $2}'`

  6.  

  7. cpuall=$((a2_user + a2_sys - a1_user - a1_sys))

  8. CPUSTAT=`echo "scale=2;$cpuall/5/100">

內存
  1. #@當前使用內存除以最大內存限制

  2. [root@BJ-YF-64-7 ~]#cat /cgroup/memory/docker/$DOCKERID/memory.limit_in_bytes

  3. 1073741824

  4. [root@BJ-YF-64-7 ~]#cat /cgroup/memory/docker/$DOCKERID/memory.usage_in_bytes

  5. 186269696

網絡流量
  1. #@根據容器PID來獲取該進程的網絡狀態

  2. PID=`docker inspect -f '{{.State.Pid}}' $i`

  3. a1_rx=`cat /proc/$PID/net/dev | grep eth2 |awk '{print $2}'`

網絡連接數
  1. #@根據容器PID來獲取該進程的網絡狀態

  2. cat /proc/$PID/net/tcp

四、 初步展示shell+InfluxDB+Grafana

使用Shell打印結果:
docker容器監控的實現方法
使用InfluxDB+ Grafana展示結果:
docker容器監控的實現方法

五、 接入Zabbix

數據展示問題解決了,那數據報警呢? Zabbix
Zabbix一臺宿主機有N張圖,容器1CPU、容器1內存、容器2CPU…
數據獲取很復雜,很困難

每個容器都運行Zabbix
數據通過shell腳本打印到容器在宿主的映射目錄
docker容器監控的實現方法
歷史趨勢圖

到此,相信大家對“docker容器監控的實現方法”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

丹巴县| 法库县| 德格县| 股票| 襄垣县| 密云县| 忻州市| 左贡县| 冕宁县| 河津市| 乳源| 武冈市| 临清市| 大名县| 漯河市| 崇文区| 南召县| 霍城县| 乐安县| 罗城| 寿光市| 台北县| 望都县| 宁南县| 毕节市| 油尖旺区| 调兵山市| 万盛区| 珠海市| 新野县| 招远市| 兰西县| 威宁| 天水市| 隆林| 梁山县| 长兴县| 藁城市| 长顺县| 吉林省| 佛坪县|