Para facilitar la agrupación, gestión y operación de nodos ECS basados en la nube, los ACK One registered cluster s ofrecen la función de node pool, que le permite gestionar las instancias de Elastic Compute Service (ECS) agregadas a los clústeres en grupos. Un node pool es una colección lógica de uno o varios nodos. Gestione y mantenga los nodos de un node pool de forma centralizada. Por ejemplo, actualice de manera centralizada y configure el escalado automático para los nodos de un node pool. También agrupe recursos de cómputo en diferentes node pools para lograr el aislamiento de recursos. Por ejemplo, cree node pools separados para distintos tipos de cargas de trabajo o cree diferentes node pools para gestionar nodos con distintos atributos.
Node pool
Considere un node pool como una plantilla de configuración que se aplica a todos los nodos agregados al mismo. Cree uno o más node pools de diferentes tipos y configuraciones en un clúster de Container Service for Kubernetes (ACK). Las configuraciones de un node pool consisten en atributos del nodo, como las especificaciones del nodo, zonas, sistema operativo, etiquetas y taints. Configure los atributos del nodo cuando crea un node pool o modifíquelos después de su creación. Para obtener más información, consulte Create a node pool.
Use un solo node pool para reducir la complejidad de gestión y configuración. También utilice varios node pools para implementar un aislamiento de recursos detallado y gestionar un despliegue híbrido de diferentes tipos de nodos.
Node pool único | Varios node pools |
Gestione recursos de cómputo para varios equipos o cargas de trabajo mediante un solo node pool para simplificar las operaciones y el mantenimiento. Un node pool único admite las siguientes funciones.
No se pueden mezclar instancias con diferentes sistemas operativos y arquitecturas de CPU (Arm y x86). | Cree varios node pools para proporcionar recursos de cómputo independientes para diferentes cargas de trabajo o equipos. Esto ayuda a evitar la contención de recursos y posibles riesgos de seguridad. Esta opción es adecuada para los siguientes escenarios.
|
Cuando utiliza varios node pools, emplee políticas de programación para definir la prioridad de los distintos node pools y optimizar la gestión de recursos y costos. Por ejemplo:
Controle la prioridad de aprovisionamiento de recursos de cómputo con diferentes costos, como instancias spot e instancias de suscripción, para reducir los costos generales.
Asigne diferentes tipos de instancias según los requisitos de la carga de trabajo, como la proporción obligatoria de arquitecturas x86 frente a Arm.
Procedimiento de creación de node pools
Funciones básicas de los node pools
Los node pools en los ACK One registered cluster s proporcionan las siguientes funciones para facilitar la gestión de nodos.
Función | Descripción |
| |
| |
| |
Use etiquetas y taints para gestionar y programar recursos en clústeres de Kubernetes. Las etiquetas sirven para identificar y clasificar recursos de Kubernetes, como los nodos. Los nodos pueden usar taints para rechazar pods específicos. | |
Quite nodos que ya no sean necesarios de un node pool. Para evitar problemas inesperados durante la eliminación de nodos, se recomienda quitar los nodos siguiendo el procedimiento estándar de eliminación. |
Facturación de node pools
El uso de node pools y sus capacidades automatizadas de O&M es gratuito. Sin embargo, los servicios en la nube correspondientes cobran por los recursos en la nube dentro del node pool, como las instancias ECS.
-
Para obtener más información sobre la facturación de instancias ECS, consulte Billing overview.
Para cambiar el método de facturación de los nodos existentes en un node pool, consulte Change the billing method of an instance from pay-as-you-go to subscription. Cambiar el método de facturación de un node pool afecta únicamente a los nuevos nodos que se escalan horizontalmente. No cambia el método de facturación de los nodos existentes en el node pool.
Para obtener más información sobre la facturación de grupos de escalado, consulte Auto Scaling billing.
Glosario
Antes de usar node pools, se recomienda familiarizarse con los siguientes conceptos y términos.
Grupo de escalado: Cuando escala un node pool horizontal o verticalmente, ACK realiza operaciones de escalado horizontal y eliminación de nodos mediante el servicio Auto Scaling (ESS). Cada node pool tiene una relación uno a uno con un scaling group de Auto Scaling. Un grupo de escalado es una colección de una o más instancias ECS (nodos worker).
Configuración de escalado: Un node pool usa una configuración de escalado para gestionar las configuraciones de los nodos. Una configuración de escalado es una plantilla que se utiliza para crear instancias ECS durante el escalado elástico. Cuando se activa una actividad de escalado, Auto Scaling usa la configuración de escalado especificada para crear automáticamente instancias ECS.
Actividad de escalado: Cada reducción, expansión, adición de nodos o eliminación de nodos en un node pool activa una actividad de escalado. Después de que se activa una actividad de escalado, el sistema realiza automáticamente todas las acciones de escalado y guarda los registros relevantes. Consulte el historial de actividades de escalado de un node pool.
-
Reemplazo del disco del sistema: Algunas operaciones en un node pool, como agregar automáticamente nodos existentes y cambiar el runtime de contenedores, inicializan el nodo reemplazando su disco del sistema. Las propiedades de la instancia del nodo, como el nombre del nodo, el ID de instancia y la dirección IP, no cambian, pero los datos en el disco del sistema del nodo se eliminan. Los discos de datos conectados al nodo no se ven afectados.
Cuando ACK reemplaza un disco del sistema, drena el nodo. Este proceso desaloja los pods del nodo hacia otros nodos disponibles y cumple con el Pod Disruption Budget (PDB). Para garantizar una alta disponibilidad del servicio, se recomienda usar un despliegue de múltiples réplicas para distribuir las cargas de trabajo en varios nodos y configurar PDBs para servicios críticos. Esto ayuda a controlar el número de pods que pueden interrumpirse al mismo tiempo.
Actualización in situ: Un método de actualización que sirve como alternativa al reemplazo del disco del sistema. Este método actualiza y reemplaza directamente los componentes necesarios en el nodo. Una actualización in situ no reemplaza el disco del sistema ni reinicializa el nodo, y los datos en el nodo no se ven afectados.