The new Azure Portal 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 have to spend some time exploring it.
One of the features I 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 role-based access on all resources within this group, and the Resource Groups Blade (a mini overview page) includes some beneficial reports based on all assets within this group covering monitoring, billing, etc.
But there is even more Resource Groups can be configured declaratively. This helps with operation consistency. If you’re familiar with DCS, puppet, Chef, and the like, this will be very easy to understand. It 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. Besides, it’s useful 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.
It is resulting in the following Resource Group layout.
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.
For now, I’ve only interacted with Resource Groups using the Portal. However, the Azure Resource Manager comes with its API (PowerShell, REST). It is allowing the construction of complex scenarios including multiple dependencies, declarative Deployment Templates, and parameterization.