Starting 2024 the right way, again! 5 great resources to help create a successful Azure Environment

Earlier this month I wrote a post about my key takeaways from 2023, related to core foundational elements that need consideration when planning and deploying an Azure Environment. In this post, I wanted to focus on 5 key items I’ve found helpful when designing, enhancing, and supporting Azure environments – with a specific focus on key foundational areas, aligned to relevant frameworks and resources.

Image showing some of the tooling and resources covered in this blog post.
Using my amazing image editing skills here to create an overview of some of the tooling and resources within this blog post!

As a reminder, the items below are 5 resources that I find useful – they are not exhaustive!


Naming and Tagging

Getting naming and tagging right is not just essential for a Cloud Environment, but essential to ensure any technical environment can be operated and maintained in an optimal manner. Being able to identify resources effectively using Naming and Tagging is key to also being able to manage their health, lifecycle and security. Naming and Tagging also goes way beyond appearances, and helps group resources, enable more effectively control (for example, automation via Tagging), and many more items that lead to an optimal cloud environment.

The great news here is that Microsoft has extensive guidance on developing a naming and tagging strategy – and also provides guidance on this – with examples. See the URLs below from the Cloud Adoption Framework:

Azure Naming Tool

A great tool that can help here is the Azure Naming Tool – https://github.com/mspnp/AzureNamingTool

This provides a way to develop a naming convention that also includes aspects like different Organisations, Units/Departments, Projects/Apps/Services, Functions and more – so really allows you to develop a comprehensive naming convention that provides a framework-aligned approach. Using the Azure Naming Tool is very simple, and a range of deployment options are provided – check out the Wiki for more information and guidance: https://github.com/mspnp/AzureNamingTool/wiki.


Reliability

Well-Architected Framework

Reliability is a key pillar of the Well-Architected Framework, which is primarily concerned with the Resiliency, Availability, and Recovery of Workloads within Azure. You can read more about the Pillars here: https://learn.microsoft.com/en-us/azure/well-architected/pillars

Designing for Reliability in Azure requires a range of considerations – beyond just technical aspects too. In many cases, it’s important to start with a detailed understanding of an application or workload function within a business, and it’s success metrics, before engaging from a technical standpoint. Fortunately, there’s a range of checklists available within the Well Architected Framework that can help here:

It’s also important to take a pragmatic approach to Reliability. In reality, we could make every single Business Application and Service completely resilient, replicated, and available should there be an outage – but the likelihood of this scenario is that the costs would outweigh the benefits. With this in mind – consider looking at the Reliability tradeoffs section to understand where and how compromises can be made: https://learn.microsoft.com/en-us/azure/well-architected/reliability/tradeoffs

Finally, it is also a hugely valuable exercise to run through the Azure Well-Architected Review, which allows you to review a specific workload, in around 60 minutes: https://learn.microsoft.com/en-us/assessments/azure-architecture-review/.

Azure Proactive Resiliency Library (APRL)

I would also recommend visiting the Azure Proactive Resiliency Library: https://azure.github.io/Azure-Proactive-Resiliency-Library/

“This library is built with the intention of being a staging area for guidance and recommendations that can be used by customers, partners and the field in Well-Architected Framework reliability engagements/assessments; with the intent of the guidance and recommendations being promoted, once tested and validated with customers and partners, into the official Well-Architected Framework documentation.”  (APRL, from GitHub Page: https://azure.github.io/Azure-Proactive-Resiliency-Library

Within APRL we can look at specific services that we need to understand more about from a Resiliency perspective (using WAF Guidelines), and then explore these in more detail. For example, in the below screenshot, you can see the Recommendation of using Managed Disks for Virtual Machines, along with a Resource Graph query to find all VMs not using Managed Disks:


Frameworks and Accelerators

Frameworks

Another important focus area for any Azure Environment is the various Frameworks that exist to help. Perhaps the most important, and probably most well known – is the Microsoft Cloud Adoption Framework (CAF) – https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/. For most organisations, this is the starting point for adopting Cloud, and defines a range of activities and steps that are recommended as part of your Cloud journey.

However, whilst the Cloud Adoption Framework is often consulted before a Cloud journey, it’s an important reference point throughout the lifecycle of a Cloud environment – helping define key ongoing areas like Governance, Innovation, and Migration for example. Many of these areas change throughout the lifecycle of an environment, so require continual adjustment and evaluation for optimal running. There’s a great section of the CAF related to Maturity Vectors, and understanding how these can improve  various baselines throughout your environment: https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/govern/foundation-improvements#maturity-vectors.

There’s also huge range of tools and templates that can help with many of the Cloud Adoption Framework areas: https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/resources/tools-templates.

I’d recommend spending time running through the various areas of the Framework, even if you are already established in Azure – it’s a Framework that is regularly updated, and contains a wealth of knowledge, information, and tools to help on your cloud journey.

Accelerators

As well as comprehensive documentation within the Cloud Adoption Framework, there is also a range of accelerators that can be used to accelerate and enhance your deployment into Azure. These are often provided from the Azure GitHub repo, and usually focus around a particular service in Azure – for example AVD or AKS. These are a great place to start if you are deploying a specific service, and provide guidance and deployable samples.

You can check them out here, in the Azure GitHub account: https://github.com/orgs/Azure/repositories?q=accelerator


Assess and Optimise

As well as many other opportunities to continually enhance Cloud Environments, there are a range of assessment tools that can help to provide defined action items for Azure Environments. These tools often provide a clear “this should be set to XYZ” or “consider adding XYZ” style of approach – giving clear actions that can be carried out to improve the posture of an environment.

Check out the Azure Review Checklists GitHub repo here: https://github.com/Azure/review-checklists

The Azure Review Checklists is a great example of these types of assessment – providing an easy to use assessment tool, that runs in Excel, with which you can assess an environment, and provide a dashboard overview of the findings. All of the assessment items provide a link to additional information, which can help explain a particular area or assessment item. At the time of writing there are a number of areas covered, with additional areas in preview:

I’ve used the Azure Review Checklists in many environments, and found it to be an extremely valuable way to provide rapid assessment and remedial guidance for a range of environments.

Also worth checking out, is the Azure Quick Review tool, which is a command-line interface tool designed to analyse Azure resources and identify if they comply with Microsoft recommendations and best practices. The tool is very simple to use, and provides an Excel-based output providing an Overview, Recommendations, Services, Defender, Advisor and Costs. You can read more, including installation and usage instructions, here: https://azure.github.io/azqr/


Community

Another area that’s hugely valuable, is that of the Microsoft Azure Community Ecosystem. As an Azure MVP, I’m involved in a variety of different areas and events – and these are a great way to network, share knowledge, and discuss common challenges, success stories, and more. Throughout the last few years I’ve had the pleasure of blogging, speaking, hosting and more. As a final section for this post, I wanted to call out some of the awesome community resources and events out there to help! Again – these are not exhaustive, I’m just calling out some that I’ve interacted with over the last few months, as I feel others would benefit from their great work:

User Groups / Meetups / Events

Resources / Blogs / Articles


I hope this post and the associated links and resources are helpful – until next time!

Skip to content