數據收集利器 cAdvisor - 每天5分鐘玩轉 Docker 容器技術(82)

2021-12-28 CloudMan

cAdvisor 是 google 開發的容器監控工具,我們來看看 cAdvisor 有什麼能耐。

在 host 中運行 cAdvisor 容器。

docker run \

  --volume=/:/rootfs:ro \

  --volume=/var/run:/var/run:rw \

  --volume=/sys:/sys:ro \

  --volume=/var/lib/docker/:/var/lib/docker:ro \

  --publish=8080:8080 \

  --detach=true \

  --name=cadvisor \

  google/cadvisor:latest

通過 http://[Host_IP]:8080 訪問 cAdvisor。

監控 Docker Host

cAdvisor 會顯示當前 host 的資源使用情況,包括 CPU、內存、網絡、文件系統等。






監控容器

點擊 Docker Containers 連結。

顯示容器列表。

點擊某個容器,比如 sysdig,進入該容器的監控頁面。





以上就是 cAdvisor 的主要功能,總結起來主要兩點:

展示 Host 和容器兩個層次的監控數據。

展示歷史變化數據。

由於 cAdvisor 提供的操作界面略顯簡陋,而且需要在不同頁面之間跳轉,並且只能監控一個 host,這不免會讓人質疑它的實用性。但 cAdvisor 的一個亮點是它可以將監控到的數據導出給第三方工具,由這些工具進一步加工處理。

我們可以把 cAdvisor 定位為一個監控數據收集器,收集和導出數據是它的強項,而非展示數據。

cAdvisor 支持很多第三方工具,其中就包括下一節要重點學習的 Prometheus。

書籍:
1.《每天5分鐘玩轉Docker容器技術》
https://item.jd.com/16936307278.html(點擊 「閱讀原文」 直達)

2.《每天5分鐘玩轉OpenStack》
https://item.jd.com/12086376.html

最好的讚賞是你的閱讀時間

相關焦點

  • cAdvisor + Prometheus收集本機和docker容器數據
    cAdvisor + Prometheus收集本機和docker容器數據在這個萬物皆可容器化的時代,監控顯的尤為重要,在本篇文章,我們將對伺服器的相關容器和本機數據利用
  • 監控利器 sysdig - 每天5分鐘玩轉 Docker 容器技術(79)
    而 sysdig 則是將這些工具的功能集成到一個工具中,並且提供一個友好統一的操作界面。下面我們將演示 sysdig 強大的監控能力。--volume=/usr:/host/usr:ro \           sysdig/sysdig 可以看到,sysdig 容器是以 privileged 方式運行,而且會讀取作業系統 /dev,/proc 等數據,這是為了獲取足夠的系統信息。
  • 部署 Graylog 日誌系統 - 每天5分鐘玩轉 Docker 容器技術(92)
    Graylog 是與 ELK 可以相提並論的一款集中式日誌管理方案,支持數據收集、檢索、可視化 Dashboard。
  • 你必須知道的容器監控 (2) cAdvisor
    上一篇我們了解了docker自帶的監控子命令以及開源監控工具Weave Scope,這一篇我們來了解一下Google開發的容器監控工具cAdvisor。cAdvisor能夠較好地展示Host和容器兩個層次的監控數據,並且能夠展示歷史變化數據。
  • - 每天5分鐘玩轉 Docker 容器技術(112)
    定義好了 stack YAML 文件,就可以通過 docker stack deploy 命令部署應用。
  • 初探 ELK - 每天5分鐘玩轉 Docker 容器技術(89)
    Kibana一個基於 JavaScript 的 Web 圖形界面程序,專門用於可視化 Elasticsearch 的數據。Kibana 能夠查詢 Elasticsearch 並通過豐富的圖表展示結果。用戶可以創建 Dashboard 來監控系統的日誌。本節將討論如何用 ELK 這組黃金搭檔來監控 Docker 容器的日誌。
  • docker managed volume - 每天5分鐘玩轉 Docker 容器技術(40)
    docker managed volume 與 bind mount 在使用上的最大區別是不需要指定 mount 源,指明 mount point 就行了。docker inspect 的輸出很多,我們感興趣的是 Mounts 這部分,這裡會顯示容器當前使用的所有 data volume,包括 bind mount 和 docker managed volume。Source 就是該 volume 在 host 上的目錄。
  • 使用 Elasticsearch 和 cAdvisor 監控 Docker 容器
    容器數量與連接在 docker0 和 docker_gwbridge 上的虛擬網卡數量不一致(LCTT 譯註:當 docker 啟動時,它會在宿主機器上創建一個名為 docker0 的虛擬網絡接口)。開啟和關閉 Swarm 節點。收集併集中處理日誌。
  • 配置 VirtualBox backend - 每天5分鐘玩轉 Docker 容器技術(74)
    在 VirtualBox 宿主機,即我的筆記本上啟動 vboxwebsrv 服務:vboxwebsrv -H 0.0.0.0執行如下命令關閉 VirtualBox 的登錄認證:VBoxManage setproperty websrvauthlibrary null在關機狀態下修改虛擬機 docker1 和 docker2
  • - 每天5分鐘玩轉 Docker 容器技術(111)
    為了保證這個依賴關係,我們控制了 docker secret 和 docker service 命令的執行順序,只不過這個過程是手工完成的。假如我們需要頻繁地在不同環境中部署 WordPress 應用,如果每次都手工執行效率就太低了,而且容易出錯。
  • - 每天5分鐘玩轉 Docker 容器技術(93)
    首先啟動測試容器。--log-opt gelf-address=localhost:12201 將容器日誌發送到 Graylog 的日誌接收埠。--log-opt tag="log-test-container-A" 和 --log-opt tag="log-test-container-B" 在日誌中添加一個可選的 tag,用於區分不同的容器。
  • ELK 完整部署和使用 - 每天5分鐘玩轉 Docker 容器技術(90)
    幾乎所有的軟體和應用都有自己的日誌文件,容器也不例外。前面我們已經知道 Docker 會將容器日誌記錄到 /var/lib/docker/containers/<contariner ID>/<contariner ID>-json.log,那麼只要我們能夠將此文件發送給 ELK 就可以實現日誌管理。
  • Kubernetes Dashboard - 每天5分鐘玩轉 Docker 容器技術(173)
    為了提供更豐富的用戶體驗,Kubernetes 還開發了一個基於 Web 的 Dashboard,用戶可以用 Kubernetes Dashboard 部署容器化的應用、監控應用的狀態、執行故障排查任務以及管理 Kubernetes 各種資源。
  • 萬能數據收集器 Fluentd - 每天5分鐘玩轉 Docker 容器技術(91)
    收集 Docker 容器日誌,利用的是 Docker 默認的 logging driver json-file,本節我們將使用 fluentd 來收集容器的日誌。Fluentd 是一個開源的數據收集器,它目前有超過 500 種的 plugin,可以連接各種數據源和數據輸出組件。在接下來的實踐中,Fluentd 會負責收集容器日誌,然後發送給 Elasticsearch。日誌處理流程如下:這裡我們用 Filebeat 將 Fluentd 收集到的日誌轉發給 Elasticsearch。
  • 在 Scale Up 中使用 Health Check - 每天5分鐘玩轉 Docker 容器技術(145)
    考慮到應用啟動通常都需要一個準備階段,比如加載緩存數據,連接資料庫等,從容器啟動到正真能夠提供服務是需要一段時間的。我們可以通過 Readiness 探測判斷容器是否就緒,避免將請求發送到還沒有 ready 的 backend。下面是示例應用的配置文件。重點關注 readinessProbe 部分。
  • 部署Prometheus Operator - 每天5分鐘玩轉 Docker 容器技術(179)
    helm install --name kube-prometheus --namespace=monitoring helm/kube-prometheus每個 Exporter 會對應一個 Service,為 Pormetheus 提供 Kubernetes 集群的各類監控數據。
  • - 每天5分鐘玩轉 Docker 容器技術(127)
    《每天5分鐘玩轉Docker容器技術》https://item.jd.com/16936307278.html(點擊「閱讀原文」直達)2.《每天5分鐘玩轉OpenStack》https://item.jd.com/12086376.html
  • 使用Cadvisor監控Docker容器
    點擊上面的👆藍色文字,關注我們:)cAdvisor(container Advisor)分析並展示容器運行時的資源使用和性能數據
  • volume 生命周期管理 - 每天5分鐘玩轉 Docker 容器技術(44)
    還記得前面我們是如何搭建本地 Registry 的嗎?所有的本地鏡像都存在 host 的 /myregistry 目錄中,我們要做的就是定期備份這個目錄。恢復volume 的恢復也很簡單,如果數據損壞了,直接用之前備份的數據拷貝到 /myregistry 就可以了。
  • 限制容器的 Block IO - 每天5分鐘玩轉 Docker 容器技術(29)
    前面學習了如何限制容器對內存和CPU的使用,本節我們來看 Block IO。--blkio-weight 與 --cpu-shares 類似,設置的是相對權重值,默認為 500。在下面的例子中,container_A 讀寫磁碟的帶寬是 container_B 的兩倍。