監控 Docker 容器

Scollector 內建支援使用 cAdvisor 生成容器。 * Bosun 中主機上每個 Docker 容器的指標。要開始使用,你需要在每個 docker 主機上啟動一個新容器:

docker run --name cadvisor --restart=always -d -p 8080:8080 google/cadvisor

然後使用帶有 Cadvisor 配置選項的 scollector 對指標進行外部源輪詢。如果你使用 Kubernetes 來管理容器,你可能還想使用 TagOverride 選項覆蓋 docker_id 標籤(縮短為 12 個字元),新增 container_namepod_name 標籤,並刪除 docker_namename 標籤:

[[Cadvisor]]
  URL = "http://mydockerhost01:8080"

[[Cadvisor]]
  URL = "http://mydockerhost02:8080"

#Override tags for Kubernetes containers
[[TagOverride]]
  CollectorExpr = "cadvisor"
  [TagOverride.MatchedTags]
    docker_name = 'k8s_(?P<container_name>[^\.]+)\.[0-9a-z]+_(?P<pod_name>[^-]+)'
    docker_id = '^(?P<docker_id>.{12})'
  [TagOverride.Tags]
    docker_name = ''
    name = ''

你可能還希望將度量標準傳送到 Bosun 的測試例項(可能使用 Bosun Docker Container ),以便在將度量標準傳送到生產 Bosun 例項(在傳送資料後很難清理資料)之前驗證度量標準是否正確。