Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Importante
Le funzionalità di anteprima di AKS sono disponibili su base self-service, su scelta. Le anteprime vengono fornite "così come sono" e "come disponibili" e sono escluse dai contratti di servizio e dalla garanzia limitata. Le anteprime del servizio Azure Kubernetes sono parzialmente coperte dal supporto clienti con la massima diligenza possibile. Di conseguenza, queste funzionalità non sono destinate all'uso in produzione. Per altre informazioni, vedere gli articoli di supporto seguenti:
La rete applicativa di Azure Kubernetes offre metriche complete per i carichi di lavoro e i componenti del piano dati di Rete dell'applicazione Azure Kubernetes (ZTunnel, Istio CNI e Waypoint) tramite le metriche di Monitoraggio di Azure. Questo articolo illustra come configurare e visualizzare queste metriche in Monitoraggio di Azure.
Limitazioni
Le metriche del piano di controllo non sono attualmente supportate. Tuttavia, le metriche del piano dati sono disponibili ed è possibile usarle per monitorare l'integrità e le prestazioni dei carichi di lavoro e dei componenti di rete delle applicazioni di Azure Kubernetes.
Metriche del piano dei dati
Le metriche del piano dei dati includono le metriche dei tuoi carichi di lavoro, delle applicazioni e dello spazio dei nomi appnet-system. La rete applicativa di Azure Kubernetes offre attualmente solo il supporto per le metriche del piano dati.
Configurare le metriche del piano dati
Opzioni di configurazione dell'area di lavoro per le metriche del piano dati
Quando si abilita la raccolta di metriche Prometheus per i cluster membri della rete applicazioni di Azure Kubernetes, sono disponibili le opzioni seguenti per la configurazione dell'area di lavoro:
- Usare un'area di lavoro di Monitoraggio di Azure esistente.
- Omettere l'ID risorsa dell'area di lavoro e usare l'area di lavoro predefinita creata per il gruppo di risorse.
- Creare una nuova area di lavoro di Monitoraggio di Azure.
Abilitare la raccolta delle metriche del piano dati
- Usare un'area di lavoro di Monitoraggio di Azure esistente
- Usare l'area di lavoro predefinita
- Creare una nuova area di lavoro di Monitoraggio di Azure
Per abilitare la raccolta di metriche di Prometheus nel membro del cluster della rete applicazioni di Azure Kubernetes, utilizzare il comando
az aks updatecon il parametro--azure-monitor-workspace-resource-idimpostato sull'ID dell'area di lavoro esistente. Se Le metriche di Monitoraggio di Azure sono già abilitate nel cluster membro, è possibile passare al passaggio successivo.az aks update --enable-azure-monitor-metrics \ --name $CLUSTER_NAME \ --resource-group $AKS_RG \ --azure-monitor-workspace-resource-id $WORKSPACE_IDCreare e applicare la seguente ConfigMap nel namespace
kube-systemusando il comandokubectl apply. Questo ConfigMap abilita lo scorporo di Ztunnel, Istio CNI, waypoint e l'applicazione/i carichi di lavoro.kubectl apply -f - <<EOF kind: ConfigMap apiVersion: v1 metadata: name: ama-metrics-settings-configmap namespace: kube-system data: schema-version: v1 config-version: ver1 prometheus-collector-settings: |- cluster_alias = "" https_config = true default-scrape-settings-enabled: |- ztunnel = true istio-cni = true pod-annotation-based-scraping: |- podannotationnamespaceregex = ".*" default-targets-metrics-keep-list: |- ztunnel = "" istio-cni = "" minimalingestionprofile = true default-targets-scrape-interval-settings: |- ztunnel = "30s" istio-cni = "30s" podannotations = "30s" debug-mode: |- enabled = false EOFAggiungere annotazioni ai pod delle applicazioni da scorporare.
-
prometheus.io/scrape: "true"è necessario per indicare che il pod deve essere scorporato. -
prometheus.io/pathviene usato facoltativamente per indicare il percorso in cui sono ospitate le metriche. Se omesso, per impostazione predefinita viene impostato su/metrics. -
prometheus.io/portviene usato facoltativamente per indicare la porta in cui sono ospitate le metriche. Se omesso, Prometheus userà le porte dichiarate del contenitore dalle specifiche del pod. Per i contenitori senza porte dichiarate, Prometheus crea un target senza porta (solo IP), che richiede una configurazione di relabeling appropriata per funzionare con annotazioni di porta. È consigliabile specificare in modo esplicito la porta per garantire lo scorporo affidabile dei dati.
L'esempio seguente definisce le annotazioni per un pod che ospita le metriche in
<pod IP>:15020/metricsprometheus.io/scrape: "true" prometheus.io/port: "15020" prometheus.io/path: "/metrics"Potrebbero essere necessari alcuni minuti affinché il ReplicaSet delle metriche AMA carichi questa configurazione.
-
Visualizzare le metriche del piano dati
Passare all'area di lavoro di Monitoraggio di Azure nel portale di Azure per eseguire query sulle metriche usando PromQL.
Per prima cosa, genera traffico, poi seleziona le query dalle metriche esposte per visualizzare le metriche. Ad esempio, è possibile eseguire la query seguente per visualizzare il numero totale di richieste gestite da waypoint:
# ztunnel istio_xds_connection_terminations_total # waypoint istio_requests_total # istio-cni istio_cni_install_readyLo screenshot seguente mostra i risultati per le query di esempio:
Elenco delle metriche esposte
| Componente | Metriche esposte |
|---|---|
| ZTunnel | istio_buildistio_xds_connection_terminations_totalistio_xds_message_totalistio_xds_message_bytes_totalistio_tcp_connections_opened_totalistio_tcp_connections_closed_totalistio_tcp_received_bytes_totalistio_tcp_sent_bytes_totalistio_on_demand_dnsistio_dns_requests_totalistio_dns_upstream_requestsistio_dns_upstream_failuresistio_dns_upstream_request_duration_secondsworkload_manager_active_proxy_countworkload_manager_pending_proxy_countworkload_manager_proxies_started_totalworkload_manager_proxies_stopped_total |
| Istio CNI | istio_cni_install_readyistio_cni_installs_totalnodeagent_reconcile_events_totalztunnel_connected |
| Waypoint | istio_buildistio_request_bytes_bucketistio_request_bytes_countistio_request_bytes_sumistio_request_duration_milliseconds_bucketistio_request_duration_milliseconds_countistio_request_duration_milliseconds_sumistio_requests_totalistio_response_bytes_bucketistio_response_bytes_countistio_response_bytes_sum |
Accedere alle metriche direttamente dai proxy waypoint
Oltre alle metriche di richiesta/risposta Istio, i proxy waypoint generano anche metriche Envoy.
Per trovare un elenco completo delle metriche generate da Waypoint, è possibile effettuare il port-forward verso un "waypoint proxy" nel proprio "namespace" ed elencare le metriche utilizzando i seguenti comandi:
# Port-forward to waypoint proxy kubectl port-forward -n <namespace> deployment/waypoint 15020:15020 & # List metrics exposed by waypoint curl http://localhost:15020/stats/prometheus | grep -v '^#' | grep -v '^$' | awk -F'{' '{print $1}' | sort -u
Visualizzare le metriche con Grafana nel portale di Azure
Importare i dashboard della community Istio.
Generare traffico per il cluster membro e quindi passare all'area di lavoro di Monitoraggio di Azure nel portale di Azure.
Selezionare Dashboard di monitoraggio>con Grafana.
Gli screenshot seguenti mostrano esempi di importazione del dashboard istio Ztunnel:
Se si vuole configurare Azure Managed Grafana invece di configurare dashboard con Grafana, vedere Creare un'area di lavoro Azure Managed Grafana utilizzando l'Azure CLI.
Contenuti correlati
Per altre informazioni sull'osservabilità e il monitoraggio della rete di applicazioni di Azure Kubernetes, vedere gli articoli seguenti: