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

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

시작하기 전에

MIG에 대한 정보 가져오기

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

MIG 나열

관리형 인스턴스 그룹 목록을 가져오려면 Console, gcloud 도구 또는 API를 사용합니다.

Console

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

    인스턴스 그룹 페이지로 이동

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

    관리형 인스턴스 그룹은 템플릿 열에 값이 있습니다.

gcloud

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

gcloud compute instance-groups managed list

API

영역 내의 모든 관리형 인스턴스 그룹을 나열하려면 instanceGroupManagers.list 메서드에 대한 GET 요청을 만듭니다.

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

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

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

MIG의 속성 가져오기

연결된 정책(예: 자동 복구 정책)을 비롯하여 특정 MIG에 대한 정보를 가져오려면 Console, gcloud 도구 또는 API를 사용합니다.

그룹의 id를 사용하려면 gcloud 도구 또는 API를 사용해야 합합니다.

Console

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

    인스턴스 그룹 페이지로 이동

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

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

gcloud

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

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

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

API

특정 그룹에 대한 정보를 가져오려면 instanceGroupManagers.get 메서드에 GET 요청을 실행하고 특정 관리형 인스턴스 그룹의 이름을 포함합니다.

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

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

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

응답에는 연결된 정책(자동 복구 정책 제외) 등의 세부정보가 포함됩니다.

자동 확장 처리에 대한 정보를 가져오려면 autoscalers.get 메서드에 GET 요청을 실행하고 특정 관리형 인스턴스 그룹 이름을 포함합니다.

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

리전(멀티 영역) 관리형 인스턴스 그룹의 경우 regionAutoscalers 리소스(regionAutoscalers.get)를 대신 사용합니다.

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

MIG가 안정적인지 확인하기

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

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

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

status.isStable 필드의 값을 확인하면 관리형 인스턴스 그룹이 실행 중이고 정상적인지 확인할 수 있습니다.

gcloud

인스턴스 그룹 describe 명령어를 사용합니다.

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

gcloud 도구는 status.isStable 필드를 비롯한 인스턴스 그룹에 대한 자세한 세부정보를 반환합니다.

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

gcloud beta 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

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

API

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

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

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

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

API가 status.isStable 필드를 비롯한 인스턴스 그룹에 대한 세부정보를 반환합니다.

status.isStablefalse로 설정되면 변경사항이 활성 또는 대기 중 상태이거나 관리형 인스턴스 그룹 자체가 수정 중임을 나타냅니다.

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

  • 관리형 인스턴스 그룹의 인스턴스 중 변경 중인 인스턴스가 없거나, 모든 인스턴스의 currentActionNONE입니다.
  • 관리형 인스턴스 그룹의 인스턴스에 대기 중인 변경사항이 없습니다.
  • 관리형 인스턴스 그룹 자체가 수정되지 않습니다.

관리형 인스턴스 그룹은 다양한 방법으로 변경할 수 있습니다. 예를 들면 다음과 같습니다.

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

모든 작업이 완료되면 이 관리형 인스턴스 그룹에 대한 status.isStable이 다시 true로 설정됩니다.

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

이전 자동 복구 작업 보기

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

순차적 업데이트 모니터링하기

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

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

MIG 관리형 인스턴스 나열

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

Console

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

    인스턴스 그룹 페이지로 이동

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

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

gcloud

gcloud 도구에서 list-instances 하위 명령어를 사용합니다.

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

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

API

영역 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으로 반환됩니다. 하지만 이러한 기본 작업이 완료될 때까지는 그룹의 인스턴스가 생성, 삭제 또는 업데이트된 것이 아닙니다. 인스턴스의 상태를 확인하거나 그룹 자체의 상태를 확인해야 합니다.

관리형 인스턴스 그룹에서 실행 중인 currentAction 및 각 인스턴스의 status를 보려면 gcloud 명령줄 도구 또는 API를 사용하면 됩니다.

gcloud

gcloud compute instance-groups managed list-instances instance-group-name \
[--filter="zone:(zone)" | --filter="region:(region)"]

gcloud는 인스턴스 그룹에 속한 인스턴스 목록뿐 아니라 각 인스턴스의 상태와 현재 작업을 반환합니다. 예를 들면 다음과 같습니다.

NAME               ZONE           STATUS    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

API

API에서 regionInstanceGroupManagers.listManagedInstances 메서드에 GET 요청을 실행합니다. 영역 관리형 인스턴스 그룹의 경우 instanceGroupManagers.listManagedInstances 메서드를 사용합니다.

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

API는 각 인스턴스의 instanceStatuscurrentAction을 비롯한 그룹의 인스턴스 목록을 반환합니다.

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

관리형 인스턴스 그룹의 각 인스턴스의 경우 인스턴스의 상태는 instanceStatus 필드로 설명됩니다. 유효한 instanceStatus 필드 값 목록을 보려면 인스턴스 상태 확인을 참조하세요.

인스턴스를 변경 중인 경우 변경 과정을 쉽게 추적할 수 있도록 다음 작업 중 하나를 통해 currentAction 필드도 채워집니다. 그렇지 않으면 currentAction 필드는 NONE입니다.

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

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

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

상태 확인

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

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

Console 또는 API를 사용하여 특정 인스턴스가 현재 그룹의 구성원인지 확인할 수 있습니다.

Console

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

    VM 인스턴스 페이지로 이동

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

API

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

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

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

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

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

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

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

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

다음 단계

이 페이지가 도움이 되었나요? 평가를 부탁드립니다.

다음에 대한 의견 보내기...

Compute Engine 문서