Solucionar problemas de gravação remota
Esse artigo descreve como solucionar problemas de gravação remota no Serviço Gerenciado do Azure Monitor para Prometheus. Para obter mais informações sobre escrita remota, veja escrita remota no serviço gerido do Azure Monitor para Prometheus.
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 superiores a v2.48 são necessárias para autenticação do aplicativo Microsoft Entra ID.
Erro HTTP 403 no log do Prometheus
Demora cerca de 30 minutos para que a atribuição da função entre em vigor. Durante esse período, você poderá ver um erro HTTP 403 no log do Prometheus. Verifique se você configurou corretamente a identidade gerenciada ou o aplicativo Microsoft Entra ID com a função Monitoring Metrics Publisher
na regra de coleta de dados do workspace. Se a configuração estiver correta, aguarde 30 minutos para que a atribuição de função entre em vigor.
Nenhum dado do Kubernetes está fluindo
Se os dados remotos não estiverem fluindo, execute o comando a seguir para encontrar erros no contêiner de gravação remota.
kubectl --namespace <Namespace> describe pod <Prometheus-Pod-Name>
O contêiner é reiniciado repetidamente
Se o contêiner estiver reiniciando constantemente, isso provavelmente acontece devido a uma configuração incorreta do contêiner. Execute o comando a seguir para exibir os valores de configuração definidos para o contêiner. Verifique os valores de configuração, principalmente AZURE_CLIENT_ID
e IDENTITY_TYPE
.
kubectl get pod <Prometheus-Pod-Name> -o json | jq -c '.spec.containers[] | select( .name | contains("<Azure-Monitor-Side-Car-Container-Name>"))'
A saída desse comando tem o seguinte formato:
{"env":[{"name":"INGESTION_URL","value":"https://my-azure-monitor-workspace.eastus2-1.metrics.ingest.monitor.azure.com/dataCollectionRules/dcr-00000000000000000/streams/Microsoft-PrometheusMetrics/api/v1/write?api-version=2021-11-01-preview"},{"name":"LISTENING_PORT","value":"8081"},{"name":"IDENTITY_TYPE","value":"userAssigned"},{"name":"AZURE_CLIENT_ID","value":"00000000-0000-0000-0000-00000000000"}],"image":"mcr.microsoft.com/azuremonitor/prometheus/promdev/prom-remotewrite:prom-remotewrite-20221012.2","imagePullPolicy":"Always","name":"prom-remotewrite","ports":[{"containerPort":8081,"name":"rw-port","protocol":"TCP"}],"resources":{},"terminationMessagePath":"/dev/termination-log","terminationMessagePolicy":"File","volumeMounts":[{"mountPath":"/var/run/secrets/kubernetes.io/serviceaccount","name":"kube-api-access-vbr9d","readOnly":true}]}
Cotas e limites de ingestão
Ao configurar a escrita remota do Prometheus para enviar dados para um espaço de trabalho do Azure Monitor, normalmente começa por utilizar o ponto final de escrita remota apresentado na página de visão geral do espaço de trabalho do Azure Monitor. Esse ponto de extremidade envolve uma Regra de Coleta de Dados (DCR) e um Ponto de extremidade de Coleta de Dados (DCE) gerados pelo sistema. Esses recursos têm limites de ingestão. Para obter mais informações sobre limites de ingestão, veja limites de serviço do Azure Monitor. Ao configurar a gravação remota para vários clusters que enviam dados para o mesmo ponto de extremidade, você poderá atingir esses limites. Considere a criação de DCRs e DCEs adicionais para distribuir a carga de ingestão entre vários ponto de extremidade. Essa abordagem ajuda a otimizar o desempenho e garante o manuseio eficiente de dados. Para obter mais informações sobre a criação de DCRs e DCEs, veja como criar um ponto de extremidade de coleta de dados personalizado (DCE) e uma regra de coleta de dados personalizada (DCR) para um espaço de trabalho de monitor do Azure (AMW) existente para ingerir métricas do Prometheus.