Share via


Prometheus-metrikák gyűjteményének hibaelhárítása az Azure Monitorban

Kövesse a jelen cikkben leírt lépéseket annak megállapításához, hogy a Prometheus-metrikák nem a várt módon lesznek összegyűjtve az Azure Monitorban.

A replika pod a konfigurációtérképen szereplő egyéni kaparásos célokból és az ama-metrics-prometheus-config egyéni erőforrásokban definiált egyéni kaparópéldányokból kube-state-metricskaparja le a metrikákat. A DaemonSet-podok a megfelelő csomóponton lévő következő célokból kaparják le a metrikákat: kubelet, cAdvisor, node-exporter, és egyéni kaparás célokat a ama-metrics-prometheus-config-node konfigurációtérképen. A naplókat és a Prometheus felhasználói felületét megtekinteni kívánt pod attól függ, hogy melyik kaparáscélt vizsgálja.

Hibaelhárítás PowerShell-szkripttel

Ha hibát tapasztal az AKS-fürt figyelésének engedélyezése közben, kövesse az itt ismertetett utasításokat a hibaelhárítási szkript futtatásához. Ez a szkript a fürt konfigurációs problémáinak alapszintű diagnosztizálására szolgál, és a létrehozott fájlokat a támogatási eset gyorsabb megoldásához létrehozhatja.

Metrikák szabályozása

Az Azure Portalon lépjen az Azure Monitor-munkaterületre. Nyissa meg Metrics és ellenőrizze, hogy a metrikák Active Time Series % UtilizationEvents Per Minute Ingested % Utilization 100% alatt vannak-e.

Képernyőkép a szabályozási metrikákra való navigálásról.

Ha bármelyikük több mint 100%-os, a munkaterületbe való betöltés szabályozása folyamatban van. Ugyanabban a munkaterületen navigáljon, és New Support Request hozzon létre egy kérést a korlátok növeléséhez. Válassza ki a probléma típusát és Service and subscription limits (quotas) a kvóta típusát.Managed Prometheus

Időszakos hiányosságok a metrikaadatok gyűjtésében

A csomópontfrissítések során 1–2 perces eltérést tapasztalhat a fürtszintű gyűjtőtől gyűjtött metrikák metrikáiban. Ennek a hiányosságnak az az oka, hogy a futó csomópont egy normál frissítési folyamat részeként frissül. Hatással van a fürtszintű célokra, például a kube-state-metricsre és a megadott egyéni alkalmazáscélokra. Ez akkor fordul elő, ha a fürt manuálisan vagy automatikusan frissül. Ez a viselkedés várható, és annak a csomópontnak a következtében következik be, amelyen fut. Ez a viselkedés egyik ajánlott riasztási szabályunkat sem érinti.

Pod állapota

Ellenőrizze a pod állapotát a következő paranccsal:

kubectl get pods -n kube-system | grep ama-metrics
  • A fürt minden csomópontjának egy ama-metrics-xxxxxxxxxx-xxxxx replika podnak, egy ama-metrics-operator-targets-*ama-metrics-ksm-* podnak és podnak ama-metrics-node-* kell lennie.
  • Minden podállapotnak Running azonos számú újraindítással kell rendelkeznie, mint az alkalmazott konfigurációtérkép-módosítások száma. Az ama-metrics-operator-targets-* pod elején lehet egy további újraindítás, és ez várható:

Képernyőkép a pod állapotáról.

Ha minden pod állapota Running csak egy vagy több podot indít újra, futtassa a következő parancsot:

kubectl describe pod <ama-metrics pod name> -n kube-system
  • Ez a parancs adja meg az újraindítások okát. Pod-újraindítások várhatók, ha konfigurációtérkép-módosításokat hajtottak végre. Ha az újraindítás oka az OOMKilled, a pod nem tud lépést tartani a metrikák mennyiségével. Tekintse meg a metrikák mennyiségére vonatkozó skálázási javaslatokat.

Ha a podok a várt módon futnak, az ellenőrzés következő helye a tárolónaplók.

Tárolónaplók

Tekintse meg a tárolónaplókat a következő paranccsal:

kubectl logs <ama-metrics pod name> -n kube-system -c prometheus-collector

Indításkor a kezdeti hibák piros színnel jelennek meg, míg a figyelmeztetések sárga színnel jelennek meg. (A színes naplók megtekintéséhez legalább a PowerShell 7-es verziója vagy linuxos disztribúció szükséges.)

  • Ellenőrizze, hogy probléma van-e a hitelesítési jogkivonat lekérésével:
    • Az AKS-erőforrás konfigurációjának nincs jelen üzenete 5 percenként naplózva.
    • A pod 15 percenként újraindul a következő hibával: Nincs konfiguráció az AKS-erőforráshoz.
      • Ha igen, ellenőrizze, hogy az adatgyűjtési szabály és az adatgyűjtési végpont létezik-e az erőforráscsoportban.
      • Ellenőrizze azt is, hogy létezik-e az Azure Monitor-munkaterület.
      • Ellenőrizze, hogy nincs-e privát AKS-fürtje, és hogy nincs-e más szolgáltatáshoz kapcsolódó Azure Monitor privát kapcsolati hatókörhöz csatolva. Ez a forgatókönyv jelenleg nem támogatott.

Konfiguráció feldolgozása

Tekintse meg a tárolónaplókat a következő paranccsal:

kubectl logs <ama-metrics-operator-targets pod name> -n kube-system -c config-reader
  • Ellenőrizze, hogy nincsenek-e hibák a Prometheus-konfiguráció elemzésével, az engedélyezett alapértelmezett kaparási célokkal való egyesítéssel és a teljes konfiguráció érvényesítésével.
  • Ha egyéni Prometheus-konfigurációt is tartalmazott, ellenőrizze, hogy felismerte-e a naplókban. Ha nem:
    • Ellenőrizze, hogy a konfigurációtérképen a megfelelő név szerepel-e: ama-metrics-prometheus-config a kube-system névtérben.
    • Ellenőrizze, hogy a konfigurációtérképen a Prometheus-konfiguráció egy, az itt láthatóhoz hasonló szakaszban prometheus-configdata található-e:
      kind: ConfigMap
      apiVersion: v1
      metadata:
        name: ama-metrics-prometheus-config
        namespace: kube-system
      data:
        prometheus-config: |-
          scrape_configs:
          - job_name: <your scrape job here>
      
  • Ha egyéni erőforrásokat hoz létre, a pod-/szolgáltatásmonitorok létrehozása során ellenőrzési hibákat kellett volna látnia. Ha továbbra sem látja a célokból származó metrikákat, győződjön meg arról, hogy a naplók nem mutatnak hibákat.
kubectl logs <ama-metrics-operator-targets pod name> -n kube-system -c targetallocator
  • Ellenőrizze, hogy nincsenek-e hibák MetricsExtension az Azure Monitor-munkaterület hitelesítésével kapcsolatban.
  • Ellenőrizze, hogy nincsenek-e hibák a OpenTelemetry collector célok lekaparásával kapcsolatban.

Futtassa az alábbi parancsot:

kubectl logs <ama-metrics pod name> -n kube-system -c addon-token-adapter
  • Ez a parancs hibaüzenetet jelenít meg, ha probléma merült fel az Azure Monitor-munkaterület hitelesítésével kapcsolatban. Az alábbi példa problémák nélküli naplókat mutat be: Képernyőkép a bővítmény jogkivonat-naplóról.

Ha nincsenek hibák a naplókban, a Prometheus felület használható hibakeresésre a várt konfiguráció és a lekaparott célok ellenőrzéséhez.

Prometheus felület

Minden ama-metrics-* pod rendelkezik a Prometheus Agent módú felhasználói felülettel, amely a 9090-s porton érhető el. Az egyéni konfigurációs és egyéni erőforrás-célokat a pod és a ama-metrics-* csomópontpéldányok kaparják le.ama-metrics-node-* A konfiguráció, a szolgáltatásfelderítés és a célvégpontok ellenőrzéséhez a replika podjába vagy valamelyik démonkészlet-podba továbbítva ellenőrizze az itt leírtaknak megfelelően, hogy az egyéni konfigurációk helyesek-e, a célpéldányok felderítve lettek-e minden feladathoz, és nincsenek hibák az adott célok lekaparásával kapcsolatban.

Futtassa a következő parancsot: kubectl port-forward <ama-metrics pod> -n kube-system 9090.

  • Nyisson meg egy böngészőt a címhez 127.0.0.1:9090/config. Ez a felhasználói felület teljes kaparáskonfigurációval rendelkezik. Ellenőrizze, hogy az összes feladat szerepel-e a konfigurációban. Képernyőkép a konfigurációs feladatokról.

  • Nyissa meg 127.0.0.1:9090/service-discovery a megadott szolgáltatásfelderítési objektum által felderített célokat, valamint a relabel_configs szűrt célokat. Ha például egy adott podból hiányoznak metrikák, megtalálhatja, hogy a pod felderítve lett-e, és hogy mi az URI. Ezután ezt az URI-t használhatja a célok megtekintésekor, hogy ellenőrizze, vannak-e kaparáshibák. Képernyőkép a szolgáltatásfelderítésről.

  • Nyissa meg az 127.0.0.1:9090/targets összes feladatot, a feladat végpontjának utolsó kaparása és a hibák megtekintését Képernyőkép a célokról.

Egyéni erőforrások

  • Ha egyéni erőforrásokat is tartalmazott, győződjön meg arról, hogy azok konfiguráció, szolgáltatásfelderítés és célok alatt jelennek meg.

Konfiguráció

Képernyőkép a podmonitor konfigurációs feladatairól.

Szolgáltatásészlelés

Képernyőkép a podmonitor sd-éről.

Targets

Képernyőkép a podmonitor céljairól.

Ha nincsenek problémák, és a célpéldányok kaparása folyamatban van, a hibakeresési mód engedélyezésével megtekintheti a lekaparandó pontos metrikákat.

Hibakeresési mód

Figyelmeztetés

Ez a mód befolyásolhatja a teljesítményt, és hibakeresési célokból csak rövid ideig engedélyezett.

A metrikák bővítménye úgy konfigurálható, hogy hibakeresési módban fusson. Ehhez módosítsa a konfigurációtérkép beállításait enableddebug-modetrue az alábbi utasítások követésével.

Ha engedélyezve van, a kaparott Prometheus-metrikák a 9091-s porton vannak tárolva. Futtassa az alábbi parancsot:

kubectl port-forward <ama-metrics pod name> -n kube-system 9091

Nyissa meg 127.0.0.1:9091/metrics a böngészőben, és ellenőrizze, hogy az OpenTelemetry Collector lekaparta-e a metrikákat. Ez a felhasználói felület minden ama-metrics-* podhoz elérhető. Ha nincsenek metrikák, a metrika vagy a címkenév hosszával vagy a címkék számával kapcsolatos probléma merülhet fel. Ellenőrizze továbbá, hogy túllépi-e a Prometheus-metrikák betöltési kvótáját az ebben a cikkben meghatározottak szerint.

Metrikanevek, címkenevek és címkeértékek

Az ügynökalapú kaparás jelenleg az alábbi táblázatban található korlátozásokkal rendelkezik:

Tulajdonság Korlát
Címkenév hossza 511 karakternél kisebb vagy egyenlő. Ha túllépi ezt a korlátot egy feladat bármely idősorára vonatkozóan, a teljes kaparási feladat meghiúsul, és a metrikákat a betöltés előtt elveti a feladatból. Láthatja az up=0 értékeket az adott feladathoz, és a cél Ux is megjeleníti az up=0 okát.
Címkeérték hossza 1023 karakternél kisebb vagy egyenlő. Ha túllépi ezt a korlátot egy feladat bármely idősorára vonatkozóan, a teljes kaparás meghiúsul, és a metrikák a betöltés előtt el lesznek távolítva a feladatból. Láthatja az up=0 értékeket az adott feladathoz, és a cél Ux is megjeleníti az up=0 okát.
Címkék száma idősoronként 63-nál kisebb vagy egyenlő. Ha túllépi ezt a korlátot egy feladat bármely idősorára vonatkozóan, a teljes kaparási feladat meghiúsul, és a metrikákat a betöltés előtt elveti a feladatból. Láthatja az up=0 értékeket az adott feladathoz, és a cél Ux is megjeleníti az up=0 okát.
Metrikanév hossza 511 karakternél kisebb vagy egyenlő. Ha ezt a korlátot túllépi egy feladat bármely idősorára, csak az adott sorozat lesz elvetve. A MetricextensionConsoleDebugLog az elvetett metrikához rendelkezik nyomkövetéssel.
Címkenevek különböző burkolattal Az ugyanabban a metrikamintában található két, eltérő burkolattal rendelkező címke duplikált címkének minősül, és a betöltéskor el lesz ejtve. Az idősort my_metric{ExampleLabel="label_value_0", examplelabel="label_value_1} például az ismétlődő címkék ExampleLabel miatt elveti a rendszer, és examplelabel ugyanazt a címkenevet látja.

Betöltési kvóta ellenőrzése az Azure Monitor-munkaterületen

Ha kihagyott metrikákat lát, először ellenőrizheti, hogy túllépték-e a betöltési korlátokat az Azure Monitor-munkaterületen. Az Azure Portalon bármely Azure Monitor-munkaterület aktuális használatát ellenőrizheti. Az Azure Monitor-munkaterület menüjében Metrics megtekintheti az aktuális használati metrikákat. A következő kihasználtsági metrikák standard metrikákként érhetők el az egyes Azure Monitor-munkaterületekhez.

  • Aktív idősor – Az elmúlt 12 órában a munkaterületre legutóbb betöltött egyedi idősorok száma
  • Aktív idősorkorlát – A munkaterületbe aktívan betölthető egyedi idősorok számának korlátja
  • Aktív idősor százalékos kihasználtsága – Az aktuális aktív idősor kihasználtsága
  • Események percenként betöltve – A legutóbb fogadott események (minták) száma percenként
  • Események percenkénti betöltési korlátja – Az események percenkénti maximális száma, amely a szabályozás előtt betölthető
  • Események percenkénti betöltési %-os kihasználtság – Az aktuális metrikabetöltési sebesség korlátjának kihasználtsága

Tekintse meg az alapértelmezett kvóták szolgáltatási kvótáját és korlátait , valamint annak megértését, hogy a használat alapján mi növelhető. Az Azure Monitor-munkaterületek kvótanövelését az Support Request Azure Monitor-munkaterület menüjével kérheti. Győződjön meg arról, hogy tartalmazza az Azure Monitor-munkaterület azonosítóját, belső azonosítóját és helyét/régióját a támogatási kérelemben, amelyet az Azure Monitor-munkaterület Tulajdonságok menüjében talál az Azure Portalon.

Következő lépések