Extension Resources in Azure are resources that extend other resources.
This template creates an Azure Key Vault as well as a DiagnosticSettings extension.
Things to note:
The extension resource is created under the resources attribute of the parent resource
It needs to have a dependsOn attribute referencing the parent resource (to prevent ARM from attempting to create the extension in parallel with the parent resource)
azure vm extensionazure vm extension listazure vm extensions powershellazure vm custom script extension"azure vm extension set"custom script extension azure resource managerazure vm agent resource managerazure vm agent download