En este documento, se describe cómo configurar tu implementación de Google Kubernetes Engine a fin de que puedas usar Google Cloud Managed Service para Prometheus a fin de recopilar métricas de las solicitudes gRPC que entrega tu aplicación. En este documento, se describe cómo hacer lo siguiente:
- Configurar el middleware de gRPC para Prometheus para Go y Java.
- Configurar un recurso PodMonitoring a fin de que Managed Service para Prometheus recopile las métricas exportadas.
- Consultar el panel Aplicación de tu Deployment de GKE.
Estas instrucciones se aplican solo si usas la colección administrada con Managed Service para Prometheus.
Para obtener más información sobre gRPC, consulta grpc.io.
Configurar
Para recopilar métricas de tu servidor de gRPC, debes configurar el middleware de gRPC adecuado.
- Si usas Go, consulta go-grpc-middleware.
- Si usas Java, consulta java-grpc-prometheus.
Para verificar que tu servidor de gRPC emita métricas en los extremos esperados, haz lo siguiente:
- Configura la redirección de puertos mediante el siguiente comando:
kubectl -n NAMESPACE_NAME port-forward deploy/GRPC_SERVER_DEPLOYMENT_NAME PROMETHEUS_PORT_NUMBER
- Accede a
localhost:PROMETHEUS_PORT_NUMBER
mediante el navegador o la utilidadcurl
en otra sesión de la terminal.
Define un recurso PodMonitoring
Para el descubrimiento de destinos, el operador de Managed Service para Prometheus requiere un recurso PodMonitoring que corresponda al servidor de gRPC en el mismo espacio de nombres.
Puedes usar la siguiente configuración de 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
Asegúrate de que los valores de los campos port
y MatchLabels
coincidan con los de la aplicación de gRPC que deseas supervisar.
Para aplicar los cambios de configuración desde un archivo local, ejecuta el siguiente comando:
kubectl apply -n NAMESPACE_NAME -f FILE_NAME
También puedes usar Terraform para administrar tus opciones de configuración.
Consulta las métricas de las aplicaciones
Para ver las métricas de solicitud, tasa de error y latencia de tu aplicación gRPC, haz lo siguiente:
-
En la consola de Google Cloud, ve a la página Cargas de trabajo:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Kubernetes Engine.
- Haz clic en un Deployment en la lista de cargas de trabajo. La columna Tipo en la lista indica el tipo de carga de trabajo.
- En la página Detalles de la implementación, haz clic en la pestaña Observabilidad.
- Selecciona Aplicación en el selector del panel.
Para obtener más información, consulta Usa métricas de rendimiento de la aplicación.
Soluciona problemas
Si deseas obtener información para solucionar problemas de transferencia de métricas en el servicio administrado para Prometheus, consulta Problemas con la recopilación de exportadores en Soluciona problemas del lado de la transferencia.