Your company's Azure environment consists of two virtual networks (VNets) arranged in the following topology:
* prod-vnet: 9 virtual machines (VMs)
* dev-vnet: 9 virtual machines (VMs)
The VMs in the prod-vnet should run continuously. The VMs in dev-vnet are used only between 7:00 A.M. and 7:00 P.M. local time.
You need to automate the shutdown and startup of the dev-vnet VMs to reduce the organization's monthly Azure spend.
Which Azure feature should you use?
You should create an Azure Automation runbook. Azure Automation is a management solution that allows you to publish PowerShell or Python scripts in Azure and optionally schedule Azure to run them automatically. In this case, best practice is to write a PowerShell workflow script that automates VM startup and shutdown, and then bind the script to two Azure Automation schedules: one to describe shutdown time, and the other to describe startup time.
You should not use Azure Automation Desired State Configuration (DSC). DSC is a PowerShell feature that prevents configuration drift on your Azure and/or on-premises servers. For example, you could deploy a DSC configuration that prevents server services from stopping.
You should not use Azure Auto-Shutdown. This feature, part of Azure DevTest Labs, allows you to schedule Azure VMs to shut down at the same time every day or night. However, this feature does not provide for automated VM startup.
You should not use Azure change tracking. Change tracking is an IT service management (ITSM) feature that is part of Azure Automation service and records all configuration changes to your Azure VM resources.