Azure Resource Manager Resources

Azure Resource Manager (ARM), the new V2 method for deploying Azure resources offers a new template based deployment method. Using JSON based templates it is quick and easy to build a repeatable deployment process. If you are just starting out with this new process then the resources below may help with your transition.

Azure Resource Manager Quick Start Templates

https://github.com/Azure/azure-quickstart-templates

Microsoft has produced a huge range of pre-built templates using ARM that you can either deploy straight to Azure from the Github repository, or download and use as the basis for your own templates. These templates range from the ‘101’ templates for deploying a single VM or storage account, to the more advanced templates for deploying whole systems including things like HDInsight, Jenkins, ElasticSearch.

ARM Template Functions

https://azure.microsoft.com/en-gb/documentation/articles/resource-group-template-functions/

ARM templates incorporate a number of functions that can help with your deployment. These includes things like concatenate, trim, substitute and mathematical operators. These can be very useful , particularly when doing things like loops and wanting consistent numbering formats, joining strings provided as parameters or doing number conversions.

ARM Template Visualizer

http://armviz.io/

This handy tool takes a resource manager template (either uploaded or from the Github repo) and visualizes the resources it produces to give an easy to ready visual representation of the deployment. Very useful if you are trying to understand what a template does, of if you need to document existing templates.

Capture Resource Group as Template

https://capturegroup.azurewebsites.net/

If you have already deployed an resource manager environment using the portal or plain PowerShell but want to be able to turn this into a template then this tool is great. It will connect to an existing deployment and produce the JSON required to reproduce it. It does have a few bugs currently, and some limitations (in particular VNETs and VM Extensions), but can quickly produce a very good starting point for building scripts.