이 문서에서는 Compute Engine 영역별 리소스 예약의 동작, 요구사항, 제한사항, 결제에 대해 설명합니다.
예약을 사용하면 필요한 경우 동일한 속성을 가진 가상 머신 (VM) 인스턴스를 특정 영역에서 사용할 수 있다는 높은 수준의 보장을 얻을 수 있습니다. 예약은 확장, 이전 또는 재해 복구에 유용합니다.
개요
예약을 하면 필요할 때마다 동일한 하드웨어 (메모리 및 vCPU)와 선택적 리소스 (GPU 및 로컬 SSD 디스크)를 사용하여 VM을 만들 수 있는 리소스를 확보할 수 있습니다. 예약을 사용하면 다음과 같은 이점이 있습니다.
높은 용량 보장: 성장, 계획되거나 계획되지 않은 급증, 많은 수의 VM 이전, 백업 및 재해 복구와 같은 향후 수요 증가에 대비해 리소스가 예약됩니다.
독점 액세스: 예약을 하면 다른 사용자가 예약된 리소스를 사용할 수 없습니다.
상속된 속성: 예약은 선택한 머신 계열의 동일한 속성을 상속합니다.
예약을 만들면 Compute Engine에서 지정된 영역에서 요청된 용량을 사용할 수 있는지 확인합니다. 이 경우 Compute Engine이 리소스를 예약하고 예약을 생성하며 다음이 실행됩니다.
예약된 리소스는 즉시 사용할 수 있으며 예약을 삭제할 때까지 사용할 수 있습니다.
예약이 삭제될 때까지 예약된 리소스에 대해 실행 중인 VM과 동일한 주문형 요금(해당하는 할인 포함)이 청구됩니다. 예약을 사용하는 VM에는 별도의 요금이 청구되지 않습니다.
예약의 작동 원리
예약은 사용자가 지정한 구성을 사용하여 하나 이상의 VM에 대한 높은 수준의 용량 보장을 제공합니다. Compute Engine 약정 또는 VM을 사용하는 다른 제품에서도 예약을 사용할 수 있습니다.
예약을 만들 때 사용자는 다음 속성을 정의합니다.
- 프로비저닝 유형(주문형 또는 미래용)
- 주문형 예약(기본값)은 요청된 용량을 사용할 수 있는 경우 요청 시 프로비저닝됩니다.
미래용 예약을 사용하면 중요하거나 획득하기 어려운 용량의 매우 높은 수준의 보증을 미리 요청할 수 있습니다. 특히 미래용 예약은 두 가지 리소스 유형으로 구성됩니다. 즉, 승인된 경우 향후 지정된 시간에 자동으로 생성된 (자동 생성) 예약을 제공하는 미래용 예약 요청입니다. 요청된 예약 기간이 지나면 자동 생성된 예약이 자동으로 삭제되거나 온디맨드 예약과 비슷하게 작동합니다.
미래용 예약을 사용하면 Google Cloud에서 요청을 처리하는 데 더 많은 시간을 할애할 수 있으므로 주문형 예약보다 많은 용량을 확보할 수도 있습니다. 미래용 예약을 사용하려면 이 문서 대신 미래용 예약 요청 정보를 참조하세요.
- 자동 삭제
자동 삭제 옵션은 예약이 완전히 사용되었는지 여부에 관계없이 예약을 자동으로 삭제하도록 지정합니다. 자동 삭제 옵션을 사용 설정하면 기본적으로 지정된 날짜 및 시간으로부터 2시간 이내에 또는 맞춤 날짜 및 시간에 예약이 삭제됩니다. 예약을 자동으로 삭제하면 일정 기간 동안 사용되지 않는 예약에 대한 불필요한 비용을 방지할 수 있습니다.
- 소비 유형(자동 또는 특정)
- 이러한 예약(기본값)을 모두 자동으로 소비할 수 있도록 하는 예약 어피니티 속성이 있는 VM에서 자동으로 소비되는 예약(기본값)을 사용할 수 있습니다
- 특별한 타겟팅 예약은 소비를 위해 특정 예약을 타겟팅하는 예약 어피니티 속성이 있는 VM에서만 사용할 수 있습니다. 특별한 타겟팅 예약을 사용하면 어떤 VM이 어떤 예약을 사용하는지 더 쉽게 추적하고 제어할 수 있습니다.
- 단일 프로젝트 예약(기본값)은 예약과 동일한 프로젝트에 있는 VM에서만 사용할 수 있습니다.
- 공유 예약은 예약이 있는 프로젝트의 VM 및 예약이 공유된 다른 프로젝트에서 사용할 수 있습니다. 공유 예약을 사용하면 예약의 사용률을 높이고 만들고 관리해야 하는 예약 수를 줄일 수 있습니다. 자세한 내용은 이 문서의 공유 예약 작동 방법을 참조하세요.
공유 정책은 Vertex AI의 커스텀 학습 작업 또는 예측 작업에서 GPU VM 예약을 사용할 수 있는지 지정합니다. 기본적으로 커스텀 학습 작업 또는 예측 작업은 GPU VM 예약을 사용할 수 없습니다. 이를 변경하려면 Vertex AI에서 사용할 예약을 생성하거나 업데이트하는 방법을 참고하세요.
- VM 수
VM 수는 예약을 만들 때 예약하려는 속성 및 영역이 일치하는 VM 수입니다. 예약을 만든 후 VM 수를 수정할 수 있습니다.
- VM 속성
VM 속성은 예약하려는 VM의 하드웨어 요구사항(메모리 및 CPU) 및 리소스 선택사항(로컬 SSD 디스크 및 GPU)를 기술합니다. 예약을 만들 때 이러한 속성을 직접 지정하거나, 기존 VM을 기반으로 속성을 지정하거나, 인스턴스 템플릿을 사용하여 속성을 지정할 수 있습니다. VM의 속성과 예약의 VM 속성이 모두 정확히 일치하는 경우에만 VM에서 예약을 사용할 수 있습니다. 자세한 내용은 이 문서에서 요구사항을 참조하세요.
-
선택사항: 리소스 배치 정책(압축)
압축 배치 정책은 예약된 VM 간의 네트워크 지연 시간을 줄이기 위해 예약된 VM을 최대한 서로 가깝게 배치해야 함을 나타냅니다.
예약을 만든 후 다음 사항에 유의하세요.
예약을 사용 중인 VM을 중지, 일시중지 또는 삭제하면 해당 VM이 더 이상 예약에 포함되지 않습니다. 이전에 사용한 리소스는 VM을 중지, 일시중지 또는 삭제가 완료된 후에 다시 사용할 수 있습니다.
예약은 삭제했지만 예약된 리소스를 사용 중인 VM을 삭제하지 않으면 VM이 유지되고 평소처럼 리소스 요금이 청구됩니다.
공유 예약 작동 방법
공유 예약에서 각 VM은 예약을 만든 프로젝트(소유자 프로젝트) 또는 예약이 공유된 프로젝트(소비자 프로젝트)의 VM에 사용될 수 있습니다. VM이 공유 예약 사용을 중지하면 예약이 공유된 프로젝트에 있는 다른 VM이 공유 예약을 사용할 수 있습니다. 공유 예약이 여러 VM을 예약하는 경우 여러 프로젝트의 VM이 동일한 공유 예약을 동시에 사용할 수 있습니다.
기본적으로 프로젝트는 공유 예약을 만들거나 수정할 수 없습니다. 프로젝트에서 공유 예약을 만들고 수정하려면 프로젝트를 공유 예약 소유자 프로젝트(compute.sharedReservationsOwnerProjects
) 조직 정책 제약조건의 허용 목록에 추가해야 합니다.
예약을 공유하면 추가 할당량 요구사항의 영향을 받으며 단일 프로젝트 예약과는 다른 소비 동작을 갖습니다.
요구사항
모든 예약에는 다음 요구사항이 포함됩니다.
VM은 VM과 예약의 다음 속성이 모두 정확히 일치하는 경우에만 예약을 사용할 수 있습니다.
프로젝트
- 프로젝트 요구사항은 예약의 공유 유형에 따라 다릅니다.
영역
머신 유형
최소 CPU 플랫폼
GPU 유형 및 수량(해당하는 경우)
로컬 SSD 유형 및 수량(해당하는 경우)
예약 어피니티
- 예약 어피니티 요구사항은 예약의 소비 유형에 따라 달라집니다.
압축 배치 정책(해당하는 경우)
- 예약에는 예약된 VM 간의 네트워크 지연 시간을 줄이기 위해 예약된 VM이 최대한 서로 가깝게 위치해야 함을 나타내는 압축 배치 정책이 선택적으로 포함될 수 있습니다. 예약에서 압축 배치 정책을 지정하면 동일한 압축 배치 정책을 지정하는 VM에서만 사용할 수 있습니다.
위치 힌트(해당하는 경우)
- 예약에는 선택적으로
locationHint
필드가 포함될 수 있으며, 이 필드는 REST를 사용하여 예약 또는 VM을 만들 때만 지정할 수 있습니다. 예약을 만들 때locationHint
필드를 지정하지 않는 것이 좋습니다.
- 예약에는 선택적으로
예약하는 리소스에 충분한 할당량이 프로젝트에 있어야 합니다. 예약이 성공적으로 생성되면 해당 리소스에 대한 할당량이 그에 따라 청구됩니다.
약정에 연결된 예약의 추가 요구사항
또한 약정에 연결된 예약에는 다음 요구사항이 포함됩니다.
예약은 약정과 동일한 프로젝트 및 리전에 대한 예약이어야 합니다.
예약은 약정과 동일한 머신 계열 시리즈에 대한 예약이어야 합니다. 하지만 해당 머신 계열 시리즈 내의 모든 머신 유형을 선택할 수 있습니다.
예약에서 자동 삭제 옵션이 사용 중지되어야 합니다.
약정에서 GPU, 로컬 SSD 디스크 또는 둘 다를 지정하는 경우 연결된 예약(또는 연결된 예약의 조합)에서 약정과 정확히 동일한 리소스 수 및 유형을 지정해야 합니다.
자세한 내용은 리소스 기반 약정에 예약 연결을 참조하세요.
인스턴스 템플릿에서 생성된 예약의 추가 요구사항
또한 인스턴스 템플릿을 지정하여 예약을 만들 경우 다음을 확인합니다.
템플릿 내의 리소스와 동일한 리전, 영역, 프로젝트에 예약을 만들어야 합니다. 구체적으로는 다음과 같습니다.
인스턴스 템플릿에 압축 배치 정책이 지정된 경우 특정 예약을 만들어야 합니다. 그런 후 예약을 사용하도록 VM을 만들 때 이름을 사용해서 예약을 구체적으로 타겟팅해야 합니다. 그렇지 않으면 VM이 예약을 사용할 수 없습니다.
공유 예약의 추가 할당량 요구사항
또한 공유 예약의 소유자 및 소비자 프로젝트에는 다음과 같은 할당량 영향이 있습니다.
소유자 프로젝트: 소유자 프로젝트는 다음과 같이 할당량을 사용합니다.
공유 예약을 만들 때 소유자 프로젝트는 총 예약된 리소스의 할당량을 사용합니다.
예약된 리소스를 사용할 때 소유자 프로젝트는 소비한 리소스의 할당량을 사용합니다.
소비자 프로젝트: 소비자 프로젝트는 예약된 리소스를 사용할 때와 소비한 리소스에 대해서만 할당량을 사용합니다.
예를 들어 프로젝트 A(소유자 프로젝트)에서 리소스 10개에 대한 공유 예약을 만들고 프로젝트 B 및 C(소비자 프로젝트)와 예약을 공유한다고 가정해 보겠습니다. 공유 예약을 만들 때 프로젝트 A는 리소스 10개에 대한 할당량을 사용합니다. 그러면 프로젝트 A와 B가 각각 2개의 예약된 리소스를 사용하면 프로젝트 A와 B는 각각 2개의 리소스에 대한 할당량을 사용합니다. 총 12개의 리소스 할당량은 프로젝트 A에서, 2개의 리소스 할당량은 프로젝트 B에서, 0개의 리소스 할당량은 프로젝트 C에서 소비합니다(예약을 사용하지 않았기 때문).
압축 배치 정책이 있는 예약의 추가 요구사항
또한 예약에 대한 압축 배치 정책을 지정하려면 다음 요구사항을 확인하세요.
압축 배치 정책은 예약을 지원해야 합니다.
압축 배치 정책은 최대 거리 값
1
을 지정할 수 없습니다.압축 배치 정책은 한 번에 둘 이상의 예약으로 지정할 수 없습니다.
예약은 다음과 같은 압축 배치 정책을 지원해야 합니다.
주문형 단일 프로젝트, 특히 약정에 연결되지 않은 타겟팅된 예약에 대해서만 압축 배치 정책을 지정할 수 있습니다.
예약으로 예약된 VM은 압축 배치 정책으로 지원되어야 합니다.
예약 영역은 압축 배치 정책의 리전 내에 있어야 합니다.
예약의 VM 수는 압축 배치 정책이 지원하는 최대 VM 수를 초과할 수 없습니다.
압축 배치 정책에서 예약의 머신 유형을 지원해야 합니다.
제한사항
모든 예약에는 다음과 같은 제한사항이 있습니다.
예약은 다음 Google Cloud 제품에서만 사용할 수 있습니다.
- 일괄
- Compute Engine
- Dataflow
- Dataproc
- Google Kubernetes Engine
- Vertex AI
예약당 최대 1,000개의 VM을 예약할 수 있습니다.
주문형이며 구체적으로 타겟팅된 예약을 통해서만 A3 VM을 예약할 수 있습니다.
다음 Compute Engine 리소스에는 예약을 사용할 수 없습니다.
f1-micro
및g1-small
머신 유형스팟 VM 또는 선점형 VM
단독 테넌트 노드
약정에 연결된 예약의 추가 제한사항
또한 약정에 연결된 예약에는 다음과 같은 제한사항이 있습니다.
예약은 리소스 기반 약정에만 연결할 수 있습니다.
약정을 구매하는 동안에만 예약을 연결할 수 있습니다.
특정 예약은 단일 약정에만 연결할 수 있습니다.
약정에 연결된 예약은 삭제하거나 크기를 조절할 수 없습니다. 대신 약정에 연결된 예약을 대체하는 방법을 참조하세요.
자세한 내용은 리소스 기반 약정에 예약 연결을 참조하세요.
공유 예약의 추가 제한사항
또한 공유 예약에는 다음 제한이 포함됩니다.
예약을 만든 프로젝트와 동일한 조직의 프로젝트에만 예약을 공유할 수 있습니다.
각 공유 예약은 1~100개 소비자 프로젝트와 공유될 수 있습니다.
각 조직에서는 각각의 고유한 VM 속성 조합에 대해 최대 100개까지 공유 예약을 만들 수 있습니다.
특정 프로젝트에서 생성된 예약만 나열할 수 있습니다. 즉, 각 공유 예약은 이를 만든 프로젝트에만 나열됩니다. 조직의 모든 공유 예약 목록 또는 특정 프로젝트와 공유된 모든 예약 목록은 확인할 수 없습니다.
인스턴스 템플릿을 지정하여 공유 예약을 만들면 프로젝트 내의 사용자만 동일한 인스턴스 템플릿에 액세스하고 이를 사용하여 VM 또는 다른 예약을 만들 수 있습니다.
예약을 만들 때 압축 배치 정책을 지정할 수 없습니다.
공유 예약을 사용 중인 프로젝트를 새 조직으로 이동하면 공유 예약이 새 조직으로 마이그레이션되지 않습니다. 이 프로젝트에서 생성된 모든 공유 예약은 삭제되고 이전 조직에서 이 프로젝트와 공유된 모든 예약은 새 조직에서 사용될 수 없습니다. 자세한 내용은 이 문서의 공유 예약 작동 방법을 참조하세요.
공유 예약 권장사항에 따라 이러한 요구사항 중 일부 제한사항을 완화할 수 있습니다.
압축 배치 정책이 있는 예약의 추가 제한사항
또한 압축 배치 정책을 지정하는 예약에는 다음과 같은 제한사항이 있습니다.
예약 간에 압축 배치 정책을 공유할 수 없습니다. 대신 압축 배치 정책을 적용할 예약마다 별도의 압축 배치 정책을 사용해야 합니다.
압축 배치 정책만 지정할 수 있습니다. 인스턴스 일정 또는 스냅샷 일정과 같은 다른 모든 유형의 리소스 정책은 지원되지 않습니다.
결제
예약에는 동일한 주문형 가격 및 VM을 실행하는 예약되지 않은 1분 최소 요금을 포함하여 예약된 리소스와 동일한 요금이 청구됩니다. VM을 실행할 때와 마찬가지로 지속 사용 할인(SUD), CUD, 커스텀 가격 책정이 적용됩니다.
예를 들어 다음과 같은 시나리오가 있다고 가정해 보겠습니다.
us-central1
에 3개의 vCPU 약정이 있습니다.us-central1-a
에서 5개의 vCPU를 실행합니다.us-central1-a
에 10개의 vCPU 예약이 있습니다.
이 시나리오에서 Google Cloud는 다음과 같이 요금을 청구합니다.
적용 방식 | vCPU 수 |
---|---|
약정 사용 할인 가격 | 3 |
주문형 가격(2개의 vCPU, 사용한 예약 + 5개의 vCPU, 사용하지 않은 예약) | 7 |
예약의 리소스가 사용 중인지 여부에 관계없이 예약이 존재하는 한 예약된 리소스에 대해 요금이 청구됩니다. 예약에는 예약된 리소스 비용이 이미 청구되었기 때문에 예약을 사용하는 동안 VM에 중복 리소스 요금이 발생하지 않습니다. 자세한 내용은 VM 가격 책정을 참조하세요.
또한 예약의 사용 추세를 모니터링하여 낭비되거나 사용되지 않는 리소스로 인한 불필요한 비용을 줄일 수 있습니다. 자세한 내용은 예약 사용 모니터링을 참조하세요.
공유 예약의 추가 결제 정보
공유 예약 사용에는 추가 요금이 없습니다. 단일 프로젝트 Compute Engine 예약과 동일한 가격으로 청구됩니다. 하지만 각 프로젝트마다 서로 다른 CUD가 적용될 수 있으므로 공유 예약이 청구되는 프로젝트는 소비에 따라 변경됩니다.
공유 예약의 결제 프로젝트 및 가격은 다음과 같이 처리됩니다.
- 결제 프로젝트: 기본적으로 소유자 프로젝트는 공유 예약에 대해 청구됩니다. 하지만 공유 예약의 리소스가 소비자 프로젝트에 의해 사용되는 경우 대신 소비자 프로젝트에 예약 비용이 청구됩니다.
- 결제 할인: 기본적으로 결제에는 주문형 사격이 사용됩니다. 하지만 결제되는 프로젝트 또는 해당 프로젝트와 연관된 Cloud Billing 계정에서 CUD를 받을 자격이 있는 경우 할인된 가격이 대신 사용됩니다.
다음 단계
- 예약 만들기 방법 알아보기: