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

azure pricing calculator d2 v3 virtual machine 90 minutes price blog vinicius deschamps

¿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

azure pricing calculator d2 v3 virtual machine 1 month basic detailed price blog vinicius deschamps

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)

azure cost management cost analysis storage price 1 day blog vinicius deschamps

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

azure virtual machine operations auto shutdown blog vinicius deschamps

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

azure virtual machine operations auto shutdown enabled on blog vinicius deschamps

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

azure virtual machine operations auto shutdown send notifications before auto shutdown yes blog vinicius deschamps

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

azure virtual machine operations auto shutdown configured save blog vinicius deschamps

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

azure portal search automation automation accounts blog vinicius deschamps

En Automation Accounts, pulsa Add

azure automation accounts add blog vinicius deschamps

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

azure add automation account blog vinicius deschamps

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

azure automation accounts click on existent one blog vinicius deschamps

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

azure automation accounts runbooks browse gallery blog vinicius deschamps

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

azure automation accounts runbooks browse gallery start azure v2 vms blog vinicius deschamps

Luego haz clic en Import

azure automation accounts runbooks browse gallery start azure v2 vms import blog vinicius deschamps

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

azure automation accounts runbooks browse gallery start azure v2 vms import choose name click ok blog vinicius deschamps

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

azure automation accounts runbooks startazurev2vm new runbook blog vinicius deschamps

Haz clic en Edit

azure automation accounts runbooks startazurev2vm new runbook edit blog vinicius deschamps

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

azure automation accounts runbooks startazurev2vm new runbook edit graphical runbook publish blog vinicius deschamps

Ahora, creemos un programa haciendo clic en Link to schedule

azure automation accounts runbooks link to schedule blog vinicius deschamps

Haz clic en Link a schedule a tu runbook

azure automation accounts runbooks link to schedule schedule runbook blog vinicius deschamps

Y Create a new schedule

azure automation accounts runbooks link to schedule schedule runbook create a new schedule blog vinicius deschamps

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

azure automation accounts runbooks link to schedule schedule runbook new schedule configured blog vinicius deschamps

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

azure automation accounts runbooks link to schedule schedule runbook parameters and run settings blog vinicius deschamps

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

azure automation accounts runbooks link to schedule schedule runbook parameters and run settings parameters blog vinicius deschamps

Todo listo, haz clic en OK para crear el schedule

azure automation accounts runbooks link to schedule schedule runbook configured blog vinicius deschamps

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

azure automation accounts runbooks schedules next run time blog vinicius deschamps

¡Y eso es todo!

Espero que te haya gustado, y nos vemos en mi próxima publicación.

Foto de Sharon McCutcheon en Unsplash

AzureCostCustosMáquinas VirtuaisVirtual Machines
Apagado Programado y Encendido de Máquinas Virtuales de Azure — Vinicius Deschamps