Introducción al escalado automático en Azure
La escalabilidad automática permite escalar automáticamente las aplicaciones o los recursos en función de la demanda. Use la escalabilidad automática para aprovisionar suficientes recursos para admitir la demanda en la aplicación sin sobreaprovisionar e incurrir en costos innecesarios.
En este artículo se describe cómo configurar los ajustes de escalabilidad automática para su recurso en Azure Portal.
El escalado automático de Azure admite muchos tipos de recursos. Para obtener más información sobre los recursos admitidos, consulte Escalabilidad automática de recursos admitidos.
Detección de la configuración de escalado automático en la suscripción
Para detectar los recursos que puede escalar automáticamente, siga estos pasos.
Abra Azure Portal.
Con la barra de búsqueda de la parte superior de la página, busque Azure Monitor y selecciónelo.
Seleccione escalabilidad automática para ver todos los recursos a los que se aplica la escalabilidad automática, junto con su estado actual de escalabilidad automática.
Use el panel de filtro de la parte superior para los recursos seleccionados de un grupo de recursos o tipos de recursos específicos, o bien un recurso determinado.
La página muestra el recuento de instancias y el estado de escalabilidad automática de cada recurso. Los estados de escalabilidad automática son:
- No configurado: la escalabilidad automática aún no está configurada para este recurso.
- Habilitado: la escalabilidad automática está habilitada para este recurso.
- Deshabilitado: la escalabilidad automática está deshabilitada para este recurso.
También puede acceder a la página de escalado seleccionando Escalado en el menú Configuración de cada recurso.
Creación de la primera configuración de escalado automático
Nota
Además de las instrucciones de escalado automático de este artículo, hay un escalado automático nuevo en Azure App Service. Encontrará más información sobre esta funcionalidad en el artículo escalabilidad automática.
Siga los pasos que se indican a continuación para crear la primera configuración de escalabilidad automática.
Abra el panel de Escalado automático en Azure Monitor y seleccione un recurso que desee escalar En los pasos siguientes se usa un plan de App Service asociado con una aplicación web. Puede crear su primera aplicación web de ASP.NET en Azure en cinco minutos.
El número de instancias actual es 1. Seleccione Escalabilidad automática personalizada.
Escriba un Nombre y un Grupo de recursos o use el valor predeterminado.
Seleccione Escalar en función de una métrica.
Seleccione Agregar una regla. para abrir un panel de contexto en el lado derecho.
La regla predeterminada escala el recurso en una instancia si la métrica
Percentage CPU
es mayor que el 70 %.Mantenga los valores predeterminados y seleccione Agregar.
Ahora ha creado su primera regla de escalabilidad horizontal. El procedimiento recomendado es tener al menos una regla de reducción horizontal. Para agregar otra regla, seleccione Agregar una regla.
Establezca Operador en Menos que.
Establezca el Umbral de la métrica para desencadenar la acción de escalado en 20.
Establezca Operación en Reducir recuento en.
Seleccione Agregar.
Ahora tiene una configuración de escalado que escala horizontalmente y se reduce horizontalmente en función del uso del CPU, pero todavía está limitado a un máximo de una instancia. Cambie los límites de instancia para permitir más instancias.
En Límites de instancia, establezca Máximo en 3
Seleccione Guardar.
Ya ha creado correctamente la primera configuración del escalado para escalar automáticamente la aplicación web en función del uso del CPU. Cuando el uso del CPU es superior al 70 %, se agrega una instancia adicional, hasta un máximo de 3 instancias. Cuando el uso de CPU es inferior al 20 %, se quita una instancia de hasta un mínimo de 1 instancia. De forma predeterminada, habrá 1 instancia.
Condiciones de escalado programadas
La condición de escala predeterminada define las reglas de escalado que están activas cuando no hay ninguna otra condición de escala en vigor. Puede agregar condiciones de escalado que estén activas en una fecha y hora determinada, o que se repitan semanalmente.
Escalabilidad basada en una programación repetitiva
Establezca el recurso para escalar a una sola instancia de un domingo.
Seleccione Agregar una condición de escalado.
Escriba una descripción para la condición de escala.
Seleccione Escalar a un número específico de instancias. También puede escalar en función de las métricas y los umbrales específicos de esta condición de escala.
Escriba 1 en el campo Recuento de instancias.
Seleccione Repetir días específicos.
Seleccionar domingo
Seleccione los días y la Hora de inicio y Hora de finalización en que debe aplicarse la condición de escalado. Fuera de este intervalo de tiempo, se aplica la condición de escala predeterminada.
Seleccione Guardar.
Ahora ha definido una condición de escala que reduce el número de instancias del recurso a 1 cada domingo.
Escalado distinto en fechas concretas
Establezca la Escalabilidad automática para escalar de forma diferente para fechas específicas, cuando sepa que habrá un nivel inusual de demanda para el servicio.
Seleccione Agregar una condición de escalado.
Seleccione Escalar en función de una métrica.
Seleccione Agregar una regla para definir las reglas de escalado horizontal y reducción horizontal. Establezca las reglas para que sean las mismas que la condición predeterminada.
Establezca el límite máximo de instancias en 10.
Establezca el límite de instancia Predeterminado en 3
Seleccione Especificar fechas de inicio y finalización.
Seleccione los días y la Fecha de inicio y Fecha de finalización en que debe aplicarse la condición de escalado.
Seleccione Guardar.
Ahora ha definido una condición de escala para un día específico. Cuando el uso del CPU es superior al 70 %, se agrega una instancia adicional, hasta un máximo de 10 instancias para controlar la carga prevista. Cuando el uso de CPU es inferior al 20 %, se quita una instancia de hasta un mínimo de 1 instancia. De forma predeterminada, la escalabilidad automática se escala a tres instancias cuando esta condición de escala esté activa.
Configuración adicional
Visualización del historial de eventos de escalado del recurso
Cada vez que el recurso tiene cualquier evento de escalado, se registra en el registro de actividad. Puede ver el historial de los eventos de escalado en la pestaña Historial de ejecución.
Visualización de la configuración de escalado del recurso
El escalado automático es un recurso de Azure Resource Manager. Al igual que otros recursos, puede ver la definición de recursos en formato JSON. Para ver la configuración de escalabilidad automática en JSON, seleccione la pestaña JSON.
Puede realizar cambios en JSON directamente, si es necesario. Estos cambios se reflejarán después de guardarlos.
Escalabilidad automática predictiva
El escalado automático predictivo usa el aprendizaje automático para ayudar a administrar y escalar Azure Virtual Machine Scale Sets con patrones de carga de trabajo cíclicos. Prevee la carga total de CPU en el conjunto de escalado de máquinas virtuales, en función de los patrones de uso de CPU históricos. Predice la carga general de CPU observando y aprendiendo del uso histórico. Este proceso garantiza que el escalado horizontal se produzca a tiempo para satisfacer la demanda. Para más información, consulte Escalabilidad automática predictiva.
Directiva de reducción horizontal
Al escalar un conjunto de escalado de máquinas virtuales, la directiva de escalado determina qué máquinas virtuales se seleccionan para la eliminación cuando se produce un evento de escalado horizontal. La directiva de escalado horizontal se puede establecer en Default, NewestVM o OldestVM. Para más información, consulte Uso de directivas personalizadas de reducción horizontal con Azure Virtual Machine Scale Sets.
Notificar
Puede configurar las notificaciones que se enviarán cuando se produzca un evento de escala. Las notificaciones se pueden enviar a una dirección de correo electrónico o a un webhook. Para más información, consulte Notificaciones de escalabilidad automática.
Efectos del período de recuperación
La escalabilidad automática usa un periodo de recuperación. Este periodo es la cantidad de tiempo que debe transcurrir después de realizar una operación de escala antes de poder iniciar otra. El periodo de recuperación permite que las métricas se estabilicen y eviten escalar más de una vez para la misma condición. La recuperación se aplica tanto a eventos de reducción horizontal como de escalabilidad horizontal. Por ejemplo, si la recuperación se establece en 10 minutos y la escalabilidad automática se acaba de escalar horizontalmente, la escalabilidad automática no intentará volver a escalar durante otros 10 minutos en ninguna dirección. Para obtener más información, consulte Pasos para la evaluación de la escalabilidad automática.
Oscilación
La oscilación hace referencia a una situación de bucle que provoca una serie de eventos de escalado opuestos. La oscilación se produce cuando un evento de escalado desencadena un evento de escalado opuesto. Por ejemplo, la reducción horizontal reduce el número de instancias que hacen que la CPU aumente en las instancias restantes. Esto, a su vez, desencadena un evento de escalabilidad horizontal, lo que hace que el uso de la CPU caiga, repitiendo el proceso. Para más información, consulte Oscilación en escalabilidad automática y Solución de problemas de escalabilidad automática
Traslado de escalabilidad automática a una región diferente
En esta sección se describe cómo trasladar el escalado automático de Azure a otra región de la misma suscripción y grupo de recursos. Puede usar la API REST para cambiar la configuración de escalado automático.
Prerrequisitos
- Asegúrese de que la suscripción y el grupo de recursos están disponibles y de que los detalles en las regiones de origen y de destino son idénticos.
- Asegúrese de que el escalado automático de Azure está disponible en la región de Azure a la que desea realizar el traslado.
Mover
Use la API REST para crear una configuración de escalado automático en el nuevo entorno. La configuración de escalabilidad automática creada en la región de destino será una copia de la configuración de la región de origen.
Los valores de configuración de diagnóstico que se crearon junto con la configuración del escalado automático de la región de origen no se pueden trasladar. Tendrá que volver a crear la configuración de diagnóstico en la región de destino, una vez creada la configuración de escalado automático.
Más información sobre cómo trasladar recursos entre regiones de Azure
Para más información sobre cómo trasladar recursos entre regiones y la recuperación ante desastres en Azure, consulte Traslado de los recursos a un nuevo grupo de recursos o a una nueva suscripción.
Pasos siguientes
- Creación de una alerta de registro de actividades para supervisar todas las operaciones del motor de escalado automático en su suscripción
- Cree una alerta de registro de actividades para supervisar todas las operaciones con errores de escalado automático y reducción horizontal en su suscripción.
- Uso de acciones de escalabilidad automática para enviar notificaciones de alerta por correo electrónico y webhook en Azure Monitor