리전 관리형 인스턴스 그룹(MIG)에서 리전에서 선택한 영역 전반에 짝수 개의 가상 머신(VM) 인스턴스를 유지하려면 사전 인스턴스 재분산을 사용합니다. 이 구성 옵션은 영역 수준 장애 발생 시 애플리케이션의 가용성을 최대화합니다.
리전 MIG의 경우 사전 인스턴스 재분산이 기본적으로 설정되어 있습니다. 사전 인스턴스 재분산이 해제되어 있으면 그룹은 여러 영역에 걸쳐 사전에 VM을 재분산하려고 시도하지 않습니다. 사전 인스턴스 재분산 해제는 다음과 같은 경우에 유용합니다.
- 실행 중인 다른 VM에 영향을 주지 않고 그룹에서 VM을 삭제하거나 폐기해야 하는 경우. 예를 들어 다른 작업자에 영향을 주지 않고 작업 완료 후 일괄 작업자 VM을 삭제할 수 있습니다.
- 스테이트풀(Stateful) 워크로드가 있는 VM을 사전 재분산으로 인한 원치 않는 자동 삭제로부터 보호해야 하는 경우
- MIG의 목표 분배 형태를
BALANCED
또는ANY_SINGLE_ZONE
으로 설정해야 하는 경우
리전 MIG를 만들 때 사전 인스턴스 재분산을 중지할 수 있습니다. 기존 리전 MIG에 사용 설정하거나 사용 중지할 수도 있습니다.
시작하기 전에
-
아직 인증을 설정하지 않았다면 설정합니다.
인증은 Google Cloud 서비스 및 API에 액세스하기 위해 ID를 확인하는 프로세스입니다.
로컬 개발 환경에서 코드 또는 샘플을 실행하려면 다음과 같이 Compute Engine에 인증하면 됩니다.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Google Cloud 콘솔에서 인스턴스 그룹 페이지로 이동합니다.
- 인스턴스 그룹 만들기를 클릭하여 새 인스턴스 그룹을 만듭니다.
- 인스턴스 그룹에 이름과 설명(선택사항)을 할당합니다.
- 인스턴스 그룹의 인스턴스 템플릿을 선택하거나 새로 만듭니다.
- 이 그룹의 VM 수를 지정합니다. 가용성이 높은 워크로드의 경우 영역 오류가 발생할 경우 애플리케이션을 지원하기에 충분한 VM을 프로비저닝해야 합니다.
- 위치에서 다중 영역을 선택합니다.
- 리전을 선택하고 사용할 영역을 선택합니다.
- 사전 인스턴스 재분산을 사용 중지하려면 인스턴스 재분산 아래에서 인스턴스 재분산 허용 체크박스의 선택을 해제하세요.
- MIG 만들기 프로세스의 나머지 과정을 계속 진행합니다.
INSTANCE_GROUP_NAME
: MIG 이름INSTANCE_TEMPLATE_NAME
: 그룹에 사용할 인스턴스 템플릿의 이름TARGET_SIZE
: 그룹의 대상 크기ZONES
: VM을 분배할 단일 리전의 영역 목록PROJECT_ID
: 이 요청의 프로젝트 IDREGION
: 인스턴스 그룹의 리전INSTANCE_GROUP_NAME
: MIG 이름INSTANCE_TEMPLATE_NAME
: 그룹에 사용할 인스턴스 템플릿의 이름TARGET_SIZE
: 인스턴스 그룹의 대상 크기ZONE
: VM을 분배할 단일 리전의 영역 이름- Google Cloud 콘솔에서 인스턴스 그룹 페이지로 이동합니다.
- 목록의 이름 열에서 수정하려는 인스턴스 그룹의 이름을 클릭합니다.
- 수정을 클릭하여 이 관리형 인스턴스 그룹을 수정합니다.
- 인스턴스 재분산에서 인스턴스 재분산 허용 체크박스를 선택 해제합니다.
- 저장을 클릭합니다.
모드가
OFF
또는ONLY_SCALE_OUT
으로 설정된 리전 MIG 또는 자동 확장된 리전 MIG의 경우compute instance-groups managed update
명령어를 사용하세요예를 들면 다음과 같습니다.
gcloud compute instance-groups managed update INSTANCE_GROUP_NAME \ --instance-redistribution-type NONE \ --region REGION
모드가
ON
으로 설정된 자동 확장된 리전 MIG의 경우 베타compute instance-groups managed update
명령어를 사용합니다.예를 들면 다음과 같습니다.
gcloud beta compute instance-groups managed update INSTANCE_GROUP_NAME \ --instance-redistribution-type NONE \ --region REGION
INSTANCE_GROUP_NAME
: MIG 이름REGION
: 인스턴스 그룹의 리전모드가
OFF
또는ONLY_SCALE_OUT
으로 설정된 자동 확장되지 않는 리전 MIG 또는 자동 확장된 리전 MIG의 경우regionInstanceGroupManagers.patch
메서드를 사용하세요.예를 들면 다음과 같습니다.
PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME { "updatePolicy": { "instanceRedistributionType": "NONE" } }
모드가
ON
으로 설정된 자동 확장된 리전 MIG의 경우 베타regionInstanceGroupManagers.patch
메서드를 사용합니다.예를 들면 다음과 같습니다.
PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME { "updatePolicy": { "instanceRedistributionType": "NONE" } }
PROJECT_ID
: 이 요청의 프로젝트 IDREGION
: 인스턴스 그룹의 리전INSTANCE_GROUP_NAME
: MIG 이름- MIG 및 VM에 대한 정보 열람 알아보기
- 인스턴스 추가, 다시 만들기, 삭제 등 MIG에서 VM 작업 알아보기
REST
로컬 개발 환경에서 이 페이지의 REST API 샘플을 사용하려면 gcloud CLI에 제공하는 사용자 인증 정보를 사용합니다.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
자세한 내용은 Google Cloud 인증 문서의 REST 사용 인증을 참조하세요.
사전 인스턴스 재분산이 중지된 그룹 만들기
사전 인스턴스 재분산이 사용 중지된 리전별 MIG를 만들려면 Google Cloud 콘솔, gcloud CLI, Terraform 또는 REST를 사용합니다.
콘솔
gcloud
사전 인스턴스를 재분산하지 않고 새 리전 MIG를 만들려면
NONE
으로 설정된--instance-redistribution-type
플래그와 함께gcloud compute instance-groups managed create
명령어를 사용합니다.gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \ --template INSTANCE_TEMPLATE_NAME \ --size TARGET_SIZE \ --zones ZONES \ --instance-redistribution-type NONE
다음을 바꿉니다.
예를 들면 다음과 같습니다.
gcloud compute instance-groups managed create example-rmig \ --template example-template \ --size 30 \ --zones us-east1-b,us-east1-c \ --instance-redistribution-type NONE
Terraform
MIG의 각 VM에 대해 원하는 머신 유형, 부팅 디스크 이미지, 네트워크, 기타 VM 속성을 지정하는 인스턴스 템플릿을 아직 만들지 않았으면 인스턴스 템플릿을 만듭니다.
리전 MIG를 만들려면
google_compute_region_instance_group_manager
리소스를 사용합니다.리전 MIG에서 사전 인스턴스 재분산을 중지하려면
update_policy
블록을 포함하고instance_redistribution_type
필드를NONE
으로 설정합니다.Terraform 구성을 적용하거나 삭제하는 방법은 기본 Terraform 명령어를 참조하세요.
REST
사전 인스턴스를 재분산하지 않고 자동 확장되지 않는 리전 MIG를 만들려면
regionInstanceGroupManagers.insert
메서드에POST
요청을 수행합니다. 요청 본문에updatePolicy
속성을 포함하고instanceRedistributionType
필드를NONE
으로 설정합니다.POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/INSTANCE_GROUP_NAME { "name": "INSTANCE_GROUP_NAME", "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE_NAME", "targetSize": TARGET_SIZE, "distributionPolicy": { "zones": [ {"zone": "zones/ZONE"}, {"zone": "zones/ZONE"} ] }, "updatePolicy": { "instanceRedistributionType": "NONE" } }
다음을 바꿉니다.
사전 인스턴스 재분산 중지
사전 인스턴스 재분산을 사용 중지하거나 다시 사용 설정하려면 Google Cloud 콘솔, gcloud CLI, REST를 사용합니다.
콘솔
gcloud
사전 인스턴스 재분산을 중지하려면 다음과 같이 명령어를 사용하여
--instance-redistribution-type
플래그를NONE
로 설정합니다.다음을 바꿉니다.
REST
사전 인스턴스 재분산을 중지하려면 다음과 같이 메서드를 사용하여
instanceRedistributionType
필드를NONE
으로 설정합니다.다음을 바꿉니다.
사전 인스턴스 재배포 사용 설정
사전 인스턴스 재분산을 사용 설정하려면 사전 인스턴스 재분산 중지와 유사한 명령어를 사용하되 인스턴스 재분산 유형을
PROACTIVE
로 설정합니다.일부 관리형 인스턴스를 수동으로 삭제하거나 폐기하여 리전에서 VM이 불균일하게 분배되는 경우 사전 인스턴스 재분산을 다시 사용 설정하려면 먼저 그룹을 수동으로 재조정해야 합니다. 두 영역의 VM 수가 VM 1개 넘게 차이가 나면 안 됩니다.
리전 MIG에서는 VM이 여러 영역에 균일하지 않게 분배되어 있으면(두 영역의 VM 수가 VM 2개 이상 차이 나는 경우) 사전 인스턴스 재분산을 사용 설정할 수 없습니다. 이는 VM이 더 많이 있는 영역에서 의도하지 않은 VM 자동 삭제를 방지하기 위함이며 균일하게 분배되도록 트리거됩니다.
다음 단계
달리 명시되지 않는 한 이 페이지의 콘텐츠에는 Creative Commons Attribution 4.0 라이선스에 따라 라이선스가 부여되며, 코드 샘플에는 Apache 2.0 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 Google Developers 사이트 정책을 참조하세요. 자바는 Oracle 및/또는 Oracle 계열사의 등록 상표입니다.
최종 업데이트: 2024-11-21(UTC)
-