En este documento se explica cómo identificar cargas de trabajo con recursos insuficientes o excesivos que se ejecutan en clústeres de Google Kubernetes Engine (GKE) mediante estadísticas y recomendaciones. Una vez que hayas verificado que las cargas de trabajo identificadas se beneficiarían de la recomendación de aumentar o reducir la escala, puedes hacer el cambio recomendado para ahorrar costes o aumentar la fiabilidad de tu carga de trabajo. Si es posible, la recomendación incluye los ahorros o costes mensuales previstos. Para obtener más información, consulta Información sobre las estimaciones de costes o ahorros.
GKE proporciona estas estadísticas sobre las cargas de trabajo que se ejecutan en clústeres Autopilot y Standard. GKE también ofrece recomendaciones similares para clústeres completos. Para obtener más información, consulta Identificar clústeres de GKE con recursos insuficientes o excesivos.
GKE monitoriza tus clústeres y te ofrece orientación para optimizar tu uso a través de Active Assist, un servicio que proporciona recomendadores que generan estadísticas y recomendaciones para usar recursos en Google Cloud. Para obtener más información sobre cómo gestionar las estadísticas y las recomendaciones, consulta el artículo Optimizar el uso de GKE con estadísticas y recomendaciones.
Obtener estadísticas y recomendaciones sobre cargas de trabajo con recursos insuficientes o excesivos
GKE muestra estas estadísticas y recomendaciones en las siguientes ubicaciones de la consola Google Cloud después de observar el comportamiento específico que se describe en la siguiente sección:
Las recomendaciones tienen los siguientes títulos en la página Cargas de trabajo:
- Cargas de trabajo con aprovisionamiento excesivo: "Reduce las solicitudes de recursos para reducir los costes"
- Cargas de trabajo con aprovisionamiento insuficiente: "Aumentar las solicitudes de recursos para mejorar la fiabilidad"
También puedes recibir todo tipo de estadísticas y recomendaciones a través de la CLI de Google Cloud o de la API Recommender. Para encontrar estos tipos específicamente, sigue las instrucciones para ver estadísticas y recomendaciones y filtra por los subtipos WORKLOAD_UNDERPROVISIONED y WORKLOAD_OVERPROVISIONED.
Una vez que hayas identificado las cargas de trabajo con recursos insuficientes o excesivos, consulta las consideraciones para ajustar el tamaño de las cargas de trabajo.
Cómo identifica GKE las cargas de trabajo con aprovisionamiento insuficiente y excesivo
En la siguiente tabla se describen las señales que usa GKE para identificar las cargas de trabajo con recursos insuficientes y con recursos excesivos que se pueden aumentar o reducir, así como el umbral de cada señal. Además, en esta tabla se muestra la acción que te recomendamos que lleves a cabo en este caso.
| Subtipo | Señal | Periodo de observación | Detalles | Recomendación |
|---|---|---|---|---|
WORKLOAD_UNDERPROVISIONED |
El uso de la CPU o la memoria es elevado | Últimos 15 días | Una carga de trabajo está infraprovisionada cuando la utilización de la CPU o la memoria es superior al 150% durante al menos el 10% del tiempo en los últimos 15 días. | Escalar la carga de trabajo para aumentar la fiabilidad |
WORKLOAD_OVERPROVISIONED |
El uso de CPU o memoria es bajo | Últimos 15 días | Una carga de trabajo tiene recursos aprovisionados en exceso cuando la utilización de la CPU o la memoria es inferior al 50% durante al menos el 90% del tiempo en los últimos 15 días. | Reducir la carga de trabajo para ahorrar costes |
GKE también usa las siguientes directrices para determinar cuándo proporcionar estadísticas y recomendaciones:
- GKE no genera recomendaciones para la métrica objetivo del autoescalado de pods horizontal (HPA) porque usar esta métrica puede provocar interferencias.
- Si el autoescalado vertical de pods (VPA) está habilitado, los valores de solicitud se gestionan automáticamente y GKE no necesita generar una recomendación.
- GKE puede esperar hasta tres días antes de generar recomendaciones para nuevas cargas de trabajo.
Información sobre las estimaciones de costes o ahorros
Si es posible, la recomendación de GKE incluye una estimación que proyecta el coste o el ahorro mensual si ajustas el tamaño de la carga de trabajo. Esta estimación se deriva de los costes de la carga de trabajo, que se basan en la media ponderada de los valores de las solicitudes combinados con el coste de la CPU y la memoria de la carga de trabajo durante los últimos 30 días.
Los costes o ahorros estimados son previsiones basadas en el gasto anterior y no garantizan los costes o ahorros futuros.
Para ver estas estimaciones, asegúrate de que se cumplan los siguientes requisitos:
- Tienes el permiso
billing.accounts.getSpendingInformationnecesario para obtener información sobre el gasto. Para obtener más información, consulta el artículo sobre el acceso a la facturación de Cloud. - La asignación de costes de GKE está habilitada en el clúster. Para obtener más información, consulta Habilitar la asignación de costes de GKE.
Para obtener más información sobre el coste de todos tus clústeres de GKE, incluido un desglose más detallado basado en espacios de nombres y cargas de trabajo, consulta Obtener estadísticas clave sobre el gasto de la asignación de recursos y los costes de los clústeres de GKE.
Para obtener más información sobre los costes de ejecutar un clúster de GKE, consulta los precios de GKE.
Consideraciones al ajustar el tamaño de las cargas de trabajo
Antes de seguir una recomendación para aumentar o reducir la escala de una carga de trabajo, ten en cuenta lo siguiente:
- Revisa la utilización de recursos de la carga de trabajo para ver su rendimiento y si está usando más o menos CPU y memoria de lo esperado. Para ver las instrucciones, consulta Analizar solicitudes de recursos.
- Las cargas de trabajo de procesamiento por lotes pueden mantener intencionadamente una utilización alta para reducir los costes. Si los recursos asignados son suficientes para los trabajos por lotes, no es necesario aumentar la carga de trabajo con un uso elevado, que se ha identificado como aprovisionada de forma insuficiente.
- GKE tiene una visibilidad limitada del uso real de memoria de las cargas de trabajo basadas en la máquina virtual Java (JVM). Presta especial atención antes de aplicar recomendaciones para estos tipos de cargas de trabajo.
Implementar la recomendación para ajustar el tamaño de una carga de trabajo
Puedes ajustar el tamaño de una carga de trabajo para que se adapte mejor a su uso de recursos de una de las siguientes formas:
- Habilita el autoescalado de pods vertical para la carga de trabajo. Para obtener más información, consulta Configurar automáticamente las solicitudes de recursos de Pod.
Cambia las solicitudes y los límites manualmente según la recomendación:
- Carga de trabajo con aprovisionamiento insuficiente: para implementar la recomendación de ajustar el tamaño de una carga de trabajo con aprovisionamiento insuficiente, aumenta las solicitudes y los límites de recursos de la carga de trabajo. Si implementas esta recomendación, te asegurarás de que tu carga de trabajo siga siendo fiable, ya que tendrá la cantidad adecuada de recursos para sus aplicaciones.
- Carga de trabajo con aprovisionamiento excesivo: para implementar la recomendación de ajustar el tamaño de una carga de trabajo con aprovisionamiento excesivo, disminuye las solicitudes y los límites de recursos de la carga de trabajo. Ajusta las asignaciones de CPU y memoria del clúster para que se adapten a las necesidades de tu carga de trabajo. Si implementas esta recomendación, te asegurarás de usar solo los recursos que necesites para ejecutar tu carga de trabajo.
Siguientes pasos
- Ver métricas de optimización relacionadas con el coste
- Reducir los costes escalando los clústeres de GKE durante las horas de menor actividad
- Optimizar el uso de GKE con estadísticas y recomendaciones
- Prácticas recomendadas para ejecutar aplicaciones de Kubernetes de coste optimizado en GKE
- 5 funciones de GKE para optimizar tus clústeres