Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2024-09-10 GMT+08:00

Descripción general

El ajuste automático es un servicio que ajusta los recursos de servicio de forma automática y económica en función de los requisitos de servicio y las políticas configuradas.

Contexto

Cada vez se desarrollan más aplicaciones basadas en Kubernetes. Cada vez es más importante escalar rápidamente las aplicaciones en Kubernetes para hacer frente a los picos de servicio y escalar las aplicaciones durante las horas no pico para ahorrar recursos y reducir costos.

En un clúster de Kubernetes, el ajuste automático implica pods y nodos. Un pod es una instancia de aplicación. Cada pod contiene uno o más contenedores y se ejecuta en un nodo (VM o servidor de metal puro). Si un clúster no tiene suficientes nodos para ejecutar nuevos pods, debe agregar nodos al clúster para garantizar la ejecución del servicio.

En CCE, el ajuste automático se utiliza para servicios en línea, cómputo y entrenamiento a gran escala, GPU de aprendizaje profundo o entrenamiento e inferencia de GPU compartida, cambios de carga periódicos y muchos otros escenarios.

Ajuste automático en CCE

CCE admite el ajuste automático para las cargas de trabajo y los nodos.

  • Workload scaling: Ajuste automático en la capa de programación para cambiar la capacidad de programación de las cargas de trabajo. Por ejemplo, puede utilizar el HPA, un componente de ajuste en la capa de programación, para ajustar el número de réplicas de una aplicación. El ajuste del número de réplicas cambia la capacidad de programación ocupada por la carga de trabajo actual, lo que permite escalar en la capa de programación.
  • Node scaling: Ajuste automático en la capa de recursos. Cuando los nodos de clúster planificados no pueden permitir la programación de la carga de trabajo, se proporcionan recursos de ECS para admitir la programación.

El ajuste de la carga de trabajo y el ajuste de nodos pueden funcionar por separado o en conjunto. Para obtener más información, véase Uso de HPA y CA para el ajuste automático de cargas de trabajo y nodos.

Componentes

Los componentes de ajuste de carga de trabajo se describen de la siguiente manera:

Tabla 1 Componentes de ajuste de carga de trabajo

Tipo

Nombre del componente

Descripción de los componentes

Referencia

HPA

metrics-server

Un componente integrado de Kubernetes, que permite el ajuste horizontal los pods. Agrega la ventana de tiempo de enfriamiento a nivel de aplicación y las funciones de umbral de ajuste basadas en el HPA.

Creación de una política de HPA para el escalado automático de cargas de trabajo

CustomedHPA

cce-hpa-controller

Una función de ajuste automático mejorada, utilizada para ajuste automático de Deployments basado en métricas (uso de CPU y uso de memoria) o en un intervalo periódico (un punto de tiempo específico cada día, cada semana, cada mes o cada año).

Creación de una política de CustomedHPA para el ajuste automático de cargas de trabajo

prometheus

kube-prometheus-stack

Un marco de supervisión y alarma de sistema de código abierto, que recopila métricas públicas (uso de CPU y uso de memoria) de kubelet en el clúster de Kubernetes.

Los componentes de ajuste de nodos se describen a continuación:

Tabla 2 Componentes de ajuste de nodos

Nombre del componente

Descripción de los componentes

Escenario de aplicación

Referencia

autoscaler

Un componente de Kubernetes de código abierto para el ajuste horizontal de nodos, que está optimizado en términos de capacidades de programación y ajuste automático.

Servicios en línea, aprendizaje profundo e informática a gran escala con presupuestos de recursos limitados

Creación de una política del ajuste de nodos