Mengonfigurasi saluran notifikasi Simple Mail Transfer Protocol (SMTP) untuk pemberitahuan Prometheus

Saluran notifikasi Simple Mail Transfer Protocol (SMTP) di peralatan Google Distributed Cloud (GDC) dengan air gap memungkinkan Anda mengirim pemberitahuan Prometheus yang diaktifkan langsung ke email tim Anda melalui resource kustom ObservabilityPipeline. Jika Anda memilih untuk tidak mengonfigurasi notifikasi email, Anda masih dapat melihat pemberitahuan di dasbor Grafana untuk namespace infra-obs dan platform-obs.

Sebelum memulai

Mengonfigurasi perangkat dan menginstal software

Mengonfigurasi saluran notifikasi

Lakukan langkah-langkah berikut untuk mengonfigurasi saluran notifikasi Slack atau email:

  1. Untuk membuat saluran notifikasi pemberitahuan kustom, hosting server SMTP di jaringan Anda dan siapkan detail konfigurasi SMTP (IP, nama pengguna, sandi, email penerima) untuk membuat konfigurasi alertmanager. Anda dapat memvalidasi kebenaran IP host SMTP dengan melakukan ping dari bm03.

  2. Buat file cm.yml dengan konten berikut:

    smtp_smarthost harus memiliki alamat IP server SMTP yang dihosting oleh pelanggan.

      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. Perbarui kolom wajib diisi dengan konten yang benar.

  4. Jalankan kubectl apply -f cm.yaml.

  5. Buat resource kustom ObservabilityPipeline dengan hal berikut:

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

    Ganti kode berikut:

    • PROJECT_NAMESPACE: Namespace project Anda.
    • CUSTOMIZED_CONFIGMAP_NAME: Nama yang Anda gunakan untuk file konfigurasi di objek ConfigMap harus sama persis dengan nama objek ConfigMap. Misalnya di langkah 2, jika Anda menggunakan appl-alert-notification sebagai nama ConfigMap, gunakan nama yang sama untuk file konfigurasi Anda di objek ObservabilityPipeline.

  6. Perbarui namespace ke nilai yang digunakan di langkah sebelumnya.

  7. Jalankan kubectl apply -f ob.yaml.

  8. Semua pemberitahuan yang terlihat di dasbor Grafana GDC akan memicu email jika berada dalam status firing. Luncurkan Grafana untuk namespace yang Anda gunakan di langkah sebelumnya dan periksa pemberitahuan dalam status firing. Notifikasi akan dikirim ke email Anda.

Langkah berikutnya