Core Architectural Component of Azure, Step by Step Guide
Tags: webdev, cloudcomputing, microsoftazure, datacenter
Published: 2024-06-07 04:56:39

**In this article we are going to look at these outlines;**

1. Introduction To Azure's Architecture
2. Azure Region
3. Azure Availability Zones
4. Resource Groups
5. Azure Resource Manager (ARM)
6. Conclusion


**1. Introduction To Azure**

Microsoft Azure, often referred to just as Azure is a cloud computing platform developed by Microsoft.
It offers management, access and development of applications and services through its global infrastructure. It also provides a range of capabilities, including software as a service (SaaS), platform as a service (PaaS), and infrastructure as a service (IaaS). Microsoft Azure supports many programming languages, tools, and frameworks, including Microsoft-specific and third-party software and systems.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/shy6kfji8rkglt6r551e.PNG)


**2. Azure Region**

Azure operates in numerous regions worldwide, each representing a specific geographical area. Regions allow users to deploy resources close to their end-users, reducing latency and improving performance. Each region typically consists of multiple data centres, providing redundancy and reliability.
Azure operates in multiple data centres around the world. These data centres are grouped into geographic regions, giving you flexibility in choosing where to build your applications.
You create Azure resources in defined geographic regions like 'West US', 'North Europe', or 'Southeast Asia'. Within each region, multiple data centres exist to provide for redundancy and availability. This approach gives you flexibility as you design applications to create VMs closest to your users and to meet any legal, compliance, or tax purposes.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/rjrfwsui7nw8zmrtlsx8.PNG)



**3. Azure Availability Zones**
Within each region, Azure offers Availability Zones, which are physically separate locations within a region. Each zone has its own power, cooling, and networking, providing high availability and protection against data centre failures. By deploying resources across multiple zones, organizations can achieve greater fault tolerance.
In cloud computing, an availability zone is a subset of an IT infrastructure system that shares no service-critical components (including power, cooling and access) with any other availability zone. Availability zones are typically geographically separated from one another, to prevent local disasters from acting on more than one availability zone.
Some service providers also make higher-level regional distinctions between availability zones, allowing service providers to mitigate even regional-level disasters such as earthquakes and forest fires.
Applications requiring high availability are typically implemented as distributed systems that span multiple availability zones


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lzbv5q4cucr5mc4oscxx.PNG)


**4. Azure Resource Group**

Azure resource groups are logical collections of VMs, storage accounts, virtual networks, web apps, databases and database servers. You can use them to group related resources for an application and divide them into groups for production and nonproduction, or any other organizational structure you prefer.

The Azure resource groups management model provides four levels, or “scopes” of management, to organize your resources:

**Management groups**: These groups are containers to manage access, policy and compliance for multiple subscriptions. All subscriptions in a management group automatically inherit the conditions applied to the management group. They are often used for grouping subscriptions by internal department or geographical region.

**Subscriptions:** A subscription associates user accounts and the resources that were created by those user accounts. Each subscription has limits or quotas on the number of resources you can create and use. Organizations can use subscriptions to manage costs and the resources that are created by users, teams or projects. Commonly, a subscription equates to an application. 

**Resource groups:** A resource group is a logical container into which Azure resources like web apps, databases and storage accounts are deployed and managed.

**Resources:** Resources are instances of services that you create like VMs, storage or SQL databases.
One important factor to keep in mind when managing these scopes is that there’s a difference between an Azure subscription versus a management group. A management group can’t include an Azure resource. It can only include other management groups or subscriptions. Azure management groups provide a level of organization above Azure subscriptions—for example, if a subscription represents an application, an Azure management group might contain all applications managed by that department. Also, there’s no structure for a “nested” resource group in Azure—to “nest” groups for permissions, you’ll need to use a combination of permissions at the different levels listed earlier. Be sure also to differentiate the concept of an Azure resource group from an “Azure availability set.” An availability set in Azure is a logical grouping of VMs to inform Azure how your application is built to protect the availability of your application.


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/h0kyb1sqq8ecbest8bg5.PNG)


**4. Azure Resource Manager (ARM)**
The Azure Resource Manager (ARM) is the deployment and management service for Azure. ARM provides a consistent management layer that enables you to create, update, and delete resources within your Azure subscription. Azure Resource Manager is Microsoft's infrastructure as code (IaC) service, allowing users to deploy, manage, and monitor resources within Microsoft Azure. It acts as the management layer that enables you to create, update, and delete resources in your Azure subscription.

ARM utilizes JSON-based templates to define the resources required for applications. By executing these templates, users can provision and configure resources in a predictable, repeatable manner.

Key features of ARM include:

**Resource Grouping:** Organizes resources related to an application into resource groups for easy management.
Template-Based Configuration: Promotes reusability and consistency across deployments.

**Role-Based Access Control:** Enables precise control over who can do what within defined resources.
Integrated with Azure Services: Designed to work smoothly with various Azure offerings.
In essence, ARM facilitates the automated deployment of infrastructure within the Azure environment, offering consistency, repeatability, and control.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hf0ala7gadyvp82nyqd6.PNG)



**6. Conclusion,** 
Azure’s core architectural components are designed to provide a robust, scalable, and secure cloud environment. Understanding these components is crucial for effectively utilizing Azure services to build, deploy, and manage applications. Whether you're just getting started with Azure or looking to deepen your knowledge, familiarizing yourself with these core elements will empower you to make the most of what Azure has to offer.