Servidor gRPC

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:

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.

Para verificar se o seu servidor gRPC está a emitir métricas nos endpoints esperados, faça o seguinte:

  1. Configure o encaminhamento de portas com o seguinte comando:
    kubectl -n NAMESPACE_NAME port-forward deploy/GRPC_SERVER_DEPLOYMENT_NAME PROMETHEUS_PORT_NUMBER
      
  2. Aceda a localhost:PROMETHEUS_PORT_NUMBER através do navegador ou da utilidade curl 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:

  1. Na Google Cloud consola, aceda à página Workloads:

    Aceda a Cargas de trabalho

    Se usar a barra de pesquisa para encontrar esta página, selecione o resultado cujo subtítulo é Kubernetes Engine.

  2. Clique numa implementação na lista de cargas de trabalho. A coluna Tipo na lista indica o tipo de carga de trabalho.
  3. Na página Detalhes da implementação, clique no separador Observabilidade.
  4. 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.