Compartir a través de


Configuración de la Network Observability para Azure Kubernetes Service (AKS): Administración de Azure Prometheus y Grafana

La observabilidad de red de AKS se usa para recopilar los datos de tráfico de red del clúster de AKS. La Observabilidad de red proporciona una plataforma centralizada para supervisar el estado de la red y la aplicación. Prometheus recopila métricas de observabilidad de red de AKS y Grafana las visualiza. Se admiten los planos de datos de Cilium y los que no son de Cilium. En este artículo, aprenderá a habilitar el complemento de observabilidad de red y a usar Prometheus y Grafana administrados por Azure para visualizar las métricas descartadas.

Para más información sobre la observabilidad de red de AKS, consulte ¿Qué es observabilidad de red de Azure Kubernetes Service (AKS)?

Requisitos previos

  • La versión mínima de la CLI de Azure necesaria para los pasos de este artículo es la 2.44.0. Ejecute az --version para encontrar la versión. Si necesita instalarla o actualizarla, vea Instalación de la CLI de Azure.

Creación de un clúster

Nota:

Para la versión de Kubernetes >= 1.29, la Network Observability se incluye en clústeres con Azure Managed Prometheus. La extracción de métricas se define a través del Perfil de métricas AMA.

Para versiones inferiores de Kubernetes, se requieren pasos adicionales para habilitar la Network Observability.

Crear un grupo de recursos

Un grupo de recursos es un contenedor lógico en el que se implementan y se administran los recursos de Azure. Para crear un grupo de recursos, use el comando az group create. En el ejemplo siguiente, se crea un grupo de recursos denominado myResourceGroup en la ubicación eastus:

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

Creación de un clúster de AKS

Cree un clúster de AKS con az aks create. En los ejemplos siguientes se crea un clúster de AKS denominado myAKSCluster en el myResourceGroup grupo de recursos.

Ejemplo 1: No Cilium

Use az aks create en el ejemplo siguiente para crear un clúster de AKS que no sea 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 \
    --kubernetes-version 1.29

Ejemplo 2: Cilium

Use az aks create en el ejemplo siguiente para crear un clúster de AKS de Cilium.

az aks create \
    --name myAKSCluster \
    --resource-group myResourceGroup \
    --generate-ssh-keys \
    --location eastus \
    --max-pods 250 \
    --network-plugin azure \
    --network-plugin-mode overlay \
    --network-dataplane cilium \
    --node-count 2 \
    --pod-cidr 192.168.0.0/16

Prometheus y Grafana administrados por Azure

Use el ejemplo siguiente para instalar y habilitar Prometheus y Grafana para el clúster de AKS.

Creación de un recurso de Azure Monitor

az resource create \
    --resource-group myResourceGroup \
    --namespace microsoft.monitor \
    --resource-type accounts \
    --name myAzureMonitor \
    --location eastus \
    --properties '{}'

Crear una instancia de Grafana

Use az grafana create para crear una instancia de Grafana. El nombre de la instancia de Grafana debe ser único. Reemplace myGrafana por un nombre único para la instancia de Grafana.

az grafana create \
    --name myGrafana \
    --resource-group myResourceGroup 

Colocar los identificadores de recursos de Grafana y Azure Monitor en variables

Use az grafana show para colocar el id. de recurso de Grafana en una variable. Use az resource show para colocar el id. de recurso de Azure Monitor en una variable. Reemplace myGrafana por el nombre único de la instancia de Grafana.

grafanaId=$(az grafana show \
                --name myGrafana \
                --resource-group myResourceGroup \
                --query id \
                --output tsv)

azuremonitorId=$(az resource show \
                    --resource-group myResourceGroup \
                    --name myAzureMonitor \
                    --resource-type "Microsoft.Monitor/accounts" \
                    --query id \
                    --output tsv)

Use az aks update para vincular los recursos de Azure Monitor y Grafana al clúster de AKS.

az aks update \
    --name myAKSCluster \
    --resource-group myResourceGroup \
    --enable-azure-monitor-metrics \
    --azure-monitor-workspace-resource-id $azuremonitorId \
    --grafana-resource-id $grafanaId

Obtener credenciales del clúster

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

Visualización mediante Grafana

Nota:

En la sección siguiente, se requieren implementaciones de Prometheus y Grafana administrados por Azure.

  1. Use el ejemplo siguiente para comprobar que los pods de Azure Monitor se están ejecutando.

    kubectl get po -owide -n kube-system | grep ama-
    
    ama-metrics-5bc6c6d948-zkgc9          2/2     Running   0 (21h ago)   26h
    ama-metrics-ksm-556d86b5dc-2ndkv      1/1     Running   0 (26h ago)   26h
    ama-metrics-node-lbwcj                2/2     Running   0 (21h ago)   26h
    ama-metrics-node-rzkzn                2/2     Running   0 (21h ago)   26h
    ama-metrics-win-node-gqnkw            2/2     Running   0 (26h ago)   26h
    ama-metrics-win-node-tkrm8            2/2     Running   0 (26h ago)   26h
    
  2. Vaya a la instancia de Grafana en un explorador web.

  3. Hemos creado un panel de ejemplo. Puede encontrarse en Paneles >de Azure Managed Prometheus > Kubernetes/Networking/Clusters.

  4. Compruebe si las métricas del panel de Kubernetes/ Networking/Clusters Grafana están visibles. Si no se muestran las métricas, cambie el intervalo de tiempo a los últimos 15 minutos en el cuadro desplegable superior derecho.


Limpieza de recursos

Si no va a seguir usando esta aplicación, elimine el clúster de AKS y los demás recursos creados en este artículo con el ejemplo siguiente:

  az group delete \
    --name myResourceGroup

Pasos siguientes

En este artículo de procedimientos, ha aprendido a configurar la Network Observability de AKS para el clúster de AKS.