Conexión de Grafana a métricas de Prometheus de Azure Monitor
Artículo
La forma más común de analizar y presentar datos de Prometheus es con un panel de Grafana. Puede recopilar métricas de Prometheus en Azure de las siguientes maneras:
En este artículo se explica cómo configurar las métricas de Prometheus hospedado en Azure como origen de datos para Azure Managed Grafana, Grafana autohospedado que se ejecuta en una máquina virtual de Azure o una instancia de Grafana que se ejecuta fuera de Azure.
Punto de conexión de consulta del área de trabajo de Azure Monitor
En Azure, los datos de Prometheus se almacenan en un área de trabajo de Azure Monitor. Al configurar el origen de datos de Prometheus en Grafana, use el punto de conexión de consulta para el área de trabajo de Azure Monitor. Para buscar el punto de conexión de consulta, abra la página Información general del área de trabajo de Azure Monitor en Azure Portal.
Al crear una instancia de Azure Managed Grafana, se configura automáticamente con una identidad del sistema administrada. La identidad tiene asignado el rol Lector de datos de supervisión en el nivel de suscripción. Este rol permite que la identidad lea los datos de supervisión de la suscripción. Esta identidad se usa para autenticar Grafana en Azure Monitor. No es necesario hacer nada para configurar la identidad.
Cree el origen de datos de Prometheus en Grafana.
Para configurar Prometheus como origen de datos, siga estos pasos:
Abra su área de trabajo de Azure Managed Grafana en Azure Portal.
Seleccione el punto de conexión para ver el área de trabajo de Grafana.
Seleccione Conexiones y, a continuación, Orígenes de datos.
Seleccione Agregar origen de datos
Busque y seleccione Prometheus.
Pegue el punto de conexión de consulta del área de trabajo de Azure Monitor en el campo dirección URL del servidor de Prometheus.
En Autenticación, seleccione Autenticación de Azure.
En Autenticación de Azure, seleccione Identidad administrada en la lista desplegable Autenticación.
Desplácese hasta la parte inferior de la página y seleccione Guardar y probar.
Grafana autoadministrado
En la sección siguiente se describe cómo configurar Grafana autoadministrado en una máquina virtual de Azure para usar datos de Prometheus hospedado en Azure.
Configuración de la identidad del sistema
Siga estos pasos para permitir el acceso a todas las áreas de trabajo de Azure Monitor de un grupo de recursos o suscripción:
Abra la página Identidad de la máquina virtual en Azure Portal.
Establezca el Estado en Activado.
Seleccione Guardar.
Seleccione Asignaciones de roles de Azure para revisar el acceso existente en la suscripción.
Si el rol Lector de datos de supervisión no aparece en la lista para la suscripción o el grupo de recursos, seleccione + Agregar asignación de roles
En la lista desplegable Ámbito, seleccione Suscripción o Grupo de recursos. Seleccionar Suscripción permite el acceso a todas las áreas de trabajo de Azure Monitor de la suscripción. Al seleccionar Grupo de recursos solo se permite el acceso a las áreas de trabajo de Azure Monitor del grupo de recursos seleccionado.
Seleccione la suscripción específica o el grupo de recursos donde se encuentra el área de trabajo de Azure Monitor.
En la lista desplegable Rol, seleccione Lector de datos de supervisión.
Seleccione Guardar.
Configuración de Grafana para la autenticación de Azure
Las versiones 9.x y posteriores de Grafana admiten la autenticación de Azure, pero no está habilitada de forma predeterminada. Para habilitar la autenticación de Azure, actualice la configuración de Grafana y reinicie la instancia de Grafana. Para buscar el archivo grafana.ini, revise el documento Configurar Grafana de Grafana Labs.
Habilite la autenticación de Azure mediante los pasos siguientes:
Busque y abra el archivo grafana.ini en la máquina virtual.
En la sección [auth] del archivo de configuración, cambie la opción azure_auth_enabled a true.
En la sección [azure] del archivo de configuración, cambie la opción managed_identity_enabled a true.
Reinicie la instancia de Grafana.
Cree el origen de datos de Prometheus en Grafana
Configure Prometheus como origen de datos mediante los pasos siguientes:
Abra Grafana en el explorador.
Seleccione Conexiones y, a continuación, Orígenes de datos.
Seleccione Agregar origen de datos
Busque y seleccione Prometheus.
Pegue el punto de conexión de consulta del área de trabajo de Azure Monitor en el campo dirección URL del servidor de Prometheus.
En Autenticación, seleccione Autenticación de Azure.
En Autenticación de Azure, seleccione Identidad administrada en la lista desplegable Autenticación.
Desplácese hasta la parte inferior de la página y seleccione Guardar y probar.
Grafana hospedado fuera de Azure
Si la instancia de Grafana no está hospedada en Azure, puede conectarse a los datos de Prometheus en el área de trabajo de Azure Monitor mediante Microsoft Entra ID.
Configure la autenticación de Microsoft Entra ID mediante los pasos siguientes:
Registro de una aplicación con Microsoft Entra ID
Conceda acceso a la aplicación al área de trabajo de Azure Monitor.
Configure Grafana autohospedado con las credenciales de la aplicación.
Registro de una aplicación con Microsoft Entra ID
Para registrar una aplicación, abra la página Información general de Active Directory en el Azure Portal.
Seleccione Registro de aplicaciones.
En la página Registrar una aplicación, escriba el Nombre de la aplicación.
Seleccione Registrar.
Anote los valores de identificador de aplicación (cliente) y de identificador de directorio (inquilino), ya que se usan en la configuración de autenticación de Grafana.
En la página de información general de la aplicación, seleccione Certificados y secretos
En la pestaña Secretos de cliente, seleccione Nuevo secreto de cliente.
Escriba una Descripción.
Seleccione un período de expiración en la lista desplegable y seleccione Agregar.
Nota
Cree un proceso para renovar el secreto y actualice la configuración del origen de datos de Grafana antes de que expire el secreto.
Una vez que el secreto expira, Grafana pierde la capacidad de consultar datos desde el área de trabajo de Azure Monitor.
Copie y guarde el valor del secreto de cliente.
Nota
Los valores de secreto de cliente solo se pueden ver inmediatamente después de la creación. Asegúrese de guardar el secreto antes de salir de la página.
Permitir el acceso de la aplicación al área de trabajo
Permita que la aplicación consulte datos desde el área de trabajo de Azure Monitor.
Abra el área de trabajo de Azure Monitor en Azure Portal.
En la página Información general, anote el punto de conexión de consulta, ya que se usa al configurar el origen de datos de Grafana.
Seleccione Access Control (IAM) .
Seleccione Agregar y, luego, Agregar asignación de roles en la página Control de acceso (IAM).
En la página Agregar asignación de roles, busque Supervisión.
Seleccione el lector de datos de supervisión y, luego, seleccione la pestaña Miembros.
Ha creado un registro de aplicación y le ha dado acceso para consultar datos desde el área de trabajo de Azure Monitor. El siguiente paso consiste en configurar el origen de datos de Prometheus en Grafana.
Configuración de Grafana para la autenticación de Azure
Ahora, Grafana admite la conexión a Prometheus administrado por Azure Monitor mediante el origen de datos de Prometheus. En las instancias autohospedadas de Grafana, es necesario cambiar la configuración para usar la opción de autenticación de Azure en Grafana. En el caso de las instancias de Grafana que Azure no administra, realice los cambios siguientes:
Las versiones 9.x y posteriores de Grafana admiten la autenticación de Azure, pero no está habilitada de forma predeterminada. Para habilitar la autenticación de Azure, actualice la configuración de Grafana y reinicie la instancia de Grafana. Para buscar el archivo grafana.ini, revise el documento Configurar Grafana de Grafana Labs.
Busque y abra el archivo grafana.ini en la máquina virtual.
Identifique la versión de Grafana.
Para Grafana 9.0, en la sección [feature_toggles], establezca prometheus_azure_auth en true.
Para Grafana 9.1 y versiones posteriores, en la sección [auth], establezca el valor de azure_auth_enabled en true.
Reinicie la instancia de Grafana.
Cree el origen de datos de Prometheus en Grafana
Configure Prometheus como origen de datos mediante los pasos siguientes:
Abra Grafana en el explorador.
Seleccione Conexiones y, a continuación, Orígenes de datos.
Seleccione Agregar origen de datos
Busque y seleccione Prometheus.
Pegue el punto de conexión de consulta del área de trabajo de Azure Monitor en el campo URL.
En Autenticación, seleccione Autenticación de Azure. Para versiones anteriores de Grafana, en Auth, active Azure Authentication
En Azure Authentication, seleccione Registro de aplicaciones en la lista desplegable Autenticación.
Escriba el id. de Direct(tenant), el id. de aplicación (cliente) y el secreto de cliente generado al crear el registro de la aplicación.
Desplácese hasta la parte inferior de la página y seleccione Guardar y probar.
Preguntas más frecuentes
Esta sección proporciona respuestas a preguntas comunes.
Me faltan todas o algunas métricas. ¿Cómo se puede solucionar el problema?
Puede usar la guía de solución de problemas para la ingesta de métricas de Prometheus desde el agente administrado aquí.
¿Por qué faltan métricas que tienen dos etiquetas con el mismo nombre excepto por las mayúsculas y minúsculas diferentes?
Prometheus administrado por Azure es un sistema que no distingue mayúsculas de minúsculas. Trata cadenas, como nombres de métricas, nombres de etiqueta o valores de etiqueta, como la misma serie temporal si difieren de otra serie temporal solo por el uso de mayúsculas y minúsculas de la cadena. Para obtener más información, consulte Información general sobre las métricas de Prometheus.
Veo algunas lagunas en los datos de métricas, ¿por qué ocurre esto?
Durante las actualizaciones de nodos, es posible que vea una brecha de 1 a 2 minutos en los datos de métricas para las métricas recopiladas de nuestros recopiladores de nivel de clúster. Esta brecha se debe a que el nodo en el que se ejecutan los datos se está actualizando como parte de un proceso de actualización normal. Este proceso de actualización afecta a los destinos de todo el clúster, como kube-state-metrics, y a los destinos de aplicación personalizados que se especifiquen. Esto ocurre cuando el clúster se actualiza de forma manual o mediante una actualización automática. Este comportamiento es esperado y se produce debido a la actualización del nodo en el que se ejecuta. Este comportamiento no afecta a ninguna de nuestras reglas de alerta recomendadas.