Seleccionar página

Escalado horizontal automático

  • Además de la escala vertical automática incorporada , Elasticserver PaaS puede escalar automáticamente los nodos horizontalmente, cambiando la cantidad de contenedores dentro de una capa ( nodeGroup ) en función de la carga entrante. Con esto, todas las instancias dentro de la misma capa se distribuyen uniformemente entre los conjuntos de hardware disponibles (hosts) utilizando las reglas anti-afinidad. Es decir, cuando se crea un nuevo contenedor, se coloca en el host con el menor número de instancias de la misma capa y la marca de carga más baja, lo que garantiza la confiabilidad y alta disponibilidad de los proyectos alojados.

El escalado horizontal automático se implementa con la ayuda de los disparadores ajustables, que son condiciones personalizadas para la adición  y la eliminación  de nodos en función de la carga. Cada minuto, Elasticserver analiza el consumo promedio de los recursos (para la cantidad de minutos especificados dentro del disparador) para decidir si se requiere el ajuste del conteo de nodos.

Con esto, la estadística se recopila para toda la capa, por lo que si hay tres nodos, que se cargan para 20%, 50% y 20% respectivamente, el valor promedio calculado es 30%. Además, las condiciones de entrada y salida de la escala son independientes, es decir, el período analizado para uno no se restablece cuando se ejecuta otro.

A continuación, veremos cómo:

Disparadores para escalado automático

Para configurar un disparador para la escala horizontal automática, siga los pasos a continuación.

Nota: Cuando un único servidor de aplicaciones certificado (no un contenedor Docker personalizado) se escala en un entorno sin equilibradores de carga , el equilibrador NGINX se agrega automáticamente. Por lo tanto, si necesita uno diferente para su aplicación, debe agregarse manualmente antes del primer evento de escala.

1. Haga clic en el botón Configuración para el entorno requerido.

2. En la pestaña abierta, navegue a la sección Monitoreo> Escala horizontal automática , donde puede ver una lista de activadores de escala configurados para el ambiente actual (si corresponde).

Use los botones en el panel de herramientas para administrar el escalado horizontal automático para el ambiente:

  • Agregar : crea un nuevo desencadenante
  • Editar : ajusta el activador existente
  • Eliminar : elimina el disparador no requerido
  • Actualizar : actualiza la lista mostrada de desencadenantes de escala

Haga clic en Agregar para continuar.

3. Seleccione la capa de ambiente requerida de la lista desplegable y elija el tipo de recurso para monitorear a través de una de las pestañas apropiadas ( CPU , Memoria , Red , E / S de disco , IOPS de disco ).

Consejos:

  • el nodo inicial (maestro) se puede usar como servidor de almacenamiento para compartir datos dentro de toda la capa, incluidos los nodos agregados a través del escalado horizontal automático
  • los límites de CPU y memoria se calculan en función de la cantidad de nubes asignadas (una unidad especial de recursos Jelastic, que representa una CPU de 400 MHz y 128 MiB RAM simultáneamente)

4. El gráfico de la derecha muestra las estadísticas sobre el consumo de recursos seleccionado. Puede elegir el período requerido para los datos mostrados (hasta una semana) utilizando la lista desplegable correspondiente. Con esto, si es necesario, puede habilitar / deshabilitar la función de actualización automática de las estadísticas .

Además, puede pasar el cursor sobre el gráfico para ver la cantidad exacta de recursos utilizados para un momento en particular. Use esta información para configurar las condiciones adecuadas para sus desencadenantes.

5. Cada activador tiene condiciones de Agregar y quitar nodos , que se pueden habilitar con las casillas de verificación correspondientes justo antes del título.

Ambos están configurados de manera similar:

  • Cuando la carga es mayor (menor) que – el límite superior (inferior) en porcentaje para la carga promedio (es decir, ejecuta el disparador si se excede)

Consejos:

  • el valor requerido se puede establecer a través de los controles deslizantes apropiados en el gráfico
  • el 100% del valor deshabilita automáticamente el disparador añadir nodos  y 0% – el disparador eliminar nodos
  • la diferencia mínima permitida entre las condiciones de Agregar y quitar nodos es del 20%
  • las unidades de Mbps se pueden seleccionar para el disparador de red en lugar del porcentaje
  • Recomendamos establecer la carga promedio para el activador Agregar nodos por encima del umbral del 50% para evitar escalas innecesarias (es decir, recursos / fondos desperdiciados)
  • Por al menos – la cantidad de minutos que se calcula el consumo promedio (hasta una hora con un paso de 5 minutos, es decir , 1 , 5 , 10 , 15 , etc.)
  • Escalar horizontalmente dentro del : el número máximo (mínimo) de nodos para la capa, que se puede configurar debido al escalado horizontal automático
  • Escalar por : el recuento de nodos que se agregarán / eliminarán a la vez tras la ejecución del disparador

Al configurar un disparador, recomendamos tener en cuenta el modo de escala   de la capa. Por ejemplo, debe establecer un porcentaje de carga más bajo en el desencadenador Agregar nodos para el modo con estado , ya que la clonación de contenido requiere algo de tiempo (especialmente para contenedores con una gran cantidad de datos) y puede alcanzar el límite de recursos antes de crear un nuevo nodo.

6. Recibirá automáticamente una notificación por correo electrónico sobre la actividad de activación de escala horizontal automática configurada de manera predeterminada; sin embargo, si es necesario, puede deshabilitarlo con el conmutador de Enviar notificaciones de correo electrónico apropiado .

7. En la parte inferior del formulario tiene los siguientes botones:

  • Deshacer cambios : vuelve al estado anterior (solo para editar)
  • Cerrar : sale del diálogo sin cambios
  • Aplicar (Agregar) : confirma los cambios para el activador

Seleccione la opción requerida para finalizar la creación del disparador (ajuste).

Activa la historia de ejecución

Puede ver el historial de ejecución de desencadenadores de escala para un ambiente particular.

En el siguiente ejemplo, aplicaremos una carga alta durante 5 minutos (consulte las estadísticas de uso de RAM en la imagen a continuación) en el servidor de aplicaciones con los siguientes activadores configurados:

  • agregue un nodo cuando la carga promedio de RAM sea superior al 65% durante al menos 5 minutos
  • eliminar el nodo cuando la carga promedio de RAM es inferior al 20% durante al menos 10 minutos

Ahora, veamos el comportamiento automático de escala horizontal:

1. Navegue a la sección Configuración> Monitoreo> Historial de eventos y elija la opción Escala horizontal dentro de la lista desplegable Tipo .

Además, puede personalizar el período para mostrar la actividad de los activadores a través de los campos Desde y Hasta apropiados .

2. Los siguientes detalles se proporcionan en la lista:

  • Fecha y hora de la ejecución del disparador
  • Acción realizada ( Agregar o quitar nodos )
  • Los nodos escriben a qué escala se ha aplicado
  • Información sobre la condición de ejecución del disparador

Además, al pasar el mouse sobre el registro en particular, también puede verificar el Valor de carga (uso de recursos en el momento de la ejecución) y el Conteo de nodos (número resultante de nodos).

Los Add y eliminar nodos desencadenantes son independientes, por lo que la condición de eliminación (carga media de menos de 20% durante al menos 10 minutos) no se restablece y continuó para comprobar, incluso después de una nueva adición de nodo. Tal enfoque proporciona una detección más rápida de la carga promedio suficiente durante el intervalo especificado. Se recomienda establecer una diferencia significativa entre escalar y escalar límites para evitar a menudo el cambio de topología.

¡Eso es! De esta manera, puede configurar un conjunto de disparadores ajustables para garantizar el rendimiento de su aplicación y realizar un seguimiento de la actividad de escala horizontal automática directamente a través del tablero.

En caso de tener alguna pregunta, no dude en solicitar la asistencia de nuestros expertos técnicos en Stackoverflow .