워크로드 정책 교체, 삭제, 제거하기

이 문서에서는 관리형 인스턴스 그룹 (MIG)에서 워크로드 정책을 교체, 삭제, 제거하는 방법을 설명합니다. 이러한 작업은 다음과 같은 시나리오에서 유용합니다.

  • 워크로드 정책 바꾸기: MIG 내에서 Compute Engine 인스턴스가 배치되는 방식을 변경하거나 워크로드의 요구사항에 더 적합한 다른 워크로드 정책으로 전환할 수 있습니다.

  • 워크로드 정책 삭제: 워크로드에 더 이상 특정 배치 규칙이 필요하지 않은 경우 특정 배치 규칙을 사용 중지하여 MIG를 기본 컴퓨팅 인스턴스 배치 동작으로 되돌릴 수 있습니다.

  • 워크로드 정책 삭제: 더 이상 필요하지 않은 워크로드 정책을 영구적으로 삭제할 수 있습니다.

워크로드 정책을 만드는 방법을 알아보려면 MIG용 워크로드 정책 만들기를 참고하세요.

제한사항

MIG에 컴퓨팅 인스턴스가 없는 경우에만 MIG에서 워크로드 정책을 교체하거나 삭제할 수 있습니다.

시작하기 전에

  • 아직 인증을 설정하지 않았다면 설정합니다. 인증은 Google Cloud 서비스 및 API에 액세스하기 위해 ID를 확인합니다. 로컬 개발 환경에서 코드 또는 샘플을 실행하려면 다음 옵션 중 하나를 선택하여 Compute Engine에 인증하면 됩니다.

    이 페이지의 샘플 사용 방법에 대한 탭을 선택하세요.

    gcloud

    1. Google Cloud CLI를 설치합니다. 설치 후 다음 명령어를 실행하여 Google Cloud CLI를 초기화합니다.

      gcloud init

      외부 ID 공급업체(IdP)를 사용하는 경우 먼저 제휴 ID로 gcloud CLI에 로그인해야 합니다.

  • 기본 리전 및 영역을 설정합니다.
  • REST

    로컬 개발 환경에서 이 페이지의 REST API 샘플을 사용하려면 gcloud CLI에 제공한 사용자 인증 정보를 사용합니다.

      Google Cloud CLI를 설치합니다.

      외부 ID 공급업체(IdP)를 사용하는 경우 먼저 제휴 ID로 gcloud CLI에 로그인해야 합니다.

    자세한 내용은 Google Cloud 인증 문서의 REST 사용을 위한 인증을 참조하세요.

필요한 역할

워크로드 정책을 교체, 삭제, 제거하는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 Compute 인스턴스 관리자 (v1) (roles/compute.instanceAdmin.v1) IAM 역할을 부여해 달라고 요청하세요. 역할 부여에 대한 자세한 내용은 프로젝트, 폴더, 조직에 대한 액세스 관리를 참조하세요.

이 사전 정의된 역할에는 워크로드 정책을 교체, 삭제, 제거하는 데 필요한 권한이 포함되어 있습니다. 필요한 정확한 권한을 보려면 필수 권한 섹션을 펼치세요.

필수 권한

워크로드 정책을 교체, 삭제, 제거하려면 다음 권한이 필요합니다.

  • MIG에서 워크로드 정책을 교체하거나 삭제하려면 프로젝트에 대한 compute.instances.update 권한이 필요합니다.
  • 워크로드 정책을 삭제하려면 프로젝트에 대한 compute.resourcePolicies.delete 권한이 있어야 합니다.

커스텀 역할이나 다른 사전 정의된 역할을 사용하여 이 권한을 부여받을 수도 있습니다.

MIG에서 워크로드 정책 바꾸기

MIG의 워크로드 정책을 다른 기존 워크로드 정책으로 바꾸려면 다음 옵션 중 하나를 선택합니다.

gcloud

  1. MIG의 크기를 0으로 수동 설정

  2. MIG의 워크로드 정책을 바꾸려면 --workload-policy 플래그와 함께 gcloud compute instance-groups managed update 명령어를 사용합니다. MIG 유형에 따라 다음 플래그 중 하나를 포함합니다.

    • 영역 MIG에서 워크로드 정책을 바꾸려면 --zone 플래그를 포함하세요.

      gcloud compute instance-groups managed update MIG_NAME \
          --workload-policy=WORKLOAD_POLICY \
          --zone=ZONE
      
    • 리전 MIG에서 워크로드 정책을 바꾸려면 --region 플래그를 포함하세요.

      gcloud compute instance-groups managed update MIG_NAME \
          --workload-policy=WORKLOAD_POLICY \
          --region=REGION
      

    다음을 바꿉니다.

    • MIG_NAME: MIG 이름

    • WORKLOAD_POLICY: MIG에 적용할 워크로드 정책의 이름입니다.

    • ZONE: 영역 MIG가 있는 영역입니다.

    • REGION: 리전 MIG와 워크로드 정책이 있는 리전입니다.

REST

  1. MIG의 크기를 0으로 수동 설정

  2. MIG의 워크로드 정책을 바꾸려면 다음 메서드 중 하나로 PATCH 요청을 수행합니다.

    • 영역 MIG에서 워크로드 정책을 바꾸려면 compute.instanceGroupManagers.patch 메서드에 PATCH 요청을 수행합니다.

      PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME
      
      {
        "workloadPolicy": "projects/PROJECT_ID/regions/REGION/resourcePolicies/WORKLOAD_POLICY"
      }
      
    • 리전 MIG에서 워크로드 정책을 바꾸려면 compute.regionInstanceGroupManagers.patch 메서드에 PATCH 요청을 실행합니다.

      PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME
      
      {
        "workloadPolicy": "projects/PROJECT_ID/regions/REGION/resourcePolicies/WORKLOAD_POLICY"
      }
      

    다음을 바꿉니다.

    • PROJECT_ID: MIG와 워크로드 정책이 있는 프로젝트의 ID입니다.

    • ZONE: 영역 MIG가 있는 영역입니다.

    • REGION: 리전 MIG와 워크로드 정책이 있는 리전입니다.

    • MIG_NAME: MIG 이름입니다.

    • WORKLOAD_POLICY: MIG에 적용할 워크로드 정책의 이름입니다.

MIG에서 워크로드 정책 삭제

MIG에서 워크로드 정책을 삭제하려면 다음 옵션 중 하나를 선택합니다.

gcloud

  1. MIG의 크기를 0으로 수동 설정

  2. MIG에서 워크로드 정책을 삭제하려면 gcloud compute instance-groups managed update 명령어를 --remove-workload-policy 플래그와 함께 사용합니다. MIG 유형에 따라 다음 플래그 중 하나를 포함합니다.

    • 영역 MIG에서 워크로드 정책을 삭제하려면 --zone 플래그를 포함하세요.

      gcloud compute instance-groups managed update MIG_NAME \
          --remove-workload-policy=WORKLOAD_POLICY \
          --zone=ZONE
      
    • 리전 MIG에서 워크로드 정책을 삭제하려면 --region 플래그를 포함합니다.

      gcloud compute instance-groups managed update MIG_NAME \
          --remove-workload-policy=WORKLOAD_POLICY \
          --region=REGION
      

    다음을 바꿉니다.

    • MIG_NAME: MIG 이름입니다.

    • WORKLOAD_POLICY: MIG에 적용되는 워크로드 정책의 이름입니다.

    • ZONE: 영역 MIG가 있는 영역입니다.

    • REGION: 리전 MIG가 있는 리전입니다.

REST

  1. MIG의 크기를 0으로 수동 설정

  2. MIG에서 워크로드 정책을 삭제하려면 다음 메서드 중 하나에 PATCH 요청을 실행합니다.

    • 영역 MIG에서 워크로드 정책을 삭제하려면 compute.instanceGroupManagers.patch 메서드에 요청을 수행합니다.

      PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME
      
      {
        "workloadPolicy": ""
      }
      
    • 리전 MIG에서 워크로드 정책을 삭제하려면 compute.regionInstanceGroupManagers.patch 메서드에 요청을 실행합니다.

      PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME
      
      {
        "workloadPolicy": ""
      }
      

    다음을 바꿉니다.

    • PROJECT_ID: MIG와 워크로드 정책이 있는 프로젝트의 ID입니다.

    • ZONE: 영역 MIG가 있는 영역입니다.

    • REGION: 리전 MIG와 워크로드 정책이 있는 리전입니다.

    • MIG_NAME: MIG 이름입니다.

워크로드 정책 삭제

MIG에 적용된 워크로드 정책은 삭제할 수 없습니다. 정책을 삭제하려면 먼저 MIG에서 정책을 삭제해야 합니다.

워크로드 정책을 삭제하려면 다음 옵션 중 하나를 선택합니다.

gcloud

워크로드 정책을 삭제하려면 gcloud compute resource-policies delete 명령어를 사용합니다.

gcloud compute resource-policies delete WORKLOAD_POLICY \
    --region=REGION

다음을 바꿉니다.

  • WORKLOAD_POLICY: 기존 워크로드 정책의 이름입니다.

  • REGION: 워크로드 정책이 있는 리전입니다.

REST

워크로드 정책을 삭제하려면 resourcePolicies.delete 메서드에 DELETE 요청을 실행합니다.

DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/POLICY_NAME

다음을 바꿉니다.

  • PROJECT_ID: 워크로드 정책이 있는 프로젝트의 ID입니다.

  • REGION: 워크로드 정책이 있는 리전입니다.

  • POLICY_NAME: 기존 워크로드 정책의 이름입니다.

다음 단계