Share via


Configuração da Observabilidade de Rede para o Serviço Kubernetes do Azure (AKS) - BYO Prometheus e Grafana

AKS Network Observability é usado para coletar os dados de tráfego de rede do seu cluster AKS. A Observabilidade de Rede permite uma plataforma centralizada para monitorar a integridade do aplicativo e da rede. Prometheus coleta métricas de Observabilidade da Rede AKS e Grafana as visualiza. Ambos os planos de dados Cilium e não-Cilium são suportados. Neste artigo, saiba como habilitar o complemento Observabilidade de Rede e usar o BYO Prometheus e o Grafana para visualizar as métricas raspadas.

Nota

A partir da versão 1.29 do Kubernetes, o recurso de observabilidade de rede não suporta mais Bring Your Own (BYO) Prometheus e Grafana. No entanto, você ainda pode habilitá-lo usando a oferta Azure Managed Prometheus e Grafana

Importante

A Observabilidade da Rede AKS está atualmente em pré-visualização. Veja Termos de Utilização Complementares da Pré-visualizações do Microsoft Azure para obter os termos legais que se aplicam às funcionalidades do Azure que estão na versão beta, na pré-visualização ou que ainda não foram lançadas para disponibilidade geral.

Para obter mais informações sobre a Observabilidade da Rede AKS, consulte O que é a Observabilidade de Rede do Serviço Kubernetes do Azure (AKS)?.

Pré-requisitos

  • Use o ambiente Bash no Azure Cloud Shell. Para obter mais informações, consulte Guia de início rápido para Bash no Azure Cloud Shell.

  • Se preferir executar comandos de referência da CLI localmente, instale a CLI do Azure. Se estiver a utilizar o Windows ou macOS, considere executar a CLI do Azure num contentor Docker. Para obter mais informações, consulte Como executar a CLI do Azure em um contêiner do Docker.

    • Se estiver a utilizar uma instalação local, inicie sessão no CLI do Azure ao utilizar o comando az login. Para concluir o processo de autenticação, siga os passos apresentados no seu terminal. Para outras opções de entrada, consulte Entrar com a CLI do Azure.

    • Quando solicitado, instale a extensão da CLI do Azure na primeira utilização. Para obter mais informações sobre as extensões, veja Utilizar extensões com o CLI do Azure.

    • Execute o comando az version para localizar a versão e as bibliotecas dependentes instaladas. Para atualizar para a versão mais recente, execute o comando az upgrade.

  • A versão mínima da CLI do Azure necessária para as etapas neste artigo é 2.44.0. Executar az --version para localizar a versão. Se precisar de instalar ou atualizar, veja Install Azure CLI (Instalar o Azure CLI).

Instalar a extensão da CLI do aks-preview Azure

Importante

Os recursos de visualização do AKS estão disponíveis em uma base de autosserviço e opt-in. 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 visualizações do AKS são parcialmente cobertas pelo suporte ao cliente com base no melhor esforço. Como tal, estas funcionalidades não se destinam a utilização em produção. Para obter mais informações, consulte os seguintes artigos de suporte:

# Install the aks-preview extension
az extension add --name aks-preview

# Update the extension to make sure you have the latest version installed
az extension update --name aks-preview

Registrar o sinalizador de NetworkObservabilityPreview recurso

az feature register --namespace "Microsoft.ContainerService" --name "NetworkObservabilityPreview"

Use az feature show para verificar o status de registro do sinalizador de recurso:

az feature show --namespace "Microsoft.ContainerService" --name "NetworkObservabilityPreview"

Aguarde até que o recurso diga Registrado antes de preceder o artigo.

{
  "id": "/subscriptions/23250d6d-28f0-41dd-9776-61fc80805b6e/providers/Microsoft.Features/providers/Microsoft.ContainerService/features/NetworkObservabilityPreview",
  "name": "Microsoft.ContainerService/NetworkObservabilityPreview",
  "properties": {
    "state": "Registering"
  },
  "type": "Microsoft.Features/providers/features"
}

Quando o recurso for registrado, atualize o registro do provedor de recursos Microsoft.ContainerService com o registro do provedor az:

az provider register -n Microsoft.ContainerService

Criar um grupo de recursos

Um grupo de recursos é um contentor lógico no qual os recursos do Azure são implementados e geridos. Crie um grupo de recursos com o comando az group create . O exemplo seguinte cria um grupo de recursos com o nome myResourceGroup na localização eastus:

az group create \
    --name myResourceGroup \
    --location eastus

Criar um cluster do AKS

Crie um cluster AKS com o comando az aks create . O exemplo a seguir cria um cluster AKS chamado myAKSCluster no grupo de recursos myResourceGroup :

Os clusters não-Cilium suportam a habilitação da Observabilidade de Rede em um cluster existente ou durante a criação de um novo cluster.

Novo cluster

Use az aks create no exemplo a seguir para criar um cluster AKS com Observabilidade de Rede e não-Cilium.

az aks create \
    --name myAKSCluster \
    --resource-group myResourceGroup \
    --location eastus \
    --generate-ssh-keys \
    --network-plugin azure \
    --network-plugin-mode overlay \
    --pod-cidr 192.168.0.0/16 \
    --enable-network-observability

Cluster existente

Use az aks update para habilitar a observabilidade de rede em um cluster existente.

az aks update \
    --resource-group myResourceGroup \
    --name myAKSCluster \
    --enable-network-observability 

Obter credenciais de cluster

az aks get-credentials --name myAKSCluster --resource-group myResourceGroup

Ativar visualização no Grafana

Use o exemplo a seguir para configurar trabalhos de raspagem no Prometheus e habilitar a visualização no Grafana para seu cluster AKS.

Nota

A seção seguinte requer instalações de Prometheus e Grafana.

  1. Adicione o seguinte trabalho de raspagem à configuração existente do Prometheus e reinicie o servidor Prometheus:

    scrape_configs:
      - job_name: "network-obs-pods"
        kubernetes_sd_configs:
          - role: pod
        relabel_configs:
          - source_labels: [__meta_kubernetes_pod_container_name]
            action: keep
            regex: kappie(.*)
          - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port]
            separator: ":"
            regex: ([^:]+)(?::\d+)?
            target_label: __address__
            replacement: ${1}:${2}
            action: replace
          - source_labels: [__meta_kubernetes_pod_node_name]
            action: replace
            target_label: instance
        metric_relabel_configs:
          - source_labels: [__name__]
            action: keep
            regex: (.*)
    
  2. Em Targets of Prometheus, verifique se os network-obs-pods estão presentes.

  3. Entre no Grafana e importe o painel de Observação de Rede com ID 18814.

Clean up resources (Limpar recursos)

Se você não vai continuar a usar este aplicativo, exclua o cluster AKS e os outros recursos criados neste artigo com o seguinte exemplo:

  az group delete \
    --name myResourceGroup

Próximos passos

Neste artigo de instruções, você aprendeu como instalar e habilitar a Observabilidade de Rede AKS para seu cluster AKS.