Este documento descreve como configurar a implementação do Google Kubernetes Engine para que possa usar o Google Cloud Managed Service for Prometheus para recolher métricas do Nginx. Este documento mostra como fazer o seguinte:
- Configure o exportador para o Nginx para comunicar métricas.
- Aceda a um painel de controlo no Cloud Monitoring para ver as métricas.
- Configure regras de alerta para monitorizar as métricas.
Estas instruções aplicam-se apenas se estiver a usar a recolha gerida com o serviço gerido para Prometheus. Se estiver a usar a recolha implementada automaticamente, consulte o repositório de origem do exportador do Nginx para obter informações de instalação.
Estas instruções são fornecidas como exemplo e espera-se que funcionem na maioria dos ambientes do Kubernetes. Se estiver com problemas na instalação de uma aplicação ou de um exportador devido a políticas organizacionais ou de segurança restritivas, recomendamos que consulte a documentação de código aberto para receber apoio técnico.
Para obter informações sobre o Nginx, consulte Nginx.
Pré-requisitos
Para recolher métricas do Nginx através do Managed Service for Prometheus e da recolha gerida, a sua implementação tem de cumprir os seguintes requisitos:
- O cluster tem de estar a executar a versão 1.28.15-gke.2475000 ou posterior do Google Kubernetes Engine.
- Tem de estar a executar o Managed Service for Prometheus com a recolha gerida ativada. Para mais informações, consulte o artigo Comece a usar a recolha gerida.
- Para usar os painéis de controlo disponíveis no Cloud Monitoring para a integração do Nginx, tem de usar a versão v0.10.0 ou posterior.
nginx-prometheus-exporter
Para mais informações acerca dos painéis de controlo disponíveis, consulte o artigo Ver painéis de controlo.
Instale o exportador do Nginx
Recomendamos que instale o exportador do Nginx,
nginx-prometheus-exporter
,
como um sidecar para a sua carga de trabalho do Nginx.
Para ver informações sobre a utilização de sidecars, consulte o artigo
Aplicações expandidas no Kubernetes com pods
multicontentores.
Para instalar o nginx-prometheus-exporter
como um sidecar para o Nginx,
modifique a configuração do Nginx, conforme mostrado no seguinte
exemplo:
Tem de adicionar todas as linhas precedidas pelo símbolo +
à sua configuração.
Para aplicar alterações de configuração a partir de um ficheiro local, execute o seguinte comando:
kubectl apply -n NAMESPACE_NAME -f FILE_NAME
Também pode usar o Terraform para gerir as suas configurações.
Defina um recurso PodMonitoring
Para a deteção de destinos, o operador do Managed Service for Prometheus requer um recurso PodMonitoring que corresponda ao exportador do Nginx no mesmo espaço de nomes.
Pode usar a seguinte configuração PodMonitoring:
Certifique-se de que os seletores de etiquetas e a porta correspondem aos seletores e à porta usados em Instale o exportador do Nginx.
Para aplicar alterações de configuração a partir de um ficheiro local, execute o seguinte comando:
kubectl apply -n NAMESPACE_NAME -f FILE_NAME
Também pode usar o Terraform para gerir as suas configurações.
Defina regras e alertas
Pode usar a seguinte configuração Rules
para definir
alertas nas suas métricas do Nginx:
Para aplicar alterações de configuração a partir de um ficheiro local, execute o seguinte comando:
kubectl apply -n NAMESPACE_NAME -f FILE_NAME
Também pode usar o Terraform para gerir as suas configurações.
Para mais informações sobre a aplicação de regras ao seu cluster, consulte o artigo Avaliação e alertas de regras geridas.
Pode ajustar os limites de alerta de acordo com a sua aplicação.Valide a configuração
Pode usar o Explorador de métricas para verificar se configurou corretamente o exportador do Nginx. O Cloud Monitoring pode demorar um ou dois minutos a carregar as suas métricas.
Para verificar se as métricas são carregadas, faça o seguinte:
-
Na Google Cloud consola, aceda à página leaderboard Explorador de métricas:
Se usar a barra de pesquisa para encontrar esta página, selecione o resultado cujo subtítulo é Monitorização.
- Na barra de ferramentas do painel do criador de consultas, selecione o botão cujo nome é code MQL ou code PromQL.
- Verifique se a opção PromQL está selecionada no botão Idioma. O botão para alternar o idioma encontra-se na mesma barra de ferramentas que lhe permite formatar a consulta.
- Introduza e execute a seguinte consulta:
up{job="nginx", cluster="CLUSTER_NAME", namespace="NAMESPACE_NAME"}
Veja painéis de controlo
A integração do Cloud Monitoring inclui o painel de controlo Vista geral do Nginx Prometheus. Os painéis de controlo são instalados automaticamente quando configura a integração. Também pode ver pré-visualizações estáticas de painéis de controlo sem instalar a integração.
Para ver um painel de controlo instalado, faça o seguinte:
-
Na Google Cloud consola, aceda à página
Painéis de controlo:
Se usar a barra de pesquisa para encontrar esta página, selecione o resultado cujo subtítulo é Monitorização.
- Selecione o separador Lista do painel de controlo.
- Escolha a categoria Integrações.
- Clique no nome do painel de controlo, por exemplo, Vista geral do Nginx Prometheus.
Para ver uma pré-visualização estática do painel de controlo, faça o seguinte:
-
Na Google Cloud consola, aceda à página
Integrações:
Se usar a barra de pesquisa para encontrar esta página, selecione o resultado cujo subtítulo é Monitorização.
- Clique no filtro de plataforma de implementação Kubernetes Engine.
- Localize a integração do Nginx e clique em Ver detalhes.
- Selecione o separador Painéis de controlo.
Resolução de problemas
Para informações sobre a resolução de problemas de carregamento de métricas, consulte a secção Problemas com a recolha de exportadores em Resolução de problemas do lado do carregamento.