Azure VM machine extension

Azure virtual machine (VM) extensions are small applications that provide post-deployment configuration and automation tasks on Azure VMs. For example, if a virtual machine requires software installation, anti-virus protection, or to run a script inside of it, a VM extension can be used.

Azure VM extensions can be:

Virtual machine extensions and features for Windows and Linux.

Custom Script Extensions

Custom Script Extension (CSE) can be used to automatically launch and execute virtual machine customization tasks post configuration. Your script extension may perform very simple tasks such as stopping the virtual machine or installing a software component or even a more complex script.

Desired State Configuration

Desired State Configuration (DSC) is a management platform in Windows PowerShell that enables deploying and managing configuration data for software services and managing the environment in which these services run.

configuration IISInstall
{
  Node localhost
  {
    WindowsFeature IIS
    {
      Ensure = Present
      Name = Web-Server
    } 
  } 
 }