Ricevere notifiche del cluster tramite Pub/Sub

Questa pagina spiega come utilizzare Pub/Sub per ricevere notifiche sui cluster Google Kubernetes Engine (GKE).

Per impostazione predefinita, GKE indirizza queste notifiche a Cloud Logging. Puoi utilizzare tutte le funzionalità di Cloud Logging, inclusa l'esecuzione di query e la visualizzazione dei log, nonché la configurazione delle policy di avviso basate sui log. Per trovare questi log in Cloud Logging, consulta Visualizzare le notifiche del cluster in Cloud Logging.

Panoramica

Quando si verificano determinati eventi pertinenti per i cluster GKE, come importanti upgrade pianificati o bollettini sulla sicurezza disponibili, GKE pubblica notifiche relative a questi eventi come messaggi in argomenti Pub/Sub che configuri. Puoi ricevere queste notifiche in una sottoscrizione Pub/Sub, integrarle con servizi di terze parti, e filtrare in base ai tipi di notifiche che vuoi ricevere.

Per saperne di più sui vantaggi delle notifiche del cluster, sul loro funzionamento, e sull'importanza del filtraggio, consulta Notifiche del cluster. Puoi configurare le notifiche del cluster nei cluster Standard nuovi ed esistenti e aggiornando i cluster Autopilot esistenti.

Prima di iniziare

Prima di iniziare, assicurati di aver eseguito le seguenti attività:

  • Abilita l'API Google Kubernetes Engine.
  • Abilita l'API Google Kubernetes Engine
  • Se vuoi utilizzare Google Cloud CLI per questa attività, installala e poi inizializza gcloud CLI. Se hai già installato gcloud CLI, scarica l'ultima versione eseguendo il gcloud components update comando. Le versioni precedenti di gcloud CLI potrebbero non supportare l'esecuzione dei comandi descritti in questo documento.

Autorizzazioni per le notifiche del cluster tra progetti

Per utilizzare un argomento Pub/Sub di un progetto diverso da quello del cluster, concedi i seguenti ruoli dal progetto dell'argomento al service-PROJECT_NUMBER@container-engine-robot.iam.gserviceaccount.com account di servizio nel progetto del cluster:

Abilitare le notifiche del cluster in un cluster esistente

Puoi abilitare le notifiche del cluster GKE in un cluster esistente utilizzando Google Cloud CLI o la Google Cloud console.

Puoi scegliere di creare un argomento per tutti i cluster o più argomenti per gruppi di cluster.

gcloud

Per abilitare le notifiche del cluster in un cluster esistente, esegui il seguente comando:

gcloud container clusters update CLUSTER_NAME \
    --location=CONTROL_PLANE_LOCATION \
    --notification-config=pubsub=ENABLED,pubsub-topic=projects/TOPIC_PROJECT_ID/topics/TOPIC_NAME,filter=NOTIFICATION_TYPE

Sostituisci quanto segue:

  • CLUSTER_NAME: il nome del tuo cluster.
  • CONTROL_PLANE_LOCATION: la località Compute Engine del piano di controllo del cluster. Fornisci una regione per i cluster regionali o una zona per i cluster zonali.
  • TOPIC_PROJECT_ID: l'ID progetto del progetto dell'argomento Pub/Sub. Google Cloud Se il progetto dell'argomento è diverso dal progetto del cluster, assicurati di aver concesso le autorizzazioni richieste. Per saperne di più, consulta Autorizzazioni per le notifiche del cluster tra progetti.
  • TOPIC_NAME: il nome dell'argomento Pub/Sub.
  • NOTIFICATION_TYPE: un elenco delimitato da barre verticali (|) dei tipi di notifiche che vuoi ricevere. Ad esempio, filter="UpgradeEvent|SecurityBulletinEvent" invia solo le notifiche UpgradeEvent e SecurityBulletinEvent, ignorando tutti gli altri tipi.

Console

Per abilitare le notifiche del cluster in un cluster esistente:

  1. Vai alla pagina Google Kubernetes Engine nella Google Cloud console.

    Vai a Google Kubernetes Engine

  2. Fai clic sul nome del cluster da modificare.

  3. Nella sezione Automazione, accanto a Notifiche, fai clic Modifica notifiche.

  4. Nella finestra di dialogo Modifica notifiche, seleziona la casella di controllo Abilita notifiche.

  5. Nell'elenco a discesa, seleziona l'argomento Pub/Sub che hai creato.

  6. Per filtrare le notifiche, seleziona la casella di controllo Filtra tipi di notifiche , quindi seleziona i tipi di notifiche che vuoi ricevere.

  7. Fai clic su Salva modifiche.

Dopo aver abilitato le notifiche, scegli il tipo di sottoscrizione per l'argomento.

Filtrare le notifiche del cluster

Puoi filtrare le notifiche in base al tipo di notifica per assicurarti di ricevere le notifiche che ti interessano.

Puoi scegliere di filtrare le notifiche utilizzando i seguenti metodi:

  • GKE: specifica i valori per filter nel --notification-config flag, come mostrato negli esempi precedenti per l'abilitazione delle notifiche del cluster.
  • Pub/Sub: configura la sottoscrizione Pub/Sub per filtrare i messaggi quando crei una sottoscrizione.

Modificare i filtri esistenti in GKE

Per modificare i filtri delle notifiche del cluster GKE esistenti, segui le istruzioni riportate in Abilitare le notifiche in un cluster esistente e specifica i nuovi tipi di notifiche da filtrare nel comando gcloud o seleziona i nuovi tipi nella Google Cloud console.

Disabilitare i filtri in GKE

Puoi disabilitare i filtri delle notifiche GKE e ricevere tutti i tipi di notifiche applicabili al tuo cluster utilizzando gcloud CLI o la Google Cloud console.

gcloud

Per disabilitare i filtri utilizzando gcloud CLI, esegui il seguente comando:

gcloud container clusters update CLUSTER_NAME \
  --location=CONTROL_PLANE_LOCATION \
  --notification-config=pubsub=ENABLED,pubsub-topic=projects/TOPIC_PROJECT_ID/topics/TOPIC_NAME

Console

Per disabilitare i filtri utilizzando la Google Cloud console:

  1. Vai alla pagina Google Kubernetes Engine nella Google Cloud console.

    Vai a Google Kubernetes Engine

  2. Fai clic sul nome del cluster da modificare.

  3. Nella sezione Automazione, accanto a Notifiche, fai clic Modifica notifiche.

  4. Nella finestra di dialogo Modifica notifiche, deseleziona la casella di controllo Filtra tipi di notifiche.

  5. Fai clic su Salva modifiche.

Verificare la configurazione delle notifiche del cluster

In modalità Autopilot, puoi verificare le notifiche del cluster nel seguente modo:

  1. Avvia un upgrade del piano di controllo.
  2. Attendi che GKE esegua automaticamente l'upgrade dei nodi alla nuova versione. Il tempo necessario può variare in base alle finestre di manutenzione e alle esclusioni configurate.
  3. Dopo che GKE ha eseguito l'upgrade dei nodi, controlla la sottoscrizione Pub/Sub.

In modalità Standard, puoi verificare le notifiche del cluster nel seguente modo:

  1. Esegui l'upgrade di un pool di nodi specifico a una nuova versione. Se non vuoi modificare la versione GKE sui nodi, puoi eseguire l'upgrade alla stessa versione attualmente presente sui nodi.

  2. Dopo che GKE ha eseguito l'upgrade dei nodi, controlla la sottoscrizione Pub/Sub.

Puoi verificare manualmente la configurazione solo per il tipo di notifica UpgradeEvent. Se i filtri sono configurati per ignorare questo tipo, non vedrai un messaggio.

Disabilitare le notifiche del cluster

Puoi disabilitare le notifiche del cluster utilizzando gcloud CLI o la Google Cloud console.

gcloud

Per disabilitare le notifiche utilizzando gcloud CLI, esegui il seguente comando:

gcloud container clusters update CLUSTER_NAME \
  --location=CONTROL_PLANE_LOCATION \
  --notification-config=pubsub=DISABLED

Console

Per disabilitare le notifiche utilizzando la Google Cloud console:

  1. Vai alla pagina Google Kubernetes Engine nella Google Cloud console.

    Vai a Google Kubernetes Engine

  2. Fai clic sul nome del cluster da modificare.

  3. Nella sezione Automazione, accanto a Notifiche, fai clic Modifica notifiche.

  4. Nella finestra di dialogo Modifica notifiche, deseleziona la casella di controllo Abilita notifiche.

  5. Fai clic su Salva modifiche.

Facoltativamente, elimina l'argomento Pub/Sub che hai creato per le notifiche.

Passaggi successivi