Azure Resource Manager
By Microsoft
Azure Resource Manager (ARM) is the deployment and management layer of Microsoft Azure that lets users create, update, and delete resources through consistent JSON templates, role-based access control, and resource groups.
Definition
Azure Resource Manager (ARM) is the deployment and management layer of Microsoft Azure that lets users create, update, and delete resources through consistent JSON templates, role-based access control, and resource groups.
Overview
Every request made against Azure — whether from the portal, the CLI, PowerShell, or an SDK — passes through Azure Resource Manager. ARM is the control plane that authenticates the request, applies Azure Active Directory permissions and policies, and routes it to the right resource provider, giving Azure a single consistent management API regardless of which tool triggered the action. ARM templates are declarative JSON documents (or the newer Bicep language, which compiles to ARM JSON) that describe a set of resources and their configuration. Resources are organized into resource groups, which act as a logical container for lifecycle management: deleting a resource group deletes everything inside it, which is useful for tearing down entire test environments in one step. ARM also evaluates dependencies between resources automatically, so a virtual network is created before the subnet that needs it, without the author having to sequence operations by hand. Beyond provisioning, ARM enforces governance through Azure Policy and role-based access control (RBAC), letting organizations restrict which resource types or regions a team can use and who can modify them. It plays the same role in Azure that AWS CloudFormation plays in AWS and Google Cloud Deployment Manager plays in GCP — teams working across multiple clouds often use Terraform instead so they can manage all three with one tool.
Key Features
- Single control plane and consistent API used by the portal, CLI, PowerShell, and SDKs
- Declarative ARM JSON templates, or Bicep for a more concise authoring syntax
- Resource groups provide a logical container for lifecycle and permission management
- Automatic dependency resolution between resources in a deployment
- Built-in role-based access control (RBAC) and Azure Policy enforcement
- Tagging support for cost allocation, ownership, and organization at scale
- Incremental and complete deployment modes for controlling how updates are applied
Use Cases
Frequently Asked Questions
From the Blog
AWS vs Azure vs Google Cloud: Which to Learn?
A comprehensive guide to aws vs azure vs google cloud: which to learn? — written for learners at every level.
Read More Cloud & CybersecurityHow Azure Is Organised: Tenants, Subscriptions, Resource Groups
Azure's scope hierarchy — tenant, management group, subscription, resource group, resource — is what governs billing, policy inheritance and access. This guide explains each level, shows how permissions and policies flow down it, and helps you place resources so quotas, RBAC and governance work with you rather than against you.
Read More Cloud & CybersecurityKubernetes resource requests and limits explained
Set requests and limits deliberately: how each affects scheduling and enforcement, why CPU throttles but memory kills, QoS classes and how to pick values from data.
Read More Cloud & CybersecurityUnderstanding Cloud Storage: S3, Blob, and Buckets
Object storage like S3 and Azure Blob stores files as objects in buckets, accessed over HTTP. Learn how it works, when to use it, and how to keep it secure.
Read More