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.
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 para gravação remota
O Prometheus autogerenciado pode ser executado em ambientes do Azure e ambientes que não são 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 e clusters do 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 gravação remota para recursos gerenciados pelo Azure, consulte Gravação remota usando a autenticação de identidade gerenciada atribuída pelo usuário.
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 do Kubernetes em ambientes que não são do Azure ou se tiver sido integrado ao Azure Arc, instale o Prometheus autogerenciado e configure a gravação remota usando a autenticação de aplicativo do Microsoft Entra. Para obter mais informações, consulte Gravação remota usando a autenticação de aplicativo do Microsoft Entra posteriormente neste artigo.
A integração aos servidores habilitados para Azure Arc permite gerenciar e configurar máquinas virtuais que não são do Azure no Azure. Para obter mais informações, consulte Servidores habilitados para Azure Arc e Kubernetes habilitado para Azure Arc. Os servidores habilitados para Azure Arc dão suporte apenas à autenticação do Microsoft Entra.
Observação
Não há suporte para identidades gerenciadas atribuídas 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.
Pré-requisitos
Versões com suporte
- Versões do Prometheus posteriores à 2.45 são necessárias para a autenticação de identidade gerenciada.
- Versões do Prometheus posteriores à 2.48 são necessárias para a autenticação de aplicativo do Microsoft Entra.
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 do cluster ou recurso são necessárias para realizar 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 para enviar dados para um workspace do Azure Monitor.
Use o portal do Azure ou a CLI do Azure para criar uma identidade gerenciada atribuída pelo usuário ou um aplicativo do Microsoft Entra.
- Gravação remota usando uma identidade gerenciada atribuída pelo usuário
- Aplicativo do Microsoft Entra ID
- CLI do Azure
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 que não é do Azure, você pode usar a autenticação de aplicativo do Microsoft Entra.
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, consulte 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 coleta de dados do workspace, atribua a função Editor de Métricas de Monitoramento à identidade gerenciada:
No painel de visão geral do workspace do Azure Monitor, selecione o link da Regra de coleta de dados.
Na página da regra de coleta de dados, selecione Controle de acesso (IAM).
Selecione Adicionar>Adicionar atribuição de função.
Pesquise e selecione Editor de Métricas de Monitoramento e selecione Avançar.
Selecione Identidade Gerenciada.
Escolha Selecionar membros.
Na lista de seleção Identidade gerenciada, selecione Identidade gerenciada atribuída pelo usuário.
Escolha a identidade gerenciada que deseja usar e clique em Selecionar.
Clique em Revisar + atribuir para concluir a atribuição de função.
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 proprietário ou administrador de acesso de usuários para a máquina virtual ou o conjunto de dimensionamento de máquinas virtuais.
No portal do Azure, vá para a página do cluster, máquina virtual ou conjunto de dimensionamento de máquinas virtuais.
Selecionar Identidade.
Selecione Atribuída pelo usuário.
Selecione Adicionar.
Selecione a identidade gerenciada atribuída pelo usuário que você criou e, em seguida, selecione Adicionar.
Atribua a identidade gerenciada para o Serviço de Kubernetes do Azure
Para o Serviço de Kubernetes do Azure, a identidade gerenciada deve ser atribuída a conjuntos de dimensionamento 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áquinas virtuais no grupo de recursos, atribua a identidade gerenciada de acordo com as etapas na seção anterior, Atribua a identidade gerenciada a uma máquina virtual ou a um conjunto de dimensionamento de máquinas virtuais.
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, consulte este artigo do Prometheus.io: Configuração. Para obter mais informações sobre como ajustar a configuração de gravação remota, consulte Ajuste de gravação remota.
- Configurar a gravação remota para o Prometheus em execução em máquinas virtuais
- Configurar a gravação remota no Kubernetes para o Operador do Prometheus
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>"
# Microsoft Entra ID 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. Você pode encontrá-lo no painel de visão geral do workspace do Azure Monitor no portal do Azure.
Use managed_identity
ou oauth
para autenticação de aplicativo do Microsoft Entra, 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 Identidades gerenciadas no portal do Azure e selecione o nome de identidade relevante. Copie o valor da ID do cliente do painel Visão geral da identidade gerenciada.
Para localizar a ID do cliente para o aplicativo do Microsoft Entra ID, use o seguinte comando da CLI do Azure (ou veja a primeira etapa na seção anterior Gravação remota usando a autenticação de aplicativo do Microsoft Entra):
$ 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 aplicar as alterações.
Verifique se os dados de gravação remota estão fluindo
Use os métodos a seguir 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 Metrics Explorer com a Linguagem de Consulta Prometheus (PromQL) para consultar as métricas que você está esperando do ambiente autogerenciado do Prometheus. Para obter mais informações, consulte Metrics Explorer do Azure Monitor com PromQL.
Prometheus Explorer no workspace do Azure Monitor
O Prometheus Explorer fornece uma maneira conveniente de interagir com as métricas do Prometheus dentro do seu ambiente do Azure, aumentando a eficiência do monitoramento e da solução de problemas. Para usar o Prometheus Explorer, acesse o workspace do Azure Monitor no portal do Azure e selecione Prometheus Explorer. Em seguida, você poderá consultar as métricas que está esperando do ambiente autogerenciado do Prometheus.
Para obter mais informações, consulte Consultar métricas do Prometheus usando pastas de trabalho do Azure.
Grafana
Use consultas PromQL no Grafana para verificar se os resultados retornam os dados esperados. Para configurar o Grafana, consulte o artigo sobre como configurar o Grafana com o Prometheus gerenciado.
Solucionar problemas de gravação remota
Se os dados remotos não estiverem aparecendo no seu workspace do Azure Monitor, consulte Solucionar problemas de gravação remota para obter informações sobre problemas e soluções comuns.