Supervisión y registro de datos
Se aplica a: AKS en Azure Local 22H2, AKS en Windows Server
En este artículo se describe cómo supervisar la implementación de Azure Kubernetes Service (AKS) y recopilar datos de registro en AKS habilitados por Azure Arc. Aprenderá a configurar y acceder a la supervisión local mediante Prometheus
y Graphana
, y a recopilar y ver registros mediante Elasticsearch
, Fluent Bit
y Kibana
(EFK).
Hay disponibles dos tipos de soluciones de supervisión y registro, como se describe en la tabla siguiente:
Solución | Conectividad de Azure | Soporte técnico y servicio | Costo | Despliegue |
---|---|---|---|---|
Azure Monitor | Requiere la conexión del clúster de Kubernetes a Azure mediante Azure Arc para Kubernetes. | Soporte técnico completo y mantenimiento de Microsoft. | Requiere registrarse en el servicio Azure Monitor. | Uso de Azure Arc para la supervisión de clústeres. |
Monitorización y registro en las instalaciones | No requiere conectividad de Azure. | Se admite como software de código abierto por Microsoft (sin contrato de soporte técnico o SLA), la comunidad o proveedores externos. | Dependiente del proveedor. | Impulsado por el cliente. Consulte Supervisión de clústeres mediante el uso de supervisión local. |
Para usar Azure Monitor con clústeres de Kubernetes, consulte la información general de Azure Monitor.
Uso de la supervisión en las instalaciones
Es fundamental supervisar el estado, el rendimiento y el uso de recursos de los nodos y cargas de trabajo del plano de control en el clúster al ejecutar aplicaciones en producción. La solución de supervisión recomendada incluye las dos herramientas siguientes:
- prometheus es un kit de herramientas de supervisión y alertas que puede usar para supervisar cargas de trabajo en contenedores. Prometheus funciona con diferentes tipos de recopiladores y agentes para recopilar métricas y almacenarlas en una base de datos donde puede consultar los datos y ver los informes. AKS Arc facilita la implementación de Prometheus, que se describe más adelante en este artículo.
- Grafana es una herramienta que se usa para ver, consultar y visualizar métricas en los paneles de Grafana. También puede configurar Grafana para que use Prometheus como origen de datos. Debe tener su propia copia con licencia de Grafana con AKS Arc.
Información general sobre la solución de supervisión
Como parte de la solución Prometheus en AKS habilitada por Arc, los siguientes componentes se implementan y configuran automáticamente:
La implementación se basa en el gráfico de Helm Kube-Prometheus-stack, que se amplía para admitir el exportador de Windows y asegura la extracción de métricas entre Prometheus y los agentes. Una vez implementada la solución Prometheus, el exportador de Node se ejecuta en cada nodo de Linux y el exportador de Windows se ejecuta en cada nodo de Windows.
Nota
Dado que el operador de Prometheus, Prometheus y los componentes de métricas de estado de Kube solo se admiten en Linux, debe aprovisionar al menos un nodo Linux en el clúster de AKS para implementar esta solución.
Los objetos y puntos de conexión que recopila la solución de Prometheus incluyen los siguientes elementos:
- Métricas de estado de Kube para recopilar varias métricas proporcionadas por Kubernetes
- Servidor de API de Kubernetes
- Kubelet
- Exportador de nodos para recopilar métricas para nodos de Linux
- Exportador de Windows para recopilar métricas para nodos de Windows
Para ver los paneles de Grafana disponibles en AKS Arc, consulte Paneles de Grafana.
Implementación de la solución de supervisión mediante PowerShell
En esta sección se describen las dos opciones que puede usar para implementar la supervisión en un clúster de cargas de trabajo.
Opción 1: Implementación de la solución de supervisión al crear el clúster de cargas de trabajo
Para habilitar la supervisión, proporcione el parámetro -enableMonitoring
al usar New-AksHciCluster para crear el clúster de cargas de trabajo, como se muestra en el ejemplo siguiente:
New-AksHciCluster -name mynewcluster -enableMonitoring
La supervisión se instala con la siguiente configuración predeterminada:
- El tamaño del volumen persistente que se aprovisiona para almacenar métricas (
storageSizeGB
) es de 100 GB. - El tiempo de retención de las métricas recopiladas (
retentionTimeHours
) es de 240 horas (o 10 días).
Opción 2: Implementación de la solución de supervisión en un clúster de carga de trabajo existente
Ejecute el comando Install-AksHciMonitoring para implementar la solución de supervisión en un clúster de cargas de trabajo existente, como se indica a continuación:
Install-AksHciMonitoring -Name mycluster -storageSizeGB 100 -retentionTimeHours 240
El parámetro -storageSizeGB
establece el tamaño del volumen persistente que se aprovisiona para almacenar métricas y el parámetro -retentionTimeHours
establece la cantidad de tiempo que se conservan las métricas recopiladas.
La solución de supervisión se instala en un espacio de nombres independiente denominado monitoring
y usa una clase StorageClass denominada monitoring-sc
. Prometheus se expone en un punto de conexión interno al que solo se puede acceder desde dentro del clúster en http://akshci-monitoring-prometheus-svc.monitoring:9090
.
Desinstalación de la solución de supervisión mediante PowerShell
Ejecute el comando Uninstall-AksHciMonitoring
PowerShell para desinstalar la solución de supervisión de AKS Arc, como se indica a continuación:
Uninstall-AksHciMonitoring -Name <target cluster name>
El proceso de desinstalación quita todo, incluido el espacio de nombres, StorageClass y los datos y métricas reales del volumen persistente.
Implementación de Grafana y configuración para usar Prometheus
Puede seguir las instrucciones para implementar Grafana que esté disponible públicamente. También puede ver la guía de implementación de Microsoft para usar Grafana, que detalla cómo implementar y configurar Grafana para conectarla a una instancia de AKS Prometheus. En esta página de GitHub también se describe cómo agregar paneles de Grafana que Microsoft pone a disposición específicamente para AKS habilitado por Arc.
Registro local
El registro es fundamental para solucionar problemas y diagnósticos. La solución de registro en AKS Arc se basa en Elasticsearch, Fluent Bit y Kibana (EFK). Estos componentes se implementan como contenedores:
- Fluent Bit es el procesador y reenviador de registros que recopila datos y registros de diferentes orígenes. A continuación, da formato, unifica y los almacena en Elasticsearch.
- Elasticsearch es un motor de búsqueda y análisis distribuido capaz de almacenar de forma centralizada los registros para búsquedas rápidas y análisis de datos.
- Kibana proporciona visualizaciones interactivas en un panel web. Esta herramienta le permite ver y consultar los registros almacenados en Elasticsearch y, a continuación, visualizarlos a través de gráficos y paneles.
Para configurar una solución de registro local, consulte los pasos para configurar el registro para acceder a Kibana. En este artículo se incluyen todos los componentes necesarios para recopilar, agregar y consultar registros de contenedor en el clúster.
Para conocer los pasos de configuración avanzada, consulte Registro de Windows.