Configuración de la Observabilidad de red para Azure Kubernetes Service (AKS): BYO 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 Observabilidad de red y a usar BYO Prometheus y Grafana para visualizar las métricas que se extraen.
Nota:
A partir de la versión 1.29 de Kubernetes, la característica de observabilidad de red ya no admite Bring Your Own (BYO) Prometheus y Grafana. Sin embargo, todavía puede habilitarlo mediante la oferta de Prometheus y Grafana administrada por Azure
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
Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
Instalaciones de BYO Prometheus y Grafana.
Use el entorno de Bash en Azure Cloud Shell. Para más información, consulte Inicio rápido para Bash en Azure Cloud Shell.
Si prefiere ejecutar comandos de referencia de la CLI localmente, instale la CLI de Azure. Si utiliza Windows o macOS, considere la posibilidad de ejecutar la CLI de Azure en un contenedor Docker. Para más información, vea Ejecución de la CLI de Azure en un contenedor de Docker.
Si usa una instalación local, inicie sesión en la CLI de Azure mediante el comando az login. Siga los pasos que se muestran en el terminal para completar el proceso de autenticación. Para ver otras opciones de inicio de sesión, consulte Inicio de sesión con la CLI de Azure.
En caso de que se le solicite, instale las extensiones de la CLI de Azure la primera vez que la use. Para más información sobre las extensiones, consulte Uso de extensiones con la CLI de Azure.
Ejecute az version para buscar cuál es la versión y las bibliotecas dependientes que están instaladas. Para realizar la actualización a la versión más reciente, ejecute az upgrade.
- 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
Creación de un clúster de AKS
Cree un clúster de AKS con el comando 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.
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.
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
Obtener credenciales del clúster
az aks get-credentials --name myAKSCluster --resource-group myResourceGroup
Habilitación de la visualización en Grafana
Use el ejemplo siguiente para configurar trabajos de extracción en Prometheus y habilitar la visualización en Grafana para el clúster de AKS.
Nota
En la sección siguiente se requieren instalaciones de Prometheus y Grafana.
Agregue el siguiente trabajo de extracción a la configuración de Prometheus existente y reinicie el servidor de 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: (.*)
En Destinos de Prometheus, compruebe que los pods de red estén presentes.
Inicie sesión en Grafana e importe el panel de Observabilidad de red con el identificador 18814.
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.
Para más información sobre la Observabilidad de red de AKS, consulte ¿Qué es la Observabilidad de red de Azure Kubernetes Service (AKS)?
Para crear un clúster de AKS con Observabilidad de red y Prometheus y Grafana administrados, consulte Configurar Observabilidad de red para Azure Kubernetes Service (AKS) y Prometheus y Grafana administrados.