Azure Resource Manager란?What is Azure Resource Manager?

Azure Resource Manager는 Azure용 배포 및 관리 서비스입니다.Azure Resource Manager is the deployment and management service for Azure. Azure 계정에서 리소스를 만들고, 업데이트하고, 삭제할 수 있는 관리 계층을 제공합니다.It provides a management layer that enables you to create, update, and delete resources in your Azure account. 배포 이후 액세스 제어, 잠금 및 태그와 같은 관리 기능을 사용하여 리소스를 보호하고 구성합니다.You use management features, like access control, locks, and tags, to secure and organize your resources after deployment.

ARM 템플릿(Azure Resource Manager 템플릿)에 대한 자세한 내용은 템플릿 배포 개요를 참조하세요.To learn about Azure Resource Manager templates (ARM templates), see the template deployment overview.

일관적인 관리 계층Consistent management layer

사용자가 Azure 도구, API 또는 SDK에서 요청을 보내면 Resource Manager에서 요청을 받습니다.When a user sends a request from any of the Azure tools, APIs, or SDKs, Resource Manager receives the request. 요청을 인증하고 권한을 부여합니다.It authenticates and authorizes the request. Resource Manager에서 요청된 작업을 수행하는 Azure 서비스에 요청을 보냅니다.Resource Manager sends the request to the Azure service, which takes the requested action. 모든 요청이 동일한 API를 통해 처리되므로 모든 여러 도구에서 일관적인 결과 및 기능을 볼 수 있습니다.Because all requests are handled through the same API, you see consistent results and capabilities in all the different tools.

다음 이미지에서는 Azure Resource Manager에서 Azure 요청을 처리할 때 수행하는 역할을 보여 줍니다.The following image shows the role Azure Resource Manager plays in handling Azure requests.

리소스 관리자 요청 모델

포털에서 사용할 수 있는 모든 기능은 PowerShell, Azure CLI, Azure REST API 및 클라이언트 SDK를 통해서도 사용 가능합니다.All capabilities that are available in the portal are also available through PowerShell, Azure CLI, REST APIs, and client SDKs. API를 통해 처음 릴리스된 기능은 처음 릴리스된 지 180일 이내에 포털에 표시됩니다.Functionality initially released through APIs will be represented in the portal within 180 days of initial release.

용어Terminology

Azure Resource Manager가 처음이라면 익숙하지 않은 용어가 있을 수 있습니다.If you're new to Azure Resource Manager, there are some terms you might not be familiar with.

  • 리소스 - Azure를 통해 사용할 수 있는 관리 가능한 항목입니다.resource - A manageable item that is available through Azure. 리소스의 예로는 가상 머신, 스토리지 계정, 웹앱, 데이터베이스 및 가상 네트워크가 있습니다.Virtual machines, storage accounts, web apps, databases, and virtual networks are examples of resources. 리소스 그룹, 구독, 관리 그룹 및 태그도 리소스의 예입니다.Resource groups, subscriptions, management groups, and tags are also examples of resources.
  • 리소스 그룹 - Azure 솔루션에 관련된 리소스를 보유하는 컨테이너입니다.resource group - A container that holds related resources for an Azure solution. 리소스 그룹은 그룹으로 관리하려는 리소스만 포함합니다.The resource group includes those resources that you want to manage as a group. 조직에 가장 적합한 요소에 따라 리소스 그룹에 속하는 리소스를 결정합니다.You decide which resources belong in a resource group based on what makes the most sense for your organization. 리소스 그룹을 참조하세요.See Resource groups.
  • 리소스 공급자 - Azure 리소스를 제공하는 서비스입니다.resource provider - A service that supplies Azure resources. 예를 들어 일반적인 리소스 공급자는 가상 머신 리소스를 제공하는 Microsoft.Compute입니다.For example, a common resource provider is Microsoft.Compute, which supplies the virtual machine resource. Microsoft.Storage는 또 다른 일반적인 리소스 공급자입니다.Microsoft.Storage is another common resource provider. 리소스 공급자 및 형식을 참조하세요.See Resource providers and types.
  • Resource Manager 템플릿 - 리소스 그룹, 관리 그룹 또는 테넌트에 배포할 하나 이상의 리소스를 정의하는 JSON(JavaScript Object Notation) 파일입니다.Resource Manager template - A JavaScript Object Notation (JSON) file that defines one or more resources to deploy to a resource group, subscription, management group, or tenant. 템플릿은 리소스를 일관되고 반복적으로 배포하는 데 사용할 수 있습니다.The template can be used to deploy the resources consistently and repeatedly. 템플릿 배포 개요를 참조하세요.See Template deployment overview.
  • 선언적 구문 - 항목을 만드는 프로그래밍 명령의 시퀀스를 작성하지 않고도 "만들려는 대상은 다음과 같습니다"라고 선언하는 구문입니다.declarative syntax - Syntax that lets you state "Here is what I intend to create" without having to write the sequence of programming commands to create it. Resource Manager 템플릿은 선언적 구문의 예입니다.The Resource Manager template is an example of declarative syntax. 파일에서 Azure에 배포하는 인프라에 대한 속성을 정의합니다.In the file, you define the properties for the infrastructure to deploy to Azure. 템플릿 배포 개요를 참조하세요.See Template deployment overview.

리소스 관리자를 사용할 경우의 이점The benefits of using Resource Manager

Resource Manager를 사용하면 다음을 수행할 수 있습니다.With Resource Manager, you can:

  • 스크립트가 아니라 선언적 템플릿을 통해 인프라를 관리합니다.Manage your infrastructure through declarative templates rather than scripts.

  • 이 리소스를 개별적으로 처리하는 대신, 솔루션의 모든 리소스를 그룹으로 배포, 관리 및 모니터링합니다.Deploy, manage, and monitor all the resources for your solution as a group, rather than handling these resources individually.

  • 개발 수명 주기 전체에 걸쳐 솔루션을 다시 배포하고, 리소스가 일관된 상태로 배포된다고 확신할 수 있습니다.Redeploy your solution throughout the development lifecycle and have confidence your resources are deployed in a consistent state.

  • 리소스가 올바른 순서로 배포되도록 리소스 간의 종속성을 정의합니다.Define the dependencies between resources so they're deployed in the correct order.

  • Azure RBAC(Azure 역할 기반 액세스 제어)가 기본적으로 관리 플랫폼에 통합되어 있으므로 액세스 제어가 모든 서비스에 적용됩니다.Apply access control to all services because Azure role-based access control (Azure RBAC) is natively integrated into the management platform.

  • 리소스에 태그를 적용하여 구독의 모든 리소스를 논리적으로 구성합니다.Apply tags to resources to logically organize all the resources in your subscription.

  • 동일한 태그를 공유하는 리소스 그룹에 대한 비용을 확인하여 조직의 청구를 명확히 합니다.Clarify your organization's billing by viewing costs for a group of resources sharing the same tag.

범위 이해Understand scope

Azure는 관리 그룹, 구독, 리소스 그룹 및 리소스라는 네 가지 수준의 범위를 제공합니다.Azure provides four levels of scope: management groups, subscriptions, resource groups, and resources. 다음 그림은 세 가지 계층의 예를 보여 줍니다.The following image shows an example of these layers.

관리 수준

이러한 범위 수준에서 관리 설정을 적용합니다.You apply management settings at any of these levels of scope. 선택한 수준은 설정이 적용되는 범위를 결정합니다.The level you select determines how widely the setting is applied. 하위 수준은 상위 수준의 설정을 상속합니다.Lower levels inherit settings from higher levels. 예를 들어 구독에 정책을 적용하면 해당 정책이 구독의 모든 리소스 그룹 및 리소스에 적용됩니다.For example, when you apply a policy to the subscription, the policy is applied to all resource groups and resources in your subscription. 리소스 그룹에 정책을 적용하면 해당 정책이 리소스 그룹 및 모든 리소스에 적용됩니다.When you apply a policy on the resource group, that policy is applied to the resource group and all its resources. 그러나 다른 리소스 그룹에는 해당 정책 할당이 적용되지 않습니다.However, another resource group doesn't have that policy assignment.

테넌트, 관리 그룹, 구독 또는 리소스 그룹에 템플릿을 배포할 수 있습니다.You can deploy templates to tenants, management groups, subscriptions, or resource groups.

리소스 그룹Resource groups

리소스 그룹을 정의할 때 고려해야 할 몇 가지 중요한 요인이 있습니다.There are some important factors to consider when defining your resource group:

  • 리소스 그룹의 모든 리소스는 동일한 수명 주기를 공유해야 합니다.All the resources in your resource group should share the same lifecycle. 리소스를 함께 배포, 업데이트, 삭제합니다.You deploy, update, and delete them together. 서버와 같은 하나의 리소스에 다양한 배포 주기가 존재하는 경우 다른 리소스 그룹에 있어야 합니다.If one resource, such as a server, needs to exist on a different deployment cycle it should be in another resource group.

  • 각 리소스는 하나의 리소스 그룹에만 있을 수 있습니다.Each resource can exist in only one resource group.

  • 언제든지 리소스 그룹에 리소스를 추가하거나 제거할 수 있습니다.You can add or remove a resource to a resource group at any time.

  • 특정 리소스 그룹에서 다른 그룹에 리소스를 이동할 수 있습니다.You can move a resource from one resource group to another group. 자세한 내용을 보려면 새 리소스 그룹 또는 구독으로 리소스 이동을 참조하세요.For more information, see Move resources to new resource group or subscription.

  • 리소스 그룹의 리소스는 리소스 그룹과 다른 지역에 있을 수 있습니다.The resources in a resource group can be located in different regions than the resource group.

  • 리소스 그룹을 만들 때 해당 리소스 그룹의 위치를 제공해야 합니다.When creating a resource group, you need to provide a location for that resource group. 리소스 그룹에 위치가 필요한 이유는 무엇인지 궁금할 수 있습니다.You may be wondering, "Why does a resource group need a location? 리소스의 위치가 리소스 그룹과 다른 경우 리소스 그룹 위치가 중요한 이유는 무엇인가요?And, if the resources can have different locations than the resource group, why does the resource group location matter at all?" 리소스 그룹은 리소스에 대한 메타데이터를 저장합니다.The resource group stores metadata about the resources. 리소스 그룹의 위치를 지정하면 메타데이터가 저장되는 위치를 지정하게 됩니다.When you specify a location for the resource group, you're specifying where that metadata is stored. 규정 준수 때문에 특정 지역에 데이터가 저장되는지 확인해야 합니다.For compliance reasons, you may need to ensure that your data is stored in a particular region.

    리소스 그룹의 지역이 일시적으로 사용할 수 없는 경우 메타데이터를 사용할 수 없기 때문에 리소스 그룹의 리소스를 업데이트할 수 없습니다.If the resource group's region is temporarily unavailable, you can't update resources in the resource group because the metadata is unavailable. 다른 지역에 있는 리소스는 여전히 예상대로 작동하지만 업데이트는 불가능합니다.The resources in other regions will still function as expected, but you can't update them. 신뢰할 수 있는 애플리케이션을 빌드하는 방법에 대한 자세한 내용은 신뢰할 수 있는 Azure 애플리케이션 디자인을 참조하세요.For more information about building reliable applications, see Designing reliable Azure applications.

  • 관리 작업에 대한 Access Control 범위를 지정하는 데 리소스 그룹을 사용할 수 있습니다.A resource group can be used to scope access control for administrative actions. 리소스 그룹을 관리하려면 Azure 정책, Azure 역할 또는 리소스 잠금을 할당하면 됩니다.To manage a resource group, you can assign Azure Policies, Azure roles, or resource locks.

  • 리소스 그룹에 태그를 적용할 수 있습니다.You can apply tags to a resource group. 리소스 그룹의 리소스는 이러한 태그를 상속하지 않습니다.The resources in the resource group don't inherit those tags.

  • 리소스는 다른 리소스 그룹의 리소스에 연결할 수 있습니다.A resource can connect to resources in other resource groups. 이 시나리오는 두 리소스가 관련되어 있지만 동일한 수명 주기를 공유하지 않는 경우에 일반적입니다.This scenario is common when the two resources are related but don't share the same lifecycle. 예를 들어 다른 리소스 그룹의 데이터베이스에 연결하는 웹앱이 있을 수 있습니다.For example, you can have a web app that connects to a database in a different resource group.

  • 리소스 그룹을 삭제하면 리소스 그룹의 모든 리소스도 삭제됩니다.When you delete a resource group, all resources in the resource group are also deleted. Azure Resource Manager가 이러한 삭제를 오케스트레이션하는 방법에 대한 자세한 내용은 Azure Resource Manager 리소스 그룹 및 리소스 삭제를 참조하세요.For information about how Azure Resource Manager orchestrates those deletions, see Azure Resource Manager resource group and resource deletion.

  • 각 리소스 그룹에 리소스 종류의 인스턴스를 최대 800개까지 배포할 수 있습니다.You can deploy up to 800 instances of a resource type in each resource group. 일부 리소스 종류는 800개 인스턴스 제한에서 제외됩니다.Some resource types are exempt from the 800 instance limit.

  • 일부 리소스는 리소스 그룹 외부에 존재할 수 있습니다.Some resources can exist outside of a resource group. 이러한 리소스는 구독, 관리 그룹 또는 테넌트에 배포됩니다.These resources are deployed to the subscription, management group, or tenant. 이러한 범위에서는 특정 리소스 유형만 지원됩니다.Only specific resource types are supported at these scopes.

  • 리소스 그룹을 만들려면 포털, PowerShell, Azure CLI 또는 ARM 템플릿을 사용하면 됩니다.To create a resource group, you can use the portal, PowerShell, Azure CLI, or an ARM template.

Azure Resource Manager의 복원력Resiliency of Azure Resource Manager

Azure Resource Manager 서비스는 복원력 및 지속적인 가용성을 위해 설계되었습니다.The Azure Resource Manager service is designed for resiliency and continuous availability. REST API의 Resource Manager 및 제어 평면 작업(management.azure.com에 전송된 요청)은 다음과 같습니다.Resource Manager and control plane operations (requests sent to management.azure.com) in the REST API are:

  • 지역별로 분산됩니다Distributed across regions. 일부 서비스는 지역적입니다.Some services are regional.

  • 여러 가용성 영역이 있는 위치에서 가용성 영역(및 지역)으로 분산됩니다.Distributed across Availability Zones (as well as regions) in locations that have multiple Availability Zones.

  • 단일 논리 데이터 센터에 종속되지 않습니다.Not dependent on a single logical data center.

  • 유지 관리 작업을 위해 다운되지 않습니다.Never taken down for maintenance activities.

이 복원력은 Resource Manager를 통해 요청을 수신하는 서비스에 적용됩니다.This resiliency applies to services that receive requests through Resource Manager. 예를 들어 Key Vault는 이 복원력의 이점을 사용합니다.For example, Key Vault benefits from this resiliency.

다음 단계Next steps