Envie métricas do Prometheus de máquinas virtuais, conjuntos de dimensionamento ou clusters Kubernetes para um espaço de trabalho do Azure Monitor

O Prometheus não se limita ao monitoramento de clusters do Kubernetes. Use o Prometheus para monitorar aplicativos e serviços em execução em seus servidores, onde quer que eles estejam em execução. Por exemplo, você pode monitorar aplicativos em execução em Máquinas Virtuais, Conjuntos de Dimensionamento de Máquinas Virtuais ou até mesmo servidores locais. Também pode enviar métricas do Prometheus para um espaço de trabalho do Azure Monitor a partir do seu cluster autogerido e do servidor Prometheus. Instale o Prometheus em seus servidores e configure a gravação remota para enviar métricas para um workspace do Azure Monitor.

Este artigo explica como configurar a gravação remota para enviar dados de uma instância do Prometheus autogerenciado para um workspace do Azure Monitor.

Opções de gravação remota

O Prometheus autogerenciado pode ser executado em ambientes do Azure e ambientes que não sejam do Azure. Veja a seguir as opções de autenticação para gravação remota no workspace do Azure Monitor com base no ambiente em que o Prometheus está em execução.

Máquinas virtuais gerenciadas pelo Azure, Conjuntos de Dimensionamento de Máquinas Virtuais do Microsoft Azure e clusters Kubernetes

Use a autenticação de identidade gerenciada atribuída pelo usuário para serviços que executam o Prometheus autogerenciado em um ambiente do Azure. Os serviços gerenciados pelo Azure incluem:

  • Máquinas Virtuais do Azure
  • Conjuntos de dimensionamento de máquina virtual do Azure
  • AKS (Serviço de Kubernetes do Azure)

Para configurar a escrita remota para recursos gerenciado pelo Azure, veja Escrita remota utilizando a identidade gerida atribuída pelo utilizador.

Máquinas virtuais e clusters do Kubernetes em execução em ambientes que não são do Azure

Se você tiver máquinas virtuais ou um cluster Kubernetes em ambientes não Azure ou se você tiver embarcado no Azure Arc, instale o Prometheus autogerenciado e configure a gravação remota usando a autenticação do aplicativo Microsoft Entra ID. Para obter mais informações, confira Gravação remota usando a autenticação de aplicativo do Microsoft Entra ID.

A integração aos serviços habilitados para Azure Arc permite gerenciar e configurar máquinas virtuais não Azure no Azure. Para obter mais informações sobre a integração de máquinas virtuais em servidores habilitados para Azure Arc, veja servidores habilitados para Azure Arc e Kubernetes habilitados para Azure Arc. Os serviços habilitados para Arc só dão suporte à autenticação do Microsoft Entra ID.

Observação

Não há suporte para identidade gerenciada atribuída pelo sistema para gravação remota em workspaces do Azure Monitor. Use a identidade gerenciada atribuída pelo usuário ou a autenticação de aplicativo do Microsoft Entra ID.

Pré-requisitos

Versões suportadas

  • Versões do Prometheus acima da v2.45 são necessárias para a autenticação de identidade gerenciada.
  • Versões do Prometheus maiores que a v2.48 são necessárias para autenticação de aplicativo do Microsoft Entra ID.

Workspace do Azure Monitor

Esse artigo aborda o envio de métricas do Prometheus para um workspace do Azure Monitor. Para criar um workspace do Azure Monitor, confira Gerenciar um workspace do Azure Monitor.

Permissões

Permissões de administrador para o cluster ou recurso são necessárias para concluir as etapas neste artigo.

Configurar a autenticação para gravação remota

Dependendo do ambiente em que o Prometheus está em execução, você pode configurar a gravação remota para usar a identidade gerenciada atribuída pelo usuário ou a autenticação de aplicativo do Microsoft Entra ID para enviar dados para o workspace do Azure Monitor.

Use o portal do Azure ou a CLI para criar uma identidade gerenciada atribuída pelo usuário ou um aplicativo do Microsoft Entra ID.

Gravação remota usando autenticação de identidade gerenciada atribuída pelo usuário

A autenticação de identidade gerida atribuída pelo utilizador pode ser usada em qualquer ambiente gerido pelo Azure. Se o seu serviço Prometheus estiver em execução em um ambiente não Azure, você poderá usar a autenticação do aplicativo Microsoft Entra ID.

Para configurar uma identidade gerenciada atribuída pelo usuário para gravação remota no workspace do Azure Monitor, conclua as etapas a seguir.

Criar uma identidade gerenciada atribuída ao usuário

Para criar uma identidade gerenciada pelo usuário para usar em sua configuração de gravação remota, confira Gerenciar identidades gerenciadas atribuídas pelo usuário.

Observe o valor de clientId da identidade gerenciada que você criou. Esta ID é usada na configuração de gravação remota do Prometheus.

Atribuir a função Editor de Métricas de Monitoramento ao aplicativo

Na regra de recolha de dados do espaço de trabalho, atribua a função Monitoring Metrics Publisher à identidade gerida.

  1. Na página Visão geral do workspace do Azure Monitor, selecione o link da Regra de coleta de dados.

    Uma captura de tela mostrando o link da regra de coleta de dados em uma página do workspace do Azure Monitor.

  2. Na página de regras de coleta de dados, selecione Controle de acesso (IAM).

  3. Selecione Adicionar e Adicionar atribuição de função. Uma captura de tela mostrando a regra de coleta de dados.

  4. Pesquise e selecione o Editor de Métricas de Monitoramento e selecione Avançar. Uma captura de tela mostrando o menu de atribuição de função para uma regra de coleta de dados.

  5. Selecione Identidade Gerenciada.

  6. Selecione Selecionar membros.

  7. Na lista suspensa Entidade gerenciada, Identidade gerenciada atribuída pelo usuário.

  8. Selecione a identidade atribuída pelo usuário que você deseja usar e clique em Selecionar.

  9. Clique em Revisar + atribuir para concluir a atribuição de função.

    Uma captura de tela mostrando o menu de seleção de membros para uma regra de coleta de dados.

Atribuir a identidade gerenciada a uma máquina virtual ou a um conjunto de dimensionamento de máquinas virtuais

Importante

Para concluir as etapas nesta seção, você deve ter permissões de administrador de acesso de usuários ou proprietário para a Máquina Virtual ou o Conjunto de Dimensionamento de Máquinas Virtuais.

  1. No portal do Azure, vá para a página do cluster, Máquina Virtual ou Conjunto de Dimensionamento de Máquinas Virtuais.

  2. Selecionar Identidade.

  3. Selecione Atribuída pelo usuário.

  4. Selecione Adicionar.

  5. Selecione a identidade gerenciada atribuída pelo usuário que você criou e, em seguida, selecione Adicionar.

    Uma captura de tela mostrando a página de identidade gerenciada atribuída ao usuário.

Atribuir a identidade gerida para um Serviço de Kubernetes do Azure

Para os serviços Azure Kubernetes (AKS), a identidade gerida deve ser atribuída aos conjuntos de escala de máquinas virtuais.

O AKS cria um grupo de recursos que contém os conjuntos de dimensionamento de máquinas virtuais. O nome do grupo de recursos está no formato MC_<resource group name>_<AKS cluster name>_<region>. Para cada Conjunto de Dimensionamento de Máquina Virtual no grupo de recursos, atribua a identidade gerenciada de acordo com as etapas da seção anterior, Atribua a identidade gerenciada a uma Máquina Virtual ou Conjunto de Dimensionamento de Máquina Virtual.

Configurar gravação remota

A gravação remota é configurada no arquivo de configuração prometheus.yml do Prometheus ou no Operador do Prometheus.

Para obter mais informações sobre como configurar a gravação remota, confira o artigo do Prometheus.io: Configuração. Para obter mais informações sobre como ajustar a configuração de gravação remota, confira Ajuste de gravação remota.

Para enviar dados ao workspace do Azure Monitor, adicione a seção a seguir ao arquivo de configuração (prometheus.yml) da instância do Prometheus autogerenciado.

remote_write:   
  - url: "<metrics ingestion endpoint for your Azure Monitor workspace>"
# AzureAD configuration.
# The Azure Cloud. Options are 'AzurePublic', 'AzureChina', or 'AzureGovernment'.
    azuread:
      cloud: 'AzurePublic'
      managed_identity:
        client_id: "<client-id of the managed identity>"
      oauth:
        client_id: "<client-id from the Entra app>"
        client_secret: "<client secret from the Entra app>"
        tenant_id: "<Azure subscription tenant Id>"

O parâmetro url especifica o ponto de extremidade de ingestão de métricas do workspace do Azure Monitor. Ele pode ser encontrado na página de visão geral do workspace do Azure Monitor no portal do Azure.

Uma captura de tela mostrando o ponto de extremidade de ingestão de métricas para um workspace do Azure Monitor.

Use a autenticação de aplicativo managed_identity ou oauth para o Microsoft Entra ID, dependendo da implementação. Remova o objeto que você não está usando.

Localize a ID do cliente para a identidade gerenciada usando o seguinte comando da CLI do Azure:

az identity list --resource-group <resource group name>

Para obter mais informações, confira az identity list.

Para localizar seu cliente para autenticação de identidade gerenciada no portal, acesse a página Identidades gerenciadas no portal do Azure e selecione o nome de identidade relevante. Copie o valor da ID do cliente da página de visão geral da identidade.

Uma captura de tela mostrando a ID do cliente na página de visão geral de identidade.

Para localizar a ID do cliente para o aplicativo do Microsoft Entra ID, use a CLI a seguir ou veja a primeira etapa na seção Criar um aplicativo do Microsoft Entra ID usando o portal do Azure.

$ az ad app list --display-name < application name>

Para obter mais informações, confira az ad app list.

Observação

Depois de editar o arquivo de configuração, reinicie o Prometheus para que as alterações sejam aplicadas.

Verifique se os dados de gravação remota estão fluindo

Use os seguintes métodos para verificar se os dados do Prometheus estão sendo enviados ao workspace do Azure Monitor.

Gerenciador de métricas do Azure Monitor com PromQL

Para verificar se as métricas estão fluindo para o espaço de trabalho do Azure Monitor, selecione Métricas no espaço de trabalho do Azure Monitor no portal do Azure. Use o gerenciador de métricas para consultar as métricas que você está esperando do ambiente autogerenciado do Prometheus. Para obter mais informações, confira Gerenciador de métricas.

Gerenciador do Prometheus no Workspace do Azure Monitor

O Prometheus Explorer fornece uma maneira conveniente de interagir com as métricas do Prometheus em seu ambiente do Azure, tornando o monitoramento e a solução de problemas mais eficientes. Para usar o Gerenciador do Prometheus, acesse o workspace do Azure Monitor no portal do Azure e selecione Prometheus Explorer para consultar as métricas que você espera do ambiente do Prometheus autogerenciado. Para obter mais informações, confira Prometheus Explorer.

Grafana

Use consultas PromQL no Grafana para verificar se os resultados retornam os dados esperados. Para configurar o Grafana, veja como configurar o Grafana com o Managed Prometheus

Solucionar problemas de gravação remota

Se os dados remotos não estiverem aparecendo no seu espaço de trabalho do Azure Monitor, confira Solucionar problemas de gravação remota para obter informações sobre problemas e soluções mais comuns.

Próximas etapas