MIG 및 관리형 인스턴스에 대한 정보 보기


이 페이지의 메서드를 사용하여 관리형 인스턴스 그룹(MIG)에 대한 정보를 보고 각 MIG 내 가상 머신(VM) 인스턴스에 대한 정보를 봅니다.

시작하기 전에

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

    Select the tab for how you plan to use the samples on this page:

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. REST

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

        Install the Google Cloud CLI, then initialize it by running the following command:

        gcloud init

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

MIG에 대한 정보 보기

예를 들어 그룹에 연결된 정책을 검사하고 그룹이 안정적인지 또는 변경 중인지 확인하기 위해 그룹 자체에 대한 정보를 검색할 수 있습니다. MIG 내 VM 인스턴스에 대한 정보를 보려면 관리형 인스턴스에 대한 정보 보기를 참조하세요.

MIG 나열

관리형 인스턴스 그룹 목록을 가져오려면 콘솔, gcloud CLI, REST를 사용합니다.

  1. Google Cloud Console에서 인스턴스 그룹 페이지로 이동합니다.

    인스턴스 그룹으로 이동

    기존 인스턴스 그룹이 있는 경우 페이지에 관리형 인스턴스 그룹과 비관리형 인스턴스 그룹을 포함한 그룹이 나열됩니다.

    그룹 유형 열은 그룹이 관리형, 스테이트풀(Stateful) 또는 비관리형인지 지정합니다. 스테이트풀(Stateful) 그룹 유형도 관리형 인스턴스 그룹입니다.

프로젝트의 관리형 인스턴스 그룹을 모두 나열합니다.

gcloud compute instance-groups managed list

영역 MIG의 경우 instanceGroupManagers.list 메서드를 호출합니다.

GET https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/instanceGroupManagers

리전 MIG의 경우 regionInstanceGroupManagers.list 메서드를 호출합니다.

GET https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/instanceGroupManagers

MIG 속성 보기

해당 정책(예: 그룹의 자동 복구 및 업데이트 정책)을 비롯하여 특정 MIG에 대한 정보를 보려면 콘솔, gcloud CLI 또는 REST를 사용합니다.

그룹의 id 값을 보려면 gcloud CLI 또는 Compute Engine API를 사용해야 합니다.

이 태스크를 수행하려면 다음과 같은 권한이 있어야 합니다.

  • 인스턴스 그룹에 대한 compute.instanceGroupManagers.get 권한
  1. Google Cloud Console에서 인스턴스 그룹 페이지로 이동합니다.

    인스턴스 그룹으로 이동

    기존 인스턴스 그룹이 있으면 페이지에 나열됩니다. 비관리형 인스턴스 그룹도 이 페이지에 나열됩니다.

  2. 목록의 이름 열에서 알아보려는 인스턴스 그룹의 이름을 클릭합니다. 인스턴스 그룹 속성과 그룹에 포함된 인스턴스의 목록이 표시된 페이지가 열립니다.

  3. 세부정보를 클릭하여 그룹의 구성을 확인합니다.

특정 그룹에 대한 정보를 가져오려면 다음과 같이 입력합니다.

gcloud compute instance-groups managed describe instance-group \
    [--zone zone | --region region]

이 명령어는 연결된 정책을 포함하여 그룹에 대한 세부정보를 반환합니다.

--format 플래그를 사용하여 출력을 제한합니다. 예를 들어 다음 명령어는 그룹의 자동 확장 처리 구성만 반환합니다(존재하는 경우).

gcloud compute instance-groups managed describe instance-group --format="(autoscaler)"

영역 MIG의 경우 instanceGroupManagers.get 메서드를 호출합니다. 리전 MIG의 경우 regionInstanceGroupManagers.get 메서드를 호출합니다.

GET https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/instanceGroupManagers/instance-group

응답에는 연결된 정책(그룹의 자동 확장 정책 제외)을 포함하여 그룹에 대한 세부정보가 포함됩니다. 자동 확장은 MIG의 기능이지만 별도의 REST 리소스입니다.

자동 확장 정책

자동 확장 처리가 그룹에 연결된 경우 자동 확장 처리 리소스는 그룹의 status.autoscaler 필드에 나열됩니다.

자동 확장 처리에 대한 정보를 가져오려면 영역 MIG의 경우 autoscalers.get 메서드, 리전 MIG의 경우 regionAutoscalers.get 메서드를 호출합니다. 자동 확장 처리 리소스의 URL은 기본적으로 자동 확장 처리가 연결된 그룹의 이름입니다. 예를 들어 리전 MIG의 자동 확장 처리에 대해 다음 요청을 수행할 수 있습니다.

GET https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/regionAutoscalers/mig_name

MIG가 안정적인지 확인

여러 명령어와 요청을 통해 관리형 인스턴스 그룹의 인스턴스를 만들고 삭제하고 수정할 수 있습니다. 그룹에서 인스턴스를 만들거나 삭제하거나 업데이트하는 작업을 예약하면 해당 작업이 DONE으로 반환됩니다. 하지만 이러한 기본 작업이 완료될 때까지는 그룹의 인스턴스가 생성, 삭제 또는 업데이트된 것이 아닙니다. 그룹의 상태를 확인하거나 해당 인스턴스의 상태를 확인해야 합니다.

관리형 인스턴스 그룹은 관리형 인스턴스 그룹의 모든 인스턴스 중 변경 중인 인스턴스가 없거나 인스턴스에 더 이상 일정 변경이 없거나 그룹 자체가 수정되지 않았을 때 안정적입니다.

정상적으로 처리되는 그룹의 모든 인스턴스에 의존하는 종속 항목이 있을 때 그룹이 안정적인지 여부를 확인해야 할 수 있습니다. 예를 들어 모든 VM이 실행 중이고 정상인지 확인한 후 작업 예약, 트래픽 전송 또는 키 범위 할당을 시작해야 할 수 있습니다.

그룹의 status.isStable 필드 값을 확인하여 관리형 인스턴스 그룹의 모든 인스턴스가 실행 중이고 정상 상태인지 확인합니다.

describe 명령어를 사용합니다.

gcloud compute instance-groups managed describe instance-group-name \
    [--zone zone | --region region]

gcloud CLI는 status.isStable 필드를 포함하여 MIG에 대한 자세한 정보를 반환합니다.

MIG가 안정화될 때까지 스크립트를 일시중지하려면 wait-until 명령어와 함께 --stable 플래그를 사용합니다. 예를 들면 다음과 같습니다.

gcloud compute instance-groups managed wait-until instance-group-name \
    --stable \
    [--zone zone | --region region]
Waiting for group to become stable, current operations: deleting: 4
Waiting for group to become stable, current operations: deleting: 4
...
Group is stable

명령어는 MIG에 대해 status.isStabletrue로 설정된 후 반환됩니다.

영역 MIG의 경우 instanceGroupManagers.get 메서드에 GET 요청을 수행합니다.

GET https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/instanceGroupManagers/instance-group-name/get

리전 관리형 인스턴스 그룹의 경우 zones/zoneregions/region으로 바꿉니다.

GET https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/instanceGroupManagers/instance-group-name/get

이러한 요청은 status.isStable 필드를 포함하여 MIG에 대한 자세한 정보를 반환합니다.

status.isStablefalse로 설정되면 변경사항이 활성 또는 대기 중 상태이거나 MIG 자체가 수정 중임을 나타냅니다.

status.isStabletrue로 설정되면 다음을 나타냅니다.

  • MIG의 인스턴스 중 변경 중인 인스턴스가 없으며, 모든 인스턴스의 currentActionNONE입니다.
  • MIG의 인스턴스에 대기 중인 변경사항이 없습니다.
  • MIG 자체가 수정되지 않습니다.

MIG는 다양한 방법으로 수정할 수 있으므로 MIG의 안정성은 여러 요소에 따라 달라집니다. 예를 들면 다음과 같습니다.

  • 새 인스턴스 템플릿의 출시를 요청합니다.
  • MIG의 인스턴스를 생성, 삭제, 크기 조절 또는 업데이트하는 요청을 실행합니다.
  • 자동 확장 처리가 MIG의 크기 조절을 요청합니다.
  • 자동 복구 리소스가 MIG에 속한 하나 이상의 비정상 인스턴스를 교체합니다.
  • 리전 MIG에 속한 인스턴스 중 일부가 재배포됩니다.

모든 작업이 완료되면 해당 MIG에 대한 status.isStable이 다시 true로 설정됩니다.

개별 VM 인스턴스의 경우에는 관리형 인스턴스의 상태 확인을 참조하세요.

MIG에서 VM 복구가 사용 중지되었는지 확인

MIG에서 VM 복구가 사용 중지되었는지 확인하려면 콘솔, gcloud CLI 또는 API를 사용합니다.

이 태스크를 수행하려면 다음과 같은 권한이 있어야 합니다.

  • 인스턴스 그룹에 대한 compute.instanceGroupManagers.get 권한
  • 인스턴스 그룹에 대한 compute.instanceGroupManagers.list 권한
  1. Google Cloud 콘솔에서 인스턴스 그룹 페이지로 이동합니다.

    인스턴스 그룹으로 이동

  2. 보려는 인스턴스 그룹의 이름을 클릭합니다. 인스턴스 그룹 속성과 그룹에 포함된 인스턴스의 목록이 표시된 페이지가 열립니다.
  3. 세부정보 탭을 클릭합니다.
  4. VM 인스턴스 수명 주기 섹션에서 실패 시 기본 작업 필드를 선택합니다. 값이 No action이면 MIG에서 복구가 사용 중지된 것입니다.

다음과 같이 describe 메서드를 사용합니다.

gcloud compute instance-groups managed describe instance-group \
    --format="(instanceLifecyclePolicy)"

응답 본문에서 defaultActionOnFailure 필드를 확인합니다. 사용 가능한 값은 다음과 같습니다.

  • REPAIR: MIG가 동일한 영역에서 실패했거나 비정상 상태인 VM을 다시 만듭니다.
  • DO_NOTHING: MIG에서 복구가 사용 중지됩니다. MIG는 그룹의 실패 또는 비정상 VM에 대해 아무런 조치도 취하지 않습니다.

다음은 MIG가 VM을 다시 만들어 복구했음을 나타내는 샘플 출력입니다.

instanceLifecyclePolicy:
  defaultActionOnFailure: REPAIR
  forceUpdateOnRepair: NO

영역 MIG의 경우에는 instanceGroupManagers.get 메서드를 사용하고 리전 MIG의 경우에는 regionInstanceGroupManagers.get 메서드를 사용합니다.

영역 MIG의 VM 실패에 대한 MIG 작업을 보려면 다음 호출을 수행합니다.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP

응답 본문에서 instanceLifecyclePolicy.defaultActionOnFailure 필드를 확인합니다. 사용 가능한 값은 다음과 같습니다.

  • REPAIR: MIG가 동일한 영역에서 실패했거나 비정상 상태인 VM을 다시 만듭니다.
  • DO_NOTHING: MIG에서 복구가 사용 중지됩니다. MIG는 그룹의 실패 또는 비정상 VM에 대해 아무런 조치도 취하지 않습니다.

다음은 MIG가 VM을 다시 만들어 복구했음을 나타내는 샘플 응답입니다.

"instanceLifecyclePolicy": {
  "forceUpdateOnRepair": "NO",
  "defaultActionOnFailure": "REPAIR"
}

MIG에서 그룹의 실패 또는 비정상 VM을 복구하지 않으려면 MIG에서 복구를 사용 중지하면 됩니다.

이전 자동 복구 작업 보기

자동 복구를 구성한 경우 이전의 자동 복구 이벤트를 볼 수 있습니다.

순차적 업데이트 모니터링

순차적 업데이트를 시작한 후 업데이트가 언제 완료되는지 알고 싶은 경우 업데이트 모니터링하기를 참조하세요.

스테이트풀(Stateful) 구성 보기

스테이트풀(Stateful) MIG를 구성하고 이 구성을 검토하려면 스테이트풀(Stateful) 구성 보기를 참조하세요.

MIG 내 관리형 VM 인스턴스에 대한 정보 보기

MIG 관리형 인스턴스 나열

상태 및 템플릿을 비롯한 그룹의 관리형 인스턴스 목록을 가져오려면 Console, gcloud CLI, REST를 사용합니다.

이 태스크를 수행하려면 다음과 같은 권한이 있어야 합니다.

  • 인스턴스 그룹에 대한 compute.instanceGroupManagers.get 권한
  • 인스턴스 그룹에 대한 compute.instanceGroupManagers.list 권한
  1. Google Cloud Console에서 인스턴스 그룹 페이지로 이동합니다.

    인스턴스 그룹으로 이동

    기존 인스턴스 그룹이 있으면 페이지에 나열됩니다. 비관리형 인스턴스 그룹도 이 페이지에 나열됩니다.

  2. 목록의 이름 열에서 알아보려는 인스턴스 그룹의 이름을 클릭합니다. 인스턴스 그룹 속성과 그룹에 포함된 인스턴스의 목록이 표시된 페이지가 열립니다.

gcloud CLI list-instances 하위 명령어를 사용합니다.

gcloud compute instance-groups managed list-instances instance-group \
    [--zone zone | --region region]

이 명령어는 인스턴스 목록과 인스턴스의 현재 상태, 인스턴스 템플릿, 마지막 오류 등의 세부정보를 반환합니다.

영역 MIG의 경우 instanceGroupManagers.listManagedInstances 메서드에 GET 요청을 작성하고 특정 관리형 인스턴스 그룹 이름을 포함합니다.

GET https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/instanceGroupManagers/instance-group

리전(다중 영역) 관리형 인스턴스 그룹의 경우 regionInstanceGroupManagers 리소스(regionInstanceGroupManagers.list)를 대신 사용합니다.

GET https://compute.googleapis.com/compute/v1/projects/project-id/regions/region/instanceGroupManagers/instance-group

응답에는 인스턴스 목록과 인스턴스의 현재 상태 및 인스턴스 템플릿 등의 세부정보가 포함됩니다.

관리형 인스턴스의 상태 확인

여러 명령어와 요청을 통해 관리형 인스턴스 그룹의 인스턴스를 만들고 삭제하고 수정할 수 있습니다. 그룹에서 인스턴스를 만들거나 삭제하거나 업데이트하는 작업을 예약하면 해당 작업이 DONE으로 반환됩니다. 하지만 이러한 기본 작업이 완료될 때까지는 그룹의 인스턴스가 생성, 삭제 또는 업데이트된 것이 아닙니다. 인스턴스의 상태를 확인하거나 그룹 자체의 상태를 확인해야 합니다.

Google Cloud CLI 또는 REST를 사용하여 관리형 인스턴스 그룹의 인스턴스에 대한 세부정보를 확인합니다. 세부정보에는 그룹이 해당 인스턴스에서 수행하는 인스턴스 상태 및 현재 작업이 포함됩니다.

이 태스크를 수행하려면 다음과 같은 권한이 있어야 합니다.

  • 그룹에 대한 compute.instanceGroupManagers.get 권한
  • 그룹에 대한 compute.instanceGroupManagers.list 권한

모든 관리형 인스턴스

그룹의 모든 인스턴스에 대해 상태 및 현재 작업을 확인하려면 list-instances 명령어를 사용합니다.

gcloud compute instance-groups managed list-instances INSTANCE_GROUP_NAME \
    [--zone=ZONE | --region=REGION]

이 명령어는 상태, 현재 작업, 기타 세부정보를 포함하여 그룹에 있는 인스턴스 목록을 반환합니다.

NAME               ZONE           STATUS   HEALTH_STATE  ACTION  INSTANCE_TEMPLATE  VERSION_NAME  LAST_ERROR
vm-instances-9pk4  us-central1-f                          CREATING  my-new-template
vm-instances-h2r1  us-central1-f  STOPPING                DELETING  my-old-template
vm-instances-j1h8  us-central1-f  RUNNING                 NONE      my-old-template
vm-instances-ngod  us-central1-f  RUNNING                 NONE      my-old-template

상태 확인을 설정하지 않으면 HEALTH_STATE 열은 비어 있습니다.

특정 관리형 인스턴스

그룹에서 특정 인스턴스의 상태 및 현재 작업을 확인하려면 describe-instance 명령어를 사용합니다.

gcloud compute instance-groups managed describe-instance INSTANCE_GROUP_NAME \
    --instance INSTANCE_NAME \
    [--zone=ZONE | --region=REGION]

이 명령어는 인스턴스 상태, 현재 작업, 스테이트풀(Stateful) MIG의 예약 상태를 포함하여 인스턴스에 대한 세부정보를 반환합니다.

currentAction: NONE
id: '6789072894767812345'
instance: https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/instances/example-mig-hz41
instanceStatus: RUNNING
name: example-mig-hz41
preservedStateFromConfig:
  metadata:
    example-key: example-value
preservedStateFromPolicy:
  disks:
    persistent-disk-0:
      autoDelete: NEVER
      mode: READ_WRITE
      source: https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-a/disks/example-mig-hz41
version:
  instanceTemplate: https://www.googleapis.com/compute/v1/projects/example-project/global/instanceTemplates/example-template

리전별 또는 영역별 MIG 리소스에서 listManagedInstances 메서드를 호출합니다. 예를 들어 영역 MIG 리소스에서 인스턴스에 대한 세부정보를 보려면 다음 요청을 수행합니다.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/INSTANCE_GROUP_NAME/listManagedInstances

이 호출은 각 인스턴스의 instanceStatuscurrentAction을 비롯한 MIG의 인스턴스 목록을 반환합니다.

{
 "managedInstances": [
  {
   "instance": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-f/instances/vm-instances-prvp",
   "id": "5317605642920955957",
   "instanceStatus": "RUNNING",
   "instanceTemplate": "https://www.googleapis.com/compute/v1/projects/example-project/global/instanceTemplates/example-template",
   "currentAction": "REFRESHING"
  },
  {
   "instance": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-f/instances/vm-instances-pz5j",
   "currentAction": "DELETING"
  },
  {
   "instance": "https://www.googleapis.com/compute/v1/projects/example-project/zones/us-central1-f/instances/vm-instances-w2t5",
   "id": "2800161036826218547",
   "instanceStatus": "RUNNING",
   "instanceTemplate": "https://www.googleapis.com/compute/v1/projects/example-project/global/instanceTemplates/example-template",
   "currentAction": "REFRESHING"
  }
 ]
}

유효한 instanceStatus 필드 값 목록을 보려면 VM 인스턴스 수명 주기를 참조하세요.

인스턴스를 변경 중이면 관리형 인스턴스 그룹이 인스턴스의 currentAction 필드를 다음 작업 중 하나로 설정하여 변경 상태를 추적할 수 있게 합니다. 그렇지 않으면 currentAction 필드가 NONE으로 설정됩니다.

가능한 currentAction 값은 다음과 같습니다.

  • ABANDONING: 인스턴스가 MIG에서 삭제되고 있습니다.
  • CREATING: 인스턴스를 만드는 중입니다.
  • CREATING_WITHOUT_RETRIES: 인스턴스가 재시도 없이 생성되고 있습니다. 첫 번째 시도에서 인스턴스가 생성되지 않은 경우에도 MIG는 인스턴스를 다시 교체하지 않습니다.
  • DELETING: 인스턴스가 삭제되고 있습니다.
  • RECREATING: 인스턴스를 교체하는 중입니다.
  • REFRESHING: 인스턴스가 현재 대상 풀에서 삭제되고 현재 대상 풀 목록에 다시 추가되는 중입니다. 이 목록은 기존 대상 풀과 동일하거나 다를 수 있습니다.
  • RESTARTING: 인스턴스가 stopstart 메서드를 사용하여 다시 시작되고 있습니다.
  • RESUMING: 인스턴스가 정지된 후 재개되는 중입니다.
  • STARTING: 인스턴스가 중지된 후 시작하는 중입니다.
  • STOPPING: 인스턴스가 중지되는 중입니다.
  • SUSPENDING - 인스턴스를 일시정지하는 중입니다.
  • VERIFYING: 인스턴스가 생성되었으며 확인되고 있습니다.
  • NONE: 인스턴스에서 수행 중인 작업이 없습니다.

그룹 전체가 안정적인지 또는 변경 중인지 확인하려면 그룹 상태 확인을 참조하세요.

상태 확인

관리형 인스턴스 그룹에 자동 복구를 구성한 경우 각 VM의 상태를 확인할 수 있습니다. 상태 확인을 참조하세요.

인스턴스 오류 나열

관리형 인스턴스에서 오류가 발생하면 오류를 확인하여 원인을 진단하고 완화할 수 있습니다.

Google Cloud 콘솔, gcloud CLI, REST를 사용하여 오류를 나열합니다.

  1. Google Cloud 콘솔에서 인스턴스 그룹 페이지로 이동합니다.

    인스턴스 그룹으로 이동

  2. 목록의 이름 열에서 알아보려는 인스턴스 그룹의 이름을 클릭합니다. 인스턴스 그룹 속성과 그룹에 포함된 인스턴스의 목록이 표시된 페이지가 열립니다.

  3. 오류를 클릭합니다.

instance-groups managed list-errors 명령어를 사용하여 그룹의 최신 오류를 나열합니다.

gcloud compute instance-groups managed list-errors instance-group-name \
    [--zone zone | --region region]

예를 들면 다음과 같습니다.

gcloud compute instance-groups managed list-errors example-group \
    --region us-west1
INSTANCE_URL                                                                                        ACTION    ERROR_CODE      ERROR_MESSAGE                                                                                     TIMESTAMP                      INSTANCE_TEMPLATE                                                                                                            VERSION_NAME

https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/igm-1-v0hl  CREATING  QUOTA_EXCEEDED  Instance 'igm-1-v0hl' creation failed: Quota 'CPUS' exceeded.  Limit: 1.0 in zone us-central1-a.  2019-07-11T07:44:40.156-07:00  https://www.googleapis.com/compute/v1/projects/my-project/global/instanceTemplates/instance-template-1
https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/igm-1-qp3d  CREATING  QUOTA_EXCEEDED  Instance 'igm-1-qp3d' creation failed: Quota 'CPUS' exceeded.  Limit: 1.0 in zone us-central1-a.  2019-07-11T07:44:40.081-07:00  https://www.googleapis.com/compute/v1/projects/my-project/global/instanceTemplates/instance-template-1
...

영역 또는 리전 관리형 인스턴스 그룹listErrors 메서드에 대한 GET 요청을 작성합니다.

예를 들면 다음과 같습니다.

GET https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/instanceGroupManagers/instance-group-name/listErrors&maxResults=100

요청을 실행하면 다음과 비슷한 응답이 반환됩니다.

{
 "items": [
  {
   "error": {
    "code": "QUOTA_EXCEEDED",
    "message": "Instance 'example-mig-m1sz' creation failed: Quota 'CPUS' exceeded.  Limit: 50.0 in zone us-central1-c."
   },
   "timestamp": "2019-01-03T18:47:28.457-08:00",
   "instanceDetails" : {
    "instance": "zones/us-central1-c/instances/example-mig-m1sz",
    "action": "CREATING",
    "version": {
     "name": "example-version-name",
     "instanceTemplate": "global/instanceTemplates/example-template",
    }
   }
  }
 ],
 ...
 "nextPageToken": "Ch0yMDE5LTA3LTI5VDExOjA4OjA2LjYxMi0wNzowMBJ5aHR0cHM6Ly93d3cuZ29vZ2xlYXBpcy5jb20vY29tcHV0ZS9zdGFnaW5nX2FscGhhL3Byb2plY3RzL215cnpha2VyZXltcy1zdGFnaW5nL3pvbmVzL3VzLWNlbnRyYWwxLWlyMS9pbnN0YW5jZXMvaWdtLTEtcXAzZA=="
}

listErrors API는 목록 페이지 나누기를 지원합니다. 결과의 다음 페이지를 가져오려면 이후 요청의 한 응답에서 nextPageToken 필드를 사용합니다. 예를 들면 GET https://compute.googleapis.com/compute/v1/projects/project-id/zones/zone/instanceGroupManagers/instance-group-name/listErrors&maxResults=100&nextPageToken=next-page-token입니다. 여기서 next-page-token을 이전 응답에서 가져온 토큰으로 바꿉니다.

발생 가능한 오류 목록에 포함되지만 이에 제한되지 않는 예시는 다음과 같습니다.

  • 다음과 같은 이유로 새 인스턴스를 만들 수 없는 경우:
    • 선점 가능한 용량을 사용할 수 없음
    • 할당량 부족(예: 특정 리전의 CPU)
    • 그룹과 연결된 네트워크의 VM 인스턴스 수 한도에 도달
    • 인스턴스 템플릿의 properties.disks[].initializeParams.sourceImage 필드에 지정된 디스크 이미지가 삭제되었거나 권한이 변경되었음
    • 프로젝트와 연결된 결제 계정에서 신용카드 결제가 거부됨
  • 다음과 같은 이유로 인해 기존 인스턴스를 삭제할 수 없는 경우:
    • 그룹에서 사용하는 서비스 계정에 compute.instances.delete 권한이 없는 경우
    • 동시 삭제 요청이 너무 많아 비율 제한을 초과한 경우
  • 대상 풀이 삭제되어 대상 풀에 인스턴스를 추가할 수 없는 경우

이러한 오류를 검사한 후에 완화할 수 있습니다. 예를 들면 다음과 같습니다.

  • 선점 가능한 용량이 있는 다른 영역으로 워크로드를 이동합니다.
  • 특정 리전에서 할당량 증가를 요청합니다.
  • 그룹에서 사용하는 서비스 계정에 compute.instances.delete 권한을 추가합니다.

관리형 인스턴스 그룹에서 트리거한 작업이 실패하면(예: 그룹의 크기를 늘리려고 할 때 자동 확장 처리에서 오류 발생) 그룹에서 이 작업을 즉시 재시도할 수 있습니다. 마지막 즉시 재시도가 실패하면 MIG에 오류가 기록되며 인스턴스 오류를 나열하여 오류를 볼 수 있습니다. 백오프 시간이 일부 지나면 그룹은 실패한 작업을 재시도합니다. 오류가 계속되면 여러 번 기록될 수 있습니다.

Compute Engine은 기본 인스턴스가 더 이상 존재하지 않거나 생성되지 않더라도 지난 8일 간의 최근 오류 500개를 보존합니다.

VM 인스턴스가 MIG의 일부인지 확인

특정 VM이 그룹의 구성원인지 확인하려면 콘솔 또는 REST를 사용하면 됩니다.

  1. Google Cloud 콘솔에서 VM 인스턴스 페이지로 이동합니다.

    VM 인스턴스로 이동

  2. VM 인스턴스 세부정보에 액세스할 인스턴스를 클릭합니다.
  3. VM 인스턴스가 관리형 인스턴스 그룹의 구성원인 경우 해당 관리형 인스턴스 그룹의 이름은 다음에서 사용 중 제목 아래에 나타납니다. VM 인스턴스가 그룹의 구성원이 아닌 경우에는 인스턴스 세부정보 페이지에 다음에서 사용 중 제목이 나타나지 않습니다.

VM 인스턴스에 대한 리퍼러 보기를 참조하세요.

또는 VM이 현재 관리형 인스턴스 그룹의 구성원이거나 과거에 구성원이었는지 식별하려면 인스턴스 메타데이터에서 다음 두 가지 메타데이터 키를 찾습니다.

  • instance-template은 VM을 만들 때 사용한 템플릿을 나타냅니다.
  • created-by는 VM을 만든 관리형 인스턴스 그룹을 나타냅니다.

인스턴스를 폐기해도 이 메타데이터 항목을 수동으로 삭제하지 않으면 이러한 항목이 VM에 남아 있습니다.

예를 들어 이름이 random-instance-biy인 VM이 관리형 인스턴스 그룹에 의해 생성되었는지 여부를 알고 싶으면 인스턴스를 설명하고 메타데이터 키를 찾으면 됩니다. 예를 들면 다음과 같습니다.

gcloud compute instances describe random-instance-biy \
    --zone us-central1-f

gcloud CLI는 다음과 비슷한 응답을 반환합니다.

canIpForward: false
cpuPlatform: Intel Ivy Bridge
creationTimestamp: '2016-08-24T14:11:38.012-07:00'
...
metadata:
  items:
  - key: instance-template
    value: projects/123456789012/global/instanceTemplates/example-it
  - key: created-by
    value: projects/123456789012/zones/us-central1-f/instanceGroupManagers/igm-metadata

관리형 인스턴스의 보존 상태 보기

스테이트풀(Stateful) MIG를 구성하고 각 관리형 인스턴스의 보존 상태를 보려면 스테이트풀(Stateful) 구성 및 보존 상태 보기를 참조하세요.

다음 단계