Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Kontroler ingress-nginx v doplňku směrování aplikace zveřejňuje mnoho metrik pro požadavky, proces nginx a kontroler, který může být užitečný při analýze výkonu a využití vaší aplikace.
Doplněk směrování aplikace zveřejňuje koncový bod metrik Prometheus na /metrics portu 10254 a privátní službě nginx-metrics.
Požadavky
- Cluster Azure Kubernetes Service (AKS) s doplňkem směrování aplikací povoleným.
- Instanci Prometheus, jako je spravovaná služba Azure Monitor pro Prometheus.
Ověření koncového bodu metrik
Pokud chcete ověřit, že se metriky shromažďují, můžete nastavit přesměrování portu z místního portu na port 10254 na službě nginx-metrics.
kubectl port-forward -n app-routing-system service/nginx-metrics :10254
Forwarding from 127.0.0.1:43307 -> 10254
Forwarding from [::1]:43307 -> 10254
Poznamenejte si místní port (43307 v tomto případě) a otevřete http://localhost:43307/metrics ho v prohlížeči. Měli byste vidět načítání metrik kontroleru ingress-nginx.
Teď můžete proces ukončit port-forward a ukončit tak předávání.
Konfigurace spravované služby Azure Monitor pro Prometheus
Spravovaná služba Azure Monitoru pro Prometheus je plně spravovaná služba kompatibilní s Prometheus, která podporuje standardní funkce odvětví, jako jsou řídicí panely PromQL, Grafana a výstrahy Prometheus. Tato služba vyžaduje konfiguraci doplňku metrik pro agenta Azure Monitoru, který odesílá data do prometheus. Pokud váš cluster není nakonfigurovaný s doplňkem, můžete podle tohoto článku nakonfigurovat cluster Azure Kubernetes Service (AKS) tak, aby odesílal data do spravované služby Azure Monitor pro Prometheus.
Zapnutí získávání dat na základě monitorování služeb
Jakmile je váš cluster aktualizován pomocí agenta Azure Monitor, je třeba agenta nakonfigurovat tak, aby umožnil scrapování endpointu metrik. K tomuto účelu můžete vytvořit Pod nebo Service Monitor.
Následující příklad vytvoří metriky sklízené Service Monitorem z kontroleru ingress-nginx, který je nasazen pomocí doplňku pro směrování aplikací.
kubectl apply -f - <<EOF
apiVersion: azmonitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
name: nginx-monitor
namespace: app-routing-system
spec:
labelLimit: 63
labelNameLengthLimit: 511
labelValueLengthLimit: 1023
selector:
matchLabels:
app.kubernetes.io/component: ingress-controller
app.kubernetes.io/managed-by: aks-app-routing-operator
app.kubernetes.io/name: nginx
endpoints:
- port: prometheus
EOF
Za několik minut by se pody v rámci oboru názvů ama-metrics měly restartovat a přijmout novou konfiguraci.
Kontrola vizualizace metrik ve službě Azure Managed Grafana
Teď, když máte nakonfigurovanou spravovanou službu Azure Monitor pro Prometheus a Azure Managed Grafana, byste měli přistupovat ke spravované instanci Grafany.
Existují dva oficiální řídicí panely ingress-nginx , které si můžete stáhnout a importovat do instance Grafana:
- Řídicí panel kontroléru Ingress-nginx
- Řídicí panel výkonu zpracování žádostí
Řídicí panel kontroléru Ingress-nginx
Tento řídicí panel poskytuje přehled o svazku požadavků, připojeních, úspěšnosti, opětovném načtení konfigurace a konfiguracích, které se nesynchronizují. Můžete ho také použít k zobrazení zatížení vstupně-výstupních operací sítě, paměti a procesoru kontroleru příchozího přenosu dat. Nakonec se také zobrazí doby odezvy pro přístupy u percentilu P50, P95 a P99 a jejich propustnost.
Tento řídicí panel si můžete stáhnout z GitHubu.
Řídicí panel výkonu zpracování žádostí
Tento řídicí panel poskytuje přehled o výkonu zpracování požadavků různých upstreamových cílů příchozího přenosu dat, což jsou koncové body vašich aplikací, do kterých kontroler příchozího přenosu dat předává provoz. Zobrazuje percentil P50, P95 a P99 celkového počtu požadavků a upstreamových dob odezvy. Můžete také zobrazit agregace chyb požadavků a latence. Tento řídicí panel slouží ke kontrole a zlepšení výkonu a škálovatelnosti vašich aplikací.
Tento řídicí panel si můžete stáhnout z GitHubu.
Import řídicího panelu
Pokud chcete importovat řídicí panel Grafana, rozbalte levou nabídku a v části Řídicí panely klikněte na Importovat .
Potom nahrajte požadovaný soubor řídicího panelu a klikněte na Načíst.
Další kroky
- Škálování úloh můžete nakonfigurovat pomocí metrik příchozího provozu shromážděných pomocí Promethea s využitím automatického škálování řízeného událostmi Kubernetes (KEDA). Přečtěte si další informace o integraci KEDA s AKS.
- Vytvořte a spusťte zátěžový test pomocí služby Azure Load Testing pro testování výkonu úloh a optimalizujte škálovatelnost vašich aplikací.