En esta página se describe el proceso para configurar canales de notificaciones con el fin de recibir alertas.
Los canales de notificaciones son los mecanismos de entrega de las alertas que has configurado. El sistema notifica a los destinatarios designados a través de estos canales cuando un evento activa una alerta. De esta forma, las alertas críticas llegan al personal adecuado a través de sus métodos de comunicación preferidos.
En los entornos aislados de Google Distributed Cloud (GDC), los canales de notificaciones predefinidos, como Slack o el correo electrónico, no están disponibles. Para recibir alertas, debes configurar al menos un canal de notificaciones personalizado. Para aplicar las configuraciones de canales, edita los recursos personalizados ObservabilityPipeline en el espacio de nombres de tu proyecto.
Al personalizar los canales de notificaciones, los administradores pueden hacer lo siguiente:
- Dirigirse a destinatarios específicos: enviar alertas directamente a personas, equipos o rotaciones de guardias responsables de solucionar problemas.
- Usar métodos de comunicación preferidos: enviar alertas a través de canales como SMS, PagerDuty, webhooks o integraciones personalizadas, en función de las preferencias individuales y los flujos de trabajo operativos.
- Evitar la saturación de alertas: reducir el ruido y asegurarse de que las alertas las reciban quienes deben tomar medidas.
Para implementar canales de notificaciones en GDC, los administradores deben definir la configuración del canal en el sistema. Este proceso suele incluir la especificación de parámetros como los siguientes:
- Tipo de canal: el tipo de canal que se utiliza.
- Destino: el endpoint al que el sistema debe enviar las notificaciones.
- Autenticación: las credenciales necesarias para acceder al destino.
Al configurar canales de notificaciones, los administradores pueden asegurarse de que la plataforma de monitorización envíe de forma eficaz las alertas críticas, lo que permite responder rápidamente a posibles problemas y mantener la estabilidad y el rendimiento de los entornos de GDC.
Antes de empezar
Para gestionar los recursos personalizados ObservabilityPipeline, debes tener los permisos necesarios.
Solicitar roles de gestión de identidades y accesos de la organización
Ponte en contacto con el administrador de gestión de identidades y accesos de tu organización para solicitar los siguientes roles:
- Creador de ObservabilityPipeline PA (
observabilitypipeline-pa-creator): crea recursos personalizadosObservabilityPipeline. - Editor de ObservabilityPipeline PA (
observabilitypipeline-pa-editor): edita o modifica recursos personalizadosObservabilityPipeline. - Lector de ObservabilityPipeline PA (
observabilitypipeline-pa-viewer): ve recursos personalizadosObservabilityPipeline. - Editor de ConfigMap (
observabilitypipeline-configmap-editor): crea objetosConfigMapen el espacio de nombres de la plataforma.
Solicitar roles de gestión de identidades y accesos del proyecto
Ponte en contacto con el administrador de gestión de identidades y accesos de tu proyecto para solicitar los siguientes roles:
- Editor de ObservabilityPipeline (
observabilitypipeline-editor): edita o modifica recursos personalizadosObservabilityPipelineen el espacio de nombres del proyecto. - Lector de ObservabilityPipeline (
observabilitypipeline-viewer): ve recursos personalizadosObservabilityPipelineen el espacio de nombres del proyecto.
Configurar canales de notificaciones
Configura canales de notificaciones para las alertas en el espacio de nombres de tu proyecto:
Define tu configuración personalizada para los canales de notificaciones en un archivo YAML llamado
alertmanager.yml. Debes seguir la misma sintaxis que la especificación de Alertmanager:Crea un objeto
ConfigMape incluye tu configuración personalizada del archivoalertmanager.ymlen el campodata.En el siguiente ejemplo se muestra cómo debe ser el objeto
ConfigMapcon el archivoalertmanager.yml:apiVersion: v1 kind: ConfigMap metadata: name: CONFIGMAP_NAME # The namespace must match your project namespace. namespace: PROJECT_NAMESPACE data: # The file name must be alertmanager.yml alertmanager.yml: | # Define your notification channels. # Add the custom configuration in the following lines of this file. # Follow the same syntax as in https://prometheus.io/docs/alerting/latest/configuration [...]Haz los cambios siguientes:
CONFIGMAP_NAME: el nombre del archivo de definiciónConfigMap. Usarás este nombre más adelante en el recurso personalizadoObservabilityPipeline.PROJECT_NAMESPACE: el espacio de nombres de tu proyecto.
Aplica el objeto
ConfigMapal servidor de la API Management en el mismo espacio de nombres que las alertas configuradas:kubectl --kubeconfig KUBECONFIG_PATH apply -f CONFIGMAP_NAME.yamlHaz los cambios siguientes:
KUBECONFIG_PATH: la ruta al archivo kubeconfig del servidor de la API Management.CONFIGMAP_NAME: el nombre del archivo de definiciónConfigMap.
Edita la especificación del recurso personalizado
ObservabilityPipelinepara importar tu configuración al campoalertmanagerConfig:# Configure the observability pipeline. apiVersion: observability.gdc.goog/v1 kind: ObservabilityPipeline metadata: # The namespace must match your project namespace. namespace: PROJECT_NAMESPACE name: OBSERVABILITY_PIPELINE_NAME spec: # Configure alerts. alerting: # The alerting configuration must be in the ConfigMap. # The value must match the ConfigMap name exactly. alertmanagerConfig: CONFIGMAP_NAME [...]Haz los cambios siguientes:
PROJECT_NAMESPACE: el espacio de nombres de tu proyecto.OBSERVABILITY_PIPELINE_NAME: el nombre del recurso personalizadoObservabilityPipeline.CONFIGMAP_NAME: el nombre que has usado para el archivo de definiciónConfigMap. El nombre debe coincidir exactamente.
Guarda el archivo.
Aplica los cambios del recurso personalizado
ObservabilityPipelineal servidor de la API Management en el mismo espacio de nombres que las alertas configuradas:kubectl --kubeconfig KUBECONFIG_PATH apply -f OBSERVABILITY_PIPELINE_NAME.yamlHaz los cambios siguientes:
KUBECONFIG_PATH: la ruta al archivo kubeconfig del servidor de la API Management.OBSERVABILITY_PIPELINE_NAME: el nombre del archivo de definiciónObservabilityPipeline.