Receba notificações de clusters através do Pub/Sub

Esta página mostra-lhe como usar o Pub/Sub para receber notificações sobre os seus clusters do Google Kubernetes Engine (GKE).

Por predefinição, o GKE encaminha estas notificações para o Cloud Logging. Pode usar todas as capacidades do Cloud Logging, incluindo consultar e ver registos, e configurar políticas de alerta baseadas em registos. Para encontrar estes registos no Cloud Logging, consulte o artigo Ver notificações de clusters no Cloud Logging.

Vista geral

Quando ocorrem determinados eventos relevantes para os seus clusters do GKE, como atualizações agendadas importantes ou boletins de segurança disponíveis, o GKE publica notificações sobre esses eventos como mensagens em tópicos do Pub/Sub que configura. Pode receber estas notificações numa subscrição do Pub/Sub, integrar com serviços de terceiros e filtrar os tipos de notificações que quer receber.

Para saber mais sobre as vantagens das notificações agrupadas, como funcionam as notificações e por que motivo a filtragem é importante, consulte o artigo Notificações agrupadas. Pode configurar notificações de clusters em clusters padrão novos e existentes, e atualizando clusters do Autopilot existentes.

Antes de começar

Antes de começar, certifique-se de que realizou as seguintes tarefas:

  • Ative a API Google Kubernetes Engine.
  • Ative a API Google Kubernetes Engine
  • Se quiser usar a CLI gcloud para esta tarefa, instale-a e, em seguida, inicialize-a. Se instalou anteriormente a CLI gcloud, execute gcloud components update para obter a versão mais recente.

Autorizações para notificações de clusters entre projetos

Para usar um tópico Pub/Sub de um projeto diferente do seu cluster, conceda as seguintes funções do projeto do tópico à conta de serviço no projeto do cluster:service-PROJECT_NUMBER@container-engine-robot.s3ns.iam.gserviceaccount.com

Ative as notificações de clusters num novo cluster

Pode ativar as notificações de clusters do GKE num novo cluster padrão através da CLI Google Cloud ou da Trusted Cloud consola. Para ativar a notificação em clusters do Autopilot, primeiro tem de criar um cluster do Autopilot e, em seguida, atualizar o cluster para usar notificações de cluster.

Pode optar por criar um tópico para todos os clusters ou criar vários tópicos para grupos de clusters.

gcloud

Para ativar as notificações de cluster num novo cluster, execute o seguinte comando:

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

Substitua o seguinte:

  • CLUSTER_NAME: o nome do novo cluster.
  • CONTROL_PLANE_LOCATION: a localização do Compute Engine do plano de controlo do seu cluster. Indique uma região para clusters regionais ou uma zona para clusters zonais.
  • TOPIC_PROJECT_ID: o Trusted Cloud by S3NS ID do projeto do projeto do seu tópico do Pub/Sub. Se o seu projeto de tópicos for diferente do projeto de clusters, certifique-se de que concedeu as autorizações necessárias. Para mais informações, consulte o artigo Autorizações para notificações de clusters entre projetos.
  • TOPIC_NAME: o nome do seu tópico do Pub/Sub.
  • NOTIFICATION_TYPE: uma lista delimitada por barras (|) dos tipos de notificações que quer receber. Por exemplo, filter="UpgradeEvent|SecurityBulletinEvent" envia apenas notificações UpgradeEvent e SecurityBulletinEvent, ignorando todos os outros tipos.

Consola

Para ativar as notificações de cluster num novo cluster padrão, faça o seguinte:

  1. Na Trusted Cloud consola, aceda à página Criar um cluster do Kubernetes.

    Aceda a Crie um cluster do Kubernetes

  2. No painel de navegação, na secção Cluster, clique em Automação.

  3. Selecione a caixa de verificação Ativar notificações.

  4. Na lista pendente, selecione o tópico do Pub/Sub que criou.

  5. Para filtrar as notificações, selecione a caixa de verificação Filtrar tipos de notificações e, de seguida, selecione os tipos de notificações que quer receber.

  6. Continue a configurar o cluster.

  7. Clique em Criar.

Depois de ativar as notificações, escolha o tipo de subscrição para o seu tópico.

Ative as notificações de clusters num cluster existente

Pode ativar as notificações de clusters do GKE num cluster existente através da CLI Google Cloud ou da Trusted Cloud consola.

Pode optar por criar um tópico para todos os clusters ou criar vários tópicos para grupos de clusters.

gcloud

Para ativar as notificações de cluster num cluster existente, execute o seguinte 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

Substitua o seguinte:

  • CLUSTER_NAME: o nome do cluster.
  • CONTROL_PLANE_LOCATION: a localização do Compute Engine do plano de controlo do seu cluster. Indique uma região para clusters regionais ou uma zona para clusters zonais.
  • TOPIC_PROJECT_ID: o Trusted Cloud by S3NS ID do projeto do projeto do seu tópico do Pub/Sub. Se o seu projeto de tópicos for diferente do projeto de clusters, certifique-se de que concedeu as autorizações necessárias. Para mais informações, consulte o artigo Autorizações para notificações de clusters entre projetos.
  • TOPIC_NAME: o nome do seu tópico do Pub/Sub.
  • NOTIFICATION_TYPE: uma lista delimitada por barras (|) dos tipos de notificações que quer receber. Por exemplo, filter="UpgradeEvent|SecurityBulletinEvent" envia apenas notificações UpgradeEvent e SecurityBulletinEvent, ignorando todos os outros tipos.

Consola

Para ativar as notificações de clusters num cluster existente, faça o seguinte:

  1. Aceda à página do Google Kubernetes Engine na Trusted Cloud consola.

    Aceda ao Google Kubernetes Engine

  2. Clique no nome do cluster que quer modificar.

  3. Na secção Automatização, junto a Notificações, clique em Editar notificações.

  4. Na caixa de diálogo Editar notificações, selecione a caixa de verificação Ativar notificações.

  5. Na lista pendente, selecione o tópico do Pub/Sub que criou.

  6. Para filtrar as notificações, selecione a caixa de verificação Filtrar tipos de notificações e, de seguida, selecione os tipos de notificações que quer receber.

  7. Clique em Guardar alterações.

Depois de ativar as notificações, escolha o tipo de subscrição para o seu tópico.

Filtre notificações de clusters

Pode filtrar as notificações por tipo de notificação para garantir que recebe as notificações que quer.

Pode optar por filtrar as notificações através dos seguintes métodos:

  • GKE: especifique valores para filter no comando --notification-config, conforme mostrado nos exemplos anteriores para ativar as notificações de cluster.
  • Pub/Sub: configure a sua subscrição do Pub/Sub para filtrar mensagens quando cria uma subscrição.

Modifique filtros existentes no GKE

Para modificar os filtros de notificação do cluster do GKE existente, siga as instruções em Ative as notificações num cluster existente e especifique os novos tipos de notificação a filtrar no comando gcloud ou selecione os novos tipos na consola Trusted Cloud .

Desative filtros no GKE

Pode desativar os filtros de notificação do GKE e receber todos os tipos de notificação aplicáveis ao seu cluster através da CLI gcloud ou da Trusted Cloud consola.

gcloud

Para desativar filtros através da CLI gcloud, execute o seguinte comando:

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

Consola

Para desativar filtros através da Trusted Cloud consola, faça o seguinte:

  1. Aceda à página do Google Kubernetes Engine na Trusted Cloud consola.

    Aceda ao Google Kubernetes Engine

  2. Clique no nome do cluster que quer modificar.

  3. Na secção Automatização, junto a Notificações, clique em Editar notificações.

  4. Na caixa de diálogo Editar notificações, desmarque a caixa de verificação Filtrar tipos de notificações.

  5. Clique em Guardar alterações.

Valide a configuração das notificações de clusters

No modo de piloto automático, pode validar as notificações de clusters da seguinte forma:

  1. Inicie uma atualização do plano de controlo.
  2. Aguarde que o GKE atualize automaticamente os seus nós para a nova versão. O tempo necessário pode variar com base nas janelas de manutenção configuradas e nas exclusões.
  3. Depois de o GKE atualizar os seus nós, verifique a sua subscrição do Pub/Sub.

No modo padrão, pode validar as notificações de clusters da seguinte forma:

  1. Atualize um node pool específico para uma nova versão. Se não quiser alterar a versão do GKE nos seus nós, pode atualizar para a mesma versão atualmente nos nós.

  2. Depois de o GKE atualizar os seus nós, verifique a sua subscrição do Pub/Sub.

Só pode validar manualmente a configuração para o tipo de notificação UpgradeEvent. Se os seus filtros estiverem configurados para ignorar este tipo, não vê uma mensagem.

Desative as notificações de clusters

Pode desativar as notificações de clusters através da CLI gcloud ou da Trusted Cloud consola.

gcloud

Para desativar as notificações através da CLI gcloud, execute o seguinte comando:

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

Consola

Para desativar as notificações através da Trusted Cloud consola, faça o seguinte:

  1. Aceda à página do Google Kubernetes Engine na Trusted Cloud consola.

    Aceda ao Google Kubernetes Engine

  2. Clique no nome do cluster que quer modificar.

  3. Na secção Automatização, junto a Notificações, clique em Editar notificações.

  4. Na caixa de diálogo Editar notificações, desmarque a caixa de verificação Ativar notificações.

  5. Clique em Guardar alterações.

Opcionalmente, elimine o tópico do Pub/Sub que criou para as notificações.

O que se segue?