Configurare i canali di notifica per gli avvisi

Questa pagina descrive la procedura per configurare i canali di notifica per ricevere avvisi.

I canali di notifica sono i meccanismi di recapito degli avvisi configurati. Il sistema invia una notifica ai destinatari designati tramite questi canali quando un evento attiva un avviso. Questa procedura garantisce che gli avvisi critici raggiungano il personale appropriato tramite i metodi di comunicazione preferiti.

Negli ambienti di appliance con air gap di Google Distributed Cloud (GDC), i canali di notifica predefiniti come Slack o email non sono disponibili. Per ricevere avvisi, devi configurare almeno un canale di notifica personalizzato. Modifica le risorse personalizzate ObservabilityPipeline nello spazio dei nomi del progetto per applicare le configurazioni dei canali.

Personalizzando i canali di notifica, gli amministratori possono:

  • Scegliere come target destinatari specifici: inviare avvisi a persone, team o turni di reperibilità responsabili della risoluzione dei problemi.
  • Utilizzare i metodi di comunicazione preferiti: inviare avvisi tramite canali come SMS, PagerDuty, webhook o integrazioni personalizzate, in base alle preferenze individuali e ai flussi di lavoro operativi.
  • Prevenire l'eccesso di avvisi: ridurre il rumore e assicurarsi che gli avvisi vengano ricevuti da chi deve intervenire.

Per implementare i canali di notifica in GDC, gli amministratori devono definire la configurazione del canale all'interno del sistema. In genere, questa procedura prevede la specifica di parametri come:

  • Tipo di canale: il tipo di canale utilizzato.
  • Destinazione: l'endpoint a cui il sistema deve inviare le notifiche.
  • Autenticazione: le credenziali richieste per accedere alla destinazione.

Configurando i canali di notifica, gli amministratori possono assicurarsi che la piattaforma di monitoraggio invii in modo efficace gli avvisi critici, consentendo risposte rapide a potenziali problemi e mantenendo la stabilità e il rendimento degli ambienti GDC.

Prima di iniziare

Per gestire le risorse personalizzate ObservabilityPipeline, devi disporre delle autorizzazioni necessarie.

Richiedere i ruoli IAM dell'organizzazione

Contatta l'amministratore IAM dell'organizzazione per richiedere i seguenti ruoli:

  • ObservabilityPipeline PA Creator (observabilitypipeline-pa-creator): crea risorse personalizzate ObservabilityPipeline.
  • ObservabilityPipeline PA Editor (observabilitypipeline-pa-editor): edit or delete ObservabilityPipeline custom resources.
  • ObservabilityPipeline PA Viewer (observabilitypipeline-pa-viewer): visualizza le risorse personalizzate ObservabilityPipeline.
  • ConfigMap Editor (observabilitypipeline-configmap-editor): crea oggetti ConfigMap nello spazio dei nomi della piattaforma.

Richiedere i ruoli IAM del progetto

Contatta l'amministratore IAM del progetto per richiedere i seguenti ruoli:

  • ObservabilityPipeline Editor (observabilitypipeline-editor): modifica o elimina le risorse personalizzate ObservabilityPipeline nello spazio dei nomi del progetto.
  • ObservabilityPipeline Viewer (observabilitypipeline-viewer): visualizza le risorse personalizzate ObservabilityPipeline nello spazio dei nomi del progetto.

Configurare i canali di notifica

Configura i canali di notifica per gli avvisi nello spazio dei nomi del progetto:

  1. Definisci la configurazione personalizzata per i canali di notifica in un file YAML denominato alertmanager.yml. Devi seguire la stessa sintassi della specifica di Alertmanager:

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

  2. Crea un oggetto ConfigMap e includi la configurazione personalizzata dal file alertmanager.yml nel campo data.

    L'esempio seguente mostra l'aspetto dell'oggetto ConfigMap con il file 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
    
      [...]
    

    Sostituisci quanto segue:

    • CONFIGMAP_NAME: il nome del file di definizione ConfigMap. Utilizzerai questo nome in un secondo momento nella risorsa personalizzata ObservabilityPipeline.
    • PROJECT_NAMESPACE: lo spazio dei nomi del progetto.
  3. Applica l'oggetto ConfigMap al server dell'API di gestione nello stesso spazio dei nomi degli avvisi configurati:

    kubectl --kubeconfig KUBECONFIG_PATH apply -f CONFIGMAP_NAME.yaml
    

    Sostituisci quanto segue:

    • KUBECONFIG_PATH: il percorso del file kubeconfig per il server dell'API di gestione.
    • CONFIGMAP_NAME: il nome del file di definizione ConfigMap.
  4. Modifica la specifica della risorsa personalizzata ObservabilityPipeline per importare la configurazione nel 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
    
      [...]
    

    Sostituisci quanto segue:

    • PROJECT_NAMESPACE: lo spazio dei nomi del progetto.
    • OBSERVABILITY_PIPELINE_NAME: il nome della risorsa personalizzata ObservabilityPipeline.
    • CONFIGMAP_NAME: il nome che hai utilizzato per il file di definizione ConfigMap. Il nome deve corrispondere esattamente.
  5. Salva il file.

  6. Applica le modifiche della risorsa personalizzata ObservabilityPipeline al server dell'API di gestione nello stesso spazio dei nomi degli avvisi configurati:

    kubectl --kubeconfig KUBECONFIG_PATH apply -f OBSERVABILITY_PIPELINE_NAME.yaml
    

    Sostituisci quanto segue:

    • KUBECONFIG_PATH: il percorso del file kubeconfig per il server dell'API di gestione.
    • OBSERVABILITY_PIPELINE_NAME: il nome del file di definizione ObservabilityPipeline.