Un grupo de escalado es un conjunto de instancias que comparten el mismo escenario de aplicación y tipo de instancia (ECS o ECI). Cuando ejecute aplicaciones en contenedores sobre ECI, puede usar Auto Scaling para escalar las instancias ECI según la carga de trabajo. De esta manera se mantiene la disponibilidad de la aplicación y se reducen los costos.
Procedimiento
Antes de empezar, elija un método para crear un grupo de escalado. Alibaba Cloud proporciona varios métodos. Siga la guía correspondiente al método que haya elegido.
Para crear un grupo de escalado a partir de la configuración de una instancia ECI existente, consulte Method 1: Create a scaling group based on the configuration of an existing ECI instance.
Si desea crear un grupo de escalado rápidamente y configurar su origen de configuración de instancia más adelante, consulte Method 2: Create an ECI scaling group from scratch.
Para crear y gestionar grupos de escalado de ECI mediante un archivo YAML de Kubernetes, consulte Method 3: Create an ECI scaling group by using a Kubernetes YAML file.
Método 1: desde una instancia ECI existente
Método 2: desde cero
Método 3: desde un archivo YAML de Kubernetes
Parámetros
Configuración básica
|
Parámetro |
Descripción |
|
Scaling Group Name |
Nombre del grupo de escalado. Debe tener entre 2 y 64 caracteres, comenzar con una letra, un dígito o un carácter chino, y puede contener puntos (.), guiones bajos (_) y guiones (-). |
|
Type |
Especifica el tipo de instancias que conforman el grupo de escalado. Auto Scaling gestiona y escala las instancias de este tipo.
|
|
Instance Configuration Source |
Auto Scaling utiliza esta configuración para crear instancias. Un grupo de escalado admite los siguientes orígenes de configuración de instancia:
Nota
Cuando se crea un grupo de escalado a partir de una instancia en ECS console, Auto Scaling completa automáticamente la información relacionada con el origen de la configuración de la instancia y el tipo de red. Se recomienda mantener los valores predeterminados. |
|
Suspend Process |
Permite suspender procesos específicos antes de ejecutar ciertas operaciones. Por ejemplo, suspenda el proceso de comprobación de estado antes de detener una instancia para evitar que se marque como no saludable y se elimine automáticamente del grupo de escalado. Se pueden suspender los siguientes procesos:
Para obtener más información, consulte Suspend and resume processes for a scaling group. |
|
Deletion Protection |
Si habilita la protección del grupo de escalado, no podrá eliminarlo desde la consola de Auto Scaling ni mediante llamadas a una API. Esta función previene la eliminación accidental del grupo de escalado. |
|
Instance Health Check |
Si habilita las comprobaciones de estado, el grupo de escalado verifica periódicamente el estado de ejecución de las instancias. Cuando una instancia no se encuentra en estado Running, Auto Scaling la considera no saludable y la elimina. Para obtener más información, consulte Lifecycle of instances in a scaling group. Se admiten las siguientes opciones:
|
|
Maximum instance lifetime (seconds) |
Tiempo máximo que una instancia puede permanecer en el grupo de escalado. Cuando una instancia supera su vida útil máxima, Auto Scaling crea automáticamente una nueva instancia para reemplazarla. Nota
Este parámetro solo está disponible cuando Type se establece en ECS. |
Cantidad de instancias
|
Parámetro |
Descripción |
|
Minimum Number of Instances |
Si la cantidad de instancias cae por debajo del tamaño mínimo, Auto Scaling agrega instancias para cumplir con dicho mínimo. |
|
Maximum Number of Instances |
Si la cantidad de instancias supera el tamaño máximo, Auto Scaling elimina instancias para ajustarse a dicho máximo. Para obtener más información sobre las directivas de eliminación de instancias, consulte Configure a removal policy for a scaling group. |
|
Expected Number of Instances |
Cantidad objetivo de instancias que Auto Scaling mantiene en el grupo de escalado. Para obtener más información, consulte Desired capacity. |
Directivas de escalado y eliminación
En los grupos de escalado de ECI, no es posible modificar Scaling Policy, Instance Removing Policy ni Instance Reclaim Mode. Los grupos de escalado de ECI utilizan la siguiente configuración predeterminada:
Scaling Policy: Priority Policy.
Instance Removing Policy: primero filtra las instancias creadas a partir de la configuración de escalado más antigua y luego elimina las Earliest Instances.
Instance Reclaim Mode: Release.
|
Parámetro |
Descripción |
|
Scaling Policy |
|
|
Instance Removing Policy |
Cuando es necesario eliminar instancias de un grupo de escalado, Auto Scaling primero las filtra según la directiva seleccionada. Si varias instancias cumplen los criterios, se elige una al azar para su eliminación. Este parámetro solo es compatible cuando Type se establece en ECS. A continuación se muestran las opciones disponibles:
Cuando Instance Removing Policy se establece en Instances Created From Earliest Scaling Configuration o Custom Policy, es posible que varias instancias cumplan los criterios. Configure una directiva secundaria para filtrar con mayor precisión las instancias que se van a eliminar. Están disponibles las siguientes directivas secundarias:
Nota
La eliminación de instancias también depende de Scaling Policy del grupo de escalado. Para obtener más información, consulte Configure a removal policy for a scaling group. |
|
Instance Reclaim Mode |
Define cómo gestiona Auto Scaling una instancia después de eliminarla del grupo de escalado. Están disponibles los siguientes modos de recuperación: Nota
Este parámetro solo se puede configurar cuando Type se establece en ECS y Network Type se establece en VPC. En los grupos de escalado de ECI, el modo de recuperación predeterminado es Release.
|
Configuración de red
Cuando Instance Configuration Source se establece en Launch Templates o Select Existing Instance, parámetros como Network Type, VPC y vSwitch se completan automáticamente según la plantilla de lanzamiento o la instancia seleccionada. También puede volver a configurar los ajustes de red del grupo de escalado según sea necesario.
|
Parámetro |
Descripción |
|
Network Type |
Seleccione un tipo de red para las instancias del grupo de escalado. Se admiten VPC y Classic Network. Aviso
El parámetro Network Type no se puede modificar después de crear el grupo de escalado. Importante
Se recomienda seleccionar VPC. Los grupos de escalado en una VPC admiten configuraciones más flexibles, como directivas de escalado y modos de recuperación de instancias más adaptables, además de la asociación con Application Load Balancers (ALB) y Network Load Balancers (NLB). Para obtener más información sobre VPC, consulte What is a Virtual Private Cloud (VPC)?. |
|
VPC |
Este parámetro está disponible cuando Network Type se establece en VPC. Después de seleccionar una VPC, todas las instancias del grupo de escalado se crean dentro de esa VPC. Aviso
El parámetro VPC no se puede modificar después de crear el grupo de escalado. |
|
vSwitch |
Después de seleccionar una VPC, puede elegir los vSwitches que pertenecen a dicha VPC. Todas las instancias del grupo de escalado se crean en los vSwitches seleccionados. Importante
Se recomienda seleccionar vSwitches en varias zonas de disponibilidad. Esto ayuda a prevenir errores de creación de instancias por inventario insuficiente en una sola zona de disponibilidad. Si utiliza un grupo de escalado de ECS, también puede cambiar Scaling Policy para controlar la distribución de las instancias entre las zonas de disponibilidad. |
Integraciones de servicios
|
Parámetro |
Descripción |
|
Associate with ApsaraDB RDS, Redis, or MongoDB |
Si sus instancias necesitan acceder a bases de datos RDS, Redis o MongoDB, asocie dichas bases de datos aquí. Esto agrega automáticamente las direcciones IP internas de las nuevas instancias a la lista de permitidos de IP de las bases de datos asociadas. Nota
|
|
Associated CLB Instances (Formerly Known as SLB Instances) |
Después de asociar un grupo de escalado con una instancia CLB, las instancias que se agreguen al grupo de escalado se añadirán automáticamente como servidores de backend a la instancia CLB para procesar las solicitudes que esta reenvíe. Puede especificar el grupo de servidores al que se agregarán las instancias. Se admiten los dos tipos de grupos de servidores siguientes:
Si especifica un grupo de servidores predeterminado y varios grupos de vServer, las instancias se agregan a todos estos grupos de servidores de manera simultánea. Nota
Un grupo de escalado se puede asociar con una cantidad limitada de instancias CLB y grupos de vServer. Para consultar su cuota o solicitar un aumento, vaya a Quota Center. |
|
Associate with ALB, NLB, and GWLB server groups |
Importante
Este parámetro solo está disponible cuando Network Type se establece en VPC. Después de asociar un grupo de escalado con grupos de servidores ALB o NLB, las instancias que se agreguen al grupo de escalado se añadirán automáticamente como servidores de backend a dichos grupos para procesar las solicitudes distribuidas por las instancias ALB o NLB. También debe especificar el puerto y el peso de los servidores de backend. El peso predeterminado es 50. Cuanto mayor sea el peso, más solicitudes recibirá la instancia. Si el peso es 0, la instancia no recibe ninguna solicitud. Si asocia un grupo de escalado con varios grupos de servidores ALB o NLB, las instancias que se agreguen al grupo de escalado se añadirán a todos estos grupos de servidores de manera simultánea. Nota
Cuando un grupo de escalado se asocia con grupos de servidores GWLB, no se admite la configuración de peso y el puerto no se puede modificar. Nota
Un grupo de escalado se puede asociar con una cantidad limitada de grupos de servidores ALB y NLB. Para consultar su cuota o solicitar un aumento, vaya a Quota Center. |
Otras configuraciones
|
Parámetro |
Descripción |
|
Tag |
Agregue etiquetas para facilitar la búsqueda y organización de los grupos de escalado. Para obtener más información, consulte Tags. Nota
Las etiquetas configuradas aquí se aplican al grupo de escalado. Para agregar etiquetas a las instancias dentro del grupo de escalado, defínalas en la configuración de escalado o en la plantilla de lanzamiento. |
|
Tags Propagated to Instances During Scale-out |
Propaga las etiquetas seleccionadas del grupo de escalado a las nuevas instancias durante los eventos de escalado horizontal. |
|
Add Existing Instance |
Este parámetro está disponible cuando Type se establece en ECS y Instance Configuration Source se establece en Launch Templates o Select Existing Instance. Si establece una capacidad deseada y agrega instancias existentes al mismo tiempo, la capacidad deseada aumenta automáticamente. Por ejemplo, si establece la capacidad deseada en 1 y agrega dos instancias existentes al crear un grupo de escalado, estas dos instancias se añaden al grupo de escalado después de su creación y la capacidad deseada pasa a ser 3. Para permitir que el grupo de escalado gestione el ciclo de vida de las instancias existentes, seleccione la casilla Enable the scaling group to manage the instance lifecycle.
Nota
Puede agregar instancias de suscripción a un grupo de escalado, pero no es posible permitir que el grupo de escalado gestione el ciclo de vida de dichas instancias. |
|
Create Regular Rule |
Auto Scaling puede enviar notificaciones por SMS, mensajes internos y correo electrónico cuando una actividad de escalado se ejecuta de forma exitosa, falla o se rechaza. Para obtener más información, consulte Configure notifications. |
|
Resource Group |
Seleccione un resource group para organizar los recursos del grupo de escalado. Esto permite vistas de recursos aisladas y control de acceso. Para obtener más información, consulte Use resource groups for fine-grained management of scaling groups. |
|
Synchronize Alert Rule to CloudMonitor |
Esta función solo se puede habilitar o deshabilitar al crear el grupo de escalado. Si la habilita, el sistema crea un grupo de aplicaciones de CloudMonitor, lo asocia con el grupo de escalado y sincroniza las reglas de alarma del grupo de escalado para mostrarlas en la consola de CloudMonitor. |
Parámetros YAML
Campos YAML de Kubernetes
Para desplegar un scaling group del tipo Elastic Container Instance mediante un archivo YAML de Kubernetes, solo se pueden configurar los siguientes campos de un recurso Kubernetes Deployment.
Un archivo YAML suele incluir las secciones kind, metadata y spec. Para más detalles sobre la estructura del archivo YAML, consulte el Deployment de ejemplo en el sitio web oficial de Kubernetes.
Anotaciones extendidas
Cuando despliega un grupo de escalado de Elastic Container Instance (ECI) con un archivo YAML de Kubernetes, solo son compatibles las siguientes anotaciones extendidas.