인스턴스 그룹

인스턴스 그룹은 단일 항목으로 관리할 수 있는 VM 인스턴스의 모음입니다.

Compute Engine은 두 종류의 VM 인스턴스 그룹을 제공합니다.

  • 관리형 인스턴스 그룹(MIG, Managed Instance Group)을 사용하면 여러 개의 동일한 VM에서 애플리케이션을 조작할 수 있습니다. 자동 확장, 자동 복구, 리전(다중 영역(zone)) 배포, 자동 업데이트를 포함한 자동화된 MIG 서비스를 사용하여 작업 부하를 확장 가능하게 만들고 작업 부하의 가용성을 높일 수 있습니다.
  • 비관리형 인스턴스 그룹을 사용하면 직접 관리하는 여러 VM 전체에 부하를 분산할 수 있습니다.

관리형 인스턴스 그룹(MIG)

관리형 인스턴스 그룹(MIG, Managed Instance Group)은 스테이트리스(stateless) 제공 작업 부하(예: 웹사이트 프런트엔드)와 배치, 고성능 또는 높은 처리량의 컴퓨팅 작업 부하(예: 대기열의 이미지 처리)에 적합합니다.

MIG의 각 VM 인스턴스는 인스턴스 템플릿에서 생성됩니다.

장점

MIG는 다음과 같은 이점을 제공합니다.

  • 고가용성
    • 인스턴스 실행 유지 - 그룹 내의 한 인스턴스가 인스턴스 그룹 관리 명령어(예: 의도적인 축소)가 아닌 작업으로 인해 중지되거나 다운되거나 삭제되면 MIG는 원래 인스턴스의 사양(동일한 인스턴스 이름, 동일한 템플릿)에 따라 자동으로 해당 인스턴스를 다시 생성하여 인스턴스가 작업을 재개할 수 있도록 합니다.
    • 자동 복구 - 애플리케이션 기반의 상태 확인을 이용하는 자동 복구 정책을 설정할 수도 있습니다. 이 상태 확인은 애플리케이션이 MIG의 각 인스턴스에서 예상대로 응답하는지를 주기적으로 확인합니다. 애플리케이션이 특정 인스턴스에서 응답하지 않으면 해당 인스턴스가 자동으로 다시 생성됩니다. 단순히 인스턴스가 실행 중인지를 확인하는 것보다 애플리케이션이 응답하는지를 확인하는 편이 더 정확합니다.
    • 리전(다중 영역(zone)) 범위 - 리전 관리형 인스턴스 그룹을 사용하면 애플리케이션 부하를 여러 영역(zone)에 분산할 수 있습니다. 이러한 복제 기능은 영역(zone) 오류로부터의 보호를 제공합니다. 영역(zone) 오류가 발생하더라도 애플리케이션은 동일한 리전의 사용 가능한 나머지 영역(zone)에서 실행 중인 인스턴스의 트래픽을 계속 처리할 수 있습니다.
    • 부하 분산 - 관리형 인스턴스 그룹은 부하 분산 서비스와 함께 작동하여 그룹의 모든 인스턴스에 트래픽을 분산합니다.
  • 확장성 - 애플리케이션이 추가 컴퓨팅 리소스를 필요로 하는 경우, 자동 확장된 MIG가 그룹의 인스턴스 수를 자동으로 늘려서 요구사항을 충족합니다. 요구사항이 감소하면 자동 확장된 MIG가 비용 절감을 위해 자동으로 축소됩니다.
  • 자동화된 업데이트 - 관리형 인스턴스 그룹 자동 업데이트 프로그램을 사용하면 MIG의 인스턴스에 새로운 버전의 소프트웨어를 쉽고 안전하게 배포할 수 있으므로 롤링 업데이트, 카나리아 업데이트와 같은 유연한 롤아웃 시나리오를 지원합니다. 배포 속도와 범위는 물론 서비스 중단 수준을 제어할 수 있습니다.
MIG 기능과 일반적인 작업 부하의 개요

자동 복구

관리형 인스턴스 그룹은 사전에 인스턴스를 사용할 수 있도록, 즉 RUNNING 상태로 유지하여 애플리케이션의 고가용성을 보장합니다. 관리형 인스턴스 그룹은 RUNNING 상태가 아닌 인스턴스를 자동으로 다시 생성합니다. 하지만 인스턴스 상태를 이용하는 것만으로는 부족할 수 있습니다. 애플리케이션이 중단되거나, 다운되거나, 메모리가 부족하면 인스턴스를 다시 만들어야 할 수도 있습니다.

애플리케이션 기반 자동 복구는 중단, 충돌, 과부하 등 애플리케이션 문제를 감지하는 상태 확인 신호를 이용해 애플리케이션 가용성을 개선합니다. 상태 확인을 통해 애플리케이션이 인스턴스에서 실패했음이 확인되면 그룹에서 해당 인스턴스를 자동으로 다시 만듭니다.

상태 확인

관리형 인스턴스 그룹을 모니터링하는 데 사용되는 상태 확인은 몇 가지 동작의 차이를 제외하고 부하 분산에 사용되는 상태 확인과 비슷합니다. 부하 분산 상태 확인은 트래픽을 무응답 인스턴스가 아닌 정상 인스턴스로 보내기 때문에 Compute Engine이 인스턴스를 다시 만들 필요 없습니다. 반면에 관리형 인스턴스 그룹 상태 확인UNHEALTHY 상태가 된 인스턴스를 삭제한 후 다시 생성하도록 신호를 보냅니다.

대부분의 시나리오에서 부하 분산과 자동 복구에 별도의 상태 확인을 사용하세요. 부하 분산 상태 확인은 인스턴스가 사용자 트래픽을 수신하는지 여부를 확인하므로 더 엄격하게 설정할 수 있으며 엄격해야 합니다. 고객이 서비스에 의존할 수 있으므로, 필요한 경우 트래픽을 리디렉션할 수 있도록 응답이 없는 인스턴스를 신속하게 파악해야 합니다. 반면, 자동 복구를 위한 상태 확인을 사용하면 장애가 발생하는 인스턴스를 MIG가 사전에 교체하므로 이 상태 확인은 부하 분산 상태 확인보다 보수적이어야 합니다.

자세한 내용은 관리형 인스턴스 그룹을 위한 상태 확인 및 자동 복구 설정을 참조하세요.

리전 또는 영역(zonal) 그룹

두 가지 유형의 관리형 인스턴스 그룹을 만들 수 있습니다.

두 가지 유형 모두 관리형 인스턴스 그룹의 모든 장점을 제공합니다. 리전 MIG는 애플리케이션 부하를 여러 영역(zone)에 분산시켜 보다 높은 가용성을 제공함으로써 영역(zonal) 오류로부터 작업 부하를 보호하며, 리전 MIG는 리전 그룹당 최대 2,000개의 인스턴스로 더 많은 용량을 제공합니다.

부하 분산

GCP 부하 분산은 인스턴스 그룹을 사용하여 트래픽을 처리할 수 있습니다. 선택한 부하 분산기의 유형에 따라 인스턴스 그룹을 대상 풀 또는 백엔드 서비스에 추가할 수 있습니다.

자세한 정보는 부하 분산기에 관리형 인스턴스 그룹 추가를 참조하세요.

자동 확장

관리형 인스턴스 그룹은 부하의 증가 또는 감소에 대응하여 인스턴스를 동적으로 추가하거나 관리형 인스턴스 그룹에서 제거하는 자동 확장을 지원합니다. 자동 확장 기능을 사용 설정하고 그룹을 확장하는 방법을 지정하는 자동 확장 정책을 구성합니다. 자동 확장 정책으로는 CPU 사용률, 부하 분산 용량 또는 Stackdriver 모니터링 측정항목을 기반으로 한 확장이나 Google Cloud Pub/Sub와 같은 대기열 기반 작업 부하를 기준으로 한 확장이 있습니다.

자세한 내용은 인스턴스 그룹 자동 확장을 참조하세요.

자동 업데이트

새로운 버전의 소프트웨어를 관리형 인스턴스 그룹의 인스턴스에 쉽고 안전하게 배포할 수 있습니다. 업데이트 롤아웃은 사양에 따라 자동으로 수행됩니다. 애플리케이션의 중단을 최소화하기 위해 업데이트 롤아웃의 속도와 범위를 제어할 수 있습니다. 카나리아 테스트를 허용하는 부분 롤아웃을 선택적으로 수행할 수 있습니다.

관리형 인스턴스 그룹 업데이트를 참조하세요.

선점형 인스턴스의 그룹

실행 속도보다 최소 비용이 중요한 작업 부하의 경우, 인스턴스 그룹에서 선점형 VM 인스턴스를 사용하여 작업 부하 비용을 절감할 수 있습니다. 선점형 인스턴스는 최대 24시간 동안 지속되며 정상적으로 선점됩니다. 애플리케이션을 올바르게 종료하는 데 30초가 걸립니다. 선점형 인스턴스는 언제든지 삭제할 수 있지만, 선점 가능한 용량을 다시 사용할 수 있게 되면 자동 복구를 통해 인스턴스가 복구됩니다.

컨테이너

관리되는 인스턴스 그룹의 인스턴스에 컨테이너를 배포하여 애플리케이션 배포를 간소화할 수 있습니다. 인스턴스 템플릿에 컨테이너 이미지를 지정한 다음 이 템플릿을 사용하여 관리형 인스턴스 그룹을 만들면 Docker가 포함된 컨테이너 최적화 OS로 각 인스턴스가 생성되고, 그룹의 각 인스턴스에서 컨테이너가 자동으로 시작됩니다. VM 및 관리형 인스턴스 그룹에 컨테이너 배포를 참조하세요.

네트워크

기본적으로 그룹의 인스턴스는 default 네트워크에 배치되며, 리전 범위에서 임의의 IP 주소가 할당됩니다. 또는 더 작은 IP 범위를 사용하는 커스텀 모드 VPC 네트워크와 서브넷을 만든 다음 이 서브넷을 인스턴스 템플릿에 지정하여 그룹의 IP 범위를 제한할 수 있습니다.

MIG 기능의 데모

GCP NEXT '18에서 녹화된 다음 45분짜리 동영상 프레젠테이션에는 Compute Engine 관리형 인스턴스 그룹을 사용하여 확장 가능하고 가용성이 높은 배포를 설정, 실행, 업데이트하는 데모와 관련 권장사항이 포함되어 있습니다.

관리형 인스턴스 그룹에 컨테이너를 배포하고, 자동 복구 정책을 설정하고, 영역(zonal) 오류로부터 보호하기 위한 리전 그룹을 사용하고, CPU 목표와 대기열 기반 요구사항을 충족하기 위해 자동 확장을 구성하고, 카나리아 및 롤링 업데이트를 관리하는 방법을 살펴봅니다.

비관리형 인스턴스 그룹

비관리형 인스턴스 그룹에는 그룹에서 임의로 추가하거나 제거할 수 있는 이종 인스턴스가 포함될 수 있습니다. 비관리형 인스턴스 그룹은 자동 확장, 자동 복구, 롤링 업데이트 지원 또는 인스턴스 템플릿 사용을 제공하지 않으며, 가용성이 높고 확장 가능한 작업 부하를 배포하는 데는 적합하지 않습니다. 이종 인스턴스의 그룹에 부하 분산을 적용해야 하는 경우 또는 인스턴스를 직접 관리해야 하는 경우 비관리형 인스턴스 그룹을 사용하세요.

비관리형 인스턴스 그룹을 만들어야 하는 경우 비관리형 인스턴스 그룹을 참조하세요.

다음 단계

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

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

Compute Engine 문서