Google Cloud Managed Service para Prometheus

O Google Cloud Managed Service para Prometheus permite monitorar e alertar sobre suas cargas de trabalho, usando o Prometheus, sem ter que gerenciar e operar manualmente em grande escala.

Este documento descreve algumas das características do serviço gerenciado. Para receber atualizações, envie o formulário de inscrição opcional.

O Managed Service para Prometheus é o serviço de consulta e armazenamento totalmente gerenciado do Google Cloud para as métricas do Prometheus. Esse serviço é criado com base no Monarch, o mesmo armazenamento de dados globalmente escalonável do Cloud Monitoring. Uma bifurcação do Prometheus substitui as implantações atuais do Prometheus e envia dados para o serviço gerenciado sem intervenção do usuário. Em seguida, esses dados podem ser consultados usando o PromQL por meio da API Prometheus Query do serviço gerenciado e usando os mecanismos de consulta existentes do Cloud Monitoring.

Com o Managed Service para Prometheus, você tem acesso aos recursos do Prometheus e do Cloud Monitoring.

O serviço deve ser uma substituição simples para Prometheus. Isso elimina a necessidade de Thanos , permitindo que você mantenha oGrafana painéis, alertas baseados em PromQL e fluxos de trabalho. É possível usar o binário gerenciado do Prometheus em qualquer lugar que já use o Prometheus upstream. Esse coletor retém toda a funcionalidade regular do Prometheus, como armazenamento local e avaliação de regras.

Coleta de dados com o Managed Service para Prometheus

É possível usar o serviço gerenciado para o Prometheus em um dos dois modos: com coleta de dados gerenciada ou com coleta de dados autoimplantada. Neste documento, você verá as diferenças entre os modos.

O Managed Service para Prometheus oferece um operador para coleta de dados gerenciados em ambientes do Kubernetes. Recomendamos que você use a coleção gerenciada. reduz a complexidade de implantar, escalonar, fragmentar, configurar e manter os servidores do Prometheus. A coleção gerenciada é compatível com ambientes do GKE e do GKE.

Com a coleta de dados autoimplantada, você gerencia a instalação do Prometheus como sempre fez. A única diferença do Prometheus upstream é que você executa o binário substituto do Managed Service para Prometheus em vez do binário upstream do Prometheus.

Ao escolher entre a coleção gerenciada e a autoimplantada, considere o seguinte:

  • Coleta gerenciada:

    • A abordagem recomendada para ambientes do Kubernetes.
    • Implantar usando a CLI kubectl ou a CLI gcloud.
    • A operação do Prometheus, gerando configurações de scrape, escalonamento de ingestão, regras de escopo para os dados certos e assim por diante, é totalmente processada pelo operador do Kubernetes.
    • A coleta e as regras são configuradas usando recursos personalizados leves (CRs, na sigla em inglês).
    • Bom para quem quer uma experiência mais prática e totalmente gerenciada.
    • Migração intuitiva de configs prometheus-operator.
    • É compatível com a maioria dos casos de uso atuais do Prometheus.
  • Coleção autoimplantada:

    • O binário do Managed Service para Prometheus é uma substituição drop-in para o binário upstream do Prometheus.
    • Use seu mecanismo de implantação preferido, como o Prometheus ou o operador manual.
    • É possível configurar a captura usando seus métodos preferidos, como anotações ou operador Prometheus.
    • O escalonamento e a fragmentação funcional são feitos manualmente.
    • Ideal para uma integração rápida com configurações existentes mais complexas. É possível reutilizar os configs atuais e executar o Prometheus e o Managed Service para Prometheus para upstream lado a lado.
    • Pode ser compatível com casos de uso que ainda não são compatíveis com a coleta gerenciada, como agregações locais, para reduzir a cardinalidade.

    O streaming de dados para o Managed Service para Prometheus consome recursos adicionais. Se você estiver implantando coletores manualmente, recomendamos aumentar os limites de CPU e memória em cinco vezes e ajustá-los com base no uso real.

Managed Service para Prometheus e Google Cloud

O Managed Service para Prometheus é um produto do Google Cloud, com algumas cobranças e cotas.

Faturamento

O faturamento do serviço se baseia principalmente no número de amostras de métricas ingeridas no armazenamento. Também há uma cobrança nominal para chamadas de API de leitura. O Managed Service para Prometheus não cobra pelo armazenamento nem pela retenção de dados de métricas. Todos os dados do Managed Service para Prometheus são retidos por 24 meses sem custo adicional.

Cotas

O Managed Service para Prometheus compartilha cotas de ingestão e leitura com o Cloud Monitoring. A cota de ingestão padrão é de 500 QPS por projeto, com até 200 amostras em uma única chamada. A cota de leitura padrão é de 100 QPS por escopo de métricas.

Solicite aumentos dessas cotas para dar suporte à sua métrica e aos volumes de consulta. Para informações sobre como gerenciar cotas e solicitar aumentos de cotas, consulte Como trabalhar com cotas.

Interoperabilidade com o Prometheus upstream

Veja nas seções a seguir alguns casos de uso comuns do Prometheus e como o Managed Service para Prometheus se encaixa neles.

Implantações atuais do Prometheus

O Managed Service para Prometheus adiciona coletores gerenciados para ambientes do Kubernetes ao Prometheus upstream. A coleta gerenciada simplifica a configuração e a manutenção de implantações do Prometheus, conforme descrito em Coleta de dados com o Managed Service para Prometheus. Para ver instruções de configuração, consulte Primeiros passos com a coleta gerenciada.

Também é possível executar o serviço gerenciado com a coleção autoimplantada. É possível duplicar e usar a configuração de implantação atual com o binário ou a imagem do contêiner do Managed Service para Prometheus. Todas as configurações e fluxos de trabalho existentes continuarão a funcionar, e seus dados serão armazenados no Monarch. Para instruções de configuração, consulte Primeiros passos com a coleção autoimplantada.

Se você usa o serviço gerenciado fora do Google Kubernetes Engine, pode ser necessária uma configuração adicional. Consulte Enviar credenciais explicitamente.

Regras de gravação

Você ainda pode avaliar as regras de gravação localmente nos coletores. Os resultados das regras de gravação são armazenados no Monarch, assim como os dados de métricas coletados diretamente.

O Managed Service para Prometheus também fornece um avaliador de regras independente que avalia regras de registro e alerta para todos os dados acessíveis em um escopo de métricas. A avaliação de regras em relação a um escopo de métricas de vários projetos elimina a necessidade de colocalizar todos os dados de interesse em um único servidor do Prometheus ou em um único projeto do Google Cloud.

Como limitar dados exportados

Para dados de alto volume, talvez você queira impedir que algumas séries temporais sejam enviadas ao Managed Service para Prometheus para manter os custos baixos. É possível usar a filtragem para limitar os dados exportados. Para mais informações, consulte Como filtrar por coleção gerenciada ou Como filtrar por coleção autoimplantada.

Servidores de federação

Não recomendamos o uso do binário do Managed Service para Prometheus nos servidores de federação. O serviço gerenciado fornece uma visualização global de todos os dados por meio do armazenamento escalonável globalmente. A federação do Prometheus normalmente tenta contornar a falta de armazenamento escalonável, portanto, a federação e o serviço gerenciado representam duas abordagens diferentes para alcançar uma visualização global dos dados de métricas.

O Managed Service para Prometheus é compatível com filtragem para limitar as métricas exportadas para o Monarch. A filtragem de exportação tem a mesma semântica de configuração que a federação. Portanto, é possível substituir a federação por filtragem de exportação e agregações locais para atingir a mesma meta. Para mais informações, consulte como configurar a agregação local.

A seguir