Configurar um canal de notificação do Simple Mail Transfer Protocol (SMTP) para alertas do Prometheus

Nesta página, descrevemos como configurar e configurar um canal de notificação do Simple Mail Transfer Protocol (SMTP) para alertas do Prometheus. Se você não configurar esse canal de notificação, ainda poderá ver alertas em infra-obs ou platform-obs.

Antes de começar

Configurar o dispositivo e instalar o software

Configurar canais de notificação

Siga estas etapas para configurar canais de notificação por e-mail ou Slack:

  1. Para criar um canal de notificação de alerta personalizado, hospede o servidor SMTP na sua rede e tenha os detalhes de configuração do SMTP (IP, nome de usuário, senha, e-mail do destinatário) prontos para criar a configuração do Alertmanager. Para validar a correção do IP do host SMTP, faça um ping dele em bm03.

  2. Crie um arquivo cm.yml com o seguinte conteúdo.

    O smtp_smarthost precisa ter o endereço IP do servidor SMTP hospedado pelo cliente.

      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. Atualize os campos obrigatórios com o conteúdo correto.

  4. Execute kubectl apply -f cm.yaml.

  5. Crie um recurso personalizado ObservabilityPipeline com o seguinte:

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

    Substitua:

    • PROJECT_NAMESPACE: o namespace do projeto.
    • CUSTOMIZED_CONFIGMAP_NAME: o nome usado para o arquivo de configuração no objeto ConfigMap precisa corresponder exatamente ao nome do objeto ConfigMap. Por exemplo, na etapa 2, se você usou appl-alert-notification como o nome ConfigMap, use o mesmo nome para o arquivo de configuração no objeto ObservabilityPipeline.

  6. Atualize o namespace para o valor usado na etapa anterior.

  7. Executar kubectl apply -f ob.yaml.

  8. Todos os alertas visíveis no painel do Grafana do GDC acionam um e-mail se estiverem no estado firing. Inicie o Grafana para o namespace usado nas etapas anteriores e verifique se há alertas no estado firing. Os alertas são enviados para seu e-mail.

A seguir