I den här självstudien får du lära dig hur du automatiskt stänger av virtuella datorer i Azure. Funktionen för automatisk avstängning för virtuella Azure-datorer kan minska kostnaderna genom att stänga av de virtuella datorerna under lediga timmar när de inte behövs och automatiskt starta om dem när de behövs igen.
Konfigurera automatisk avstängning för en virtuell dator
I Azure-portalen navigerar du till den virtuella dator som du vill konfigurera automatisk avstängning för.
På den virtuella datorns informationssida väljer du "Automatisk avstängning" under avsnittet Åtgärder .
På konfigurationsskärmen "Automatisk avstängning" växlar du växeln till "På".
Ange den tid då den virtuella datorn ska stängas av.
Om du vill få ett meddelande före avstängning väljer du "Ja" i alternativet "Skicka meddelande före avstängning" och anger information i "E-postadress" eller "Webhook-URL" enligt ditt val.
Välj Spara för att spara konfigurationen för automatisk avstängning.
Om du vill konfigurera automatisk avstängning för en enskild virtuell dator med hjälp av Azure CLI kan du använda följande skript:
# Set the resource group name, VM name, and shutdown time
RESOURCE_GROUP_NAME="myResourceGroup"
VM_NAME="myVM" # Add your VM's name here
SHUTDOWN_TIME="18:00"
# Prompt the user to choose whether to auto-restart or leave the machines off
echo "Do you want to auto-restart the machine? (y/n)"
read RESTART_OPTION
# Set the auto-shutdown and auto-start properties based on the user's choice
if [ "$RESTART_OPTION" == "y" ]; then
AUTO_SHUTDOWN="true"
AUTO_START="true"
else
AUTO_SHUTDOWN="true"
AUTO_START="false"
fi
# Set the auto-shutdown and auto-start properties for the VM
az vm auto-shutdown -g $RESOURCE_GROUP_NAME -n $VM_NAME --time $SHUTDOWN_TIME
if [ "$AUTO_START" == "true" ]; then
az vm restart -g $RESOURCE_GROUP_NAME -n $VM_NAME --no-wait
fi
Om du vill konfigurera automatisk avstängning för flera virtuella datorer med hjälp av Azure CLI kan du använda följande skript:
# Set the resource group name and shutdown time
RESOURCE_GROUP_NAME="myResourceGroup"
SHUTDOWN_TIME="18:00"
# Prompt the user to choose whether to auto-restart or leave the machines off
echo "Do you want to auto-restart the machines? (y/n)"
read RESTART_OPTION
# Set the auto-shutdown and auto-start properties based on the user's choice
if [ "$RESTART_OPTION" == "y" ]; then
AUTO_SHUTDOWN="true"
AUTO_START="true"
else
AUTO_SHUTDOWN="true"
AUTO_START="false"
fi
# Loop through all VMs in the resource group and set the auto-shutdown and auto-start properties
for VM_ID in $(az vm list -g $RESOURCE_GROUP_NAME --query "[].id" -o tsv); do
az vm auto-shutdown --ids $VM_ID --time $SHUTDOWN_TIME
az vm restart --ids $VM_ID --no-wait
done
Skripten ovan använder az vm auto-shutdown kommandona och az vm restart för att ange auto-shutdown egenskaperna och restart för alla virtuella datorer i den angivna resursgruppen. Alternativet --ids används för att ange de virtuella datorerna efter deras ID:n och de --time aktiverade --auto-start-alternativen används för att ange egenskaperna automatisk avstängning respektive autostart.
Båda skripten uppmanas också att välja om datorerna ska startas om automatiskt eller inte förrän de startas om manuellt. Valet används för att ange egenskapen --auto-shutdown-enabled för de virtuella datorerna.
Rensa resurser
Om du inte längre behöver den virtuella datorn tar du bort den med följande steg:
Gå till den virtuella datorns översiktssida till vänster
Välj "Ta bort" från det övre mittenalternativet.
Följ anvisningarna för att ta bort den virtuella datorn.