SMTP-Benachrichtigungskanal für Prometheus-Benachrichtigungen konfigurieren

Auf dieser Seite wird beschrieben, wie Sie einen SMTP-Benachrichtigungskanal (Simple Mail Transfer Protocol) für Prometheus-Benachrichtigungen einrichten und konfigurieren. Wenn Sie diesen Benachrichtigungskanal nicht einrichten, können Sie sich Warnungen weiterhin in infra-obs oder platform-obs ansehen.

Hinweise

Gerät konfigurieren und Software installieren

Benachrichtigungskanäle konfigurieren

Führen Sie die folgenden Schritte aus, um Slack- oder E-Mail-Benachrichtigungskanäle zu konfigurieren:

  1. Wenn Sie einen benutzerdefinierten Benachrichtigungschannel für Benachrichtigungen erstellen möchten, hosten Sie den SMTP-Server in Ihrem Netzwerk und halten Sie die SMTP-Konfigurationsdetails (IP, Nutzername, Passwort, Empfänger-E-Mail-Adresse) bereit, um die Alertmanager-Konfiguration zu erstellen. Sie können die Richtigkeit der SMTP-Host-IP-Adresse validieren, indem Sie sie von bm03 aus anpingen.

  2. Erstellen Sie eine cm.yml-Datei mit folgendem Inhalt:

    Der smtp_smarthost muss die IP-Adresse des vom Kunden gehosteten SMTP-Servers haben.

      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. Aktualisieren Sie die Pflichtfelder mit den richtigen Inhalten.

  4. Führen Sie kubectl apply -f cm.yaml aus.

  5. Erstellen Sie eine benutzerdefinierte ObservabilityPipeline-Ressource mit Folgendem:

        # 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
        ...
    

    Ersetzen Sie Folgendes:

    • PROJECT_NAMESPACE: Der Namespace Ihres Projekts.
    • CUSTOMIZED_CONFIGMAP_NAME: Der Name, den Sie für Ihre Konfigurationsdatei im ConfigMap-Objekt verwendet haben, muss genau mit dem Namen des ConfigMap-Objekts übereinstimmen. Wenn Sie beispielsweise in Schritt 2 appl-alert-notification als ConfigMap-Name verwendet haben, verwenden Sie denselben Namen für Ihre Konfigurationsdatei im ObservabilityPipeline-Objekt.

  6. Aktualisieren Sie den Namespace auf den Wert, der im vorherigen Schritt verwendet wurde.

  7. Führen Sie kubectl apply -f ob.yaml. aus

  8. Alle Benachrichtigungen, die im Grafana-Dashboard des GDC angezeigt werden, lösen eine E-Mail aus, wenn sie sich im Status firing befinden. Starten Sie Grafana für den Namespace, den Sie in den vorherigen Schritten verwendet haben, und suchen Sie nach Benachrichtigungen im Status firing. Die Benachrichtigungen werden an Ihre E‑Mail-Adresse gesendet.

Nächste Schritte