Monitorizar e registar dados
Aplica-se a: AKS no Azure Stack HCI 22H2, AKS no Windows Server
Este artigo descreve como monitorizar a implementação do Azure Kubernetes Service (AKS) e recolher dados de registo no AKS ativado pelo Azure Arc. Saiba como configurar e aceder à monitorização no local com Prometheus
e Graphana
, e como recolher e ver registos com Elasticsearch
, Fluent Bit
e Kibana
(EFK).
Estão disponíveis dois tipos de soluções de monitorização e registo, conforme descrito na tabela seguinte:
Solução | Conectividade do Azure | Suporte e serviço | Custo | Implementação |
---|---|---|---|---|
Azure Monitor | É necessário ligar o cluster do Kubernetes ao Azure com o Azure Arc para Kubernetes. | Suporte e manutenção completos da Microsoft. | É necessário inscrever-se no serviço Azure Monitor. | Utilize o Azure Arc para monitorizar clusters. |
Monitorização e registo no local | Não requer conectividade do Azure. | Suportado como software open source pela Microsoft (sem contrato de suporte ou SLAs), pela comunidade e/ou por fornecedores externos. | Dependente do fornecedor. | Orientada pelo cliente. Veja Monitorizar clusters com a monitorização no local. |
Para utilizar o Azure Monitor com clusters do Kubernetes, veja a Descrição geral do Azure Monitor.
Utilizar a monitorização no local
É fundamental monitorizar o estado de funcionamento, o desempenho e a utilização de recursos dos nós e cargas de trabalho do plano de controlo no cluster ao executar aplicações em produção. A solução de monitorização recomendada inclui as duas ferramentas seguintes:
- O Prometheus é um toolkit de monitorização e alertas que pode utilizar para monitorizar cargas de trabalho em contentores. O Prometheus trabalha com diferentes tipos de recoletores e agentes para recolher métricas e armazená-las numa base de dados onde pode consultar os dados e ver relatórios. O AKS Arc facilita a implementação do Prometheus, que é descrito mais à frente neste artigo.
- O Grafana é uma ferramenta utilizada para ver, consultar e visualizar métricas nos dashboards do Grafana. Também pode configurar o Grafana para utilizar o Prometheus como a origem de dados. Tem de ter a sua própria cópia licenciada do Grafana com o AKS Arc.
Descrição geral da solução de monitorização
Como parte da solução Prometheus no AKS ativada pelo Arc, os seguintes componentes são implementados e configurados automaticamente:
A implementação baseia-se no gráfico Helm do Kube-Prometheus-stack disponível publicamente, que é alargado para suportar o exportador do Windows e protege a extração de métricas entre o Prometheus e os agentes. Assim que a solução Prometheus for implementada, o exportador do Node é executado em cada nó do Linux e o exportador do Windows é executado em cada nó do Windows.
Nota
Uma vez que os componentes de métricas de estado do Prometheus, Prometheus e Kube só são suportados no Linux, tem de aprovisionar pelo menos um nó do Linux no cluster do AKS para implementar esta solução.
Os objetos e pontos finais que a solução Prometheus raspa incluem os seguintes itens:
- Métricas de estado do Kube para recolher várias métricas fornecidas pelo Kubernetes
- Servidor da API do Kubernetes
- Kubelet
- Exportador de nós para recolher métricas para nós do Linux
- Exportador do Windows para recolher métricas para nós do Windows
Para ver os dashboards do Grafana disponíveis no AKS Arc, veja Dashboards do Grafana disponíveis no AKS Arc.
Implementar a solução de monitorização com o PowerShell
Esta secção descreve as duas opções que pode utilizar para implementar a monitorização num cluster de cargas de trabalho.
Opção 1: Implementar a solução de monitorização ao criar o cluster de cargas de trabalho
Para ativar a monitorização, forneça o -enableMonitoring
parâmetro quando utilizar New-AksHciCluster para criar o cluster de cargas de trabalho, conforme mostrado no exemplo seguinte:
New-AksHciCluster -name mynewcluster -enableMonitoring
A monitorização é instalada com a seguinte configuração predefinida:
- O tamanho do volume persistente aprovisionado para armazenar métricas (
storageSizeGB
) é de 100 GB. - O tempo de retenção das métricas recolhidas (
retentionTimeHours
) é de 240 horas (ou 10 dias).
Opção 2: Implementar a solução de monitorização num cluster de carga de trabalho existente
Execute o comando Install-AksHciMonitoring para implementar a solução de monitorização num cluster de cargas de trabalho existente, da seguinte forma:
Install-AksHciMonitoring -Name mycluster -storageSizeGB 100 -retentionTimeHours 240
O -storageSizeGB
parâmetro define o tamanho do volume persistente que é aprovisionado para armazenar métricas e o -retentionTimeHours
parâmetro define a quantidade de tempo que as métricas recolhidas são mantidas.
A solução de monitorização é instalada num espaço de nomes separado chamado monitoring
e utiliza uma StorageClass chamada monitoring-sc
. O Prometheus está exposto num ponto final interno acessível apenas no cluster em http://akshci-monitoring-prometheus-svc.monitoring:9090
.
Desinstalar a solução de monitorização com o PowerShell
Execute o comando do Uninstall-AksHciMonitoring
PowerShell para desinstalar a solução de monitorização do AKS Arc, da seguinte forma:
Uninstall-AksHciMonitoring -Name <target cluster name>
O processo de desinstalação remove tudo, incluindo o espaço de nomes, a StorageClass e os dados e métricas reais do volume persistente.
Implementar o Grafana e configurá-lo para utilizar o Prometheus
Pode seguir qualquer documentação de orientação para implementar o Grafana disponível publicamente. Também pode ver as orientações de implementação da Microsoft para utilizar o Grafana, que detalha como implementar e configurar o Grafana para ligá-lo a uma instância do Prometheus do AKS. Esta página do GitHub também descreve como adicionar dashboards do Grafana que a Microsoft disponibiliza para o AKS ativado pelo Arc.
Registo no local
O registo é crucial para a resolução de problemas e diagnósticos. A solução de registo no AKS Arc baseia-se em Elasticsearch, Fluent Bit e Kibana (EFK). Estes componentes são todos implementados como contentores:
- Fluent Bit é o processador de registos e reencaminhador que recolhe dados e registos de diferentes origens. Em seguida, formata, unifica e armazena-os no Elasticsearch.
- O Elasticsearch é um motor de pesquisa e análise distribuído capaz de armazenar centralmente os registos para pesquisas rápidas e análise de dados.
- O Kibana fornece visualizações interativas num dashboard Web. Esta ferramenta permite-lhe ver e consultar registos armazenados no Elasticsearch e, em seguida, pode visualizá-los através de gráficos e dashboards.
Para configurar uma solução de registo no local, veja os passos para configurar o registo para aceder ao Kibana. Este artigo inclui todos os componentes necessários para recolher, agregar e consultar registos de contentores em todo o cluster.
Para obter os passos de configuração avançados, veja Registo do Windows.
Passos seguintes
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários