Dela via


Skrapa Prometheus-mätvärden i stor skala i Azure Monitor

Den här artikeln ger vägledning om den prestanda som kan förväntas vid insamling av mått i stor skala för Azure Monitor för hanterade tjänster för Prometheus.

CPU och minne

Cpu- och minnesanvändningen korreleras med antalet byte för varje exempel och antalet exempel som skrapats. Dessa riktmärken baseras på de skrapade standardmålen, mängden anpassade mått som skrapats och antalet noder, poddar och containrar. Dessa tal är avsedda som en referens eftersom användningen fortfarande kan variera avsevärt beroende på antalet tidsserier och byte per mått.

Den övre volymgränsen per podd är för närvarande cirka 3–3,5 miljoner exempel per minut, beroende på antalet byte per exempel.

Agenten består av en utplacering med två repliker som standard (som automatiskt konfigureras av HPA baserat på minnesanvändning) och en DaemonSet för insamling av metriker. DaemonSet skrapar alla mål på nodnivå, till exempel cAdvisor, kubelet och Node Exporter. Du kan också konfigurera den för att skrapa alla anpassade mål på nodnivå med statiska konfigurationer. Replikuppsättningen skrapar allt annat, till exempel kube-state-metrics eller anpassade skrapjobb som använder tjänstidentifiering.

Jämförelse mellan små och stora kluster för replik

Skrapmål Skickade exempel/minut Antal noder Antal poddar Prometheus-Collector CPU-användning (kärnor) Minnesanvändning för Prometheus-Collector (byte)
standardmål 11,344 3 40 12,9 µg 148 mi
standardmål 260,000 340 13000 1.10 c 1,70 GB
standardmål
+ anpassade mål
3,56 miljoner 340 13000 5.13 c 9,52 GB

Jämförelse mellan små och stora kluster för DaemonSets

Skrapmål Antal skickade exempel/minut totalt Skickade exempel/minut/podd Antal noder Antal poddar Prometheus-Collector CPU-användning total (kärnor) Total minnesanvändning för Prometheus-Collector (byte) Prometheus-Collector CPU-användning/podd (kärnor) Minnesanvändning för Prometheus-Collector/Podd (byte)
standardmål 9,858 3,327 3 40 41.9 mc 581 Mi 14.7 mc 189 mi
standardmål 2,3 miljoner 14,400 340 13000 805 mc 305,34 GB 2,36 mc 898 mi

För fler anpassade mått fungerar den enskilda podden på samma sätt som replikpodden beroende på volymen av anpassade mått.

Schemalägg en replika-pod för ama-metrics i en nodpool med fler resurser

En stor mängd mått per podd behöver en nod med tillräckligt med processor och minne. Om ama-måttens replikpoddar inte schemaläggs på noder eller nodpooler med tillräckligt med resurser kan de få OOMKilled och gå till CrashLoopBackoff. Du kan åtgärda detta genom att lägga till etiketten azuremonitor/metrics.replica.preferred=true i noder eller nodpooler i klustret med högre resurser (i systemnodpoolen). Detta säkerställer att replikpoddarna schemaläggs på dessa noder. Du kan också skapa extra systempooler med större noder och lägga till samma etikett. Det är bättre att märka nodpooler i stället för enskilda noder så att nya noder i poolen också kan användas för schemaläggning.

kubectl label nodes <node-name> azuremonitor/metrics.replica.preferred="true"

Nästa steg