


You deploy the template through one command, rather than through multiple imperative commands. When possible, Resource Manager deploys resources in parallel so your deployments finish faster than serial deployments. Resource Manager orchestrates the deployment of interdependent resources so they're created in the correct order. Orchestration: You don't have to worry about the complexities of ordering operations. You can develop one template that represents the desired state, rather than developing lots of separate templates to represent updates. Templates are idempotent, which means you can deploy the same template many times and get the same resource types in the same state. Repeatable results: Repeatedly deploy your infrastructure throughout the development lifecycle and have confidence your resources are deployed in a consistent manner. For example, you can deploy not only virtual machines, but also the network infrastructure, storage systems, and any other resources you may need. If you're trying to decide between using ARM templates and one of the other infrastructure as code services, consider the following advantages of using templates:ĭeclarative syntax: ARM templates allow you to create and deploy an entire Azure infrastructure declaratively.

In the template, you specify the resources to deploy and the properties for those resources. The template uses declarative syntax, which lets you state what you intend to deploy without having to write the sequence of programming commands to create it. The template is a JavaScript Object Notation (JSON) file that defines the infrastructure and configuration for your project. To implement infrastructure as code for your Azure solutions, use Azure Resource Manager templates (ARM templates). Anyone on your team can run the code and deploy similar environments. Just like application code, you store the infrastructure code in a source repository and version it. The infrastructure code becomes part of your project. In code, you define the infrastructure that needs to be deployed. To meet these challenges, you can automate deployments and use the practice of infrastructure as code. Teams need to manage infrastructure and application code through a unified process. As infrastructure has become part of the iterative process, the division between operations and development has disappeared.

They need to repeatedly deploy their solutions to the cloud, and know their infrastructure is in a reliable state. With the move to the cloud, many teams have adopted agile development methods.
