Configurer un canal de notification SMTP (Simple Mail Transfer Protocol) pour les alertes Prometheus

Cette page explique comment configurer un canal de notification SMTP (Simple Mail Transfer Protocol) pour les alertes Prometheus. Si vous choisissez de ne pas configurer ce canal de notification, vous pourrez toujours consulter les alertes dans infra-obs ou platform-obs.

Avant de commencer

Configurer l'appareil et installer le logiciel

Configurer des canaux de notification

Suivez les étapes ci-dessous pour configurer les canaux de notification Slack ou par e-mail :

  1. Pour créer un canal de notification d'alerte personnalisé, hébergez le serveur SMTP dans votre réseau et préparez les informations de configuration SMTP (adresse IP, nom d'utilisateur, mot de passe, adresse e-mail du destinataire) pour créer la configuration Alertmanager. Vous pouvez vérifier l'exactitude de l'adresse IP de l'hôte SMTP en l'interrogeant depuis bm03.

  2. Créez un fichier cm.yml avec le contenu suivant :

    smtp_smarthost doit contenir l'adresse IP du serveur SMTP hébergé par le client.

      apiVersion: v1
      kind: ConfigMap
      metadata:
        # The name must match the ConfigMap name specified in the ObservabilityPipeline custom resource.
        name: appl-alert-notification
        # The namespace must match the project namespace
        namespace: PROJECT_NAMESPACE
      data:
        # The file name must be alertmanager.yml
        alertmanager.yml: |
          global:
            smtp_smarthost: SMTP HOST IP ADDRESS
            smtp_from: FROM_EMAIL_ADDRESS
            # Give empty string for unsecured smtp server in username and password and false in smtp_require_tls.
            smtp_auth_username: USERNAME
            smtp_auth_password: PASSWORD
            smtp_require_tls: true
          route:
            group_by: ['alertname', 'cluster', 'service']
            group_wait: 30s
            group_interval: 5m
            repeat_interval: 3h
            receiver: team-X-mails
          receivers:
            - name: 'team-X-mails'
              email_configs:
                - to: **RECIEVER_EMAIL_ID**
    
  3. Mettez à jour les champs obligatoires avec le contenu approprié.

  4. Exécutez kubectl apply -f cm.yaml.

  5. Créez une ressource personnalisée ObservabilityPipeline avec les éléments suivants :

        # Configure observability pipeline
      apiVersion: observability.gdc.goog/v1
      kind: ObservabilityPipeline
      metadata:
        # Choose namespace that matches the project's namespace
        namespace: PROJECT_NAMESPACE
        name: observability-config
      spec:
        # Configure Alertmanager
        alerting:
          # Permission: PA and AO
          # The alerts configuration must be in the key "alertmanager.yml" of the configMap
          alertmanagerConfig: CUSTOMIZED_CONFIGMAP_NAME
        ...
    

    Remplacez les éléments suivants :

    • PROJECT_NAMESPACE : espace de noms de votre projet.
    • CUSTOMIZED_CONFIGMAP_NAME : le nom que vous avez utilisé pour votre fichier de configuration dans l'objet ConfigMap doit correspondre exactement au nom de l'objet ConfigMap. Par exemple, si vous avez utilisé appl-alert-notification comme nom ConfigMap à l'étape 2, utilisez le même nom pour votre fichier de configuration dans l'objet ObservabilityPipeline.

  6. Remplacez l'espace de noms par la valeur utilisée à l'étape précédente.

  7. Exécuter kubectl apply -f ob.yaml.

  8. Toutes les alertes visibles sur le tableau de bord Grafana du GDC déclenchent un e-mail si elles sont à l'état firing. Lancez Grafana pour l'espace de noms que vous avez utilisé lors des étapes précédentes, puis recherchez les alertes à l'état firing. Les alertes sont envoyées à votre adresse e-mail.

Étapes suivantes