Azure Resource Manager (ARM) Templates
ARM templates are an Infrastructure as Code (IAC) approach to resource deployment. This approach allows the repeatable and reliable deployment of multiple dependent resources into an Azure subscription in an automated and governed manner.
ARM templates are JSON files—a minimal, readable format for structuring data as an alternative to Extensible Markup Language (XML)—that define the configuration to be used for resource deployment.
With ARM templates, you define your desired deployment outcome with all resources you want to be created and any properties you wish to be specified in a single request; this is achieved by utilizing a declarative syntax (as opposed to an imperative syntax) in the templates.
Figure 9.6 shows this approach of ARM versus non-ARM IAC:
Figure 9.6 – ARM template declarative approach
Instead of issuing multiple commands at each stage of the process to create each resource...