En este documento, se describe cómo configurar tu implementación de Google Kubernetes Engine para que puedas usar Google Cloud Managed Service para Prometheus para recopilar métricas de SGLang. Este documento te muestra cómo hacer lo siguiente:
- Habilita la supervisión automática de aplicaciones para SGLang o configura SGLang de forma manual para que informe métricas.
Estas instrucciones se aplican solo si usas la colección administrada con Managed Service para Prometheus. Si usas la colección implementada de forma automática, consulta la documentación de SGLang para obtener información sobre la instalación.
Estas instrucciones se proporcionan a modo de ejemplo y se espera que funcionen en la mayoría de los entornos de Kubernetes. Si tienes problemas a la hora de instalar una aplicación o un exportador debido a políticas restrictivas de la organización o de seguridad, te recomendamos que consultes la documentación de código abierto para obtener asistencia.
Para obtener información sobre SGLang, consulta SGLang.
Requisitos previos
Para recopilar métricas desde SGLang mediante Managed Service para Prometheus y la colección administrada, tu implementación debe cumplir los siguientes requisitos:
- Tu clúster debe ejecutar la versión 1.28.15-gke.2475000 o posterior de Google Kubernetes Engine.
- Debes ejecutar Managed Service para Prometheus con la colección administrada habilitada. Para obtener más información, consulta Primeros pasos con la recopilación administrada.
--enable-metrics marca. No es necesario que instales un exportador por separado.
Para verificar que SGLang emita métricas en los extremos esperados, haz lo siguiente:
- Usa el siguiente comando para configurar la redirección de puertos:
kubectl -n NAMESPACE_NAME port-forward POD_NAME 30000
- Usa el navegador o la utilidad
curlen otra sesión de la terminal para acceder al extremolocalhost:30000/metrics.
Usa la supervisión automática de aplicaciones
SGLang admite el uso de la supervisión automática de aplicaciones. Cuando usas la supervisión automática de aplicaciones, Google Kubernetes Engine hace lo siguiente:
- Detecta instancias implementadas de cargas de trabajo de SGLang.
- Implementa un recurso PodMonitoring para cada instancia de carga de trabajo detectada.
- Instala paneles de Cloud Monitoring para las métricas de SGLang.
Para usar la supervisión automática de aplicaciones, debes habilitar la función en tu clúster de GKE. Puedes usar la Google Cloud consola, Google Cloud CLI (versión 492.0.0 o posterior) o la API de GKE. Para obtener más información, consulta Habilita la supervisión automática de aplicaciones.
Define un recurso PodMonitoring
Para el descubrimiento de destinos, el operador de Managed Service para Prometheus requiere un recurso PodMonitoring que corresponda a SGLang en el mismo espacio de nombres.
Puedes usar la siguiente configuración de PodMonitoring:
apiVersion: monitoring.googleapis.com/v1
kind: PodMonitoring
metadata:
name: sglang
labels:
app.kubernetes.io/name: sglang
app.kubernetes.io/part-of: google-cloud-managed-prometheus
spec:
endpoints:
- port: 30000
scheme: http
interval: 15s
path: /metrics
selector:
matchLabels:
app: sglang-server
port y matchLabels coincidan con los de los Pods de SGLang que deseas supervisar.
Para aplicar 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.
Verifica la configuración
Puedes usar el Explorador de métricas para verificar que configuraste correctamente SGLang. Cloud Monitoring puede tardar uno o dos minutos en transferir las métricas.
Para verificar que se hayan transferido las métricas, haz lo siguiente:
-
En la Google Cloud consola de, accede a la leaderboard Explorador de métricas página:
Acceder al Explorador de métricas
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Monitoring.
- En la barra de herramientas del panel del compilador de consultas, selecciona el botón cuyo nombre sea code PromQL.
- Ingresa y ejecuta la siguiente consulta:
up{job=~"sglang|gke-ac-.*", cluster="CLUSTER_NAME", namespace="NAMESPACE_NAME"}
Soluciona problemas
Para obtener información sobre la solución de problemas de transferencia de métricas, consulta Problemas de recopilación de exportadores en Solución de problemas de transferencia.