Utilize a PromQL (Prometheus Query Language) para consultar dados de monitoramento do Prometheus e verifique se as regras de alerta são precisas e oportunas.
Consultar dados de monitoramento do Prometheus no console
Managed Service for Prometheus
Para obter informações sobre como implantar e usar o Managed Service for Prometheus, consulte Configure Managed Service for Prometheus.
Faça login no console do Application Real-Time Monitoring Service (ARMS).
No painel de navegação à esquerda, escolha .
No canto superior esquerdo da página Prometheus Monitoring, selecione a região onde o cluster do Container Service for Kubernetes (ACK) está localizado. Localize a instância desejada e, na coluna Grafana Workspace, clique em Shared Edition.
No painel de navegação à esquerda do painel, clique em
. No canto superior esquerdo, selecione a fonte de dados relevante na lista suspensa à direita de Explore.Na caixa de texto à direita de Metric, insira uma instrução de consulta PromQL e clique em Run query.
Open Source Prometheus
Para obter informações sobre como implantar o monitoramento open source do Prometheus em um cluster ACK, consulte Open source Prometheus monitoring.
Faça login no console do ACK. No painel de navegação à esquerda, clique em Clusters.
Na página Clusters, clique em Network > Services.
Na página Services, selecione o namespace monitoring onde o ack-prometheus-operator está implantado. Na coluna Actions referente ao ack-prometheus-operator-prometheus, clique em Update.
-
Na caixa de diálogo, defina Type como LoadBalancer. Selecione Create Resource, defina Access Method como Public Access e configure Billing Method para Pay-as-you-go (Pay-by-CU). Clique em OK.
Consulte CLB Billing Overview .
Após a atualização, copie o endereço IP externo. Abra a interface do Prometheus em
<external_IP_address>:9090, por exemplo,47.XX.XX.12:9090.No console do Prometheus, clique em Graph, insira uma instrução de consulta PromQL na caixa de texto e clique em Execute.
Consultar dados de monitoramento do Prometheus usando a API
Managed Service for Prometheus
Faça login no console do ARMS.
No painel de navegação à esquerda, escolha .
Na parte superior da página Instance, selecione a região onde a instância do Prometheus está localizada. Na coluna Actions ao lado do cluster desejado, clique em Settings.
Na página Settings, na seção HTTP API Address (Grafana Read Address), copie a URL da API HTTP pública ou interna conforme necessário.
-
Para instâncias V1 do Prometheus, caso precise aumentar a segurança das leituras de dados no Grafana, clique em Generate token para obter um token de autenticação para a instância do Prometheus.
ImportanteInstâncias V1: Após gerar um token, é obrigatório configurá-lo ao adicionar a fonte de dados no Grafana. Caso contrário, não será possível ler os dados de monitoramento da instância do Prometheus.
Instâncias V2: Por padrão, você deve usar o AccessKey ID e o AccessKey secret da sua conta para acessar os dados. O usuário RAM proprietário do AccessKey ID precisa ter a AliyunPrometheusMetricReadAccess or AliyunCloudMonitorFullAccess system permission.
-
Use a API HTTP para consultar dados de monitoramento no Managed Service for Prometheus.
O exemplo a seguir mostra uma solicitação que consulta dados de monitoramento no Managed Service for Prometheus. Para mais operações que utilizam a API HTTP para obter dados de monitoramento do Prometheus, consulte API HTTP.
V1
GET {HTTP API URL}/api/v1/query Accept: application/json Content-Type: application/json Authorization: {Token} { "query":"arms_prometheus_target_interval_length_seconds_sum", "time":"1635302655", "timeout":"1000" }V2
GET {HTTP API URL}/api/v1/query Accept: application/json Content-Type: application/json Authorization: Basic <base64Encode(<AccessKey ID:AccessKey secret>)> { "query":"arms_prometheus_target_interval_length_seconds_sum", "time":"1635302655", "timeout":"1000" }
Open Source Prometheus
-
Obtenha a URL da API HTTP.
Ao acessar o monitoramento open source do Prometheus de dentro de um cluster, a URL padrão do Service de solicitação de dados para o ack-prometheus-operator é
http://ack-prometheus-operator-prometheus.monitoring:9090.Caso acesse o monitoramento open source do Prometheus pela rede pública, vincule um Server Load Balancer (SLB) ao Service de solicitação de dados do ack-prometheus-operator. Siga estas etapas:
Faça login no console do ACK. No painel de navegação à esquerda, clique em Clusters.
Na página Clusters, clique em Network > Services.
Na parte superior da página Services, alterne o namespace definindo Namespace como monitoring. Em seguida, localize ack-prometheus-operator-prometheus e, na coluna Actions à sua direita, clique em Update.
-
Na caixa de diálogo Update Service, configure os parâmetros a seguir e clique em Update.
Parâmetro
Configuração
Service Type
Defina Service Type como LoadBalancer e configure o método de acesso para Public Access.
Port Mapping
Insira um nome de porta. Defina Service Port como 9090, Container Port como 9090 e Protocol como TCP.
Na página Services, clique em ack-prometheus-operator-prometheus. Na tabela Basic Information, obtenha o External IP. Esta é a URL da API HTTP.
-
Utilize a API HTTP para consultar dados de monitoramento do Prometheus.
-
Para obter dados de monitoramento instantâneos, utilize os seguintes parâmetros de solicitação.
GET {HTTP API}/api/v1/query Headers: Accept: application/json Content-Type: application/json Param: { "query":"{{PromQL}}", "time":"1635302655", "timeout":"1000" }time: Define o ponto exato no tempo para consultar os dados de monitoramento.
timeout: Especifica o tempo limite em milissegundos. O resultado é retornado diretamente quando esse valor é excedido.
-
Consulte dados de monitoramento para um intervalo de tempo.
GET {HTTP API}/api/v1/query_range Headers: Accept: application/json Content-Type: application/json Param: { "query":"{{PromQL}}", "start": 1673946024, "end": 1673949624, "step": 30 }start: Define a hora de início da consulta de dados de monitoramento.
end: Define a hora de término da consulta de dados de monitoramento.
step: Estabelece o intervalo de tempo entre os pontos de dados nos resultados retornados.
-
Referências
Para aprender a criar regras de alerta com PromQL personalizada, consulte Configuring alert rules using Prometheus.