Azure Resource Groups

Azure Resource Groups

The new Azure portal, well it’s not that new anymore given that it’s up for some time now, is… somewhat different. I must admit that I wasn’t a big fan of the new format initially. It’s looking somewhat clunky and not very efficient when it comes to screen real state at first. However, over time I started to like the new portal more and more. You just have to spend some time exploring it.

Microsoft_Azure_Portal2

One of the features I really like is the ability to create Resource Groups, allowing you to bundle related Azure assets together, so you don’t have to plow through many different menus. But Resource Groups are way more powerful than just a simple resource container. For example, if you would group a website, it’s database and storage (sharing the same Life-cycle). You will be able to configure roll based access on all resources within this group and the Resource Groups Blade (a mini overview page) includes some very helpful reports based on all assets within this group covering monitoring, billing etc.

Microsoft Azure Menu

Microsoft Azure Resource Groups Blade

But there is even more, Resource Groups can be configured declaratively which helps with operation consistency. If you’re familiar with DCS, puppet, Chef and the like, this will be very easy to understand. It basically means that you will be able to consistently recreate a groups of related Azure resources whenever needed (test environment, during peak months, campaigns etc.).

This is part of a larger component called the Azure Resource Manager which consumes Deployment Templates, a description of your Azure entities, based on JSON syntax. Covering this in detail would cover some posts, but what’s interesting to know is that the Resource Manager does support dependencies and is smart enough to start with the latest dependency first and moving its way up the configuration. In addition it’s usefully to know that Azure resources created within the new portal rely on Deployment Templates as well.

How to interact with Azure Resource Groups

Now that we’ve covered the basics, it’s time to start manipulating some Resource Groups.

1 – Resource Groups based on gallery templates

As mentioned before, Resource Groups will be created automatically for new Azure resources. Example wise, a setup with various components would give a better view of the outcome. Therefore I will choose the “Website + SQL” option which can be found under NEW > Everything > Web. Naming the resource group is the first option after clicking the Create button.

Microsoft_Azure_Web_and_SQL

Resulting in the following Resource Group layout.

Microsoft_Azure_Web_and_SQL_details

Microsoft_Azure_Web_and_SQL_details_2

2 – Adding new resources

At this point you will also be able to add new resources or deleting the entire Resource Group which includes the removal of all resources within this container. In case a newer version of the application depends on Redis Cache, just click New (Part on the Resource Group blade) and selected the Redis Cache offering. The Resource Group will be updated after deployment.

Microsoft_Azure_Web_and_SQL_details_3

For now I’ve only interacted with Resource Groups using the Portal, however the Azure Resource Manager comes with its own API (PowerShell, REST). Allowing the construction of complex scenarios including multiple dependencies, declarative Deployment Templates and parameterization.

Post Navigation