Let's look at what the elements in the schema mean and whether some of them are required:
Now that we have seen how the template is structured, let's look at how a vanilla virtual machine is deployed to put it all together. You can create an ARM template project in Visual Studio by selecting the Azure Resource Group project under New Projects, as shown in the following screenshot: