Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Importante
Os recursos de pré-visualização do AKS estão disponíveis numa base de autosserviço e adesão voluntária. As visualizações prévias são fornecidas "como estão" e "conforme disponíveis" e são excluídas dos contratos de nível de serviço e da garantia limitada. As versões de teste do AKS são parcialmente cobertas pelo suporte ao cliente numa base de melhor esforço. Assim sendo, estas funcionalidades não se destinam ao uso em produção. Para obter mais informações, consulte os seguintes artigos de suporte:
O Azure Kubernetes Application Network fornece métricas abrangentes para as suas cargas de trabalho e para os componentes do plano de dados da Azure Kubernetes Application Network (ZTunnel, Istio CNI e Waypoint) através das métricas Azure Monitor. Este artigo explica como configurar e visualizar estas métricas no Azure Monitor.
Limitações
As métricas do plano de controlo não são atualmente suportadas. No entanto, existem métricas do plano de dados disponíveis, e pode usá-las para monitorizar a saúde e o desempenho das suas cargas de trabalho e dos componentes da Azure Kubernetes Application Network.
Métricas do plano de dados
As métricas do plano de dados incluem métricas das suas cargas de trabalho/aplicações e do appnet-system namespace. Atualmente, a Azure Kubernetes Application Network oferece suporte apenas para métricas de plano de dados.
Configurar métricas do plano de dados
Opções de configuração do espaço de trabalho para métricas de plano de dados
Quando ativa a recolha de métricas Prometheus para clusters membros da Azure Kubernetes Application Network, tem as seguintes opções para a configuração do espaço de trabalho:
- Use um espaço de trabalho Azure Monitor existente.
- Omita o ID de recurso do espaço de trabalho e usa o espaço de trabalho padrão criado para o teu grupo de recursos.
- Crie um novo espaço de trabalho Azure Monitor.
Permitir a recolha de métricas do plano de dados
- Use um espaço de trabalho Azure Monitor existente
- Use o espaço de trabalho padrão
- Criar um novo espaço de trabalho Azure Monitor
Ative a recolha de métricas Prometheus no seu cluster membro da Azure Kubernetes Application Network usando o comando
az aks updatecom o parâmetro--azure-monitor-workspace-resource-iddefinido para o seu ID de espaço de trabalho existente. Se o Azure Monitor Metrics já estiver ativado no seu cluster de membros, pode saltar para o passo seguinte.az aks update --enable-azure-monitor-metrics \ --name $CLUSTER_NAME \ --resource-group $AKS_RG \ --azure-monitor-workspace-resource-id $WORKSPACE_IDCrie e aplique o seguinte ConfigMap no
kube-systemnamespace usando okubectl applycomando. Este ConfigMap permite o scraping do Ztunnel, Istio CNI, waypoint e da sua aplicação/cargas de trabalho.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 EOFAdicione anotações aos pods das aplicações que deseja raspar.
-
prometheus.io/scrape: "true"é necessário indicar que a cápsula deve ser raspada. -
prometheus.io/pathé opcionalmente usado para indicar o caminho onde as métricas são alojadas. Se for omitido, o valor por omissão é/metrics. -
prometheus.io/porté opcionalmente usado para indicar a porta onde as métricas são alojadas. Se for omitido, o Prometheus usará as portas declaradas do contentor da especificação do pod. Para contentores sem portas declaradas, o Prometheus cria um alvo sem portas (apenas IP), que requer uma configuração adequada de reetiquetagem para funcionar com anotações de portas. Recomenda-se especificar explicitamente a porta para garantir uma raspagem fiável.
O exemplo seguinte define anotações para um pod que está a hospedar métricas em
<pod IP>:15020/metricsprometheus.io/scrape: "true" prometheus.io/port: "15020" prometheus.io/path: "/metrics"Pode demorar alguns minutos para o ReplicaSet das métricas AMA carregar esta configuração.
-
Visualizar métricas do plano de dados
Navegue até ao seu espaço de trabalho Azure Monitor no portal Azure para consultar as métricas usando PromQL.
Gera algum tráfego e depois selecione consultas das métricas expostas para visualizar as métricas. Por exemplo, pode executar a seguinte consulta para ver o número total de pedidos tratados pelo waypoint:
# ztunnel istio_xds_connection_terminations_total # waypoint istio_requests_total # istio-cni istio_cni_install_readyA captura de ecrã seguinte mostra os resultados das consultas de exemplo:
Lista de métricas expostas
| Componente | Métricas expostas |
|---|---|
| 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 |
| Ponto de Passagem | 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 |
Aceder diretamente às métricas a partir de proxies de ponto de passagem
Para além das métricas de pedido/resposta do Istio, os proxies de waypoint também geram métricas do Envoy.
Para encontrar uma lista completa das métricas emitidas pelo waypoint, pode fazer port-forward para um waypoint proxy no seu namespace e listar as métricas usando os seguintes comandos:
# 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
Visualize métricas com o Grafana no Portal do Azure
Importa os dashboards da comunidade do Istio.
Gera tráfego para o teu cluster de membros e depois navega até ao teu espaço de trabalho Azure Monitor no portal Azure.
Selecione Dashboards de Monitorização>com o Grafana.
As capturas de ecrã seguintes mostram exemplos de importação do Painel do Istio Ztunnel:
Se quiser configurar o Azure Managed Grafana em vez de Dashboards com o Grafana, veja Criar um espaço de trabalho Azure Managed Grafana usando a Azure CLI.
Conteúdo relacionado
Para mais informações sobre a observabilidade e monitorização da Azure Kubernetes Application Network, consulte os seguintes artigos: