Como instalar o suporte de monitoramento e geração de registros

O Google Kubernetes Engine (GKE) inclui a integração com o Cloud Monitoring e o Cloud Logging. Essa integração permite monitorar os clusters do GKE em execução, gerenciar o sistema e depurar registros e analisar o desempenho do sistema usando recursos avançados de criação de perfil e rastreamento.

Esta página descreve como fazer o seguinte:

  • Crie um novo cluster e configure o Kubernetes Engine Monitoring ou Logging e Monitoring legados.

  • Selecione se quer coletar os registros do aplicativo ou não.

  • Desative o Cloud Monitoring e o Cloud Logging para um cluster.

O Kubernetes Engine Monitoring oferece uma opção única que permite um suporte aprimorado para o Cloud Monitoring e o Cloud Logging nos clusters. Com o Logging e o Monitoring legados, você pode ativar o Monitoring sem o Logging, mas essa opção não é compatível com o Kubernetes Engine Monitoring.

Antes de começar

  • Determine qual opção de integração de monitoramento e geração de registros você quer usar.

  • Determine se os registros do aplicativo devem ser coletados.

  • Certifique-se de que você é um proprietário do projeto que contém o cluster. O projeto precisa estar associado a um espaço de trabalho.

Como controlar a coleção de registros do aplicativo

Por padrão, o GKE coleta registros de cargas de trabalho implantadas no cluster. Essa é uma ferramenta eficiente para instrumentar seu aplicativo; No entanto, essa coleção automatizada pode não ser preferencial. A partir do GKE versão 1.15.7, você pode configurar o Kubernetes Engine Monitoring para capturar apenas registros do sistema e não coletar registros do aplicativo.

Quando a opção somente do sistema é selecionada, os seguintes registros são coletados:

  • Todos os pods em execução nos namespaces kube-system, istio-system, knative-serving, gke-system e config-management-system.

  • Principais serviços não conteinerizados, incluindo docker/containerd tempo de execução, kubelet, kubelet-monitor, node-problem-detector e kube-container-runtime-monitor.

  • As portas seriais do nó serão exibidas se os metadados da instância de VM serial-port-logging-enable estiverem definidos como true.

Como configurar o suporte de monitoramento e geração de registros para um novo cluster

Quando você cria um novo cluster do GKE, o Kubernetes Engine Monitoring é ativado por padrão. Como alternativa, você pode selecionar a integração do Logins e do monitoramento herdados para clusters executando o GKE versão 1.14 ou inferior ou desativar o conjunto de operações do Google Cloud.

As instruções de criação de cluster nesta seção abrangem apenas as opções relevantes para monitoramento e geração de registros. Para ver instruções completas sobre a criação de um cluster do GKE, leia Como criar um cluster.

CONSOLE

  1. Acesse a página Clusters do Kubernetes do GKE relacionada ao projeto. Clique no botão a seguir para acessar:

    Acessar os clusters do Kubernetes

  2. Clique em Criar cluster.

  3. Selecione uma versão Mestre para seu cluster. A versão selecionada altera as opções do Cloud Monitoring e do Cloud Logging disponíveis para você.

  4. No painel de navegação, em Cluster, clique em Recursos.

  5. Em telemetria, selecione o suporte de geração de registros e monitoramento para seu cluster:

    • Para novos clusters, o Kubernetes Engine Monitoring é ativado por padrão.

      • Se a versão Mestre for 1.15.7 ou posterior, você poderá selecionar uma das seguintes opções na lista suspensa:

        • Geração de registros e monitoramento do sistema e de cargas de trabalho (recomendado)
        • Apenas monitoramento e geração de registros do sistema (Beta)
      • Se sua versão Mestre for 1.14 ou anterior, você pode ativar o suporte ao Logging e o Monitoring legados:

        1. Na lista suspensa, selecione Stackdriver legado.
        2. Selecione Ativar o Stackdriver Logging legado ou Ativar o Stackdriver Monitoring legado, ou ambos. O Monitoring e o Logging legados podem ser ativados ou desativados separadamente.
    • Para desativar o Kubernetes Engine Monitoring, limpe o Ativar o Stackdriver Kubernetes Engine Monitoring caixa de seleção.

  6. Configure o cluster como você quiser.

  7. Clique em Criar para gerar o cluster.

GCLOUD

Use gcloud para criar seu cluster:

  1. Abra uma janela de terminal com o SDK do Cloud e gcloud instalados. Uma maneira de fazer isso é usando o Cloud Shell:

  2. No Console do Cloud, ative o Cloud Shell.

    Ativar o Cloud Shell

    Na parte inferior do Console do Cloud, uma sessão do Cloud Shell é iniciada e exibe um prompt de linha de comando. O Cloud Shell é um ambiente shell com o SDK do Cloud pré-instalado que inclui a ferramenta de linha de comando gcloud e os valores já definidos para o projeto atual. A inicialização da sessão pode levar alguns segundos.

  3. Para selecionar o suporte do Kubernetes Engine Monitoring para seu novo cluster, inclua a opção --enable-stackdriver-kubernetes no comando create:

    gcloud beta container clusters create [CLUSTER_NAME] \
          --zone=[ZONE] \
          --project=[PROJECT_ID] \
          --cluster-version=[CLUSTER_VERSION] \
          --enable-stackdriver-kubernetes
        

    Na expressão anterior, [CLUSTER_NAME] é o nome dos seus clusters, [ZONE] é a zona do Compute do cluster e [PROJECT_ID] é o ID do projeto do Google Cloud, não o nome do projeto.

    [CLUSTER_VERSION] é a versão do GKE a ser instalada no cluster. Insira a versão específica do patch para instalação, por exemplo, 1.12.8-gke.10. Caso contrário, insira a versão menor a ser instalada, por exemplo, 1.12.8, e seu cluster será criado com a versão mais recente do patch. Para ver informações sobre o controle de versão do GKE, leia Controle de versão e upgrades.

  4. Como alternativa, para selecionar Logging e Monitoring legados para uma versão do cluster do GKE 1.14 e anteriores, crie o cluster e inclua as opções --enable-cloud-logging e/ou --enable-cloud-monitoring no comando de criação. Por exemplo, uma simples criação de cluster pode ter a seguinte aparência:

    gcloud container clusters create [CLUSTER_NAME] \
          --zone=[ZONE] \
          --project=[PROJECT_ID] \
          --cluster-version=[CLUSTER_VERSION]
        

Como configurar o suporte de monitoramento e geração de registros para um cluster existente

A seção a seguir detalha como modificar a integração de monitoramento e geração de registros para um cluster do GKE existente.

Qual suporte de monitoramento e geração de registros meu cluster usa?

Para ver qual suporte de monitoramento e geração de registros seu cluster está usando, siga as etapas a seguir:

  1. No Console do Google Cloud, clique no nome do cluster:

    Acessar os clusters do Kubernetes

  2. No painel Details do seu cluster, consulte o status do Stackdriver Monitoring legado, do Stackdriver Logging legado e do Kubernetes Engine Monitoring.

    Tela de detalhes do cluster.

Modificar seu cluster

Para alterar a configuração de monitoramento e registro de um cluster existente, siga as instruções abaixo:

CONSOLE

  1. Acesse a página Clusters do Kubernetes do GKE relacionada ao projeto.

    Acessar os clusters do Kubernetes

  2. Atualize o cluster para a versão 1.12.7 ou posterior. Para ver instruções, consulte Como fazer upgrade dos clusters. Aguarde a conclusão do upgrade.

  3. Clique em Editar para o cluster:

    Edite um cluster do GKE.

  4. Selecione a opção de integração apropriada para seu cluster.

    • Para alterar para o Kubernetes Engine Monitoring, na caixa suspensa Stackdriver Kubernetes Engine Monitoring, selecione Registro do sistema e de carga de trabalho e monitoramento (recomendado).

      Escolha o suporte ao Kubernetes Engine Monitoring.

    • Para alterar para o Kubernetes Engine Monitoring com apenas registros do sistema, no menu suspenso IU do Stackdriver Kubernetes Engine Monitoring, selecione somente registro e monitoramento do sistema.

      Escolha o suporte ao Kubernetes Engine Monitoring.

    • Para mudar para o suporte a Logging e Monitoring legados (para a versão 1.14 e inferior do GKE, faça o seguinte:

      1. No Kubernetes Engine Monitoring suspenso, selecione Stackdriver legado.

      2. No menu suspenso Stackdriver Logging legado, selecione Ativado.

      3. No menu suspenso Stackdriver Monitoring legado, selecione Ativado.

        Escolha os suportes Logging e Monitoring legados.

    • Para desativar completamente a integração do conjunto de operações do Google Cloud, selecione Desativado na caixa suspensa Kubernetes Engine Monitoring.

  5. Clique em Salvar.

GCLOUD

As instruções gcloud a seguir abrangem o upgrade do suporte a monitoramento e registro do cluster usando o comando gcloud container clusters update. Veja se você usa o comando update, não o upgrade, mesmo que às vezes façamos referência a esse processo como "upgrade".

  1. Abra uma janela de terminal com o SDK do Cloud e gcloud instalados. Uma maneira de fazer isso é usando o Cloud Shell:

  2. No Console do Cloud, ative o Cloud Shell.

    Ativar o Cloud Shell

    Na parte inferior do Console do Cloud, uma sessão do Cloud Shell é iniciada e exibe um prompt de linha de comando. O Cloud Shell é um ambiente shell com o SDK do Cloud pré-instalado que inclui a ferramenta de linha de comando gcloud e os valores já definidos para o projeto atual. A inicialização da sessão pode levar alguns segundos.

  3. Se ainda não tiver feito isso, configure valores padrão para o cluster no SDK do Cloud:

        gcloud config set project [PROJECT_ID]
        gcloud config set compute/zone [ZONE]
        
  4. Atualize o cluster para a versão desejada do Kubernetes e selecione o suporte de monitoramento e geração de registros desejado no cluster. O Kubernetes Engine Monitoring é compatível com todas as versões do GKE. O Logging e o Monitoring legados são suportados no GKE 1.14 e anteriores.

  5. O comando de atualização a seguir, que ativa o Kubernetes Engine Monitoring, mostra apenas as opções necessárias para o conjunto de operações do Google Cloud:

        gcloud beta container clusters update [CLUSTER_NAME] \
          --zone=[ZONE]  --region=[REGION]  \
          --enable-stackdriver-kubernetes
          

    O campo [REGION] é a região de computação do cluster.

  6. Como alternativa, o comando de atualização a seguir, que permite o Logging e o Monitoring legados, mostra apenas as opções necessárias para o conjunto de operações do Google Cloud:

        gcloud beta container clusters update [CLUSTER_NAME] \
          --zone=[ZONE]  --region=[REGION]  \
          --logging-service logging.googleapis.com \
          --monitoring-service monitoring.googleapis.com
          

A seguir