Azure · Custos · Máquinas Virtuais
Apagado Programado y Encendido de Máquinas Virtuales de Azure
La publicación de hoy cubrirá Apagado y Encendido Programados de Máquinas Virtuales y forma parte de la serie Azure Savings que aborda formas de ahorrar dinero en Azure.
Una vez escuché, y desde entonces uso, esta analogía, de que usar recursos en la nube es similar al uso de electricidad: cuanto más usas, más caro será. Aunque también puedes ahorrar dinero si aplicas a la nube lo que ya haces para la electricidad.
¡Apaga las cosas que no están en uso!
¿Cómo se facturan las Máquinas Virtuales?
Primero, las Máquinas Virtuales son recursos de cómputo, y se facturan por hora; sin embargo, eso no significa que si ejecutas una VM durante 59 minutos no se te cobrará porque no alcanzaste una hora.
De hecho, Azure te cobra por el número de minutos completos, así que para estimar los precios de las VM se presentan por hora, o los 60 minutos completos si así lo prefieres.
Pero ¿qué significa minutos completos? Bueno, si ejecutas tu VM durante 1 hora, 30 minutos y 45 segundos, el total de minutos completos es 90 minutos, así que Azure hará las cuentas y te cobrará en consecuencia.
Alguna matemática para una mejor comprensión
Tomemos el siguiente tamaño de VM: D2 v3 (2 vCPUs, 8GB de RAM) que se presenta como US$0.19/hora
Dividiendo 0.19 / 60 obtenemos el costo por minuto, que es 0.00316; como hemos ejecutado 90 minutos, calculemos 0.19 + (0.00316 * 30 minutos)
US$0.28 por 90 minutos
Si accedes al Azure Calculator, puedes verificar que el precio coincide cuando cambias el campo de Horas a 1.5, que es lo mismo que 90 minutos

¿Cómo se compone el precio de una VM?
En un entorno de nube, no necesitas pensar en electricidad, aire acondicionado, ni en una sala física para mantener los servidores, pero eso no quiere decir que no debas pagar por ellos, porque estas cosas están embebidas en el precio de la VM, así como Discos, Licencias y Transacciones de Almacenamiento.
Al ir al Azure Calculator, puedes tener una idea básica de cuánto costaría una VM

Cada opción puede afectar el precio final, ya sea simplemente cambiando la región o añadiendo un disco adicional. Además, este es un estimado del precio por 1 mes de uso de una D2 v3 VM en Azure, US$137.44
¿Por qué debería programar el apagado / encendido de una VM?
Para ahorrar dinero! Imagina un escenario en el que tienes una VM que se usa durante el horario laboral por una persona específica; ¿por qué dejar el recurso encendido 24×7 si no es necesario?
Pero antes de mostrar cómo programar el apagado / encendido, me gustaría resaltar un par de cosas
Apagado detenido vs Desasignado
Una VM puede estar detenida o detenida (desasignada), y la diferencia es que se te cobra por el recurso de cómputo o no.
Para evitar cargos por tus recursos de cómputo, la VM debe estar en un estado Desasignado
Evitar sorpresas
A pesar de que no estés usando recursos de cómputo al desasignar la VM, hay cosas asociadas a ella que continúas pagando, como el disco del Sistema Operativo, por ejemplo.
Aquí está el costo de mi VM Desasignada en un solo día, alrededor de US$0.88/día (~US$26.4/mes)

IP Pública Dinámica vs IP Pública Estática
Por defecto una Máquina Virtual de Azure viene configurada con una IP Pública Dinámica, y permanece ligada a la VM hasta que se reinicia, se detiene o se desasigna.
Además, una IP Pública Estática incurre costos cuando una VM está desasignada.
¿Cómo programar el apagado / encendido de una VM?
Apagado Programado
Ve a tu Máquina Virtual y, bajo Operaciones, busca Autoapagado, y haz clic en ello

Cambia Enabled de Off a On, para poder modificar las opciones: apagado programado, zona horaria y ¿enviar notificaciones antes del autoapagado?

Tienes la posibilidad de enviar una notificación antes del autoapagado, haciendo clic en Yes y rellenando con una de las posibilidades Webhook URL o Email address

Una vez elijas cómo se ajusta mejor el Auto-shutdown a tu actividad, pulsa Save

Programar Inicio
Para programar la acción de inicio, necesitas tener una Automation Account y trabajar con Runbooks para hacerlo realidad
En el Portal de Azure, usa el campo de Search (1) en la parte superior del portal y escribe automation, luego haz clic en Automation Accounts

En Automation Accounts, pulsa Add

Rellena el formulario en Add Automation Account proporcionando Name (1), Subscription (2), Resource Group (3) y Location (4), luego pulsa Ok (5)

Una vez tengamos creada la Automation Account, haz clic en ella para continuar la configuración

Luego, bajo Process Automation, busca Runbooks (1) y Browse gallery (2)

Puedes buscar runbooks que atiendan tus necesidades, pero por ahora queremos Start una VM, y es la primera opción, hagamos clic en ella Start Azure V2 VMs

Luego haz clic en Import

Rellena el Name (1) y pulsa OK (2)

Volver a Runbooks, ya deberías ver un nuevo Runbook llamado StartAzureV2VM, haz clic en él

Haz clic en Edit

Y luego Publish (1), y haz clic en Yes (2)

Ahora, creemos un programa haciendo clic en Link to schedule

Haz clic en Link a schedule a tu runbook

Y Create a new schedule

Rellena la información Name (1), Starts (2), Time zone (3), Recurrence (4), Recur every (5) y pulsa Create (6)

Ahora tenemos el schedule configurado, vamos a Configure parameters and run settings

Proporciona la información correspondiente a la Máquina Virtual que quieres iniciar, y proporciona ResourceGroupName (1) y VMNAME (2), luego pulsa OK (3)

Todo listo, haz clic en OK para crear el schedule

En el Runbook, bajo Resources encuentra Schedules y haz clic; verás que hay un schedule y cuándo será el Next Run

¡Y eso es todo!
Espero que te haya gustado, y nos vemos en mi próxima publicación.
Foto de Sharon McCutcheon en Unsplash