Prácticas recomendadas para usar las métricas de Pub/Sub como indicadores de escalamiento

Si usas métricas de Pub/Sub como indicador para ajustar la escala de tu canalización automáticamente, ten en cuenta las siguientes recomendaciones.

Usar más de un indicador para ajustar la escala automáticamente de tu canalización

No uses solo las métricas de Pub/Sub para ajustar la escala de tu canalización automáticamente. Esto podría generar situaciones en las que tengas un punto único de fallo para tus decisiones de escalamiento automático. En su lugar, usa una combinación de indicadores para activar la escalamiento automático. Un ejemplo de indicador adicional es la CPU del cliente el nivel de uso adecuado. Este indicador puede indicar si las tareas del cliente están manejando el trabajo y si el escalamiento puede permitir que las tareas del cliente manejen más trabajo. Estos son algunos ejemplos de indicadores de otros productos de Cloud que puedes usar para tu canalización:

  • Compute Engine (GCE) admite el ajuste de escala automático en función de indicadores, como los siguientes: el uso de CPU y las métricas de Monitoring. Compute Engine también admite varias métricas y varios indicadores para mejorar la confiabilidad.

    Para obtener más información sobre el escalamiento con métricas de Monitoring, consulta Escala en función de las métricas de Monitoring. Para obtener más información sobre el escalamiento con el uso de CPU, consulta Escala según el uso de CPU.

  • El ajuste de escala automático horizontal de Pods (HPA) de Google Kubernetes Engine (GKE) el ajuste de escala automático basado en el uso de recursos, como el uso de CPU y memoria, métricas personalizadas de Kubernetes y métricas externas, como Métricas de supervisión para Pub/Sub. También admite varios indicadores.

    Para obtener más información, consulta Ajuste de escala automático horizontal de Pods.

Cómo abordar las brechas en las métricas cuando se producen

No supongas que la ausencia de métricas significa que no hay mensajes para el proceso de administración de recursos. Por ejemplo, si en respuesta a métricas que faltan, reduce la escala verticalmente tareas de procesamiento a cero, mensajes que ya están pendientes o que se publican durante este tiempo podrían no consumirse. Esto aumenta la latencia de extremo a extremo. Para minimizar la latencia, establece un recuento mínimo de tareas superior a cero para que siempre estés preparado para controlar los mensajes publicados, incluso si las métricas recientes de Pub/Sub indican una cola vacía.

Tanto los ajustadores de escala de GCE como los HPA de GKE están diseñados para mantener el recuento de réplicas actual cuando las métricas no están disponibles. Esto proporciona una red de seguridad si no hay métricas disponibles.

También puedes implementar mecanismos de control de flujo de Pub/Sub para evitar que las tareas se vean sobrecargadas si se reducen de forma no intencional debido a que faltan métricas.