Understand the concept of ARM-Part1
Understand the concept of ARM
ARM stands for Azure Resource Manager, as the name itself suggests it manages the resources. If you have an application that is made up of many components like Virtual Machines, Storage Account, Web App and Cosmos DB. You cannot see these resources as separate entities, instead, you must see these as related and interdependent parts of a single entity. You can deploy, manage, and monitor them as a group. Azure Resource Manager enables you to work with the resources in your solution as a group. You can deploy, update, or delete all the resources for your solution in a single operation. You can create the ARM Template for deployment to make deployment automate. Also, the template can work for different environments such as testing, staging, and production. Azure Resource Manager provides the many features like security, auditing, and tagging to help you manage your resources after deployment.
Consistent Management Layer
Azure Resource Manager provides the consistent management layer to receive the request from Azure tools like Azure Power Shell, Azure CLI, Azure Portal, REST API, and client SDKs. The entire request handled by the same Azure Resource Manager API. The ARM API passes requests to the Resource Manager Service, which authenticates and authorizes the request then it sends the request to the Azure service, which takes the requested action.
BENEFITS OF USING RESOURCE MANAGER
Resource Manager provides several benefits:
- Instead of handling these resources individually, you can deploy, manage and monitor all the resources for your solution as a group.
- You can use declarative templates to manage your infrastructure rather than scripts.
- You can define the dependencies between resources so they're deployed in the correct order.
- You can apply access control to all services in your resource group because Role-Based Access Control (RBAC) is natively integrated into the management platform.
- To logically arrange all the resources in your subscription, you can add tags to resources.
- Redeploy your solution throughout the development lifecycle and have confidence your resources are deployed in a consistent state.
- You will explain the billing of your company by examining the costs for a group of resources sharing the same tag.
Important terms you need to understand while working with ARM
Resource: A manageable item is available from Azure. A virtual machine, storage account, web app, database, and virtual network are some common resources but there's a lot more.
Resource Group: It is like a container or empty bucket that holds the related Azure Resources for an Azure solution. The resource group includes the resources you want as a group to handle. Depending on what makes the most sense for your company, you determine that resources belong to a resource group.
Resource Provider: A service that provides Azure resources. For example, a common resource provider is Microsoft.Compute, which supplies the virtual machine resource. Microsoft.Storage is another common resource provider.
Declarative Syntax: Syntax allows you to say "Here's what I'm going to create" without writing the programming commands sequence to generate it. In the file, you define the properties for the infrastructure to deploy to Azure.