Configurar canais de notificação para alertas

Esta página descreve o processo de configuração de canais de notificação para receber alertas.

Os canais de notificação são os mecanismos de entrega dos alertas configurados. O sistema notifica os destinatários designados por esses canais quando um evento aciona um alerta. Esse processo garante que os alertas críticos cheguem às pessoas adequadas pelos métodos de comunicação preferidos.

Em ambientes isolados do Google Distributed Cloud (GDC), os canais de notificação predefinidos, como Slack ou e-mail, não estão disponíveis. Para receber alertas, configure pelo menos um canal de notificação personalizado. Edite os recursos personalizados ObservabilityPipeline no namespace do projeto para aplicar as configurações do canal.

Ao personalizar os canais de notificação, os administradores podem fazer o seguinte:

  • Direcione para destinatários específicos: envie alertas para pessoas, equipes ou plantões responsáveis por resolver problemas.
  • Use métodos de comunicação preferidos: envie alertas por canais como SMS, PagerDuty, webhooks ou integrações personalizadas, atendendo às preferências individuais e aos fluxos de trabalho operacionais.
  • Evite a fadiga de alertas: reduza o ruído e garanta que os alertas sejam recebidos por quem precisa tomar medidas.

Para implementar canais de notificação no GDC, os administradores precisam definir a configuração do canal no sistema. Esse processo normalmente envolve a especificação de parâmetros como:

  • Tipo de canal: o tipo de canal usado.
  • Destino: o endpoint para onde o sistema deve enviar notificações.
  • Autenticação: todas as credenciais necessárias para acessar o destino.

Ao configurar canais de notificação, os administradores garantem que a plataforma de monitoramento envie alertas críticos de maneira eficaz, permitindo respostas rápidas a possíveis problemas e mantendo a estabilidade e a performance dos ambientes do GDC.

Antes de começar

Para receber as permissões necessárias para gerenciar recursos personalizados do ObservabilityPipeline, peça ao administrador do IAM da organização ou do projeto para conceder a você uma das funções associadas do ObservabilityPipeline.

Além disso, para receber as permissões necessárias para gerenciar objetos ConfigMap no namespace do projeto, que são necessários para definir regras de configuração, peça ao administrador do IAM da organização ou do projeto para conceder a você a função de criador de ConfigMap.

Dependendo do nível de acesso e das permissões necessárias, você pode receber papéis de criador, editor ou leitor para esses recursos em uma organização ou um projeto. Para mais informações, consulte Preparar permissões do IAM.

Configurar canais de notificação

Configure canais de notificação para alertas no namespace do projeto:

  1. Defina sua configuração personalizada para canais de notificação em um arquivo YAML chamado alertmanager.yml. Siga a mesma sintaxe da especificação do Alertmanager:

    https://prometheus.io/docs/alerting/latest/configuration/.

  2. Crie um objeto ConfigMap e inclua sua configuração personalizada do arquivo alertmanager.yml no campo data.

    O exemplo a seguir mostra como o objeto ConfigMap precisa aparecer com o arquivo alertmanager.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
    
      [...]
    

    Substitua:

    • CONFIGMAP_NAME: o nome do arquivo de definição de ConfigMap. Você vai usar esse nome mais tarde no recurso personalizado ObservabilityPipeline.
    • PROJECT_NAMESPACE: o namespace do projeto.
  3. Aplique o objeto ConfigMap ao servidor da API Management no mesmo namespace dos alertas configurados:

    kubectl --kubeconfig KUBECONFIG_PATH apply -f CONFIGMAP_NAME.yaml
    

    Substitua:

    • KUBECONFIG_PATH: o caminho para o arquivo kubeconfig do servidor da API Management.
    • CONFIGMAP_NAME: o nome do arquivo de definição de ConfigMap.
  4. Edite a especificação do recurso personalizado ObservabilityPipeline para importar sua configuração para o campo alertmanagerConfig:

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

    Substitua:

    • PROJECT_NAMESPACE: o namespace do projeto.
    • OBSERVABILITY_PIPELINE_NAME: o nome do recurso personalizado ObservabilityPipeline.
    • CONFIGMAP_NAME: o nome usado para o arquivo de definição ConfigMap. O nome precisa ser exatamente igual.
  5. Salve o arquivo.

  6. Aplique as mudanças do recurso personalizado ObservabilityPipeline ao servidor da API Management no mesmo namespace dos alertas configurados:

    kubectl --kubeconfig KUBECONFIG_PATH apply -f OBSERVABILITY_PIPELINE_NAME.yaml
    

    Substitua:

    • KUBECONFIG_PATH: o caminho para o arquivo kubeconfig do servidor da API Management.
    • OBSERVABILITY_PIPELINE_NAME: o nome do arquivo de definição de ObservabilityPipeline.