Como gerar registros e monitorar

Os clusters do Anthos no VMware (GKE no local) incluem várias opções para geração de registros e monitoramento de clusters, incluindo serviços gerenciados baseados em nuvem, ferramentas de código aberto e validação de compatibilidade com soluções comerciais de terceiros. Nesta página, explicamos essas opções e fornecemos algumas orientações básicas sobre como selecionar a solução adequada para seu ambiente.

Opções para clusters do Anthos no VMware

Há várias opções de geração de registros e monitoramento para os clusters do Anthos no VMware:

  • Cloud Logging e Cloud Monitoring, ativados por agentes no cluster implantados com os clusters do Anthos no VMware.
  • Prometheus e Grafana, desativados por padrão
  • Configurações validadas com soluções de terceiros

Cloud Logging e Cloud Monitoring

O pacote de operações do Google Cloud é a solução de observabilidade integrada do Google Cloud. Ele oferece uma solução de geração de registros totalmente gerenciada, coleta de métricas, monitoramento, uso de painéis e emissão de alertas. O Cloud Monitoring monitora os clusters do Anthos em clusters VMware de maneira semelhante aos clusters do GKE baseados em nuvem.

Os agentes no cluster podem ser configurados para o escopo do monitoramento e da geração de registros, bem como o nível das métricas coletadas:

  • O escopo de geração de registros e monitoramento só pode ser definido como componentes do sistema (padrão) ou para componentes e aplicativos do sistema.
  • O nível das métricas coletadas pode ser configurado para um conjunto otimizado de métricas ou para métricas completas.

Consulte Como configurar agentes do Stackdriver para clusters do Anthos no VMware nesta página para mais informações.

O Logging e o Monitoring são ideais para os clientes que querem uma solução de observabilidade única, eficiente, fácil de configurar e baseada na nuvem. É altamente recomendável usar o Logging e o Monitoring ao executar cargas de trabalho apenas em clusters do Anthos no VMware ou nas cargas de trabalho do GKE e do Anthos no VMware. Para aplicativos com componentes em execução nos clusters do Anthos no VMware e na infraestrutura local tradicional, considere outras soluções para uma visualização completa desses aplicativos.

Prometheus e Grafana

O Prometheus e o Grafana são dois produtos de monitoramento de código aberto conhecidos:

  • O Prometheus coleta métricas de aplicativo e sistema.

  • O Alertmanager manipula o envio de alertas com vários mecanismos de alerta diferentes.

  • Grafana é uma ferramenta de painéis.

É possível ativar o Prometheus e o Grafana em cada cluster de administrador e cluster de usuário. Ambos são recomendados para equipes de aplicativos que tenham experiência anterior com esses produtos ou equipes operacionais que preferem manter as métricas de aplicativo dentro do cluster, bem como para solucionar problemas em caso de perda de conectividade da rede.

Soluções de terceiros

O Google trabalhou com vários provedores de soluções de monitoramento e geração de registros de terceiros para ajudar seus produtos a funcionarem bem com os clusters do Anthos no VMware. Entre eles, Datadog, Elastic e Splunk. Outros terceiros validados serão adicionados no futuro.

Os guias de soluções a seguir estão disponíveis para usar soluções de terceiros com clusters do Anthos no VMware:

Como funcionam os clusters do Logging e do Monitoring para Anthos no

Os agentes do Logging e de métricas são instalados e ativados em cada cluster quando você cria um novo cluster de administrador ou usuário.

Os agentes do Stackdriver incluem vários componentes em cada cluster:

  • Operador do Stackdriver (stackdriver-operator-*). Gerencia o ciclo de vida de todos os outros agentes do Stackdriver implantados no cluster.

  • Recurso personalizado do Stackdriver. Um recurso criado automaticamente como parte do processo de instalação do GKE On-Prem. Os usuários podem alterar o recurso personalizado para atualizar, a qualquer momento, valores como ID do projeto, nome do cluster e local do cluster.

  • Agregador de registros do Stackdriver (stackdriver-log-aggregator-*). Um StatefulSet do Fluentd que envia registros à API Cloud Logging. Se não for possível enviar os registros, o agregador de registros armazenará as entradas (até o limite de 200 GB) e tentará reenviá-las em até 24 horas. Se o buffer ficar cheio ou se o agregador de registros não conseguir acessar a API Logging por mais de 24 horas, os registros serão descartados.

  • Encaminhador de registros do Stackdriver (stackdriver-log-forwarder-*). Um daemonset do Fluentbit que encaminha registros de cada máquina para o agregador de registros do Stackdriver.

  • Coletor de métricas do Stackdriver (stackdriver-prometheus-k8s-). Um StatefulSet do Prometheus e do Stackdriver Prometheus Sidecar que envia métricas do Prometheus para a API Cloud Logging.

  • Coletor de metadados do Stackdriver (stackdriver-metadata-agent-). Uma implantação que envia metadados de recursos do Kubernetes (como pods, implantações ou nós) para a API Stackdriver Resource Metadata. Esses dados são usados para enriquecer consultas de métricas, permitindo que você consulte por nome da implantação, nome do nó ou até pelo nome do serviço do Kubernetes.

Para ver todos os agentes instalados pelo Stackdriver, execute o seguinte comando:

  kubectl -n kube-system get pods | grep stackdriver

A saída deste comando é semelhante a:

stackdriver-log-aggregator-0                  1/1     Running   0   4h31m
stackdriver-log-aggregator-1                  1/1     Running   0   4h28m
stackdriver-log-forwarder-bpf8g               1/1     Running   0   4h31m
stackdriver-log-forwarder-cht4m               1/1     Running   0   4h31m
stackdriver-log-forwarder-fth5s               1/1     Running   0   4h31m
stackdriver-log-forwarder-kw4j2               1/1     Running   0   4h29m
stackdriver-metadata-agent-cluster-level...   1/1     Running   0   4h31m
stackdriver-operator-76ddb64d57-4tcj9         1/1     Running   0   4h37m
stackdriver-prometheus-k8s-0                  2/2     Running   0   4h31m

Como configurar agentes do Stackdriver para clusters do Anthos no VMware

Os agentes do Stackdriver instalados com clusters do Anthos no VMware coletam dados sobre componentes do sistema, sujeitos às suas definições e configurações, para fins de manutenção e solução de problemas com os clusters.

Somente componentes do sistema (escopo padrão)

Após a instalação, os agentes do Stackdriver coletam registros e métricas, incluindo detalhes de desempenho (por exemplo, uso da CPU e da memória) e metadados semelhantes, para os componentes do sistema fornecidos pelo Google. Isso inclui todas as cargas de trabalho no cluster de administrador e, para clusters de usuário, as cargas de trabalho nos namespaces kube-system, gke-system, gke-connect, istio-system e config-management-system. Os agentes do Stackdriver podem ser configurados ou desativados conforme descrito nas seções a seguir.

O escopo dos registros e das métricas coletadas também pode ser expandido para incluir aplicativos. Para instruções sobre como ativar a geração de registros e o monitoramento de aplicativos, consulte Como ativar a geração de registros e o monitoramento para aplicativos do usuário.

Métricas otimizadas (métricas padrão)

Por padrão, os agentes de métricas em execução coletam no cluster coletam e informam um conjunto otimizado de métricas de contêiner e kubelet ao conjunto de operações do Google Cloud (antigo Stackdriver). Menos recursos são necessários para coletar esse conjunto otimizado de métricas, o que melhora o desempenho e a escalonabilidade geral. Isso é especialmente importante para métricas no nível do contêiner, devido à grande quantidade de objetos a serem monitorados.

Para desativar as métricas otimizadas (não recomendado), defina o campo optimizedMetrics como false no recurso personalizado do Stackdriver. Para mais informações sobre como alterar o recurso personalizado do Stackdriver, consulte Como configurar recursos de componentes do Stackdriver. Todas as métricas dos clusters do Anthos no VMware, incluindo as excluídos por padrão, são descritas em Métricas do Anthos.

Stackdriver desativado

Os agentes do Stackdriver podem ser completamente desativados, exceto o recurso Stackdriver personalizado. Antes de desativar o Stackdriver, consulte a página de suporte para detalhes sobre como isso afeta os SLAs de suporte do Google Cloud.

Para desativar clusters do Stackdriver for Anthos no VMware:

kubectl -n kube-system delete stackdriver stackdriver

Os agentes do Stackdriver capturam dados armazenados localmente, dependendo da configuração de armazenamento e retenção. A replicação dos dados no projeto do Google Cloud especificado na instalação é feita com uma conta de serviço autorizada a gravar dados nesse projeto. Os agentes do Stackdriver podem ser desativados a qualquer momento, conforme descrito anteriormente. Os dados coletados pelos agentes do Stackdriver podem ser gerenciados e excluídos como qualquer outra métrica e dados de registro, conforme descrito na documentação do Cloud Monitoring.

Requisitos de configuração do Logging e do Monitoring

Para usar o Logging e o Monitoring com um cluster, configure o projeto do Google Cloud em que você quer visualizar registros e métricas. Esse projeto do Google Cloud é chamado de projeto de geração de registros e monitoramento.

  1. Ative as seguintes APIs em seu projeto de monitoramento de registros:

  2. Conceda os papéis do IAM a sua conta de serviço de monitoramento de registros no projeto de monitoramento de registros.

    • logging.logWriter
    • monitoring.metricWriter
    • stackdriver.resourceMetadata.writer
    • monitoring.dashboardEditor

Preços

Não há cobrança para registros e métricas do sistema do Anthos.

Em clusters do Anthos no VMware, os registros e as métricas de sistema do Anthos incluem o seguinte:

  • Registros e métricas de todos os componentes em um cluster de administrador
  • Registros e métricas de componentes nesses namespaces em um cluster de usuário: kube-system, gke-system, gke-connect, knative-serving, istio-system, monitoring-system, config-management-system, gatekeeper-system, cnrm-system

Para mais informações, consulte Preços do pacote de operações do Google Cloud.

Para saber mais sobre o crédito para métricas do Cloud Logging, entre em contato com a equipe de vendas e receba mais informações sobre preços.

Como funcionam os clusters do Prometheus e do Grafana para clusters do Anthos no VMware

Cada cluster do Anthos no VMware é criado com o Prometheus e o Grafana desativados por padrão. Siga o guia de instalação para ativá-los.

O servidor Prometheus é configurado com alta disponibilidade, tendo duas réplicas em execução em dois nós separados. Os requisitos de recursos são ajustados para aceitar clusters que executam até cinco nós, cada um manipulando até 30 pods que exibem métricas personalizadas. O Prometheus tem um PersistentVolume dedicado com espaço em disco pré-alocado para ajustar os dados por um período de armazenamento de quatro dias, além de um buffer de segurança extra.

O plano de controle do administrador, assim como cada cluster de usuário, tem uma pilha de monitoramento dedicada que pode ser configurada de forma independente. Cada cluster de administrador e usuário inclui uma pilha de monitoramento que oferece um conjunto completo de recursos: servidor Prometheus para monitoramento, Grafana para observabilidade e Prometheus Alertmanager para alertas.

Todos os endpoints de monitoramento, dados de métricas transferidos e APIs de monitoramento são protegidos com componentes do Istio, usando regras mTLS e RBAC. O acesso aos dados de monitoramento é restrito apenas aos administradores do cluster.

Métricas coletadas pelo Prometheus

O Prometheus coleta as métricas e os metadados a seguir do plano de controle do administrador e dos clusters de usuário:

  • Uso de recursos, como CPU, em pods e nós
  • Métricas do plano de controle do Kubernetes
  • Métricas de complementos e componentes de sistema do Kubernetes em execução nos nós, como kubelet
  • Estado do cluster, como integridade dos pods em uma implantação
  • Métricas de aplicação
  • Métricas de máquina, como rede, entropia e inodes

Monitoramento de vários clusters

A instância do Prometheus e do Grafana, instalada no cluster de administrador, é configurada especialmente para fornecer insight em todas as instâncias dos clusters do Anthos no VMware, incluindo o cluster de administração e cada cluster de usuário. Isso permite:

  • usar um painel do Grafana para acessar métricas de todos os clusters de usuário e de administrador;
  • ver as métricas de clusters de usuário individuais nos painéis do Grafana (métricas disponíveis para consultas diretas em resolução total);
  • acessar métricas de carga de trabalho e nível de nó dos clusters de usuário para consultas, painéis e alertas agregados (as métricas de carga de trabalho são limitadas a cargas de trabalho em execução no namespace kube-system);
  • configurar alertas de clusters específicos.

A seguir