Azure Resource Group 생성

GEONNY·2024년 10월 15일

Azure

목록 보기
2/8
post-thumbnail

이전 Azure 관련 글
Azure 시작하기 - IT관리자 생성

📌Resource Group 이란?

Resource Group은 관련된 Resource들을 묶어 관리하고 조직화하는 논리적 컨테이너입니다. Azure의 다양한 리소스(가상 머신, 데이터베이스, 네트워크 등)를 그룹으로 묶어 관리하고 배포하기 쉽게 만듭니다.

📍주요 개념 및 특징

리소스의 논리적 그룹화

Resource Group은 실제 물리적 한계가 아닌 논리적 컨테이너입니다. 같은 리소스 그룹에 포함된 리소스들이 반드시 같은 지역이나 동일한 유형일 필요는 없습니다. 다만, 일반적으로 동일한 애플리케이션이나 프로젝트에 관련된 리소스를 한 그룹으로 묶습니다.

리소스 생명 주기 관리

리소스 그룹 내의 모든 리소스는 동일한 생명 주기를 가집니다. 예를 들어, 리소스 그룹을 삭제하면 그룹 내 모든 리소스도 함께 삭제됩니다. 따라서 특정 프로젝트나 애플리케이션의 리소스를 한 번에 배포하거나 제거할 때 유용합니다.

역할 기반 액세스 제어(RBAC)

Azure는 RBAC(Role-Based Access Control)를 통해 리소스 그룹 단위로 사용자에게 권한을 부여할 수 있습니다. 특정 리소스 그룹에 대한 관리 권한을 부여하거나 제한함으로써 보안 관리가 가능합니다.

리소스 그룹의 위치

Resource Group 자체는 특정한 Azure 지역(Region)에 생성되지만, 그 안에 포함된 리소스들은 다른 지역에 있을 수 있습니다. 예를 들어, 미국 서부 지역에 Resource Group을 생성하고, 유럽 지역에 리소스를 배치하는 것도 가능합니다. 다만, 일부 서비스는 동일한 지역 내에 있어야 할 수도 있습니다.

템플릿 관리

리소스 그룹은 Azure Resource Manager(ARM) 템플릿을 사용하여 인프라를 코드로 정의하고 배포하는 데 유리합니다. 템플릿을 통해 동일한 구성을 여러 환경에 쉽게 재배포할 수 있습니다.

📍주요 사용 사례

프로젝트별 리소스 관리

하나의 프로젝트에서 필요한 모든 리소스(가상 머신, 네트워크, 데이터베이스 등)를 하나의 리소스 그룹에 모아 관리하여, 프로젝트 단위로 리소스를 관리하고 비용을 추적하기 쉽습니다.

애플리케이션 배포 및 관리

동일한 애플리케이션에 속하는 여러 리소스를 그룹화하여 배포할 수 있습니다. 애플리케이션이 여러 구성 요소로 이루어져 있어도, 한 번에 관리하고 모니터링할 수 있습니다.

리소스 수명 주기 제어

테스트 또는 개발 환경에서 리소스 그룹을 사용하면, 테스트가 끝난 후 리소스 그룹을 삭제하여 해당 그룹 내의 모든 리소스를 제거할 수 있습니다. 이를 통해 사용하지 않는 리소스를 쉽게 정리하고 비용을 절감할 수 있습니다.

📍Resource Group 관련 권장 사항

Resource Group과 애플리케이션 생명 주기 일치

리소스 그룹 내의 모든 리소스가 동일한 애플리케이션이나 서비스에 관련이 있다면, 동일한 생명 주기를 가지도록 그룹화하는 것이 좋습니다.

RBAC 및 정책 사용

리소스 그룹 단위로 접근 제어 및 정책을 설정하면 보안 및 관리가 용이해집니다.

정기적인 리소스 그룹 점검

리소스 그룹 내에 사용하지 않는 리소스가 있는지 정기적으로 점검하고 불필요한 리소스를 정리하여 비용 절감을 고려합니다.

📌Resource Group 생성

📍User 생성

Reqource Group 생성에 앞서 해당 그룹에 속할 User 를 생성하겠습니다. 관리자 계정으로 Azure Portal 에 로그인 합니다.
Microsoft Entra ID > Users > New user > Create new user 를 순차적으로 선택합니다.

Create new user 페이지에서 아래와 같이 입력합니다. 입력 후 붉은 색으로 표시한 부분을 클릭하여 값을 메모장에 붙여넣습니다. (이후 로그인 시 필요)

같은 방식으로 sUser2 (Sales user 2), dUser1 (Develop user 1), dUser2 (Develop user 2) 를 생성합니다.
sRG (Sales Resource Group), dRG (Develop Resource Group) Resource Group 을 생성하여 각 사용자를 추가하겠습니다.

📍Resource Group 생성

Resource Groups > Create 를 클릭하여 Resource Group 을 생성합니다.

Resource group 은 sRG, Region은 Korea Central을 선택합니다.
한번 생성한 Resource Group의 이름은 절대 변경할 수 없으니 주의합니다.

Review + Create > Create 로 Resource Group을 생성합니다. 같은 방식으로 'dRG' Resource Group도 생성합니다. dRG Resource Group 의 Region은 'Central US' 를 선택합니다.

Contributor role 설정

이제 각각의 Resource Group에 User 를 Contributor Role로 등록합니다.
Resource Group 에서 방금 생성한 그룹명을 클릭하고 Access control (IAM) > Add role assignment 를 클릭합니다.

Add roel assignment 페이지로 전환되면 Privileged adminstrator roles 탭을 선택하고 Contributor를 선택합니다.

Members 탭에서는 Select members 를 클릭해서 Sales User 1과 2를 추가해줍니다.

Review + assign 으로 role을 추가해줍니다. dRG 도 같은 방식으로 dUser1 과 2의 Contributor Role을 추가해줍니다.
이제 sRG에는 sUser1, sUser2가 Contributor role을,
dRG에는 dUser1과 dUser2가 Contributor role을 갖게됩니다.
Role이 맞게 등록되었는지 Microsoft Entra ID > Users > Sales user 1 > Azure role assignments 를 확인해봅니다.

📌Owner vs Contributor

Owner는 Contributor의 모든 권한을 가지며, 추가로 Role Assignment(역할 할당) 및 권한 관리도 할 수 있습니다. 즉, 리소스의 소유자로서 리소스에 대한 모든 작업을 수행할 수 있으며, 다른 사용자에게 권한을 부여하거나 제거할 수 있습니다. 전체 애플리케이션 또는 리소스 그룹의 관리자가 리소스를 관리하고, 또한 다른 팀 구성원에게 적절한 권한을 부여하는 역할이 필요할 때 부여합니다.

Contributor는 리소스에 대해 대부분의 작업을 수행할 수 있습니다. 리소스를 생성, 삭제, 수정할 수 있는 권한을 가지고 있지만, Role Assignment(역할 할당)을 관리하거나 다른 사용자에게 권한을 부여하는 행위는 할 수 없습니다. 팀의 개발자나 운영자가 리소스를 관리하고 설정을 변경해야 하지만, 권한 관리에는 접근할 필요가 없을 때 부여합니다.

결론적으로 Role Assignment 관리에서 두 Role은 차이를 보입니다.

profile
Back-end developer

0개의 댓글