Compartilhar via


Serviço gerenciado do Azure Monitor para Prometheus: detalhes técnicos

O Azure Monitor e o Prometheus fornecem uma visão geral do serviço gerenciado do Azure Monitor para Prometheus. Este artigo fornece detalhes técnicos adicionais sobre o serviço.

Cotas e limites de serviço

O serviço gerenciado do Azure Monitor para Prometheus tem limites e cotas padrão para ingestão. Quando você atingir os limites de ingestão, a limitação poderá ocorrer. Você pode solicitar um aumento nesses limites. Para saber mais, confira Limites de serviço do Azure Monitor.

Limitações

As seguintes limitações se aplicam ao serviço gerenciado do Azure Monitor para Prometheus:

  • A frequência mínima para coleta e armazenamento de métricas é de 1 segundo.
  • Durante as atualizações de nó, podem ocorrer lacunas que duram de 1 a 2 minutos em algumas coleções de métricas do coletor de nível de cluster. Essa lacuna ocorre devido a uma ação regular de Serviço de Kubernetes do Azure atualizar os nós no cluster. Esse comportamento não afeta as regras de alerta recomendadas.
  • Os nós gerenciados do Prometheus para Windows não são habilitados automaticamente. Para habilitar o monitoramento de nós e pods do Windows em seus clusters, confira Habilitar a coleção de métricas do Windows (versão prévia).

Considerações de dados

Os dados armazenados no workspace do Azure Monitor, incluindo dados do Prometheus, são tratados de acordo com todos os padrões descritos na Central de Confiabilidade do Azure. Existem várias considerações específicas para esses dados:

  • Os dados são armazenados fisicamente na mesma região na qual o Workspace do Azure Monitor está provisionado.
  • Os dados são criptografados em repouso usando uma chave gerenciada pela Microsoft.
  • Os dados são mantidos por 18 meses.

Dados pessoais

O uso do Azure Monitor para gerenciar e hospedar o Prometheus destina-se a armazenar informações sobre a integridade do serviço de computadores e aplicativos do cliente. Não se destina a armazenar dados pessoais. Verifique se você não envia informações confidenciais, PII/EUII, como nomes de usuário e números de cartão de crédito, para campos do Prometheus hospedados no Azure Monitor, como nomes de métrica, nomes de rótulo ou valores de rótulo.

Diferenciar maiúsculas de minúsculas

O serviço gerenciado para Prometheus do Azure Monitor é um sistema que não diferencia maiúsculas de minúsculas. Ele trata cadeias de caracteres (como nomes de métrica, nomes de rótulo ou valores de rótulo) como a mesma série temporal se forem diferentes de outra série temporal somente em relação às maiúsculas e minúsculas da cadeia de caracteres.

Observação

Esse comportamento é diferente do Prometheus de código aberto nativo, que diferencia maiúsculas de minúsculas. Instâncias do Prometheus autogerenciado em execução em máquinas virtuais do Azure, conjuntos de dimensionamento de máquinas virtuais ou clusters do Serviço de Kubernetes do Azure são sistemas que diferenciam maiúsculas de minúsculas.

No serviço gerenciado para Prometheus, as seguintes séries temporais são consideradas as mesmas:

diskSize(cluster="eastus", node="node1", filesystem="usr_mnt")
diskSize(cluster="eastus", node="node1", filesystem="usr_MNT")

Os exemplos anteriores são uma única série temporal em um banco de dados de série temporal. As seguintes considerações se aplicam:

  • Todos os exemplos ingeridos neles são armazenados como se fossem raspados ou ingeridos em uma única série temporal.
  • Se os exemplos anteriores forem ingeridos com o mesmo carimbo de data/hora, um deles será descartado aleatoriamente.
  • O uso de letras maiúsculas e minúsculas armazenadas no banco de dados de séries temporais e retornadas por uma consulta é imprevisível. A mesma série temporal pode retornar maiúsculas e minúsculas diferentes em momentos diferentes.
  • Qualquer nome de métrica ou valor/nome correspondente presente na consulta é recuperado do banco de dados de série temporal por meio de uma comparação que não diferencia maiúsculas de minúsculas. Se houver um valor correspondente que diferencia maiúsculas de minúsculas em uma consulta, ele será tratado automaticamente como um valor correspondente que não diferencia maiúsculas de minúsculas em comparações de cadeia de caracteres.

É uma prática recomendada usar maiúsculas e minúsculas de forma consistente para produzir ou extrair uma série temporal.

O Prometheus de código aberto trata os exemplos anteriores como duas séries temporais diferentes. Todos os exemplos extraídos ou ingeridos neles são armazenados separadamente.

Evitando séries temporais duplicadas

O Prometheus não dá suporte a séries temporais duplicadas. O Prometheus Gerenciado do Azure os apresenta aos usuários como 422 erros em vez de descartar silenciosamente séries temporais duplicadas. Os usuários que encontrarem esses erros devem tomar medidas para evitar a duplicação de séries temporais.

Por exemplo, se um usuário usa o mesmo valor de rótulo "cluster" para dois clusters diferentes armazenados em grupos de recursos diferentes, mas ingerindo para o mesmo AMW, ele deve renomear um desses rótulos para garantir a exclusividade. Este erro só ocorrerá em casos extremos, nos quais o carimbo de data/hora e os valores são idênticos em ambos os clusters neste cenário.

Nomes de métricas, nomes de rótulos e valores dos rótulos

Atualmente, a extração de métricas tem as limitações na seguinte tabela:

Propriedade Limit
Comprimento do nome do rótulo Menor que ou igual a 511 caracteres. Quando esse limite for ultrapassado em qualquer série temporal de um trabalho, todo o trabalho de extração falhará e as métricas serão removidas desse trabalho antes da ingestão. Você pode ver up=0 para esse trabalho e o destino da experiência do usuário mostra o motivo para up=0.
Comprimento do valor do rótulo Menor que ou igual a 1023 caracteres. Quando esse limite é excedido em qualquer série temporal em uma tarefa, toda a extração falha e as métricas são removidas desse trabalho antes da ingestão. Você pode ver up=0 para esse trabalho e o destino da experiência do usuário mostra o motivo para up=0.
Número de rótulos por série temporal Menor que ou igual a 63. Quando esse limite for ultrapassado em qualquer série temporal de um trabalho, todo o trabalho de extração falhará e as métricas serão removidas desse trabalho antes da ingestão. Você pode ver up=0 para esse trabalho e o destino da experiência do usuário mostra o motivo para up=0.
Comprimento do nome da métrica Menor que ou igual a 511 caracteres. Quando esse limite é excedido em qualquer série temporal em um trabalho, somente essa série específica será removida. MetricextensionConsoleDebugLog tem os rastreamentos da métrica removida.
Nomes de rótulos com uso de maiúsculas diferente Dois rótulos dentro da mesma amostra de métrica, com uso de maiúsculas diferente, são tratados como tendo rótulos duplicados e removidos quando ingeridos. Por exemplo, a série temporal my_metric{ExampleLabel="label_value_0", examplelabel="label_value_1} foi removida devido a rótulos duplicados, pois ExampleLabel e examplelabel são vistos como o mesmo nome de rótulo.