Información general sobre Start/Stop VMs v2

La característica Start/Stop VMs v2 inicia o detiene las máquinas virtuales de Azure en varias suscripciones. Inicia o detiene las máquinas virtuales según las programaciones definidas por el usuario, proporciona información desde Azure Application Insights y envía notificaciones opcionales mediante grupos de acciones. En la mayoría de los escenarios, Start/Stop VMs puede administrar las máquinas virtuales implementadas y administradas tanto por Azure Resource Manager como por Azure Service Manager (clásico), en desuso.

Esta nueva versión de Start/Stop VMs v2 proporciona una opción de automatización económica centralizada para los clientes que quieren optimizar los costos de las máquinas virtuales. Ofrece la misma funcionalidad que la versión original disponible con Azure Automation, pero está diseñada para aprovechar las ventajas de la tecnología más reciente de Azure. La versión 2 de Start/Stop para máquinas virtuales se basa en varios servicios de Azure y se cobrará en función del servicio que se implemente y consuma.

Actualizaciones importantes de Start/Stop VMs v2

  • Hemos actualizado el recurso de la aplicación de funciones Start/Stop VMs v2 para que use la versión 4.x de Azure Functions y obtendrá esta versión de forma predeterminada al instalar Start/Stop VMs v2 desde Marketplace. Los clientes existentes deben migrar de la versión 3.x de Functions a la versión 4.x mediante nuestra funcionalidad de actualización automática. Esta funcionalidad obtiene la versión más reciente ejecutando la función del temporizador TriggerAutoUpdate una vez manualmente o esperando a que se ejecute la programación, si la ha habilitado.

  • Hemos agregado un plan (AZ: zona de disponibilidad) a nuestra solución Start/Stop VMs v2 para habilitar una oferta más confiable. Ahora puede elegir entre planes de consumo y zona de disponibilidad antes de iniciar la implementación. En la mayoría de los casos, el costo mensual del plan de zona de disponibilidad es más alto en comparación con el plan de consumo.

  • La funcionalidad de actualización automática se introdujo el 28 de abril de 2022. Esta nueva característica de actualización automática le ayuda a mantenerse en la versión más reciente de la solución. Esta característica está habilitada de manera predeterminada cuando se realiza una nueva instalación.
    Si implementó la solución antes de esta fecha, puede volver a instalar la versión más reciente desde nuestro repositorio de GitHub

Información general

Start/Stop VMs v2 se ha rediseñado y no depende de los registros de Azure Automation o Azure Monitor, como requiere la versión anterior. Esta versión se basa en Azure Functions para controlar la ejecución del inicio y detención de la máquina virtual.

En Microsoft Entra ID se crea una identidad administrada para la aplicación de Azure Functions y permite que Start/Stop VMs v2 acceda fácilmente a otros recursos protegidos por Microsoft Entra, como las aplicaciones lógicas y las máquinas virtuales de Azure. Para más información sobre las identidades administradas en Microsoft Entra ID, consulte Identidades administradas para recursos de Azure.

Se crea un punto de conexión de función de desencadenador HTTP para admitir los escenarios de programación y secuencia que se incluyen con la característica, tal como se muestra en la tabla siguiente.

Nombre Desencadenador Descripción
Programado HTTP Esta función es tanto para escenarios programados como secuenciados (diferenciados por el esquema de carga). Es la función de punto de entrada a la que se llama desde la aplicación lógica y toma la carga para procesar la operación de inicio o detención de la máquina virtual.
AutoStop HTTP Esta función admite el escenario de detención automática, que es la función de punto de entrada a la que se llama desde la aplicación lógica.
AutoStopVM HTTP La alerta de máquina virtual desencadena automáticamente esta función cuando se cumple la condición de alerta.
VirtualMachineRequestOrchestrator Cola Esta función obtiene la información de carga de la función Scheduled y orquesta las solicitudes de inicio y detención de la máquina virtual.
VirtualMachineRequestExecutor Cola Esta función realiza la operación de inicio y detención real en la máquina virtual.
CreateAutoStopAlertExecutor Cola Esta función obtiene la información de carga de la función AutoStop para crear la alerta en la máquina virtual.
HeartBeatAvailabilityTest Temporizador Esta función supervisa la disponibilidad de las funciones HTTP principales.
CostAnalyticsFunction Temporizador Microsoft usa esta función para calcular el coste agregado de Start/Stop V2 entre los clientes. Esta función no afecta a la funcionalidad de Start/Stop V2.
CostAnalyticsFunction Temporizador Microsoft usa esta función para calcular el ahorro agregado de Start/Stop V2 entre los clientes. Esta función no afecta a la funcionalidad de Start/Stop V2.
VirtualMachineSavingsFunction Cola Esta función realiza el cálculo del ahorro real en una VM logrado por la solución Start/Stop V2.
TriggerAutoUpdate Temporizador Esta función inicia el proceso de actualización automática en función de la configuración de la aplicación “EnableAutoUpdate=true”.
UpdateStartStopV2 Cola Esta función realiza la ejecución de la actualización automática real, que valida la versión actual con la versión disponible y decide la acción final.

Por ejemplo, la función de desencadenador HTTP Scheduled se utiliza para controlar los escenarios de programación y secuencia. Del mismo modo, la función de desencadenador HTTP AutoStop controla el escenario de detención automática.

Las funciones de desencadenador basadas en cola son necesarias para admitir esta característica. Todos los desencadenadores basados en temporizador se usan para realizar la prueba de disponibilidad y supervisar el mantenimiento del sistema.

Azure Logic Apps se usa para configurar y administrar las programaciones de inicio y detención de la actuación de la máquina virtual con una llamada a la función mediante una carga JSON. De manera predeterminada, durante la implementación inicial, crea un total de cinco instancias de Logic Apps para los siguientes escenarios:

  • Programado: las acciones de inicio y detención se basan en una programación que se especifica en las máquinas virtuales de Azure Resource Manager y clásicas. ststv2_vms_Scheduled_start y ststv2_vms_Scheduled_stop configuran el inicio y la detención programados.

  • Secuenciado: las acciones de inicio y detención se basan en una programación dirigida a las máquinas virtuales con etiquetas de secuenciación predefinidas. Solo se admiten dos etiquetas con nombre: sequencestart y sequencestop. ststv2_vms_Sequenced_start y ststv2_vms_Sequenced_stop configuran el inicio y la detención secuenciados.

    La manera adecuada de usar la funcionalidad de secuencia es crear una etiqueta llamada sequencestart en cada máquina virtual que quiera iniciar en una secuencia. El valor de etiqueta debe ser un entero comprendido entre 1 y N para cada máquina virtual del ámbito correspondiente. La etiqueta es opcional y, si no existe, la máquina virtual no participará en la secuenciación. Los mismos criterios se aplican a la detención de máquinas virtuales, con la única diferencia de que el nombre de la etiqueta es diferente y que se usa sequencestop en este caso. Debe configurar las dos etiquetas de cada máquina virtual para obtener la acción de inicio y detención. Si dos o más máquinas virtuales comparten el mismo valor de etiqueta, todas se iniciarán o detendrán al mismo tiempo.

    Por ejemplo, en la tabla siguiente se muestra que las acciones de inicio y detención se procesan en orden ascendente por el valor de la etiqueta.

    Table that shows sequence settings tag examples

    Nota:

    En este escenario solo se admiten las máquinas virtuales de Azure Resource Manager.

  • AutoStop: esta funcionalidad solo se usa para realizar una acción de detención en máquinas virtuales de Azure Resource Manager y clásicas en función de su uso de CPU. También puede ser una actuación basada en programación, que crea alertas en máquinas virtuales y en función de la condición, la alerta se desencadena para realizar la acción de detención. ststv2_vms_AutoStop configura la funcionalidad de detención automática.

Cada acción de inicio o detención admite la asignación de una o varias suscripciones, grupos de recursos o una lista de máquinas virtuales.

Start/Stop VMs v2 también usa una cuenta de Azure Storage, que es necesaria para Functions, para dos propósitos:

  • Usa Azure Table Storage para almacenar los metadatos de la operación de ejecución (es decir, la acción de iniciar o detener la máquina virtual).

  • Usa Azure Queue Storage para admitir los desencadenadores basados en cola de Azure Functions.

Todos los datos de registro de seguimiento de la ejecución de la aplicación de funciones se envían a la instancia de Application Insights conectada. Puede ver los datos de telemetría almacenados en Application Insights en un conjunto de visualizaciones predefinidas que se presentan en un panel de Azure compartido.

Start/Stop VMs shared status dashboard

También se envían notificaciones por correo electrónico como resultado de las acciones realizadas en las máquinas virtuales.

Nuevas versiones

Cuando se publica una nueva versión de Start/Stop VMs v2, la instancia se actualiza automáticamente sin tener que volverla a implementar manualmente.

Opciones de ámbito admitidas

Subscription

El ámbito de una suscripción puede usarse cuando sea necesario realizar la acción de inicio y detención en todas las máquinas virtuales de toda una suscripción, y puede seleccionar varias suscripciones si es necesario.

También puede especificar una lista de las máquinas virtuales que se deben excluir y se omitirán de la acción. También puede usar caracteres comodín para especificar todos los nombres que se pueden omitir simultáneamente.

Resource group

El ámbito de un grupo de recursos se puede usar cuando es necesario realizar la acción de inicio y detención en todas las máquinas virtuales mediante la especificación de uno o más nombres de grupos de recursos y de una o varias suscripciones.

También puede especificar una lista de las máquinas virtuales que se deben excluir y se omitirán de la acción. También puede usar caracteres comodín para especificar todos los nombres que se pueden omitir simultáneamente.

VMList

Se puede especificar una lista de máquinas virtuales cuando sea necesario realizar la acción de inicio y detención en un conjunto específico de máquinas virtuales y en varias suscripciones. Esta opción no admite la especificación de una lista de máquinas virtuales que se deben excluir.

Requisitos previos

  • Debe disponer de una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.

  • Para implementar la solución, a la cuenta se le debe conceder el permiso Propietario en la suscripción.

  • Start/Stop VMs v2 está disponible en todas las regiones de la nube de Azure global y del Gobierno de EE. UU. que aparecen en la página Productos disponibles por región para Azure Functions.

Pasos siguientes

Para implementar esta característica, consulte Implementación de Start/Stop VMs.