A resource group is as the name suggest, a container to store resources. Any resource in Azure belongs to a single resource group. The resource group itself belongs to a specific region but that is just where the metadata of it is stored. Resources in a resource group can belong to multiple regions. A resource group can NOT belong to another resource group. Resources can be moved between resource groups. So what’s the purpose of them? The answer is simple, to make management easier.
A service consist usually of multiple resources. The service itself has a lifecycle, so to make management easier of that lifecycle we put all these resources in the same resource group. With click of a button or a command we can delete all resources for that specific service.
We can also apply role-based access control to a resource group to make it easier to control who has access to what. To secure things up even more we can apply policies to a resource group which specify what is allowed and not allowed to resources in that group.
To make sure a specific service doesn’t cost too much, we can apply budgets to the resource group. Tags are also an important part of resource groups to make organisation easier. A tag is just a key-value pair.