Why use JSON to create infrastructure in Azure

Azure-Logo-400x250

Yes, why?
If we can answer that, we would have a good reason for learning to use JSON, rather than the Azure Portal. For example, I started using PowerShell, because everything isn’t available in the Azure Portal. And some tasks against Azure can be boring to repeat a lot of times. So that became my reason to start using PowerShell, but why use JSON and what can we use JSON for in Azure?

But first, JSON is not a replacement for PowerShell overall. All though we can do some tasks better with JSON, just like PowerShell can do better then GUI, at the end we are using PowerShell to envoke whatever we have written in the JSON code. Or when your comfortable with tools like Visual Studio, you can send these coded actions to the Azure API, rather then using PowerShell.

The idea behind JSON is to make the gap between developers and operators/consultants smaller, by gathering them in a common language. Make developers able to create replicated infrastructure for development, so we enhance the developer, and makes more free time for the operators. Time we can spend on other tasks, but by learning JSON code, you as an operator might also be able to assist in development projects. Because your infrastructure expertise would be useful in the project team, rather then having a developer perform his second, third or fourth profession.

Depending on your company, this might not be a top priority from the operator or consultants perspective, but there is other benefits to explore?

  • Detailed documentation? Attach the JSON code for each server, and when your adding software configuration with extensions, it is also detailed documentation on the software.
  • Part of a disaster recovery plan? Depending on your company, it might be a good enough disaster recovery plan to replicate your infrastructure using the JSON code.
  • Minimize backup needs to the vitale data, and easily replicate the common services or infrastructure using your JSON code.
  • Support your developers with quick and easy replicated infrastructure, and kill it when developing is staged in production.

I will leave it at that and provide some links to get you started:
How to start using JSON code in templates:
https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-windows-ps-template/
A free tool to manage code, besides PowerShell ISE:
https://code.visualstudio.com/download

My next post will try to explain how you get started and hopefully get you through your first deployment using JSON coded templates.

Leave a Comment