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 dos pedidos gRPC apresentados pela sua aplicação. Este documento descreve como fazer o seguinte:
- Configure o middleware gRPC Prometheus para Go e Java.
- Configure um recurso PodMonitoring para que o Managed Service for Prometheus recolha as métricas exportadas.
- Veja o painel de controlo Aplicação para a sua implementação do GKE.
Estas instruções aplicam-se apenas se estiver a usar a recolha gerida com o serviço gerido para Prometheus.
Para mais informações sobre o gRPC, consulte grpc.io.
Configurar
Para recolher métricas do seu servidor gRPC, tem de configurar o middleware gRPC adequado.
- Se estiver a usar o Go, consulte o artigo go-grpc-middleware.
- Se estiver a usar Java, consulte java-grpc-prometheus.
Para verificar se o seu servidor gRPC está a emitir métricas nos endpoints esperados, faça o seguinte:
- Configure o encaminhamento de portas com o seguinte comando:
kubectl -n NAMESPACE_NAME port-forward deploy/GRPC_SERVER_DEPLOYMENT_NAME PROMETHEUS_PORT_NUMBER
- Aceda a
localhost:PROMETHEUS_PORT_NUMBER
através do navegador ou da utilidadecurl
noutra sessão do terminal.
Defina um recurso PodMonitoring
Para a deteção de destinos, o operador do Managed Service for Prometheus requer um recurso PodMonitoring que corresponda ao servidor gRPC no mesmo espaço de nomes.
Pode usar a seguinte configuração PodMonitoring:
apiVersion: monitoring.googleapis.com/v1 kind: PodMonitoring metadata: name: my-prometheus-grpc-app labels: app.kubernetes.io/name: my-prometheus-grpc-app app.kubernetes.io/part-of: google-cloud-managed-prometheus spec: endpoints: - port: prometheus scheme: http interval: 30s path: /metrics selector: matchLabels: app.kubernetes.io/name: my-prometheus-grpc-app
Certifique-se de que os valores dos campos port
e MatchLabels
correspondem aos da aplicação gRPC que quer monitorizar.
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.
Veja as métricas da aplicação
Para ver as métricas de pedidos, taxa de erro e latência da sua aplicação gRPC, faça o seguinte:
-
Na Google Cloud consola, aceda à página Workloads:
Se usar a barra de pesquisa para encontrar esta página, selecione o resultado cujo subtítulo é Kubernetes Engine.
- Clique numa implementação na lista de cargas de trabalho. A coluna Tipo na lista indica o tipo de carga de trabalho.
- Na página Detalhes da implementação, clique no separador Observabilidade.
- Selecione Aplicação no seletor do painel de controlo.
Para mais informações, consulte o artigo Use métricas de desempenho da aplicação.
Resolução de problemas
Para informações sobre a resolução de problemas de carregamento de métricas no Managed Service for Prometheus, consulte Problemas com a recolha de exportadores em Resolução de problemas do lado do carregamento.