fix(observability): cAdvisor 0.55.1 — 0.52 не видит контейнеры на Docker 29 #3109
3 changed files with 19 additions and 9 deletions
|
|
@ -116,7 +116,11 @@ services:
|
|||
# Читает докер-сокет, поэтому видит ВСЕ контейнеры хоста независимо от сетей —
|
||||
# отдельно подключать его к gendesign_default не нужно.
|
||||
cadvisor:
|
||||
image: gcr.io/cadvisor/cadvisor:v0.52.1
|
||||
# v0.55.1, не v0.52.x: Docker 29 работает через containerd-snapshotter
|
||||
# (Storage Driver = overlayfs), а 0.52 искал метаданные слоя в легаси
|
||||
# /var/lib/docker/image/<driver>/layerdb, которого при снапшоттере
|
||||
# просто нет. Итог был — ни одной метрики по контейнерам.
|
||||
image: gcr.io/cadvisor/cadvisor:v0.55.1
|
||||
container_name: gendesign-cadvisor
|
||||
restart: unless-stopped
|
||||
privileged: true
|
||||
|
|
|
|||
|
|
@ -92,10 +92,13 @@ prometheus.relabel "cadvisor_trim" {
|
|||
action = "keep"
|
||||
}
|
||||
|
||||
// Служебные контейнеры docker без имени только зашумляют графики.
|
||||
// keep .+ вместо drop с пустым regex: в Alloy незаданный regex
|
||||
// документированно дефолтится в (.*), а пустая строка неотличима от
|
||||
// незаданного значения — такой drop рискует выкинуть вообще все ряды.
|
||||
// Служебные ряды без имени (корневой cgroup, id="/") только зашумляют графики.
|
||||
// keep .+ вместо drop с пустым regex — та же мысль, но без зависимости от
|
||||
// трактовки пустого regex: в Alloy он неотличим от незаданного, а незаданный
|
||||
// дефолтится в (.*).
|
||||
//
|
||||
// NB: на пустые панели это правило НЕ влияло. Причина была в cAdvisor 0.52 на
|
||||
// Docker 29 — до сюда доезжал ровно один ряд, корневой. Лечится версией 0.55.1.
|
||||
rule {
|
||||
source_labels = ["name"]
|
||||
regex = ".+"
|
||||
|
|
|
|||
|
|
@ -63,10 +63,13 @@ prometheus.relabel "cadvisor_trim" {
|
|||
action = "keep"
|
||||
}
|
||||
|
||||
// Служебные контейнеры docker без имени только зашумляют графики.
|
||||
// keep .+ вместо drop с пустым regex: в Alloy незаданный regex
|
||||
// документированно дефолтится в (.*), а пустая строка неотличима от
|
||||
// незаданного значения — такой drop рискует выкинуть вообще все ряды.
|
||||
// Служебные ряды без имени (корневой cgroup, id="/") только зашумляют графики.
|
||||
// keep .+ вместо drop с пустым regex — та же мысль, но без зависимости от
|
||||
// трактовки пустого regex: в Alloy он неотличим от незаданного, а незаданный
|
||||
// дефолтится в (.*).
|
||||
//
|
||||
// NB: на пустые панели это правило НЕ влияло. Причина была в cAdvisor 0.52 на
|
||||
// Docker 29 — до сюда доезжал ровно один ряд, корневой. Лечится версией 0.55.1.
|
||||
rule {
|
||||
source_labels = ["name"]
|
||||
regex = ".+"
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue