랩 02b - Azure 정책을 통한 거버넌스 관리

랩 시나리오

Contoso에 있는 Azure 리소스 관리를 향상하기 위해 다음 기능을 구현합니다.

  • 인프라 리소스만 포함하는 리소스 그룹(예: Cloud Shell 스토리지 계정)에 태그 지정

  • 적절한 태그가 지정된 인프라 리소스만 리소스 그룹에 추가할 수 있도록 보장

  • 규정 비준수 리소스 수정

목표

이 과정에서, 우리는 다음과 같은 실습을 합니다 :

  • 작업 1: Azure 포털을 통한 태그 생성 및 할당
  • 작업 2: Azure 정책을 통한 태그 강제 할당
  • 작업 3: Azure 정책을 통한 태그 적용

설명

작업 1: Azure 포털을 통한 태그 할당

이 작업에서는 Azure 포털을 통해 Azure 리소스 그룹에 태그를 생성하고 할당합니다.

  1. Azure 포털에서 Cloud Shell 내의 PowerShell 세션을 시작한다.

    참고: Cloud Shell을 처음 실행한 경우, 탑재된 스토리지가 없음 메시지가 표시됩니다. 이 랩에서 사용하고 있는 구독을 선택하고 스토리지 만들기를 클릭하십시오.

  2. Cloud Shell 창에서 다음 명령을 실행하여 Cloud Shell에서 사용되는 스토리지 계정을 확인한다.

    df
    
  3. 명령 결과에서 Cloud Shell 홈 드라이브 마운트를 지정하는 전체 경로의 첫 번째 부분을 기록해 둔다. (아래에서 xxxxxxxxxxxxxx로 표시된 부분):

    //xxxxxxxxxxxxxx.file.core.windows.net/cloudshell   (..)  /usr/csuser/clouddrive
    
  4. Azure 포털에서 스토리지 계정을 찾아 선택한다. 리스트에서 이전 단계에서 확인한 스토리지 계정을 클릭한다.

  5. 블레이드에서 스토리지 계정을 포함하고 있는 리소스 그룹의 링크를 클릭한다.

  6. 리소스 그룹 블레이드에서 태그를 클릭한다.

  7. 다음 설정을 사용하여 태그를 생성하고 변경 사항을 저장한다.

    설정
    이름 Role
    Infra
  8. 스토리지 계정 블레이드로 돌아가서 개요 정보를 확인한다. 새 태그가 스토리지 계정에 자동으로 할당되지 않은 것을 확인한다.

작업 2: Azure 정책을 통한 태그 강제 할당

이 작업에서는 리소스에 태그 및 값 필요 기본 제공 정책을 리소스 그룹에 할당하고 결과를 검토합니다.

  1. Azure 포털에서 정책을 찾아 선택한다.

  2. 제작 섹션에서 정의를 클릭한다. 사용할 수 있는 기본 제공 정책 정의 목록을 검토한다. 범주 드롭다운 목록에서 Tags 항목만 선택하여 태그 사용이 포함된 모든 기본 제공 정책을 나열한다.

  3. 리소스에 태그 및 값 필요 기본 제공 정책을 클릭하고, 정의를 확인한다.

  4. 리소스에 태그 및 값 필요 기본 제공 정책 블레이드에서 할당을 클릭한다.

  5. 줄임말 버튼을 클릭하고, 다음 값을 사용하여 범위를 지정한다.

    설정
    구독 이 랩에서 사용하는 구독
    리소스 그룹 이전 단계에서 확인했던 Cloud Shell 계정을 포함하는 리소스 그룹의 이름

    참고: 범위는 정책 할당이 적용되는 리소스 또는 리소스 그룹을 결정합니다. 관리 그룹, 구독 또는 리소스 그룹 수준에 대한 정책을 할당할 수 있습니다. 할당 범위에 따라 개별 구독, 리소스 그룹 또는 리소스와 같은 제외 항목을 지정할 수도 있습니다.

  6. 기본 사항 탭에 다음 설정을 사용한다. (다른 값은 기본 설정을 사용한다. )

    설정
    할당 이름 Require Role tag with Infra value
    설명 Require Role tag with Infra value for all resources in the Cloud Shell resource group
    정책 적용 사용

    참고: 할당 이름은 선택한 정책 이름으로 자동으로 채워지지만 변경할 수 있습니다. 설명(선택 사항)을 추가할 수도 있으며, 할당한 사람은 할당을 생성하는 사용자 이름에 따라 자동으로 채워집니다.

  7. 다음을 클릭하고, 다음 값을 사용하여 매개 변수 를 지정한다.

    설정
    태그 이름 Role
    태그 값 Infra
  8. 다음을 클릭하고, 재구성 탭에서 관리 ID 생성 체크박스를 선택하지 않고 그대로 둔다.

    참고: 이 설정은 deployIfNotExistsModify 유형이 있는 정책이나 이니셔티브에 사용된다.

  9. 검토 + 만들기를 클릭하고, 만들기를 클릭한다.

    참고: 이제 리소스 그룹에 다른 Azure 스토리지 계정을 생성하여, 필요한 태그를 명시적으로 추가하지 않아도 새 정책 할당이 적용되고 있는지 확인하십시오.

    참고: 정책이 시행되는데 5분에서 15분 정도 걸릴 수 있습니다.

  10. Cloud Shell 홈 드라이브에 사용된 스토리지 계정을 호스팅하는 리소스 그룹 블레이드로 다시 이동한다.

  11. 리소스 그룹 블레이드에서 + 추가를 클릭한다.

  12. 새로 만들기 블레이드에서 Storage account - blob, file, table, queue를 찾아 선택하고, 만들기를 클릭한다.

  13. 기본 사항 탭에 다음 설정을 사용하고, 검토 + 만들기를 클릭한다. (다른 값은 기본 설정을 사용한다)

    설정
    스토리지 계정 이름 소문자와 숫자로 구성된 고유한 이름(3~24자)
  14. 유효성 검사에 실패하면, 유효성을 검사하지 못했습니다. 자세한 내용을 보려면 여기를 클릭하세요 링크를 클릭하여 오류 블레이드에서 원인을 확인한다.

    참고: 오류 메시지는 정책에서 리소스를 허용하지 않았음을 나타냅니다.

    참고: Raw 오류 탭을 클릭하면, Require Role tag with Infra value 정책의 이름을 포함한 자세한 내용을 확인할 수 있습니다. 생성하려는 스토리지 계정에 Infra로 설정된 Role이라는 태그가 없기 때문에 배포에 실패하였습니다.

작업 3: Azure 정책을 통한 태그 적용

이 작업에서는 다른 정책 정의를 사용하여 비준수 리소스에 태그를 적용합니다.

  1. Azure 포털에서 정책을 찾아 선택한다.

  2. 제작 섹션의 할당을 클릭한다.

  3. 목록에서 Infra value 정책 할당을 나타내는 행의 줄임표 아이콘을 마우스 오른쪽 버튼으로 누르고 할당 삭제 메뉴 항목을 사용하여 할당을 삭제한다.

  4. 정책 할당을 클릭한다. 줄임말 버튼을 클릭하고, 다음 값을 사용하여 범위를 지정한다.

    설정
    구독 이 랩에서 사용하는 Azure 구독의 이름
    리소스 그룹 이전 작업에서 확인한 Cloud Shell 계정을 포함하는 리소스 그룹의 이름
  5. 정책 정의 옆의 줄임말 버튼을 클릭하고, 없는 경우 리소스 그룹에서 태그 상속을 찾아 선택한다.

  6. 기본 사항 탭에 다음 설정을 사용한다. (다른 값은 기본 설정을 사용한다)

    설정
    할당 이름 Inherit the Role tag and its Infra value from the Cloud Shell resource group if missing
    설명 Inherit the Role tag and its Infra value from the Cloud Shell resource group if missing
    정책 적용 사용
  7. 매개 변수 탭에서 다음 설정을 사용한다.

    설정
    태그 이름 Role
  8. 재구성 탭에서 다음 설정을 사용한다. (다른 값은 기본 설정을 사용한다)

    설정
    수정 작업 만들기 (체크)
    수정할 정책 없는 경우 리소스 그룹에서 태그 상속

    참고: 이 정책 정의는 Modify 효과를 포함합니다.

  9. 검토 + 만들기만들기를 차례로 클릭한다.

    참고: 새 정책 할당이 유효한지 확인하려면 필요한 태그를 명시적으로 추가하지 않고, 동일한 리소스 그룹에 다른 Azure 스토리지 계정을 생성하십시오.

    참고: 정책이 시행되는데 5분에서 15분 정도 소요됩니다.

  10. Cloud Shell 홈 드라이브에 사용된 스토리지 계정을 호스팅하는 리소스 그룹의 블레이드로 다시 이동한다.

  11. 리소스 그룹 블레이드에서 + 추가를 클릭한다.

  12. 새로 만들기 블레이드에서 Storage account - blob, file, table, queue를 찾아 선택하고, 만들기를 클릭한다.

  13. 기본 사항 탭에 다음 설정을 사용하고, 검토 + 만들기를 클릭한다. (다른 값은 기본 설정을 사용한다)

    설정
    스토리지 계정 이름 소문자와 숫자로 구성된 고유한 이름(3~24자)
  14. 이번에는 유효성 검사를 통과한 것을 확인하고 만들기를 클릭한다.

  15. 새 스토리지 계정이 프로비전되면 리소스로 이동 버튼을 클릭하고, 새로 생성된 스토리지 계정의 개요 블레이드에서 Infra 값이 있는 Role 태그가 리소스에 자동으로 할당된 것을 확인한다.

리소스 삭제

참고: 사용하지 않는 새로 생성된 Azure 리소스를 제거하십시오.

참고: 사용하지 않는 리소스를 제거해야 예상치 못한 비용이 발생하는 것을 막을 수 있지만, 애저 정책은 추가 과금을 발생하지 않습니다.

  1. Azure 포털에서 정책을 찾아 선택한다.

  2. 제작 섹션의 할당을 클릭한다. 이전 작업에서 생성한 할당 오른쪽의 줄임표 아이콘을 누르고 할당 삭제를 클릭한다.

  3. Azure 포털에서 스토리지 계정을 찾아 선택한다.

  4. 스토리지 계정 목록에서 이 랩의 마지막 작업에서 생성한 스토리지 계정을 선택하고, 삭제를 클릭한다. 표시된 확인 메시지를 입력하여 삭제한다.

요약

이 랩에서 우리는

  • Azure portal을 통해 태그를 생성하고 할당했습니다.
  • Azure 정책을 통해 태그를 강제로 할당했습니다.
  • Azure 정책을 통해 태그를 적용했습니다.