이 문서에서는 그룹 전체의 평균 CPU 사용률에 따라 VM을 자동으로 추가하고 삭제하는 자동 확장된 관리형 인스턴스 그룹(MIG)을 만드는 방법을 설명합니다. 예를 들어 그룹의 CPU 사용률이 낮으면 비용이 절감되도록 그룹에서 VM을 자동으로 삭제합니다.
다양한 종류의 자동 확장 신호를 기반으로 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.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
-
콘솔에서 인스턴스 그룹 페이지로 이동합니다.
나머지 단계는 Google Cloud 콘솔에 표시됩니다.
-
인스턴스 그룹이 있으면 인스턴스 그룹을 선택하고 수정을 클릭합니다. 인스턴스 그룹이 없으면
인스턴스 그룹 만들기 를 클릭합니다. - 새 인스턴스 그룹의 경우 이름을 할당한 후 인스턴스 그룹에 대한 인스턴스 템플릿을 선택하거나 새 항목을 만듭니다.
- 자동 확장 구성이 없으면 자동 확장에서 자동 확장 구성을 클릭합니다.
-
자동 확장 모드 에서 사용: 그룹에 인스턴스 추가 및 삭제를 선택하여 자동 확장을 사용 설정합니다. - 자동 확장 처리가 이 그룹에 만들 수 있는 인스턴스의 최소 및 최대 개수를 지정합니다.
-
자동 확장 측정항목 섹션에서 기존 CPU 사용률 측정항목이 아직 없으면 추가합니다.
-
측정항목 추가 를 클릭합니다. -
측정항목 유형 에서 CPU 사용률을 선택합니다. -
대상 CPU 사용률을 원하는 대로 입력합니다. 이 값은 백분율로 간주됩니다. 예를 들어 원하는 CPU 사용률이 75%이면
75
을 입력합니다. -
예측 자동 확장에서
사용 안함 을 선택합니다. 예측 자동 확장에 대한 자세한 내용과 워크로드에 적합한지 여부를 알아보려면 예측을 기준으로 확장을 참조하세요. - 완료를 클릭합니다.
-
- 초기화 기간을 사용하여 애플리케이션이 초기화되는 데 걸리는 시간을 자동 확장 처리에 알려주는 초기화 기간을 설정할 수 있습니다. 정확한 초기화 기간을 지정하면 자동 확장 처리 결정이 향상됩니다. 예를 들어 아직 초기화 중인 VM은 애플리케이션의 일반적인 사용량을 아직 나타내지 않을 수 있으므로, 수평 확장 시 자동 확장 처리는 이러한 VM의 데이터를 무시합니다. 기본 초기화 기간은 60초입니다.
- MIG를 만들려면
만들기 를 클릭합니다. - 자동 확장 및 자동 확장 정책에 추가할 수 있는 다양한 종류의 확장 신호에 대해 자세히 알아보세요.
- 자동 확장 처리 관리를 읽어보세요.
- 애플리케이션 기반 자동 복구를 설정하여 MIG의 각 VM에서 애플리케이션이 정상적으로 응답하는지 정기적으로 확인하고 응답하지 않는 VM을 자동으로 다시 만듭니다.
- 새 인스턴스 템플릿, 모든 인스턴스 구성, 인스턴스별 구성을 설정 및 적용하여 MIG에서 VM의 일부 또는 전체에 새 구성을 적용하는 방법을 알아보세요.
- 인스턴스 그룹에 외부 HTTP(S) 부하 분산기 프런트엔드를 추가하는 방법을 알아봅니다. 다른 유형의 부하 분산기에 대한 자세한 내용은 부하 분산 개요를 참조하세요.
Terraform
로컬 개발 환경에서 이 페이지의 Terraform 샘플을 사용하려면 gcloud CLI를 설치 및 초기화한 다음 사용자 인증 정보로 애플리케이션 기본 사용자 인증 정보를 설정하세요.
자세한 내용은 다음을 참조하세요: Set up authentication for a local development environment.
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 제한사항을 참조하세요.
MIG 만들기 및 자동 확장 사용 설정
Google Cloud 콘솔, gcloud CLI, Terraform 또는 REST를 사용합니다.
콘솔
gcloud
자동 확장을 사용 설정하려면 먼저 MIG를 만들어야 합니다. 안내에 따라 단일 영역으로 제한된 VM으로 MIG를 만들거나 리전의 여러 영역에 분산된 VM으로 MIG를 만듭니다.
그런 다음
set-autoscaling
하위 명령어를 사용하여 그룹에 자동 확장을 사용 설정합니다. 예를 들어 다음 명령어는 대상 CPU 사용률이 60%인 자동 확장 처리를 만듭니다. 자동 확장 처리를 만들 때는--target-cpu-utilization
매개변수와 함께--max-num-replicas
매개변수도 필요합니다.원하는 경우 그룹에 원하는 최소 VM 수를 나타내는
--min-num-replicas
를 설정할 수 있습니다. 최솟값을 설정하지 않으면 기본적으로 MIG는 이 값을 2로 설정합니다.--cool-down-period
플래그를 사용하여 애플리케이션이 초기화되는 데 걸리는 시간을 자동 확장 처리에 알려주는 초기화 기간을 설정할 수 있습니다. 정확한 초기화 기간을 지정하면 자동 확장 처리 결정이 향상됩니다. 예를 들어 아직 초기화 중인 VM은 애플리케이션의 일반적인 사용량을 아직 나타내지 않을 수 있으므로, 수평 확장 시 자동 확장 처리는 이러한 VM의 데이터를 무시합니다. 기본 초기화 기간은 60초입니다.gcloud compute instance-groups managed set-autoscaling example-managed-instance-group \ --max-num-replicas 20 \ --target-cpu-utilization 0.60 \ --cool-down-period 90
원하는 경우 예측 자동 확장을 사용 설정하여 예측된 부하보다 앞서 수평 확장할 수 있습니다. 예측 자동 확장이 워크로드에 적합한지 여부를 알아보려면 예측을 기준으로 확장을 참조하세요.
instance-groups managed describe
명령어를 사용하여 자동 확장이 사용 설정되었는지 확인할 수 있으며 이 명령어는 해당 MIG를 설명하고 그룹의 자동 확장 기능에 대한 정보를 제공합니다.gcloud compute instance-groups managed describe example-managed-instance-group
Terraform
자동 확장을 사용 설정하려면 먼저 MIG를 만들어야 합니다. 안내에 따라 단일 영역으로 제한된 VM으로 MIG를 만들거나 리전의 여러 영역에 분산된 VM으로 MIG를 만듭니다.
MIG에서 자동 확장을 구성하려면
google_compute_autoscaler
리소스를 사용하면 됩니다.다음 샘플에서는 영역 MIG의 CPU 사용률에 따른 자동 확장을 구성합니다.
Terraform 구성을 적용하거나 삭제하는 방법은 기본 Terraform 명령어를 참조하세요.
REST
자동 확장을 사용 설정하려면 먼저 단일 영역에 제한된 VM으로 MIG를 만들거나 리전의 여러 영역에 분산된 VM으로 MIG를 만들어야 합니다.
영역 MIG가 있으면
autoscalers.insert
메서드에POST
요청을 수행합니다. 리전 MIG가 있으면regionAutoscalers.insert
메서드를 사용합니다.예를 들면 다음과 같습니다.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/autoscalers/
요청 본문에는
name
,target
,autoscalingPolicy
필드가 포함되어야 합니다.autoscalingPolicy
필드는 대상cpuUtilization
값과maxNumReplicas
값을 정의해야 합니다.원하는 경우 그룹에 원하는 최소 VM 수를 나타내는
minNumReplicas
를 설정할 수 있습니다. 최솟값을 설정하지 않으면 기본적으로 MIG는 이 값을 2로 설정합니다.coolDownPeriodSec
필드를 사용하여 애플리케이션이 초기화되는 데 걸리는 시간을 자동 확장 처리에 알려주는 초기화 기간을 설정할 수 있습니다. 정확한 초기화 기간을 지정하면 자동 확장 처리 결정이 향상됩니다. 예를 들어 아직 초기화 중인 VM은 애플리케이션의 일반적인 사용량을 아직 나타내지 않을 수 있으므로, 수평 확장 시 자동 확장 처리는 이러한 VM의 데이터를 무시합니다. 기본 초기화 기간은 60초입니다.{ "name": "example-autoscaler", "target": "https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/instanceGroupManagers/example-managed-instance-group", "autoscalingPolicy": { "maxNumReplicas": 10, "cpuUtilization": { "utilizationTarget": 0.6 }, "coolDownPeriodSec": 90 } }
원하는 경우 예측 자동 확장을 사용 설정하여 예측된 부하보다 앞서 수평 확장할 수 있습니다. 예측 자동 확장이 워크로드에 적합한지 여부를 알아보려면 예측을 기준으로 확장을 참조하세요.
CPU 사용률을 따른 자동 확장 사용 설정에 대한 자세한 내용은 CPU 사용률을 기준으로 확장을 참조하세요.
다음 단계
달리 명시되지 않는 한 이 페이지의 콘텐츠에는 Creative Commons Attribution 4.0 라이선스에 따라 라이선스가 부여되며, 코드 샘플에는 Apache 2.0 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 Google Developers 사이트 정책을 참조하세요. 자바는 Oracle 및/또는 Oracle 계열사의 등록 상표입니다.
최종 업데이트: 2024-12-19(UTC)
-