Compartilhar via


Monitoramento e registro em log de dados

Aplica-se a: AKS em Azure Local 22H2, AKS em Windows Server

Este artigo descreve como monitorar sua implantação do AKS (Serviço de Kubernetes do Azure) e coletar dados de log no AKS habilitado pelo Azure Arc. Você aprenderá a configurar e acessar o monitoramento local usando Prometheus e Graphanae como coletar e exibir logs usando Elasticsearch, Fluent Bite Kibana (EFK).

Dois tipos de soluções de monitoramento e registro em log estão disponíveis, conforme descrito na tabela a seguir:

Solução Conectividade do Azure Suporte e serviço Custo Implantação
Azure Monitor Requer a conexão do cluster kubernetes ao Azure usando o Azure Arc para Kubernetes. Suporte completo e manutenção da Microsoft. Requer a inscrição para o serviço do Azure Monitor. Use o Azure Arc para monitoramento de clusters .
Monitoramento local e registro em log Não requer conectividade do Azure. Com suporte como software de software livre pela Microsoft (sem contrato de suporte ou SLAs), a comunidade e/ou fornecedores externos. Dependente do fornecedor. Orientado pelo cliente. Consulte Monitorar clusters usando monitoramento local.

Para usar o Azure Monitor com clusters Kubernetes, consulte a visão geral do Azure Monitor.

Usar o monitoramento local

É crucial que você monitore a integridade, o desempenho e o uso de recursos dos nós e cargas de trabalho do plano de controle em seu cluster ao executar aplicativos em produção. A solução de monitoramento recomendada inclui as duas ferramentas a seguir:

  • Prometheus é um kit de ferramentas de monitoramento e alerta que você pode usar para monitorar cargas de trabalho em contêineres. O Prometheus trabalha com diferentes tipos de coletores e agentes para coletar métricas e armazená-las em um banco de dados onde você pode consultar os dados e exibir relatórios. O AKS Arc facilita a implantação do Prometheus, que é descrito posteriormente neste artigo.
  • Grafana é uma ferramenta usada para exibir, consultar e visualizar métricas nos painéis do Grafana. Você também pode configurar o Grafana para usar o Prometheus como a fonte de dados. Você deve ter sua própria cópia licenciada do Grafana com o AKS Arc.

Visão geral da solução de monitoramento

Como parte da solução Prometheus no AKS habilitada pelo Arc, os seguintes componentes são implantados e configurados automaticamente:

A implantação é baseada no gráfico do Helm kube-prometheus-stack disponível publicamente, que é estendido para oferecer suporte ao exportador do Windows e protege a coleta de métricas entre o Prometheus e os agentes. Depois que a solução Prometheus é implantada, o Node exporter é executado em cada nó Linux, e o Windows exporter, em cada nó Windows.

Nota

Como os componentes do operador Prometheus, do Prometheus e das métricas de estado do Kube têm suporte apenas no Linux, você deve provisionar pelo menos um nó Linux no seu cluster AKS para implantar esta solução.

Os objetos e pontos de extremidade que a solução Prometheus coleta incluem os seguintes itens:

  • Métricas de estado do Kube para coletar várias métricas fornecidas pelo Kubernetes
  • Servidor de API do Kubernetes
  • Kubelet
  • Exportador de nós para coletar métricas para nós Linux
  • Exportador do Windows para coletar métricas para nodos do Windows

Para ver os painéis do Grafana disponíveis no AKS Arc, consulte Painéis do Grafana disponíveis no AKS Arc.

Implantar solução de monitoramento usando o PowerShell

Esta seção descreve as duas opções que você pode usar para implantar o monitoramento em um cluster de carga de trabalho.

Opção 1: implantar a solução de monitoramento ao criar o cluster de carga de trabalho

Para habilitar o monitoramento, forneça o parâmetro -enableMonitoring ao usar New-AksHciCluster para criar o cluster de carga de trabalho, conforme mostrado no exemplo a seguir:

New-AksHciCluster -name mynewcluster -enableMonitoring

O monitoramento é instalado com a seguinte configuração padrão:

  • O tamanho do volume persistente provisionado para armazenar métricas (storageSizeGB) é de 100 GB.
  • O tempo de retenção para as métricas coletadas (retentionTimeHours) é de 240 horas (ou 10 dias).

Opção 2: implantar a solução de monitoramento em um cluster de carga de trabalho existente

Execute o comando Install-AksHciMonitoring para implantar a solução de monitoramento em um cluster de carga de trabalho existente, da seguinte maneira:

Install-AksHciMonitoring -Name mycluster -storageSizeGB 100 -retentionTimeHours 240

O parâmetro -storageSizeGB define o tamanho do volume persistente provisionado para armazenar métricas e o parâmetro -retentionTimeHours define a quantidade de tempo que as métricas coletadas são retidas.

A solução de monitoramento é instalada em um namespace separado chamado monitoring e usa um StorageClass chamado monitoring-sc. O Prometheus é exposto em um ponto de extremidade interno acessível apenas dentro do cluster em http://akshci-monitoring-prometheus-svc.monitoring:9090.

Desinstalar a solução de monitoramento usando o PowerShell

Execute o comando Uninstall-AksHciMonitoring PowerShell para desinstalar a solução de monitoramento do AKS Arc da seguinte maneira:

Uninstall-AksHciMonitoring -Name <target cluster name>

O processo de desinstalação remove tudo, incluindo o namespace, o StorageClass e os dados reais e as métricas do volume persistente.

Implantar o Grafana e configurá-lo para usar o Prometheus

Você pode seguir todas as diretrizes para implantar o Grafana disponível publicamente. Você também pode exibir as diretrizes de implantação da Microsoft para usar o Grafana, que detalha como implantar e configurar o Grafana para conectá-lo a uma instância do AKS Prometheus. Esta página do GitHub também descreve como adicionar painéis do Grafana que a Microsoft disponibiliza para o AKS habilitado pelo Arc.

Registro em log local

O registro em log é crucial para solução de problemas e diagnósticos. A solução de registro em log no AKS Arc é baseada em Elasticsearch, Fluent Bit e Kibana (EFK). Esses componentes são todos implantados como contêineres:

  • Fluent Bit é o processador de log e transmissor que coleta dados e logs de diferentes fontes. Em seguida, formata, unifica e armazena-os no Elasticsearch.
  • O Elasticsearch é um mecanismo de pesquisa e análise distribuído capaz de armazenar centralmente os logs para pesquisas rápidas e análise de dados. 
  • O Kibana fornece visualizações interativas em um painel da Web. Essa ferramenta permite exibir e consultar logs armazenados no Elasticsearch e, em seguida, você pode visualizá-los por meio de grafos e dashboards.

Para configurar uma solução de registro em log local, consulte as etapas para configurar o registro em log para acessar o Kibana. Este artigo inclui todos os componentes necessários para coletar, agregar e consultar logs de contêiner em todo o cluster.

Para obter etapas avançadas de configuração, consulte Registro em log do Windows.

Próximas etapas