Habilitar monitoramento para clusters do Kubernetes

Este artigo descreve como habilitar o monitoramento completo dos seus clusters do Kubernetes utilizando os seguintes recursos do Azure Monitor:

Usando o portal do Azure, você pode habilitar todos os recursos ao mesmo tempo. Você também pode habilitá-los individualmente utilizando a CLI do Azure,o modelo do Azure Resource Manager, Terraform ou Azure Policy. Cada um desses métodos é descrito neste artigo.

Importante

Os clusters do Kubernetes geram muitos dados de log, o que pode resultar em custos significativos se você não for seletivo sobre os logs coletados. Antes de habilitar o monitoramento para seu cluster, consulte os seguintes artigos para garantir que seu ambiente seja otimizado para custo e que você limite sua coleção de logs apenas aos dados necessários:

Clusters com suporte

Este artigo fornece orientações de integração para os seguintes tipos de clusters. As diferenças no processo para cada tipo estão destacadas nas seções relevantes.

Pré-requisitos

Permissões

Pré-requisitos do Prometheus gerenciado

  • O cluster deve usar a autenticação de identidade gerenciada.
  • Os provedores de recursos a seguir devem ser registrados na assinatura do cluster do AKS e no espaço de trabalho do Azure Monitor:
    • Microsoft.ContainerService
    • Microsoft.insights
    • Microsoft.AlertsManagement
    • Microsoft.Monitor
  • Os seguintes provedores de recursos devem ser registrados na assinatura da assinatura do workspace do Grafana:
    • Microsoft.Dashboard

Pré-requisitos dos clusters do Kubernetes habilitados para Arc

Observação

A extensão Kubernetes Habilitada para Arc do Prometheus Gerenciado não é compatível com as seguintes configurações:

  • Distribuições do Red Hat Openshift
  • Nós do Windows

Workspaces

A tabela a seguir descreve os workspaces necessários para suportar o Prometheus gerenciado e os Insights de contêiner. Você pode criar cada workspace como parte do processo de integração ou usar um workspace já existente. Confira Criar uma arquitetura de workspace do Log Analytics para obter diretrizes sobre quantos workspaces criar e onde posicioná-los.

Recurso Workspace Observações
Prometheus Gerenciado Workspace do Azure Monitor A permissão Contributor é suficiente para habilitar o complemento para enviar dados para o workspace do Azure Monitor. Você precisará de permissão no nível de Owner para vincular seu Workspace do Azure Monitor para exibir métricas no Espaço Gerenciado do Azure para Grafana. Isso é necessário porque o usuário que executa a etapa de integração precisa ser capaz de fornecer a função Monitoring Reader à Identidade do Sistema de Espaço Gerenciado do Azure para Grafana no Workspace do Azure Monitor para consultar as métricas.
Insights do contêiner Espaço de Trabalho do Log Analytics Você pode anexar um cluster do AKS a um workspace do Log Analytics em uma assinatura diferente do Azure no mesmo locatário do Microsoft Entra, mas precisa usar a CLI do Azure ou um modelo do Azure Resource Manager. No momento, não é possível executar essa configuração com o portal do Azure.

Caso esteja conectando um cluster do AKS existente a um workspace do Log Analytics em outra assinatura, o provedor de recursos Microsoft.ContainerService deverá ser registrado na assinatura do workspace do Log Analytics. Para saber mais, confira Registrar provedores de recursos.

Para obter uma lista dos pares de mapeamento com suporte a serem usados para o workspace padrão, consulte Mapeamento de regiões para insights de contêiner.
Grafana gerenciado Workspace do Espaço Gerenciado do Azure para Grafana Vincule seu workspace do Grafana ao seu workspace do Azure Monitor para disponibilizar as métricas do Prometheus coletadas do seu cluster nos painéis do Grafana.

Habilitar Prometheus e Grafana

Use um dos métodos a seguir para habilitar a extração de métricas do Prometheus no seu cluster e ativar o Grafana gerenciado para visualizar as métricas. Confira Vincular um workspace do Grafana para opções de conectar seu workspace do Azure Monitor e o workspace do Espaço Gerenciado do Azure para Grafana.

Se você não especificar um workspace do Azure Monitor já existente nos comandos a seguir, será usado o workspace padrão para o grupo de recursos. Se ainda não houver um workspace padrão na região do seu cluster, um novo será criado com um nome seguindo o formato DefaultAzureMonitorWorkspace-<mapped_region> dentro de um grupo de recursos chamado DefaultRG-<cluster_region>.

Pré-requisitos

  • É necessária a versão 2.49.0 ou superior da CLI do Azure.
  • É necessário desinstalar a extensão aks-preview dos clusters do AKS usando o comando az extension remove --name aks-preview.
  • Instale a extensão k8s-extension com o comando az extension add --name k8s-extension.
  • É necessária a extensão k8s versão 1.4.1 ou superior.

Cluster do AKS

Use a opção -enable-azure-monitor-metrics, az aks create ou az aks update (dependendo se você estiver criando um novo cluster ou atualizando um cluster existente) para instalar o complemento de métricas que extrai as métricas do Prometheus.

Comandos de exemplo

### Use default Azure Monitor workspace
az aks create/update --enable-azure-monitor-metrics -n <cluster-name> -g <cluster-resource-group>

### Use existing Azure Monitor workspace
az aks create/update --enable-azure-monitor-metrics -n <cluster-name> -g <cluster-resource-group> --azure-monitor-workspace-resource-id <workspace-name-resource-id>

### Use an existing Azure Monitor workspace and link with an existing Grafana workspace
az aks create/update --enable-azure-monitor-metrics -n <cluster-name> -g <cluster-resource-group> --azure-monitor-workspace-resource-id <azure-monitor-workspace-name-resource-id> --grafana-resource-id  <grafana-workspace-name-resource-id>

### Use optional parameters
az aks create/update --enable-azure-monitor-metrics -n <cluster-name> -g <cluster-resource-group> --ksm-metric-labels-allow-list "namespaces=[k8s-label-1,k8s-label-n]" --ksm-metric-annotations-allow-list "pods=[k8s-annotation-1,k8s-annotation-n]"

Cluster habilitado para Arc

### Use default Azure Monitor workspace
az k8s-extension create --name azuremonitor-metrics --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers.Metrics

## Use existing Azure Monitor workspace
az k8s-extension create --name azuremonitor-metrics --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers.Metrics --configuration-settings azure-monitor-workspace-resource-id=<workspace-name-resource-id>

### Use an existing Azure Monitor workspace and link with an existing Grafana workspace
az k8s-extension create --name azuremonitor-metrics --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers.Metrics --configuration-settings azure-monitor-workspace-resource-id=<workspace-name-resource-id> grafana-resource-id=<grafana-workspace-name-resource-id>

### Use optional parameters
az k8s-extension create --name azuremonitor-metrics --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers.Metrics --configuration-settings azure-monitor-workspace-resource-id=<workspace-name-resource-id> grafana-resource-id=<grafana-workspace-name-resource-id> AzureMonitorMetrics.KubeStateMetrics.MetricAnnotationsAllowList="pods=[k8s-annotation-1,k8s-annotation-n]" AzureMonitorMetrics.KubeStateMetrics.MetricLabelsAllowlist "namespaces=[k8s-label-1,k8s-label-n]"

Qualquer um dos comandos pode usar os parâmetros opcionais a seguir:

  • AKS: --ksm-metric-annotations-allow-list
    Arc: --AzureMonitorMetrics.KubeStateMetrics.MetricAnnotationsAllowList
    Lista separada por vírgulas das chaves de anotações do Kubernetes usadas na métrica de kube_resource_annotations do recurso. Por exemplo, kube_pod_annotations é a métrica de anotações do recurso de pods. Por padrão, essa métrica contém apenas rótulos de nome e namespace. Para incluir mais anotações, forneça uma lista de nomes de recursos no plural e chaves de anotação do Kubernetes que você deseja permitir para elas. Um único * pode ser fornecido para cada recurso para permitir anotações, mas isso tem sérias implicações de desempenho. Por exemplo, pods=[kubernetes.io/team,...],namespaces=[kubernetes.io/team],....
  • AKS: --ksm-metric-labels-allow-list
    Arc: --AzureMonitorMetrics.KubeStateMetrics.MetricLabelsAllowlist
    Lista separada por vírgulas de mais chaves de rótulo do Kubernetes usadas na métrica kube_resource_labels da métrica do recurso kube_resource_labels. Por exemplo, kube_pod_labels é a métrica de rótulos do recurso de pods. Por padrão, essa métrica contém apenas rótulos de nome e namespace. Para incluir mais rótulos, forneça uma lista dos nomes de recursos no seu formato plural e chaves de rótulo do Kubernetes que você quer permitir para eles. Um único * pode ser fornecido para cada recurso para permitir rótulos, mas isso tem severas implicações de desempenho. Por exemplo, pods=[app],namespaces=[k8s-label-1,k8s-label-n,...],....
  • AKS: --enable-windows-recording-rules permite que você habilite os grupos de regras de gravação necessários para o funcionamento adequado dos painéis do Windows.

Habilitar os Insights do contêiner

Use um dos métodos a seguir para habilitar o Insights de contêiner. Depois de concluir, confira Configurar a coleta de dados do agente para obter Insights de contêiner para ajustar a configuração e assegurar que não esteja coletando mais dados do que o necessário.

Use um dos comandos a seguir para habilitar o monitoramento dos clusters habilitados para Arc e AKS. Se você não especificar um workspace do Log Analytics já existente nos comandos a seguir, será usado o workspace padrão para o grupo de recursos. Se um workspace padrão ainda não existir na região do cluster, um será criado com um nome no formato DefaultWorkspace-<GUID>-<Region>.

Pré-requisitos

  • CLI do Azure versão 2.43.0 ou posterior
  • A autenticação de identidade gerenciada será padrão na versão 2.49.0 ou superior da CLI.
  • Extensão k8s do Azure versão 1.3.7 ou superior
  • A autenticação de identidade gerenciada é o padrão na versão de extensão1.43.0 ou superior da extensão k8s.
  • Não há suporte para autenticação de identidade gerenciada para clusters do Kubernetes habilitados para Arc com Azure Red Hat Openshift (ARO) ou nós do Windows. Use a autenticação herdada.
  • Para a CLI versão 2.54.0 ou superior, o esquema de registro em log será configurado para ContainerLogV2 usando o ConfigMap.

Cluster do AKS

### Use default Log Analytics workspace
az aks enable-addons -a monitoring -n <cluster-name> -g <cluster-resource-group-name>

### Use existing Log Analytics workspace
az aks enable-addons -a monitoring -n <cluster-name> -g <cluster-resource-group-name> --workspace-resource-id <workspace-resource-id>

Exemplo

az aks enable-addons -a monitoring -n "my-cluster" -g "my-resource-group" --workspace-resource-id "/subscriptions/my-subscription/resourceGroups/my-resource-group/providers/Microsoft.OperationalInsights/workspaces/my-workspace"

Cluster habilitado para Arc

### Use default Log Analytics workspace
az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers

### Use existing Log Analytics workspace
az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings logAnalyticsWorkspaceResourceID=<workspace-resource-id>

### Use managed identity authentication (default as k8s-extension version 1.43.0)
az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings amalogs.useAADAuth=true

### Use advanced configuration settings
az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings  amalogs.resources.daemonset.limits.cpu=150m amalogs.resources.daemonset.limits.memory=600Mi amalogs.resources.deployment.limits.cpu=1 amalogs.resources.deployment.limits.memory=750Mi

### With custom mount path for container stdout & stderr logs
### Custom mount path not required for Azure Stack Edge version > 2318. Custom mount path must be /home/data/docker for Azure Stack Edge cluster with version <= 2318
az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings amalogs.logsettings.custommountpath=<customMountPath>

Confira a seção de solicitações e limites de recursos do gráfico Helm para as definições de configuração disponíveis.

Exemplo

az k8s-extension create --name azuremonitor-containers --cluster-name "my-cluster" --resource-group "my-resource-group" --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings logAnalyticsWorkspaceResourceID="/subscriptions/my-subscription/resourceGroups/my-resource-group/providers/Microsoft.OperationalInsights/workspaces/my-workspace"

Cluster habilitado para Arc com proxy de encaminhamento

Se o cluster estiver configurado com um proxy de encaminhamento, as configurações de proxy serão aplicadas automaticamente à extensão. No caso de um cluster com AMPLS + proxy, a configuração de proxy deve ser ignorada. Integre a extensão com a definição de configuração amalogs.ignoreExtensionProxySettings=true.

az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings amalogs.ignoreExtensionProxySettings=true

Cluster habilitado para Arc com nós ARO, OpenShift ou Windows

Não há suporte para autenticação de identidade gerenciada para clusters Kubernetes habilitados para Arc com nós ARO (Red Hat OpenShift no Azure), OpenShift ou Windows. Use a autenticação herdada especificando amalogs.useAADAuth=false como no exemplo a seguir.

az k8s-extension create --name azuremonitor-containers --cluster-name <cluster-name> --resource-group <resource-group> --cluster-type connectedClusters --extension-type Microsoft.AzureMonitor.Containers --configuration-settings amalogs.useAADAuth=false

Excluir instância de extensão

O comando a seguir exclui apenas a instância de extensão, mas não exclui o espaço de trabalho do Log Analytics. Os dados no recurso do Log Analytics permanecem intactos.

az k8s-extension delete --name azuremonitor-containers --cluster-type connectedClusters --cluster-name <cluster-name> --resource-group <resource-group>

Habilite o monitoramento completo pelo portal Azure

Com o portal Azure, é possível ativar o Prometheus gerenciado e os Insights de contêiner simultaneamente.

Observação

Se quiser habilitar o Prometheus Gerenciado sem os Insights de contêiner, habilite-o a partir do workspace do Azure Monitor, conforme descrito abaixo.

Novo cluster do AKS (Prometheus e Insights de contêiner)

Ao criar um novo cluster do AKS no portal do Azure, você pode habilitar o Prometheus, o Insights de Contêiner e o Grafana na guia Integrações. Na seção do Azure Monitor, selecione a Configuração padrão, ou a Configuração personalizada se você quiser especificar quais workspaces serão usados. Você pode executar uma configuração adicional após o cluster ser criado.

Captura de tela da guia de integrações para o novo cluster AKS.

Cluster existente (Prometheus e Insights de contêiner)

Esta opção habilita os Insights de contêiner e, opcionalmente, o Prometheus e o Grafana em um cluster do AKS já existente.

  1. Selecione Insights no menu do cluster OU Contêineres no menu Monitor, na aba Clusters não monitorados, e clique em Habilitar ao lado do cluster.

    1. Se o recurso Insights de Contêiner não estiver habilitado para o cluster, você verá uma tela identificando quais dos recursos foram habilitados. Clique em Configurar monitoramento.

    Captura de tela que mostra a tela de configuração de um cluster.

    1. Se o recurso Insights de Contêiner já tiver sido habilitado no cluster, selecione o botão Definições de Monitoramento para modificar a configuração.

    Captura de tela que mostra o botão de configurações de monitoramento para um cluster.

  2. O recurso Insights de Contêiner será habilitado. Selecione as caixas de seleção para Habilitar as métricas do Prometheus e Habilitar o Grafana, se você também quiser habilitá-los para o cluster. Se você tiver um workspace do Azure Monitor e um workspace do Grafana existentes, estes serão selecionados para você.

    Captura de tela que mostra a caixa de diálogo para configurar insights de contêiner com o Prometheus e o Grafana.

  3. Clique em Configurações avançadas para selecionar workspaces alternativos ou criar novos. A configuração Predefinições de custos permite que você modifique os detalhes da coleta padrão para reduzir seus custos de monitoramento. Confira Habilitar configurações de otimização de custos no Insights de Contêiner para obter mais detalhes.

    Captura de tela que mostra a caixa de diálogo de configurações avançadas.

  4. Clique em Configurar para modificar a configuração.

Cluster existente (somente Prometheus)

Essa opção habilita as métricas do Prometheus em um cluster sem habilitar insights de contêiner.

  1. Abra o menu espaços de trabalho do Azure Monitor no portal do Azure e selecione seu espaço de trabalho.

  2. Selecione Clusters monitorados na seção Prometheus Gerenciado para exibir uma lista de clusters do AKS.

  3. Selecione Configurar ao lado do cluster que você deseja habilitar.

    Captura de tela que mostra um espaço de trabalho do Azure Monitor com uma configuração Prometheus.

Cluster existente (Adicionar Prometheus)

  1. Selecione Contêineres no menu Monitor, na aba Clusters monitorados, e clique em Configurar ao lado de um cluster na coluna Prometheus gerenciado.

Habilitar a coleta de métricas do Windows (versão prévia)

Observação

Não há limite de CPU/memória no windows-exporter-daemonset.yaml, portanto, ele pode provisionar em excesso os nós do Windows
Para obter mais detalhes, confira Reserva de recursos

Ao implantar cargas de trabalho, defina limites de recursos de memória e CPU nos contêineres. Isso também subtrai do NodeAllocatable e ajuda o agendador de todo o cluster a determinar quais pods colocar em quais nós. O agendamento de pods sem limites pode provisionar excessivamente os nós do Windows e, em casos extremos, pode fazer com que os nós se tornem não íntegros.

A partir da versão 6.4.0-main-02-22-2023-3ee44b9e do contêiner de complemento do Prometheus Gerenciado (prometheus_collector), a coleção de métricas do Windows foi habilitada para os clusters do AKS. A integração para o complemento de Métricas do Azure Monitor permite que os pods do Windows Daemonset comecem a serem executados em seus pools de nós. Tanto o Windows Server 2019 quanto o Windows Server 2022 são suportados. Siga estas etapas para permitir que os pods coletem métricas de seus pools de nós do Windows.

  1. Instalar manualmente o exportador do Windows nos nós AKS para acessar as métricas do Windows. Habilite os seguintes coletores:

    • [defaults]
    • container
    • memory
    • process
    • cpu_info

    Para obter mais coletores, confira Exportador do Prometheus para métricas do Windows.

    Implantar o arquivo windows-exporter-daemonset YAML:

        kubectl apply -f windows-exporter-daemonset.yaml
    
  2. Aplicar ama-metrics-settings-configmap ao seu cluster. Defina os valores boolianos windowsexporter e windowskubeproxy para true. Para obter mais informações, consulte Configurações do complemento de Métricas configmap.

  3. Habilite as regras de gravação necessárias para os painéis prontos para uso:

    • Se estiver integrando usando a CLI, inclua a opção --enable-windows-recording-rules.
    • Se estiver integrando usando um modelo do ARM, Bicep ou Azure Policy, defina enableWindowsRecordingRules como true no arquivo de parâmetros.
    • Se o cluster já estiver integrado, use este modelo do ARM e este arquivo de parâmetro para criar os grupos de regras.

Verificar a implantação

Utilize a ferramenta de linha de comando kubectl para verificar se o agente foi implantado corretamente.

Prometheus Gerenciado

Verifique se o DaemonSet foi implantado corretamente nos pools de nós do Linux

kubectl get ds ama-metrics-node --namespace=kube-system

O número de pods deve ser igual ao número de nós do Linux no cluster. A saída deve ser assemelhar ao exemplo a seguir:

User@aksuser:~$ kubectl get ds ama-metrics-node --namespace=kube-system
NAME               DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGE
ama-metrics-node   1         1         1       1            1           <none>          10h

Verifique se os nós do Windows foram implantados corretamente

kubectl get ds ama-metrics-win-node --namespace=kube-system

O número de pods deve ser igual ao número de nós do Windows no cluster. A saída deve ser assemelhar ao exemplo a seguir:

User@aksuser:~$ kubectl get ds ama-metrics-node --namespace=kube-system
NAME                   DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGE
ama-metrics-win-node   3         3         3       3            3           <none>          10h

Verifique se os dois ReplicaSets foram implantados no Prometheus

kubectl get rs --namespace=kube-system

A saída deve ser assemelhar ao exemplo a seguir:

User@aksuser:~$kubectl get rs --namespace=kube-system
NAME                            DESIRED   CURRENT   READY   AGE
ama-metrics-5c974985b8          1         1         1       11h
ama-metrics-ksm-5fcf8dffcd      1         1         1       11h

Insights do contêiner

Verifique se os DaemonSets foram implantados corretamente nos pools de nós do Linux

kubectl get ds ama-logs --namespace=kube-system

O número de pods deve ser igual ao número de nós do Linux no cluster. A saída deve ser assemelhar ao exemplo a seguir:

User@aksuser:~$ kubectl get ds ama-logs --namespace=kube-system
NAME       DESIRED   CURRENT   READY     UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGE
ama-logs   2         2         2         2            2           <none>          1d

Verifique se os nós do Windows foram implantados corretamente

kubectl get ds ama-logs-windows --namespace=kube-system

O número de pods deve ser igual ao número de nós do Windows no cluster. A saída deve ser assemelhar ao exemplo a seguir:

User@aksuser:~$ kubectl get ds ama-logs-windows --namespace=kube-system
NAME                   DESIRED   CURRENT   READY     UP-TO-DATE   AVAILABLE   NODE SELECTOR     AGE
ama-logs-windows           2         2         2         2            2       <none>            1d

Verifique a implantação da solução Insights de contêiner

kubectl get deployment ama-logs-rs --namespace=kube-system

A saída deve ser assemelhar ao exemplo a seguir:

User@aksuser:~$ kubectl get deployment ama-logs-rs --namespace=kube-system
NAME          READY   UP-TO-DATE   AVAILABLE   AGE
ama-logs-rs   1/1     1            1           24d

Exibir configuração com a CLI

Use o comando aks show para descobrir se a solução está habilitada, a ID do recurso do workspace do Log Analytics e informações resumidas sobre o cluster.

az aks show -g <resourceGroupofAKSCluster> -n <nameofAksCluster>

O comando retornará informações referentes à solução formatadas em JSON. A seção addonProfiles deve incluir informações sobre o omsagent, como no exemplo a seguir:

"addonProfiles": {
    "omsagent": {
        "config": {
            "logAnalyticsWorkspaceResourceID": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/microsoft.operationalinsights/workspaces/my-workspace",
            "useAADAuth": "true"
        },
        "enabled": true,
        "identity": null
    },
}

Recursos provisionados

Quando você habilita o monitoramento, os seguintes recursos do Azure são criados em sua assinatura:

Nome do Recurso Tipo de recurso Grupo de recursos Região/Localização Descrição
MSCI-<aksclusterregion>-<clustername> Regra de Coleta de Dados Igual ao cluster Igual ao workspace do Log Analytics Esta regra de coleta de dados destina-se à coleta de logs pelo agente do Azure Monitor, que utiliza o workspace do Log Analytics como destino e está associada ao recurso de cluster do AKS.
MSPROM-<aksclusterregion>-<clustername> Regra de Coleta de Dados Igual ao cluster Igual ao workspace do Azure Monitor. Essa regra de coleta de dados destina-se à coleta de métricas do Prometheus por complemento de métricas, que o workspace do Azure Monitor escolheu como destino e também está associada ao recurso de cluster do AKS
MSPROM-<aksclusterregion>-<clustername> Ponto de extremidade da Coleta de Dados Igual ao cluster Igual ao workspace do Azure Monitor. Esse ponto de extremidade da coleta de dados é usado pela regra de coleta de dados acima para ingerir métricas do Prometheus do complemento de métricas

Quando você cria um novo workspace do Azure Monitor, os recursos adicionais a seguir são criados como parte dele

Nome do Recurso Tipo de recurso Grupo de recursos Região/Localização Descrição
<azuremonitor-workspace-name> Regra de Coleta de Dados MA_<azuremonitor-workspace-name>_<azuremonitor-workspace-region>_managed Igual ao workspace do Azure Monitor DCR criada quando você usa o servidor Prometheus OSS para Gravação Remota no Workspace do Azure Monitor.
<azuremonitor-workspace-name> Ponto de extremidade da coleta de dados MA_<azuremonitor-workspace-name>_<azuremonitor-workspace-region>_managed Igual ao workspace do Azure Monitor DCE criado quando você usa o servidor Prometheus OSS para Gravação Remota no Workspace do Azure Monitor.

Diferenças entre clusters do Windows e do Linux

As principais diferenças no monitoramento de um cluster do Windows Server em comparação com um cluster do Linux incluem:

  • O Windows não tem uma métrica de RSS de Memória. Como resultado, ela não está disponível para nós e contêineres do Windows. A métrica Conjunto de Trabalho está disponível.
  • As informações sobre a capacidade de armazenamento do disco não estão disponíveis para nós do Windows.
  • Somente ambientes de pod são monitorados, não ambientes do Docker.
  • Com a versão prévia, há suporte para até 30 contêineres do Windows Server. Essa limitação não se aplica a contêineres do Linux.

Observação

O suporte aos insights do Contêiner para o sistema operacional Windows Server 2022 está em versão prévia.

O agente do Linux em contêineres (pod replicaset) faz chamadas à API para todos os nós do Windows na porta segura do Kubelet (10250) no cluster para coletar métricas relacionadas ao desempenho do nó e do contêiner. A porta segura do Kubelet (:10250) deve ser aberta na rede virtual do cluster para entrada e saída de modo que a coleta de métricas relacionadas desempenho do contêiner e do nó do Windows funcione.

Se tiver um cluster do Kubernetes com nós do Windows, revise e configure o grupo de segurança de rede e as políticas de rede para verificar se a porta segura do Kubelet (:10250) está aberta tanto para entrada quanto para saída na rede virtual do cluster.

Próximas etapas

  • Se enfrentar problemas ao tentar integrar a solução, examine o Guia de solução de problemas.
  • Com o monitoramento habilitado para coletar a integridade e a utilização de recursos do seu cluster AKS e cargas de trabalho em execução neles, saiba como usar insights do Contêiner.