There used to be times when System-Admin's had to wait months to provision a new server for test environments. If the request is for a new server in production, capacity planning has to start atleast a year in advance! If this was the state to get a new server, you can only imagine the amount of time and effort it used to take to roll out new environments. This is old fashioned now to have on premise Infrastructure We no longer do quarterly roll-outs, we deploy multiple times a day. We no longer do capacity planning, we scale on demand. We no longer react to failures, we do all our analysis real time, predict patters and be proactive. This shift is possible thanks to the advancements in cloud computing. With any technology adoption comes popular movements and lots of jargon. One such movement that has gained immense popularity is DevOps - one which establishes an environment for more frequent and reliable testing, building and deploying code. One of the popular terms floating around is "Infrastructure as Code". What it means is a reliable way to automate your infrastructure and have full control over it. Azure is Microsoft's cloud computing platform. There are tons of really useful reference material and step by step instructions. Wherever applicable, I will provide a link. The intent of this post is however simple: it is to provide you, dear reader, a whirlwind tour of everything that you need to know about ARM template deployment. I fell prey to a common techie problem already. I used a jargon without introducing it. ARM stands for Azure Resource Manger. ARM lets you work with the resources in your solution as a group. The essence of ARM is best captured in the Azure Resource Manager Overview article The infrastructure for your application is typically made up of many components – maybe a virtual machine, storage account, and virtual network, or a web app, database, database server, and 3rd party services. You do not see these components as separate entities, instead you see them as related and interdependent parts of a single entity. You want to deploy, manage, and monitor them as a group. Azure Resource Manager enables you to work with the resources in your solution as a group. You can deploy, update or delete all of the resources for your solution in a single, coordinated operation. You use a template for deployment and that template can work for different environments such as testing, staging and production. Resource Manager provides security, auditing, and tagging features to help you manage your resources after deployment. Deploy Azure quick start templates from GitHub To get started is Azure Resource Manager QuickStart Templates repository in Github. Whatever be your scenario, there is a good chance it is already available. If not, you can contribute to the repository! Choose any template of your choice Once you click deploy, you will be directed to the Azure portal. Based on the deployment template selected, you will be prompted for inputs. Once provided, you can deploy the template right from the portal! This is really cool since you can now deploy your app infrastructure without writing a single line of code. Another thing to keep in mind is that ARM template deployments are idempotent. This means you can redploy your templates without having to worry about any issues. Troubleshoot deploymentsOnce you are familiar with ARM template, chances are you will use it to automate your deployments and have Continuous Integration/ Continuous Delivery (CI/CD) setup. It is critical to keep track of deployment status and in case of failure, identify the root cause of failure. One easy way to do this is to navigate to your resource group and select Deployments from Settings blade This is an extremely easy way to not only look at the deployment history, but also to take a look at the error info for failed deployments. Time to try ARM templatesARM templates are incredibly powerful. Hopefully this serves as a quick getting started/essentials. The possibilities are endless, so I encourage you to spend some time exploring ARM templates.
0 Comments
|
AuthorUtkarsh Sharma Archives
October 2023
Categories |