Compartilhar via


Monitoramento e registro em log de dados

Aplica-se a: AKS no Azure Stack HCI 22H2, AKS no Windows Server

Este artigo descreve como monitorar a 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 Graphana, e 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 Cost 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 monitorar clusters.
Monitoramento e registro em log local 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. Controlado pelo cliente. Consulte Monitorar clusters usando o 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 painel de controle em seu cluster ao executar aplicativos em produção. A solução de monitoramento recomendada inclui as duas ferramentas a seguir:

  • O Prometheus é um kit de ferramentas de monitoramento e alertas que você pode usar para monitorar cargas de trabalho conteinerizadas. 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.
  • O 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 se baseia no gráfico do Helm do Kube-Prometheus-stack disponível publicamente, que é estendido para dar suporte ao exportador do Windows e garante a extração de métricas entre o Prometheus e os agentes. Depois que a solução Prometheus é implantada, o exportador de nós é executado em cada nó do Linux e o exportador do Windows é executado em cada nó do Windows.

Observação

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

Os objetos e pontos de extremidade que a solução Prometheus extrai 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 do Linux
  • Exportador do Windows para coletar métricas para nós do Windows

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

Implantar a 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 -enableMonitoring parâmetro quando você 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 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 -storageSizeGB parâmetro define o tamanho do volume persistente provisionado para armazenar métricas e o -retentionTimeHours parâmetro 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 somente dentro do cluster em http://akshci-monitoring-prometheus-svc.monitoring:9090.

Desinstalar a solução de monitoramento usando o PowerShell

Execute o comando do 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 e as métricas reais 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óstico. 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 encaminhador 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 uma dashboard Web. Essa ferramenta permite exibir e consultar logs armazenados no Elasticsearch e, em seguida, você pode visualizá-los por meio de grafos e painéis.

Para configurar uma solução de registro em log local, confira 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 de configuração avançadas, consulte Registro em log do Windows.

Próximas etapas