En este tutorial, te mostraré cómo crear una Azure Functions App para apagar y encender una máquina virtual en Azure con Azure Functions App.
Paso 1: Crear una función en Azure Functions App Lo primero que debes hacer es crear una función en Azure Functions App. Para hacerlo, sigue estos pasos:
- Ve a Azure Portal y selecciona tu suscripción de Azure.
- Busca «Azure Functions App» en el buscador y haz clic en «Crear».
- Completa los campos requeridos, como el nombre de la aplicación, el grupo de recursos y la ubicación.
- Haz clic en «Revisar + crear» y luego en «Crear».
Una vez que se haya creado la función, podrás verla en tu lista de recursos de Azure.
Paso 2: Agregar código a la función Ahora, debes agregar el código necesario para apagar la máquina virtual en la función. Para hacerlo, sigue estos pasos:
- Ve a la pestaña «Funciones» de tu Azure Functions App.
- Haz clic en «Crear una función» y selecciona «Timer trigger».
- Completa los campos requeridos, como el nombre de la función y el crontab
- Haz clic en «Crear».
*NOTA: La captura de pantalla está mal, dado que se tiene que configurar de la siguiente forma: {second} {minute} {hour} {day} {month} {day-of-week}
Debería quedar algo como: 0 0 22 * * * 1-5
Para utilizar la función que hemos creado, necesitamos agregar código en la sección de «Code + Test». Esto nos permitirá probar y verificar que nuestra función funciona correctamente.
A continuación, podemos agregar el siguiente código de ejemplo para poner a prueba nuestra función:
# Input bindings are passed in via param block.
param($Timer)
Select-AzSubscription -SubscriptionId XXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX
$Vms = Get-AzVM -Status | Where-Object {$_.Tags.PowerOff -eq "22:00"}
foreach ($Vm in $Vms) {
Stop-AzVM -Name $Vm.Name -ResourceGroupName $Vm.ResourceGroupName -Force
}
Paso 3: Creamos una nueva función para el inicio de la VM. Para hacerlo, sigue estos pasos:
- Ve a Azure Portal y selecciona tu suscripción de Azure.
- Busca «Azure Functions App» en el buscador y haz clic en «Crear».
- Completa los campos requeridos, como el nombre de la aplicación, el grupo de recursos y la ubicación.
- Haz clic en «Revisar + crear» y luego en «Crear».
Una vez que se haya creado la función, podrás verla en tu lista de recursos de Azure.
Paso 2: Agregar código a la función Ahora, debes agregar el código necesario para apagar la máquina virtual en la función. Para hacerlo, sigue estos pasos:
- Ve a la pestaña «Funciones» de tu Azure Functions App.
- Haz clic en «Crear una función» y selecciona «Timer trigger».
- Completa los campos requeridos, como el nombre de la función y el crontab
- Haz clic en «Crear».
Para utilizar la función que hemos creado, necesitamos agregar código en la sección de «Code + Test». Esto nos permitirá probar y verificar que nuestra función funciona correctamente.
A continuación, podemos agregar el siguiente código de ejemplo para poner a prueba nuestra función:
# Input bindings are passed in via param block.
param($Timer)
Select-AzSubscription -SubscriptionId XXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX
$Vms = Get-AzVM -Status | Where-Object {$_.Tags.PowerOn -eq "06:00"}
foreach ($Vm in $Vms) {
Start-AzVM -Name $Vm.Name -ResourceGroupName $Vm.ResourceGroupName
}
*NOTA: La captura de pantalla está mal, dado que se tiene que configurar de la siguiente forma: {second} {minute} {hour} {day} {month} {day-of-week}
Debería quedar algo como: 0 0 6 * * * 1-5
Para finalizar, debemos dirigirnos a las máquinas virtuales que deseamos apagar o encender y agregar las siguientes etiquetas:
:wq!