리전 MIG를 만들 때 MIG가 VM을 분산하는 영역을 하나 이상 선택합니다. 기본적으로 MIG의 VM에 오류가 발생하면 MIG는 원래 영역에서 해당 VM을 복구하려고 시도합니다. 선택적으로 MIG가 선택된 다른 영역 중 하나에서 해당 VM을 복구하도록 허용할 수 있습니다. 이는 MIG가 원래 영역에서 VM을 복구할 수 없는 경우에 유용합니다. MIG는 사용 가능한 용량과 할당량을 기준으로 대체 영역을 선택합니다.
제한사항
대체 영역에서 VM을 복구하도록 리전 MIG를 구성할 때는 다음 제한사항이 적용됩니다.
복구 시 업데이트를 사용 설정해야 합니다.
다음 구성이 있는 리전 MIG는 지원되지 않습니다.
EVEN또는ANY_SINGLE_ZONE목표 분산 형태가 있는 MIG스테이트풀(Stateful) 구성을 사용하는 MIG
시작하기 전에
-
아직 인증을 설정하지 않았다면 설정합니다.
인증은 서비스 및 API에 액세스하기 위해 ID를 확인합니다. Google Cloud 로컬 개발 환경에서 코드 또는 샘플을 실행하려면 다음 옵션 중 하나를 선택하여 Compute Engine에 인증하면 됩니다.
이 페이지의 샘플 사용 방법에 대한 탭을 선택하세요.
콘솔
콘솔을 사용하여 서비스 및 API에 액세스하는 경우 인증을 설정할 필요가 없습니다. Google Cloud Google Cloud
gcloud
-
Google Cloud CLI를 설치합니다. 설치 후 Google Cloud CLI를 초기화하려면 다음 명령어를 실행합니다.
gcloud init외부 ID 공급업체 (IdP)를 사용하는 경우 먼저 제휴 ID로 gcloud CLI에 로그인해야 합니다.
-
- 기본 리전 및 영역을 설정합니다.
-
Google Cloud CLI를 설치합니다.
-
외부 ID 공급업체 (IdP)를 사용하는 경우 먼저 제휴 ID로 gcloud CLI에 로그인해야 합니다.
-
로컬 셸을 사용하는 경우 사용자 계정에 대한 로컬 인증 사용자 인증 정보를 만듭니다. 사용자 계정에 대한 로컬 인증 사용자 인증 정보 만들기:
gcloud auth application-default login
Cloud Shell을 사용하는 경우 이 작업을 수행할 필요는 없습니다.
인증 오류가 반환되고 외부 ID 공급업체(IdP)를 사용하는 경우 제휴 ID로 gcloud CLI에 로그인했는지 확인합니다.
Terraform
로컬 개발 환경에서 이 페이지의 Terraform 샘플을 사용하려면 gcloud CLI를 설치하고 초기화한 후 사용자 인증 정보로 애플리케이션 기본 사용자 인증 정보를 설정합니다.
자세한 내용은 로컬 개발 환경의 인증 설정을 참고하세요.
REST
로컬 개발 환경에서 이 페이지의 REST API 샘플을 사용하려면 gcloud CLI에 제공한 사용자 인증 정보를 사용합니다.
Google Cloud CLI를 설치합니다.
외부 ID 공급업체 (IdP)를 사용하는 경우 먼저 제휴 ID로 gcloud CLI에 로그인해야 합니다.
자세한 내용은 인증 문서 의 REST 사용을 위한 인증을 참고하세요. Google Cloud
대체 영역에서 복구 허용
MIG가 대체 영역에서 VM을 복구하도록 허용하려면 다음 옵션 중 하나를 선택합니다.
콘솔
Google Cloud 콘솔에서 인스턴스 그룹 페이지로 이동합니다.
MIG가 이미 있으면 다음을 수행합니다.
- MIG의 이름을 클릭합니다.
- 수정 을 클릭합니다.
아직 MIG가 없으면 다음을 수행합니다.
- 인스턴스 그룹 만들기 를 클릭합니다.
- 이름 을 입력합니다.
- 인스턴스 템플릿 을 선택합니다.
- 위치 섹션에서 여러 영역을 선택한 후 리전과 영역을 선택합니다.
목표 분산 형태 드롭다운에서 균형 또는 모두 를 선택합니다.
균형 을 선택하면 대화상자가 나타나고 인스턴스 재분산 사용 중지 를 클릭합니다.
모두를 선택하려면 먼저 자동 확장 구성을 삭제해야 합니다. 자동 확장을 삭제하려면 자동 확장 모드 드롭다운에서 자동 확장 구성 삭제 를 클릭합니다.
VM 인스턴스 수명 주기 섹션에서 다음 필드가 다음과 같이 설정되어 있는지 확인합니다.
실패 시 기본 작업 목록이 인스턴스 복구 로 설정됩니다.
VM 인스턴스 복구 중 업데이트 가 인스턴스 구성 업데이트 로 설정됩니다.
VM 인스턴스 복구 중 영역 변경 섹션에서 대체 영역에서 VM 복구 허용 체크박스를 선택합니다.
다른 설정의 경우 기본값을 사용하거나 필드를 수정할 수 있습니다.
완료되면 기존 MIG의 경우에는 저장 을 또는 새 MIG의 경우에는 만들기 를 클릭합니다.
gcloud
대체 영역에서 VM을 복구하도록 기존 MIG를 구성하려면
베타 update 명령어를 사용합니다.
gcloud beta compute instance-groups managed update MIG_NAME \
--on-repair-allow-changing-zone=YES \
--force-update-on-repair \
--region=REGION
대체 영역에서 VM을 복구할 수 있는 MIG를 만들려면
베타 create 명령어를 사용합니다.
gcloud beta compute instance-groups managed create MIG_NAME \
--template=INSTANCE_TEMPLATE_URL \
--size=SIZE \
--zones=ZONES \
--target-distribution-shape=SHAPE \
--instance-redistribution-type=none \
--on-repair-allow-changing-zone=YES \
--force-update-on-repair
다음을 바꿉니다.
MIG_NAME: MIG 이름INSTANCE_TEMPLATE_URL: MIG에서 인스턴스를 만드는 데 사용할 인스턴스 템플릿의 URL URL에는 인스턴스 템플릿의 ID 또는 이름이 포함될 수 있습니다. 다음 값 중 하나를 지정합니다.- 리전 인스턴스 템플릿의 경우:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - 전역 인스턴스 템플릿의 경우:
INSTANCE_TEMPLATE_ID
- 리전 인스턴스 템플릿의 경우:
SIZE: MIG의 목표 크기ZONES: MIG에서 VM을 만들려는 리전의 영역 목록SHAPE: 목표 분산 형태 이 값은balanced또는any일 수 있습니다.REGION: MIG가 있는 리전
Terraform
MIG의 각 VM에 대해 원하는 머신 유형, 부팅 디스크 이미지, 네트워크, 기타 VM 속성을 지정하는 인스턴스 템플릿을 아직 만들지 않았으면 인스턴스 템플릿을 만듭니다.
대체 영역에서 VM을 복구할 수 있는 MIG를 만들려면
google_compute_region_instance_group_manager 리소스를 사용합니다.
Terraform 구성을 적용하거나 삭제하는 방법은 기본 Terraform 명령어를 참조하세요.
REST
대체 영역에서 VM을 복구하도록 기존 MIG를 구성하려면
베타 regionInstanceGroupManagers.patch 메서드를 사용합니다.
PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME
{
"instanceLifecyclePolicy": {
"onRepair": {
"allowChangingZone": "YES"
},
"forceUpdateOnRepair": "YES"
}
}
대체 영역에서 VM을 복구할 수 있는 MIG를 만들려면
베타 regionInstanceGroupManagers.insert 메서드를 사용합니다.
POST https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers
{
"name": "MIG_NAME",
"instanceTemplate": "INSTANCE_TEMPLATE_URL",
"targetSize": SIZE,
"distributionPolicy": {
"targetShape": "SHAPE"
}
"updatePolicy": {
"instanceRedistributionType": none
}
"instanceLifecyclePolicy": {
"forceUpdateOnRepair": "YES",
"onRepair": {
"allowChangingZone": "YES"
}
}
}
다음을 바꿉니다.
PROJECT_ID: 프로젝트 ID입니다.REGION: MIG가 있는 리전MIG_NAME: MIG 이름INSTANCE_TEMPLATE_URL: MIG에서 인스턴스를 만드는 데 사용할 인스턴스 템플릿의 URL URL에는 인스턴스 템플릿의 ID 또는 이름이 포함될 수 있습니다. 다음 값 중 하나를 지정합니다.- 리전 인스턴스 템플릿의 경우:
projects/PROJECT_ID/regions/REGION/instanceTemplates/INSTANCE_TEMPLATE_ID - 전역 인스턴스 템플릿의 경우:
INSTANCE_TEMPLATE_ID
- 리전 인스턴스 템플릿의 경우:
SIZE: MIG의 목표 크기SHAPE: 목표 분산 형태 이 값은BALANCED또는ANY일 수 있습니다.
대체 영역에서 복구 허용 안 함
대체 영역에서 VM을 복구하도록 MIG를 구성한 경우 MIG가 원래 영역에서 VM을 복구하는 기본 설정을 복원할 수 있습니다.
대체 영역에서 복구를 허용하지 않으려면 다음 옵션 중 하나를 선택합니다.
콘솔
Google Cloud 콘솔에서 인스턴스 그룹 페이지로 이동합니다.
MIG의 이름을 클릭합니다.
수정 을 클릭합니다.
VM 인스턴스 수명 주기 섹션으로 이동합니다.
VM 인스턴스 복구 중 영역 변경 섹션에서 대체 영역에서 VM 복구 허용 체크박스를 선택 해제합니다.
저장 을 클릭합니다.
gcloud
대체 영역에서 복구를 허용하지 않으려면
베타 update 명령어를 사용합니다:
gcloud beta compute instance-groups managed update MIG_NAME \
--on-repair-allow-changing-zone=NO \
--region=REGION
다음을 바꿉니다.
MIG_NAME: MIG 이름REGION: MIG가 있는 리전
REST
대체 영역에서 복구를 허용하지 않으려면
베타 regionInstanceGroupManagers.patch 메서드를 사용합니다.
PATCH https://compute.googleapis.com/compute/beta/projects/PROJECT_ID/regions/REGION/instanceGroupManagers/MIG_NAME
{
"instanceLifecyclePolicy": {
"onRepair": {
"allowChangingZone": "NO"
}
}
}
다음을 바꿉니다.
PROJECT_ID: 프로젝트 ID입니다.REGION: MIG가 있는 리전MIG_NAME: MIG 이름
다음 단계
- MIG에서 복구 구성 확인
- 관리형 인스턴스를 나열하여 VM의 영역 확인