簡體   English   中英

Swarm 模式下的 docker stats?

[英]docker stats in Swarm mode?

我試圖在 swarm 模式下設置 docker 並監控在 swarm 中運行的所有服務/容器的資源利用率。

管理節點上的 Docker 統計數據似乎沒有顯示工作節點上的資源利用率。

有什么辦法可以做到這一點嗎?

謝謝。

試試 Ansible:

ansible docker -a "docker stats --no-stream"

/etc/ansible/hosts設置“docker”節點的位置

沒有直接的方法可以在 Swarm 中檢索給定服務的所有容器統計信息。 您可能需要使用更多步驟來發現服務的所有任務、所有節點地址和每個容器 ID。 引擎 api 文檔應該可以幫助您入門。 如果您需要一些靈感,我建議您查看此類概覽儀表板,例如https://github.com/charypar/swarm-dashboardhttps://github.com/dockersamples/docker-swarm-visualizer

試試這個 CPU 和內存使用情況

docker stats --all --format "table {{.ID}}\t{{.Name}}\t{{.CPUPerc}}\t{{.MemUsage}}"

您可以使用 cadvisor 在每個節點上部署或在所有節點上擴展一個 swarm 服務,並逐個收集指標。

docker run -d --name=cadvisor -p 8080:8080 --volume=/var/run:/var/run:rw --volume=/sys:/sys:ro --volume=/var/lib/docker /:/var/lib/docker:ro google/cadvisor:latest

您可以使用以下 bash 命令對所有工作節點執行此操作:

docker node ls | grep -v Leader | grep -v Reachable | cut -c 31-47 | grep -v HOSTNAME | xargs -I"SERVER" sh -c "echo SERVER; ssh SERVER docker stats --no-stream"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM