Share via


Configuración de la observabilidad de red para Azure Kubernetes Service (AKS): Prometheus y Grafana administrados por Azure

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.

Importante

La observabilidad de red de AKS se encuentra actualmente en VERSIÓN PRELIMINAR. Consulte Términos de uso complementarios para las versiones preliminares de Microsoft Azure para conocer los términos legales que se aplican a las características de Azure que se encuentran en la versión beta, en versión preliminar o que todavía no se han publicado para que estén disponibles con carácter general.

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.

Instalación de la extensión de la CLI de Azure aks-preview

Importante

Las características en versión preliminar de AKS están disponibles como opción de participación y autoservicio. Las versiones preliminares se proporcionan "tal cual" y "como están disponibles", y están excluidas de los Acuerdos de nivel de servicio y la garantía limitada. Las versiones preliminares de AKS reciben cobertura parcial del soporte al cliente en la medida de lo posible. Por lo tanto, estas características no están diseñadas para su uso en producción. Para más información, consulte los siguientes artículos de soporte:

# 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

Registro de la marca de característica NetworkObservabilityPreview

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

Use az feature show para comprobar el estado de registro de la marca de característica:

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

Espere a que la característica diga Registrado antes de continuar con el artículo.

{
  "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"
}

Cuando la característica esté registrada, actualice el registro del proveedor de recursos Microsoft.ContainerService con az provider register:

az provider register -n Microsoft.ContainerService

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

Nota:

Para la versión 1.29 o posterior de Kubernetes, la observabilidad de red está habilitada con el perfil de métricas AMA y la marca AFEC (NetworkObservabilityPreview) hasta que alcance la disponibilidad general.

A partir de la versión 1.29 de Kubernetes, la etiqueta --enable-network-observability ya no es necesaria al crear o actualizar un clúster de Azure Kubernetes Service (AKS).

En el caso de los clústeres de AKS que ejecutan la versión 1.28 o anterior de Kubernetes, la habilitación de la observabilidad de red requiere la etiqueta --enable-network-observability durante la creación o actualización del clúster.

Creación de un clúster de AKS

Cree un clúster de AKS con az aks create. En el ejemplo siguiente, se crea un clúster de AKS denominado myAKSCluster en el grupo de recursos myResourceGroup:

Los clústeres que no son de Cilium admiten la habilitación de la observabilidad de red en un clúster existente o durante la creación de un nuevo clúster.

Use az aks create en el ejemplo siguiente para crear un clúster de AKS con observabilidad de red y que no es de Cilium.

Nuevo clúster

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

Clúster existente

Use az aks update para habilitar la observabilidad de red para un clúster existente.

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

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

Habilitación de la visualización en 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. Seleccione Paneles en el menú de navegación izquierdo, abra el panel Kubernetes/Networking en la carpeta Prometheus administrado.

  3. Compruebe si las métricas del panel de Grafana Kubernetes/Networking 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 instalar y habilitar la Observabilidad de red de AKS para el clúster de AKS.