리소스 기반 약정 사용 할인


Compute Engine은 예측 가능한 워크로드에 리소스 기반 약정 사용 할인(CUD)을 제공하여 필요한 리소스의 비용을 절감하는 데 도움이 됩니다. 리소스 기반 약정 사용 계약 또는 약정을 구입하고 갱신하면 VM 사용 요금을 대폭 할인 받을 수 있습니다.

이 문서에서는 Compute Engine의 리소스 기반 약정, 구매 방법, CUD에 대한 정보를 설명합니다. Compute Engine 가변형 CUD에 대한 자세한 내용은 가변형 CUD를 참조하세요.

리소스 기반 약정은 사용량이 예측 가능하고 안정적인 상태일 때 이상적입니다. Compute Engine의 경우 다음과 같은 리소스 기반 약정 카테고리를 구입할 수 있습니다

  • 하드웨어 약정 vCPU, 메모리, GPU, 로컬 SSD 디스크, 단독 테넌트 노드와 같은 리소스의 하드웨어 약정을 구매할 수 있습니다. 자세한 내용은 예약이 연결된 약정 구매예약이 연결되지 않은 약정 구매를 참조하세요.
  • 소프트웨어 라이선스 약정. 적용 가능한 프리미엄 운영체제(OS) 라이선스에 대해 라이선스 약정을 구입할 수 있습니다. 자세한 내용은 라이선스 약정 구매를 참조하세요.

하드웨어 리소스 약정은 라이선스 약정과 별개입니다. VM 인스턴스에 대해 두 카테고리의 약정을 모두 구입할 수 있지만 하드웨어 리소스와 라이선스를 모두 포함하는 단일 약정은 구입할 수 없습니다.

약정 사용 할인 권장사항을 사용하면 약정 사용 할인 계약 유무에 관계없이 VM 지출 추세를 분석하여 컴퓨팅 비용을 최적화할 수 있습니다. 이 수치를 비교하면 약정 사용 계약을 통해 매월 얼마나 절약할 수 있는지 확인할 수 있습니다. 약정 권장사항에 대한 자세한 내용은 약정 권장사항 이해를 참조하세요.

약정 사용 할인은 사전 정의된 머신 유형과 커스텀 머신 유형을 비롯하여 거의 모든 Compute Engine 머신 유형에 적용됩니다. 약정 사용 할인은 간단하고 유연하며 사전 비용이 필요하지 않습니다. 할인은 인스턴스의 머신 설정 변경에 영향을 받지 않도록 한 리전 내의 전체 vCPU, 메모리, GPU, 로컬 SSD 디스크 수에 적용됩니다.

VM당 Tier_1 네트워킹 성능을 지원하는 머신 유형의 경우 50Gbps, 75Gbps, 100Gbps 고대역폭 SKU는 할인 대상에서 제외됩니다.

f1-micro 및 g1-small 공유 코어 머신은 약정 사용 할인을 받을 수 없습니다.

시작하기 전에

  • 아직 인증을 설정하지 않았다면 설정합니다. 인증은 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

    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 사용 인증을 참조하세요.

약정 사용 할인 작동 방식

약정 사용 계약을 구매하면 1년 또는 3년 동안 약정된 금액을 지불하는 조건으로 vCPU, 메모리, GPU, 로컬 SSD 디스크, 단독 테넌트 노드와 같은 Compute Engine 리소스를 할인된 가격으로 구매합니다. 머신 유형이나 GPU와 같은 대부분 리소스 유형은 최대 57%까지 할인됩니다. 메모리 최적화 머신 유형의 할인은 최대 70%입니다. 다양한 머신 유형별 약정 사용 가격은 VM 인스턴스 가격 책정을 참조하세요.

약정 기간 동안 약정에 지정된 리소스 유형, 머신 유형, 리전과 일치하는 프로젝트의 적격 리소스 사용량에 대한 CUD를 자동으로 수신하기 시작합니다. 약정이 만료될 때까지 적격 리소스 사용량에 대한 이러한 CUD를 계속 수신합니다.

Compute Engine은 약정을 구매한 프로젝트의 리전마다 프로젝트에 대한 선취권을 유지합니다. 프로젝트의 임의 리전에 대한 새 약정을 구매하면 Compute Engine이 해당 리전의 선취권을 새로 생성된 약정과 연결합니다.

약정을 구입한 후에는 취소할 수 없습니다. 약정은 지정된 기간 1년 또는 3년 마지막 날에 만료됩니다. 하지만 약정에서 자동 갱신을 사용 설정하여 새 기간 동안 자동으로 갱신되도록 할 수 있습니다.

약정 상태

약정 상태는 다음 중 하나일 수 있습니다.

  • CREATING: 약정을 생성 중입니다.
  • NOT_YET_ACTIVE 또는 PENDING: 약정이 생성되었지만 아직 활성화되지 않았습니다. Compute Engine에서 이 상태의 약정을 만듭니다.

    • Google Cloud CLI 또는 REST API를 사용하여 약정을 구매하는 경우 이 상태 값이 NOT_YET_ACTIVE로 표시됩니다.
    • Google Cloud 콘솔을 사용하여 약정을 구매하는 경우 이 상태 값은 PENDING으로 표시됩니다.
  • ACTIVE: 약정이 활성 상태입니다.

  • EXPIRED: 약정이 만료되었습니다. Compute Engine은 만료일로부터 210일이 경과한 만료된 약정을 삭제할 수 있습니다.

  • CANCELED: Compute Engine에서 약정을 취소했습니다. 약정 상태를 결합하여 새로운 병합된 약정을 만들면 Compute Engine에서 약정 상태를 CANCELED로 변경합니다.

약정 구매 시점부터 활성화 전까지는 약정 상태가 NOT_YET_ACTIVE(또는 Google Cloud 콘솔의 PENDING)로 유지됩니다. 활성화되면 약정 상태는 ACTIVE로 변경됩니다. 예를 들어 미국 및 캐나다 태평양 표준시(UTC-8 또는 UTC-7) 기준 1월 20일 오후 10시에 약정을 구매한다고 가정해 보겠습니다. Compute Engine에서 상태가 NOT_YET_ACTIVE인 약정을 즉시 만듭니다. 하지만 약정은 미국 및 캐나다 태평양 표준시(UTC-8 또는 UTC-7) 기준 1월 21일 오전 12시에만 ACTIVE가 됩니다.

효율적인 약정 사용

프로젝트가 소수인 경우 사용하려는 특정 리소스에 대한 약정만 구입할 수 있습니다. 예를 들어 8코어에 대한 약정을 구매하고 해당 월 내에 24코어를 실행하는 경우 8코어에 대한 약정 사용 할인을 받게 됩니다. 나머지 16코어는 약정 사용 요금이 아닌 표준 요금으로 청구됩니다. 일정 금액의 약정을 구매하면 사용 여부와 관계없이 약정액은 월정액으로 청구됩니다. 예를 들어 8코어 약정을 구매한 경우 해당 월의 일부 기간 동안만 코어를 실행하더라도 월 전체에 대해 8코어 약정 사용 요금이 청구됩니다. 앞으로 사용할 증분 단위로만 약정을 구매할 수 있으므로 유리합니다.

버스트 시나리오가 발생하더라도 약정이 누적되지는 않습니다. 예를 들어 1개월 동안 10코어를 구매한 후 0.5개월 동안에 20코어를 실행한 경우 사용 기간이 0.5개월에 불과하므로 약정은 전체 20코어에 적용되지 않습니다.

사용량 초과분

약정이 적용되지 않는 시간당 리소스 사용량에 대한 요금은 주문형 요율에 따라 청구되며 적용 가능한 지속 사용 할인(SUD)이 적용됩니다. 예를 들어 한 달 중 일부 기간에 n2-standard-2를 실행하고 같은 달의 나머지 기간에 n2-standard-8을 실행한다고 가정해 보겠습니다. 두 머신 유형 모두 n2-standard 계열에 속하므로 Compute Engine은 이 둘을 결합하고 약정 사용 할인이 적용되지 않는 기간에 SUD를 적용합니다.

예약과 약정 결합

약정은 할인 가격에 대해 1년 또는 3년 계약을 제공하지만, 특정 영역에서 용량을 예약하지는 않습니다. 예약은 예약된 VM이 실행되지 않는 경우에도 특정 영역에 용량이 유지되도록 합니다. 할인된 가격으로 영역별 리소스를 구입하고 용량 예약을 보장하기 위해서는 이러한 영역별 리소스에 대해 약정을 구매하고 예약을 만들어야 합니다.

또한 리소스 기반 약정에 예약을 연결하여 예약이 해당 약정과 일치하도록 할 수 있습니다. GPU 또는 로컬 SSD 리소스를 약정할 때는 또한 해당 리소스를 예약하고 해당 예약을 약정에 연결해야 합니다.

자세한 내용은 예약과 약정 사용 할인의 결합을 참조하세요.

프로젝트 간에 약정 사용 할인 공유

기본적으로 약정 사용 할인은 프로젝트 수준에서 적용되며 약정을 구매한 프로젝트에만 약정 사용 할인이 적용될 수 있습니다. 약정을 구매한 프로젝트를 다른 Cloud Billing 계정으로 이동하면 새 Cloud Billing 계정 아래의 프로젝트에 약정 사용 할인이 계속 적용될 수 있습니다.

하지만 Compute Engine을 사용하면 같은 Cloud Billing 계정을 공유하는 여러 프로젝트에서 하드웨어 약정에 대한 할인을 공유할 수 있습니다. 모든 프로젝트에서 하드웨어 약정에 대한 약정 사용 할인을 공유하면 프로젝트별로 할인을 관리하는 오버헤드가 줄어들고 프로젝트의 리소스 사용 전반에서 모든 할인이 같이 적용되므로 절감 효과가 극대화됩니다.

동일한 Cloud Billing 계정을 공유하는 프로젝트가 여러 개 있는 경우 약정 사용 할인 공유를 사용 설정하여 해당 Cloud 결제 계정의 모든 프로젝트가 모든 약정 사용 할인 계약을 공유하도록 할 수 있습니다.

예를 들어 각각 코어 80개(총 코어 160개)에 대한 약정 2개를 구매하고 Cloud Billing 계정의 여러 프로젝트에서 한 달에 코어 200개를 실행합니다. Cloud Billing 계정에 약정 사용 할인 공유를 사용 설정한 경우 Cloud Billing 계정의 프로젝트 전체에서 사용되는 코어 200개 중 160개에 해당하는 약정 사용 할인이 적용됩니다. 추가 코어 40개는 주문형 비약정 사용 요금으로 청구됩니다. 약정을 구매하면 리소스를 사용하지 않더라도 약정 기간 동안 매월 약정 리소스에 대한 요금이 청구됩니다. 비용 절약 활용 권장사항은 할인 공유 이해를 참조하세요.

약정 사용 할인에는 Google Cloud 약정 기반 가격 책정 및 청구가 적용됩니다. 약정 사용 할인을 구매하면 약관에 동의하게 됩니다.

기여 분석을 사용하여 할인 할당

기여 분석은 프로젝트에서 약정 사용 할인이 할당되는 방식을 나타냅니다. 이러한 할당은 사용 비용 내보내기 또는 Google Cloud 콘솔과 같은 Cloud Billing 비용 관리 인터페이스에 반영됩니다.

기여 분석은 할인 공유가 사용 설정된 경우에만 적용됩니다. 할인 공유를 설정하기 전 사용할 기여 분석 유형을 선택하고 할인 공유를 사용 설정할 때 기여 분석 구성을 활성화할 수 있습니다.

Compute Engine 약정에는 기본적으로 비례적 기여 분석이 사용됩니다. 비례적 기여 분석 약정은 각 프로젝트에서 소비되는 총 대상 사용량에 따라 프로젝트에 적용됩니다. 예를 들어 프로젝트 A에서 $75 상당의 사용량을 사용하고 프로젝트 B에서 $25를 사용한 경우 프로젝트 A에는 사용 가능한 크레딧 중 최대 75%가, 프로젝트 B에는 최대 25%가 적용됩니다.

또는 지정한 사용량을 기준으로 Compute Engine 약정에 대해 우선순위 방식의 기여 분석을 선택할 수 있습니다. 우선순위가 지정되지 않은 나머지 약정은 나머지 프로젝트의 대상 사용량에 비례하여 적용됩니다. 할당된 총액이 구매한 약정 금액을 초과할 수 없습니다.

Compute Engine 약정에 대해 비례적 기여 분석 또는 우선순위 방식의 기여 분석을 선택하려면 리소스 기반 약정의 기여 분석 선택을 참조하세요.

사양

  • 리전에서 다음 두 가지 모두에 사용 가능한 할당량이 있는 경우에만 특정 리전의 리소스에 대한 리소스 기반 약정을 구매할 수 있습니다.

    • 약정
    • 커밋된 리소스(메모리 제외)

    자세한 내용은 약정 및 약정 리소스 할당량을 참조하세요.

  • 리전 단위로 약정을 구매해야 합니다.

  • gcloud CLI를 사용하여 약정을 관리하려면 버전 147.0.0 이상의 gcloud를 실행해야 합니다. gcloud CLI를 최신 버전으로 업데이트하려면 다음을 사용하세요.

    gcloud components update
    

    실행 중인 gcloud CLI의 버전을 확인하려면 다음을 사용하세요.

    gcloud version
    

제한사항

  • 무료 등급 기간의 프로젝트와 결제 내역이 없는 프로젝트는 약정 사용 할인을 받을 수 없습니다.
  • 리전 단위로만 약정을 구매할 수 있습니다.
  • 약정을 구매하는 프로젝트를 변경할 수 없습니다. 여러 프로젝트와 할인을 공유하려면 할인 공유를 사용 설정하세요.

  • 하나의 Cloud Billing 계정에 속한 프로젝트 간에 공유된 약정: 약정의 일부가 사용되지 않으면 잔여 약정 금액은 약정의 해당 부분을 구매한 프로젝트에 남아 있습니다.

  • 선점형 VM 인스턴스, N1 공유 코어 머신 유형, 확장 메모리에는 약정 사용 할인이 적용되지 않습니다.

  • GPU 및 로컬 SSD 디스크의 약정 사용 할인 가격을 적용하려면 리소스를 예약하고 해당 예약을 약정에 연결해야 합니다.

  • 약정 사용 할인 가격은 주문형 가격 책정과 무관합니다. 주문형 가격 책정의 변동은 약정 사용 할인에 반영되지 않을 수 있습니다.

  • 예약이 약정 사용 할인에 연결된 경우에는 약정 기간에 예약을 삭제할 수 없습니다.

  • K80 GPU에 대한 1년 약정만 구매할 수 있습니다.

가격 책정

약정은 월 단위로 청구되며 약정 리소스를 모두 사용하지 않더라도 월별 약정 요금을 지불해야 합니다. 약정 요금은 모든 약정 리소스의 할인된 가격 합계입니다. Compute Engine은 약정이 활성화된 날에 적용된 주문형 가격을 사용하여 각 리소스의 할인된 가격을 계산합니다. 월별 약정 요금과 리소스의 할인된 가격은 주문형 가격이 변경되더라도 약정 기간이 끝날 때까지 동일하게 유지됩니다.

GPU 및 로컬 SSD 디스크의 유무에 관계없이 VM 인스턴스의 할인 가격(CUD 가격이라고도 함)은 리전에 따라 다릅니다. 현재 가격은 VM 인스턴스 가격 책정을 참조하세요.

약정을 구매한 프로젝트를 다른 Cloud Billing 계정으로 이동하면 새 Cloud Billing 계정 아래의 해당 프로젝트에 대한 약정 사용 할인이 계속 적용됩니다. 프로젝트의 Cloud Billing 계정 변경에 대해 알아보기.

약정 유형

다음 리소스의 약정을 구매할 수 있습니다.

약정 유형 할인 구매가 가능한 리소스 다음 리소스 유형에서 사용 가능
범용 E2 약정
  • vCPU
  • 메모리
모든 E2 머신 유형
범용 N2 약정
  • vCPU
  • 메모리
  • 로컬 SSD
  • 모든 N2 머신 유형
  • 모든 N2 단독 테넌트 노드 유형
범용 N2D 약정
  • vCPU
  • 메모리
  • 로컬 SSD
  • 모든 N2D 머신 유형
  • 모든 N2D 단독 테넌트 노드 유형
범용 C3 약정
  • vCPU
  • 메모리
  • 로컬 SSD
  • 모든 C3 머신 유형
  • 모든 C3 단독 테넌트 노드 유형
범용 C3D 약정
  • vCPU
  • 메모리
  • 로컬 SSD
  • 모든 C3D 머신 유형
  • 모든 C3D 단독 테넌트 노드 유형
범용 Tau T2D 약정
  • vCPU
  • 메모리
표준 Tau T2D 머신 유형
범용 N1 약정
  • vCPU
  • 메모리
  • GPU
  • 로컬 SSD
  • 모든 N1 머신 유형(공유 코어 제외)
  • 모든 N1 단독 테넌트 노드 유형
  • GPU:
    • NVIDIA T4
    • NVIDIA V100
    • NVIDIA P100
    • NVIDIA P4
    • NVIDIA K80
컴퓨팅 최적화 H3 약정
  • vCPU
  • 메모리
  • 모든 H3 머신 유형
컴퓨팅 최적화 C2 약정
  • vCPU
  • 메모리
  • 로컬 SSD
  • 모든 C2 머신 유형
  • 모든 C2 단독 테넌트 노드 유형
컴퓨팅 최적화 C2D 약정
  • vCPU
  • 메모리
  • 로컬 SSD
모든 C2D 머신 유형
메모리 최적화 M1/M2 약정
  • vCPU
  • 메모리
  • 로컬 SSD
  • 모든 M1 및 M2 머신 유형
  • 모든 M1 및 M2 단독 테넌트 노드 유형
메모리 최적화 M3 약정
  • vCPU
  • 메모리
  • 로컬 SSD
모든 M3 머신 유형
가속기 최적화 A2 약정
  • vCPU
  • 메모리
  • GPU
  • 로컬 SSD
  • 모든 A2 머신 유형
  • GPU:
    • NVIDIA A100
가속기 최적화 A3 약정
  • vCPU
  • 메모리
  • GPU
  • 로컬 SSD
  • 모든 A3 머신 유형
  • GPU:
    • NVIDIA H100
가속기 최적화 G2 약정
  • vCPU
  • 메모리
  • GPU
  • 로컬 SSD
  • 모든 G2 머신 유형
  • 모든 G2 단독 테넌트 노드 유형
  • GPU:
    • NVIDIA L4

f1-micro 또는 g1-small 머신 유형이나 단독 테넌트 프리미엄 요금의 경우에는 약정을 구매할 수 없습니다.

머신 유형 약정

사용하는 머신 유형에 적합한 약정 유형을 구매합니다.

범용 약정

범용 약정의 할인은 다음 순서로 리소스에 적용됩니다.

  1. 구매한 약정에 따라 E2, N2, N2D 또는 N1 커스텀 머신 유형
  2. 단독 테넌트 노드
  3. 구매한 약정에 따라 E2, N2, N2D, C3, C3D, Tau T2D, N1 사전 정의된 머신 유형

범용 약정을 구매할 때 약정이 적용되는 머신 시리즈를 선택합니다. 예를 들어 범용 E2 약정을 구매하면 E2 머신 유형에만 적용됩니다. 마찬가지로 범용 N2, N2D, C3, C3D, Tau T2D, N1 약정을 구매하면 약정이 겹치지 않습니다.

예를 들어 다음과 같이 혼합된 리전이 있다고 가정해 보겠습니다.

  • N2 커스텀 머신 유형 vCPU 10개
  • 커스텀 머신 유형 메모리 30GB
  • n2-standard-4 사전 정의된 머신 유형 2개

15개의 vCPU와 13.5GB의 메모리를 약정한 N2 약정을 구매합니다. 약정 사용 할인은 N2 커스텀 머신 유형에 먼저 적용되고 나머지 할인이 N2 사전 정의된 머신 유형에 적용됩니다. 이 경우 N2 커스텀 머신 유형의 vCPU 10개 모두 약정 사용 할인 가격으로 청구되며, 커스텀 머신 유형 메모리인 13.5GB도 약정 사용 요금으로 청구됩니다.

마지막으로, 약정 사용량인 나머지 vCPU 5개는 두 개의 n2-standard-4 machine 유형 중 임의의 5개 vCPU에 적용됩니다. 약정 사용이 적용되지 않는 리소스는 지속 사용 할인을 받습니다.

범용 머신 유형의 약정을 구매하려면 예약이 연결되지 않은 약정 구매를 참조하세요.

메모리 최적화 약정

메모리 최적화 약정 사용 할인은 두 가지 수준에서 제공됩니다. 수준 하나는 M1 및 M2 머신 유형 모두에 적용됩니다. 다른 수준은 M3 머신 유형에만 적용됩니다. 모든 메모리 최적화 머신 유형에 동일한 약정 사용 할인을 사용할 수 없습니다.

약정 사용 할인의 할당량은 별개입니다. M1 머신 유형에 약정 사용 할인을 사용하려면 M1 머신의 할당량이 있어야 합니다. M2와 M3의 경우에도 마찬가지이며, 약정 사용 할인에 대한 할당량이 있어야 합니다.

메모리 최적화 머신 유형을 사용하려면 메모리 최적화 약정을 구매합니다. 메모리 최적화 머신 유형의 약정을 구매하려면 예약이 연결되지 않은 약정 구매를 참조하세요.

컴퓨팅 최적화 약정

컴퓨팅 최적화 머신 유형을 사용하려면 컴퓨팅 최적화 약정을 구매합니다. 약정을 구매하려면 다음 안내를 따르세요.

가속기 최적화 약정

가속기 최적화 머신 유형을 사용하려면 A3, A2 또는 G2 머신 유형에 대한 약정을 구매합니다. A3, A2 또는 G2 머신 유형의 약정을 구매하려면 예약이 연결된 약정 구매를 참조하세요.

GPU 및 로컬 SSD 리소스의 약정

GPU, 로컬 SSD 디스크 또는 둘 다의 약정을 구매하려면 리소스를 예약하고 예약을 약정에 연결해야 합니다. 리소스를 사용 여부에 관계없이 항상 사용할 수 있도록 이러한 리소스를 예약해야 합니다. 리소스 예약에는 추가 요금이 없습니다.

특정 GPU 유형별로 약정을 구매해야 합니다. 예를 들어 NVIDIA P100 또는 NVIDIA V100의 GPU를 구매할 수 있지만 NVIDIA P100 GPU의 약정을 구매하여 다른 GPU 유형에 적용할 수는 없습니다.

GPU, 로컬 SSD 디스크 또는 둘 다에 대해 약정을 구매하려면 이 문서의 예약이 연결된 약정 구매를 참조하세요.

예약이 연결된 약정에 대한 자세한 내용은 리소스 기반 약정에 예약 연결을 참조하세요.

약정 및 약정 리소스 할당량

리전에서 다음 두 가지 모두에 사용 가능한 할당량이 있는 경우에만 특정 리전의 리소스에 대한 리소스 기반 약정을 구매할 수 있습니다.

  • 약정
  • 커밋된 리소스(메모리 제외)

특히 vCPU, GPU 또는 로컬 SSD 디스크에 대한 약정을 구매하려면 약정을 구매할 리전에서 약정과 특정 약정 SKU 모두에 사용할 수 있는 할당량이 있어야 합니다. 메모리에 할당량이 없으므로 약정 메모리에 대한 별도의 할당량이 없어도 메모리 약정을 구매할 수 있습니다.

예를 들어 us-central1 리전에서 범용 N1 머신 유형의 vCPU 32개, 16GB 메모리, NVIDIA P4 GPU 4개, 로컬 SSD 디스크 2개에 적용되는 5개의 약정을 구매하려면 다음과 같은 각 항목에 대한 할당량이 있어야 합니다.

  • us-central1의 5개 약정
  • us-central1의 약정된 N1 vCPU 32개
  • us-central1의 약정된 NVIDIA P4 GPU 4개
  • us-central1의 약정된 로컬 SSD 디스크 공간 750GB(또는 2개의 로컬 SSD 디스크)

할당량 한도

기본적으로 Compute Engine은 각 약정 리소스 유형에 대해 특정 양의 약정 할당량을 제공합니다. 이러한 할당량 한도에 따라 구매할 수 있는 약정 수와 약정할 수 있는 리소스 양이 결정됩니다. 약정 및 약정 리소스의 현재 할당량 한도 및 할당량 사용량 값을 보는 방법을 알아보려면 Google Cloud 콘솔에서 할당량 보기를 참조하세요.

서로 다른 리전의 프로젝트에서 매우 많은 양의 약정된 vCPU에 지속적으로 요금을 지불할 경우 모든 머신 유형(메모리 최적화 머신 유형 제외)에 약정된 vCPU에 대한 무제한 할당량을 사용할 수 있습니다.

약정 할당량을 모두 사용하면 새 약정을 구매할 수 없습니다. 마찬가지로 약정된 리소스 할당량이 소진되면 사용할 수 있는 약정 할당량이 있더라도 해당 리소스에 대한 새 약정을 구매할 수 없습니다. 예를 들어 약정 할당량을 모두 사용한 경우 약정 구매 요청을 보내면 서버가 다음 오류를 반환합니다.

"Quota 'COMMITMENTS' exceeded. Limit: 0.0"

할당량 한도 상향 조정

약정 또는 약정된 리소스에 대한 할당량이 충분하지 않은 경우 할당량 페이지에서 언제든지 할당량 상향 조정을 요청할 수 있습니다. 언제든지 할당량 상향 조정을 요청할 수 있습니다. 리소스의 할당량 한도 상향 요청을 제출하는 방법을 알아보려면 할당량 한도 상향 요청을 참조하세요.

예를 들어 us-central1에서 총 4개의 NVIDIA V100 GPU에 대해 2개의 약정을 구매하고 할당량 한도를 충족했다고 가정해 보겠습니다. 동일한 리전에서 2개의 NVIDIA V100 GPUs 각각에 2개의 새 약정을 구매하려는 경우 다음을 수행해야 합니다.

  1. 새 할당량 요청을 제출하여 us-central1Committed NVIDIA V100 GPUs 할당량을 원하는 새 최대 개수(8)로 늘립니다.
  2. 새 할당량 요청을 제출하여 원하는 새 최대 개수(4)와 일치하도록 us-central1Commitments 할당량을 상향 조정합니다.

    요청이 승인 및 종료될 때까지 기다리세요. 요청이 승인되면 us-central1의 약정 및 약정 GPU 할당량이 새 요구사항에 맞게 증가합니다. 그러면 새 약정을 구매할 수 있습니다.

기본적으로 이미 무제한 할당량이 있는 리소스에 할당량 한도 상향을 요청하면 해당 리소스의 할당량 값이 무제한으로 유지되며 요청한 한도가 승인된 한도보다 적다는 알림이 표시됩니다.

할당량 한도 상한 설정

소비자 할당량 재정의를 만들어 약정 리소스의 할당량 값에 상한을 설정할 수 있습니다. 기본적으로 무제한 할당량이 있는 리소스의 경우 소비자 할당량 재정의를 만들면 할당량 값이 줄어듭니다. 기본 할당량을 무제한 값으로 되돌리려면 약정된 SKU에 설정된 소비자 재정의를 삭제해야 합니다. 자세한 내용은 소비자 할당량 재정의 만들기소비자 할당량 재정의 삭제를 참조하세요.

리소스 할당량을 관리하는 방법에 대한 자세한 내용은 할당량 보기 및 관리를 참조하세요.

예약이 연결되지 않은 약정 구매

해당 리소스에 대한 예약을 연결하지 않고도 vCPU, 메모리 또는 둘 다에 대한 약정을 구매할 수 있습니다. Google Cloud 콘솔, gcloud CLI 또는 API를 사용하여 이러한 약정을 구매할 수 있습니다.

예약이 연결된 약정에 대한 자세한 내용은 리소스 기반 약정에 예약 연결을 참조하세요.

GPU, 로컬 SSD 디스크 또는 둘 다에 대한 약정을 구매하려면 예약이 연결된 약정 구매를 참조하세요.

기본적으로 프로젝트 소유자는 약정 사용 할인 예약을 구매할 권한이 있습니다. 소유자가 특정 사용자를 포함하거나 제외하는 커스텀 역할을 만들 수도 있습니다. 액세스 제어에 대해 확인하고 약정 사용 할인 계약을 구매할 권한이 있는지 확인하세요.

약정을 구매하면 미국 및 캐나다 태평양 표준시(UTC-8 또는 일광 절약 시간 중에는 UTC-7) 기준 다음 날 오전 12시에 약정이 활성화됩니다. Compute Engine은 약정을 구매한 프로젝트의 리전마다 프로젝트에 대한 선취권을 유지합니다. 프로젝트의 임의 리전에 대한 새 약정을 구매하면 Compute Engine이 해당 리전의 선취권을 새로 생성된 약정과 연결합니다.

약정 구매 시점부터 활성화 전까지는 약정 상태가 NOT_YET_ACTIVE(또는 Google Cloud 콘솔의 PENDING)로 유지됩니다. 활성화되면 약정 상태는 ACTIVE로 변경됩니다. 예를 들어 미국 및 캐나다 태평양 표준시(UTC-8 또는 UTC-7) 기준 1월 20일 오후 10시에 약정을 구매한다고 가정해 보겠습니다. Compute Engine에서 상태가 NOT_YET_ACTIVE인 약정을 즉시 만듭니다. 하지만 약정은 미국 및 캐나다 태평양 표준시(UTC-8 또는 UTC-7) 기준 1월 21일 오전 12시에만 ACTIVE가 됩니다.

할인은 지정된 리전의 인스턴스와 해당 할인을 구매하는 프로젝트에 자동으로 적용됩니다.

콘솔

Google Cloud 콘솔을 사용하여 약정을 구매하기 전에 약정을 구매하는 데 사용할 프로젝트를 선택합니다. Cloud Billing 계정에 할인 공유가 사용 설정된 경우 해당 Cloud Billing 계정 계정의 프로젝트를 사용하여 약정을 구매할 수 있습니다. 프로젝트를 선택한 후 다음 단계를 수행합니다.

  1. Google Cloud 콘솔에서 약정 사용 할인 페이지로 이동합니다.

    약정 사용 할인으로 이동

  2. 새 약정을 구매하려면 약정 구매를 클릭합니다.

  3. 약정 이름을 지정합니다.

  4. 적용할 리전을 선택합니다.

  5. 약정 유형을 선택합니다.

    • E2 머신 유형 리소스의 경우 범용 E2
    • N2 머신 유형 리소스의 경우 범용 N2
    • N2D 머신 유형 리소스의 경우 범용 N2D
    • C3 머신 유형 리소스의 경우 범용 C3
    • C3D 머신 유형 리소스의 경우 범용 C3D
    • Tau T2D 머신 유형 리소스의 경우 범용 T2D
    • N1 머신 유형 리소스의 경우 범용 N1
    • C2 머신 유형 리소스의 경우 컴퓨팅 최적화 C2
    • C2D 머신 유형 리소스의 경우 컴퓨팅 최적화 C2D
    • M1 및 M2 머신 유형 리소스의 경우 메모리 최적화 M1/M2
    • M3 머신 유형 리소스의 경우 메모리 최적화 M3
    • A2 머신 유형 리소스의 경우 가속기 최적화 A2
    • A3 머신 유형 리소스의 경우 가속기 최적화 A3
    • G2 머신 유형 리소스의 경우 그래픽 최적화 G2
  6. 약정 기간을 1년 또는 3년으로 선택합니다.

  7. 구매하려는 코어 또는 메모리 수량을 입력합니다. 하한은 없으며 0이 될 수 있습니다. 코어의 수량은 0 이상의 정수로 입력해야 합니다. 메모리는 0.25GB 단위로 구매할 수 있습니다.

  8. 구매 약관을 읽어보세요.

  9. 구매 버튼을 클릭하여 약정을 구매합니다.

gcloud

gcloud CLI를 사용하여 gcloud compute commitments create 명령어를 실행합니다.

gcloud compute commitments create COMMITMENT_NAME \
    --region REGION \
    --project PROJECT_ID \
    --resources vcpu=NUMBER_VCPUS,memory=MEMORY \
    --plan DURATION \
    --type COMMITMENT_TYPE

다음을 바꿉니다.

  • COMMITMENT_NAME: 이 약정을 확인할 이름
  • REGION: 이 약정이 적용되는 리전. 리전마다 약정 가격이 다릅니다. 현재 가격은 가격표를 참조하세요.
  • PROJECT_ID: 약정을 만들 프로젝트의 프로젝트 ID
  • NUMBER_VCPUS: 약정을 구매할 vCPU 수. vCPU 수는 0 이상의 정수여야 하며 짝수 또는 홀수일 수 있습니다.
  • MEMORY: 약정을 구매하려는 메모리의 크기(MB 또는 GB 단위). 예를 들면 1000MB입니다. 단위를 지정하지 않으면 기본 단위는 GB입니다. 메모리는 0.25GB 단위로 구매할 수 있습니다.
  • DURATION: 약정 기간(12-month 또는 36-month)
  • COMMITMENT_TYPE: 다음 중 하나입니다.

    • A2 머신 유형 리소스의 경우 accelerator-optimized
    • A3 머신 유형 리소스의 경우 accelerator-optimized-a3
    • C2 머신 유형 리소스의 경우 compute-optimized
    • C2D 머신 유형 리소스의 경우 compute-optimized-c2d
    • C3 머신 유형 리소스의 경우 compute-optimized-c3
    • C3D 머신 유형 리소스의 경우 compute-optimized-c3d
    • N1 머신 유형 리소스의 경우 general-purpose
    • E2 머신 유형 리소스의 경우 general-purpose-e2
    • N2 머신 유형 리소스의 경우 general-purpose-n2
    • N2D 머신 유형 리소스의 경우 general-purpose-n2d
    • Tau T2D 머신 유형 리소스의 경우 general-purpose-t2d
    • G2 머신 유형 리소스의 경우 graphics-optimized
    • M1 또는 M2 머신 유형 리소스의 경우 memory-optimized
    • M3 머신 유형 리소스의 경우 memory-optimized-m3

      --type 플래그를 지정하지 않으면 사용되는 기본값은 general-purpose입니다.

예시

  • N1 머신 유형에 대한 범용 약정을 만들려면 다음 예시를 사용합니다.

    gcloud compute commitments create example-commitment --region us-central1 \
      --resources vcpu=5,memory=33280MB --plan 12-month \
      --project=myproject
    
  • 컴퓨팅 최적화 약정을 만들려면 gcloud compute commitments create 명령어를 사용하여 컴퓨팅 최적화 머신 유형의 1년 약정을 구매합니다.

    gcloud compute commitments create example-compute-optimized-commitment \
      --region us-central1 --resources vcpu=2,memory=3814GB --plan 12-month \
      --type compute-optimized --project=myproject
    
  • 메모리 최적화 약정을 만들려면 다음 명령어를 사용합니다.

    gcloud compute commitments create example-memory-optimized-commitment \
      --region us-central1 --resources vcpu=96,memory=1434MB \
      --plan 12-month --type memory-optimized \
      --project=myproject
    
  • 가속기 최적화 약정을 만들려면 gcloud compute commitments create 명령어를 사용하여 지원되는 연결 예약으로 약정을 구매해야 합니다. 또한 필요한 총 리소스 수(GPU 포함)도 지정해야 합니다.

    GPU 약정을 만들 때 --accelerator--resources-accelerator 플래그를 지정해야 합니다. --accelerator 플래그는 각 VM에 연결된 GPU 수를 지정합니다. --resources-accelerator 플래그는 약정의 총 GPU 수를 지정합니다.

    예를 들어 다음 약정에는 vCPU 96개, 메모리 680GB, GPU 8개, us-central1-a의 VM 2개에서 해당 GPU를 사용하기 위한 예약이 포함됩니다.

    gcloud compute commitments create example-accelerator-optimized-commitment \
      --region=us-central1 \
      --project=myproject \
      --resources=vcpu=96,memory=680GB \
      --resources-accelerator=count=8,type=nvidia-tesla-a100 \
      --plan 12-month \
      --type accelerator-optimized \
    
      --reservation=reservation-01 \
      --reservation-zone=us-central1-a \
      --machine-type=a2-highgpu-4g \
      --accelerator=count=4,type=nvidia-tesla-a100 \
      --vm-count=2
    
    
  • GPU, 로컬 SSD 디스크 또는 둘 다에 약정을 만들려면 gcloud compute commitments create 명령어를 사용하여 연결된 예약이 있는 약정을 구매해야 합니다.

    GPU 약정을 만들 때 --accelerator--resources-accelerator 플래그를 지정해야 합니다. --accelerator 플래그는 각 VM에 연결된 GPU 수를 지정합니다. --resources-accelerator 플래그는 약정의 총 GPU 수를 지정합니다.

    예를 들어 다음 약정에는 GPU 4개와 us-central1-a 2개의 인스턴스에서 GPU를 사용할 예약이 포함됩니다.

    gcloud compute commitments create example-reservation-commitment \
      --region=us-central1 \
      --project=myproject \
      --resources=vcpu=96,memory=624GB \
      --resources-accelerator=type=nvidia-tesla-v100,count=4 \
      --plan 12-month \
      
      --reservation=reservation-01 \
      --reservation-zone=us-central1-a \
      --machine-type=n1-standard-32
      --accelerator=type=nvidia-tesla-v100,count=2 \
      --vm-count=2
      
    

REST

API에서 요청 본문에 약정 정보를 포함하여 regionCommitments.insert 메서드에 대해 POST 요청을 실행합니다.

https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments?requestId=OPTIONAL_UNIQUE_ID

리소스 본문에는 다음 항목이 포함되어야 합니다.

  • name: 약정 이름
  • plan: 약정 기간으로, TWELVE_MONTH 또는 THIRTY_SIX_MONTH
  • resources은 메모리 및 vCPU의 양을 지정하며, 메모리는 MB 단위로 지정해야 합니다. resources 섹션에서 VCPUMEMORY을 모두 지정해야 합니다.
  • 약정 type은 다음 중 하나입니다.

    • A2 머신 유형 리소스의 경우 ACCELERATOR_OPTIMIZED
    • A3 머신 유형 리소스의 경우 ACCELERATOR_OPTIMIZED_A3
    • C2 머신 유형 리소스의 경우 COMPUTE_OPTIMIZED
    • C2D 머신 유형 리소스의 경우 COMPUTE_OPTIMIZED_C2D
    • C3 머신 유형 리소스의 경우 COMPUTE_OPTIMIZED_C3
    • C3D 머신 유형 리소스의 경우 COMPUTE_OPTIMIZED_C3D
    • N1 머신 유형 리소스의 경우 GENERAL_PURPOSE
    • E2 머신 유형 리소스의 경우 GENERAL_PURPOSE_E2
    • N2 머신 유형 리소스의 경우 GENERAL_PURPOSE_N2
    • N2D 머신 유형 리소스의 경우 GENERAL_PURPOSE_N2D
    • Tau T2D 머신 유형 리소스의 경우 GENERAL_PURPOSE_T2D
    • G2 머신 유형 리소스의 경우 GRAPHICS_OPTIMIZED
    • M1 또는 M2 머신 유형 리소스의 경우 MEMORY_OPTIMIZED
    • M3 머신 유형 리소스의 경우 MEMORY_OPTIMIZED_M3

예를 들어 다음 경우에는 vCPU 5개와 18.75GB의 메모리에 1년 약정이 생성됩니다.

{
  "name": "example-commitment",
  "plan": "TWELVE_MONTH",
  "type": "GENERAL_PURPOSE",
  "resources": [
    {
    "amount": "5",
    "type": "VCPU"
    },
    {
    "amount": "19200",
    "type": "MEMORY"
    }
  ]
}

메모리 최적화 약정을 만들려면 type 속성을 포함합니다. 다음 예시는 m1-megamem-96 머신 유형의 1년 약정을 구매한 경우를 보여줍니다.

{
  "name": "example-memory-optimized-commitment",
  "plan": "TWELVE_MONTH",
  "type": "MEMORY_OPTIMIZED",
  "resources": [
    {
    "amount": "96",
    "type": "VCPU"
    },
    {
    "amount": "1434",
    "type": "MEMORY"
    }
  ]
}

컴퓨팅 최적화 약정을 만들려면 type 속성을 포함합니다. 다음 예시는 c2-standard-16 머신 유형에 대한 1년 약정을 구매한 경우입니다.

{
  "name": "example-compute-optimized-commitment",
  "plan": "TWELVE_MONTH",
  "type": "COMPUTE_OPTIMIZED",
  "resources": [
    {
    "amount": "16",
    "type": "VCPU"
    },
    {
    "amount": "1434",
    "type": "MEMORY"
    }
  ]
}

연결된 예약이 있는 약정 구매

새 약정을 구매할 때 다음 방법 중 하나로 약정에 예약을 연결할 수 있습니다.

약정을 구매하면 미국 및 캐나다 태평양 표준시(UTC-8 또는 일광 절약 시간 중에는 UTC-7) 기준 다음 날 오전 12시에 약정이 활성화됩니다. 약정 구매 시점부터 활성화 전까지는 약정 상태가 NOT_YET_ACTIVE(또는 Google Cloud 콘솔의 PENDING)로 유지됩니다. 활성화되면 약정 상태는 ACTIVE로 변경됩니다. 예를 들어 미국 및 캐나다 태평양 표준시(UTC-8 또는 UTC-7) 기준 1월 20일 오후 10시에 약정을 구매한다고 가정해 보겠습니다. Compute Engine에서 상태가 NOT_YET_ACTIVE인 약정을 즉시 만듭니다. 하지만 약정은 미국 및 캐나다 태평양 표준시(UTC-8 또는 UTC-7) 기준 1월 21일 오전 12시에만 ACTIVE가 됩니다.

요구사항

연결된 예약이 있는 약정을 구매하려면 먼저 이러한 요구사항을 검토하고 약정 및 예약이 다음 조건을 충족하는지 확인합니다.

  • 약정을 구매하고 동일한 프로젝트 및 리전에서 연결된 예약을 만들어야 합니다.
  • 약정을 구매하고 동일한 머신 계열 시리즈의 리소스에 대해 연결된 예약을 만들어야 합니다.
  • 연결된 예약에서 자동 삭제 옵션을 사용 중지해야 합니다.
  • 약정에 GPU가 포함된 경우 예약에 지정된 GPU 유형과 약정이 일치해야 합니다.
  • GPU와 로컬 SSD 디스크의 경우 각 리소스 유형의 예약된 리소스 수가 해당 리소스 유형에 약정된 리소스 수와 정확히 일치해야 합니다. 예를 들어 V100 GPU 4개의 약정을 구매하려면 약정의 연결된 예약에 V100 GPU 총 4개를 지정해야 합니다. 하지만 예약하는 vCPU 및 메모리의 크기는 약정하는 크기보다 크거나 작을 수 있습니다.
  • GPU의 경우 사용할 특정 GPU 유형의 약정을 구매합니다. 예를 들어 NVIDIA P100 또는 NVIDIA V100의 약정을 구매할 수 있지만 NVIDIA P100 GPU용으로 구매한 약정을 사용하여 NVIDIA V100 GPU를 적용할 수는 없습니다.
  • 연결된 예약이 공유 예약이고 약정 프로젝트 외부에서 해당 예약을 소비할 때 적용 가능한 CUD를 받으려면 다음 작업을 모두 수행해야 합니다.

    • 약정과 동일한 Cloud Billing 계정에 속하는 프로젝트 사이에만 예약을 공유합니다.
    • 해당 Cloud Billing 계정에 CUD 공유를 사용 설정합니다.

기존 예약 연결

Google Cloud CLI 또는 REST를 사용해서 약정에 기존 예약을 연결하여 약정을 구매할 수 있습니다.

gcloud

기존 예약을 연결하여 약정을 구매하려면 gcloud compute commitments create 명령어를 실행합니다. 명령어에 --existing-reservation 플래그를 포함하여 약정에 연결하려는 기존 예약을 지정합니다. 연결하려는 기존 예약에 대해 이 플래그의 새 인스턴스를 포함합니다. 약정에 기존 예약을 원하는 만큼 연결할 수 있습니다.

예를 들어 2개의 예약을 연결하여 약정을 구매하려면 다음 명령어를 실행합니다.

gcloud compute commitments create COMMITMENT_NAME \
    --region=REGION \
    --project=PROJECT_ID \
    --resources=vcpu=COMMITTED_VCPUS,memory=COMMITTED_MEMORY,local-ssd=COMMITTED_LOCAL_SSD \
    --resources-accelerator=count=COMMITTED_ACCELERATOR_COUNT,type=COMMITTED_ACCELERATOR_TYPE \
    --plan=DURATION \
    --type=COMMITMENT_TYPE \
    --existing-reservation=name='RESERVATION_NAME_1',zone='RESERVATION_ZONE_1' \
    --existing-reservation=name='RESERVATION_NAME_2',zone='RESERVATION_ZONE_2'

다음을 바꿉니다.

  • COMMITMENT_NAME: 약정의 이름입니다.
  • REGION: 약정이 있는 리전입니다.
  • PROJECT_ID: 연결된 예약이 있는 약정을 구매하려는 프로젝트의 ID입니다.
  • DURATION: 약정 기간입니다(12-month 또는 36-month).
  • COMMITMENT_TYPE: 약정 유형입니다. 다음 약정 유형은 GPU, 로컬 SSD 디스크 또는 둘 다를 위한 옵션을 제공합니다.

    • 머신 유형 리소스의 경우 accelerator-optimized
    • C2 머신 유형 리소스의 경우 compute-optimized
    • C2D 머신 유형 리소스의 경우 compute-optimized-c2d
    • C3 머신 유형 리소스의 경우 compute-optimized-c3
    • C3D 머신 유형 리소스의 경우 compute-optimized-c3d
    • N1 머신 유형 리소스의 경우 general-purpose
    • E2 머신 유형 리소스의 경우 general-purpose-e2
    • N2 머신 유형 리소스의 경우 general-purpose-n2
    • N2D 머신 리소스의 경우 general-purpose-n2d
    • Tau T2D 머신 유형 리소스의 경우 general-purpose-t2d
    • G2 머신 유형 리소스의 경우 graphics-optimized
    • M1 또는 M2 머신 유형 리소스의 경우 memory-optimized
    • 메모리 최적화 M3 머신 유형의 경우 memory-optimized-m3
  • COMMITTED_VCPUS: 약정에 포함할 vCPU 수입니다. 값은 양의 정수여야 합니다.

  • COMMITTED_MEMORY: 약정에 포함하려는 메모리 크기(MB 또는 GB)입니다. 예를 들면 10240MB 또는 10GB입니다. 단위를 지정하지 않으면 Compute Engine에서 GB가 단위로 사용됩니다. 메모리는 0.25GB 단위로 구매할 수 있습니다.

  • COMMITTED_LOCAL_SSD: 약정에 포함하려는 로컬 SSD 공간의 크기(GB)입니다. 각 로컬 SSD 디스크는 375GB입니다.

  • COMMITTED_ACCELERATOR_COUNT: 약정에 포함할 GPU 수입니다.

  • COMMITTED_ACCELERATOR_TYPE: 약정에 포함할 GPU 유형입니다.

  • RESERVATION_NAME_1RESERVATION_NAME_2: 약정에 연결하려는 기존 예약의 이름입니다.

  • RESERVATION_ZONE_1RESERVATION_ZONE_2: 약정에 연결하려는 기존 예약의 영역입니다.

예시: 기존 예약을 연결하여 약정 구매

myproject 프로젝트의 us-central1-aus-central1-b 영역에 res-01res-02의 2개 예약이 있다고 가정해 보세요. 이러한 예약에는 NVIDIA P100 GPU 4개 및 로컬 SSD 디스크 4개가 조합된 용량이 포함됩니다. 이러한 GPU 및 로컬 SSD 디스크에 대해 이 프로젝트의 us-central1 리전에서 새 약정을 구매하고 이러한 기존 예약을 연결된 예약으로 사용하려면 다음 명령어를 실행합니다. 예시 약정에는 vCPU와 메모리도 포함됩니다.

gcloud compute commitments create commitment-01 \
    --region=us-central1 \
    --project=myproject \
    --resources=vcpu=96,memory=624GB \
    --resources-accelerator=type=nvidia-tesla-v100,count=4 \
    --plan 12-month \
    --existing-reservation=name=res-01,zone=us-central1-a \
    --existing-reservation=name=res-02,zone=us-central1-b
    

REST

기존 예약을 연결하여 약정을 구매하려면 regionCommitments.insert 메서드에 대해 POST 요청을 수행합니다. 요청에 existingReservations 필드를 포함하여 약정에 연결하려는 모든 기존 예약의 쉼표로 구분된 목록을 지정합니다. 약정에 기존 예약을 원하는 만큼 연결할 수 있습니다.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments

{
  "name": "COMMITMENT_NAME",
  "plan": "DURATION",
  "type": COMMITMENT_TYPE,
  "resources":
  [
    {
      "amount": "COMMITTED_VCPUS",
      "type": "VCPU"
    },
    {
      "amount": "COMMITTED_MEMORY",
      "type": "MEMORY"
    },
    {
      "acceleratorType": "COMMITTED_ACCELERATOR_TYPE",
      "amount": "COMMITTED_ACCELERATOR_COUNT",
      "type": "ACCELERATOR"
    }
    {
      "amount": "COMMITTED_LOCAL_SSD",
      "type": "LOCAL_SSD"
    }
  ],
  "existingReservations": "RESERVATION_URLs"
}

다음을 바꿉니다.

  • COMMITMENT_NAME: 약정의 이름입니다.
  • REGION: 약정이 있는 리전입니다.
  • PROJECT_ID: 연결된 예약이 있는 약정을 구매하려는 프로젝트의 ID입니다.
  • DURATION: 약정 기간입니다(TWELVE_MONTH 또는 THIRTY_SIX_MONTH).
  • COMMITMENT_TYPE: 약정 유형입니다. 다음 약정 유형은 GPU, 로컬 SSD 디스크 또는 둘 다를 위한 옵션을 제공합니다.

    • E2 머신 유형 리소스의 경우 GENERAL_PURPOSE_E2
    • N2 머신 유형 리소스의 경우 GENERAL_PURPOSE_N2
    • N2D 머신 리소스의 경우 GENERAL_PURPOSE_N2D
    • C3 머신 유형 리소스의 경우 COMPUTE_OPTIMIZED_C3
    • C3D 머신 유형 리소스의 경우 GENERAL_PURPOSE_C3D
    • Tau T2D 머신 유형 리소스의 경우 GENERAL_PURPOSE_T2D
    • N1 머신 유형 리소스의 경우 GENERAL_PURPOSE
    • C2 머신 유형 리소스의 경우 COMPUTE_OPTIMIZED
    • C2D 머신 유형 리소스의 경우 COMPUTE_OPTIMIZED_C2D
    • M1 또는 M2 머신 유형 리소스의 경우 MEMORY_OPTIMIZED
    • 메모리 최적화 M3 머신 유형의 경우 MEMORY_OPTIMIZED_M3
    • 머신 유형 리소스의 경우 ACCELERATOR_OPTIMIZED
    • G2 머신 유형 리소스의 경우 GRAPHICS_OPTIMIZED
  • COMMITTED_VCPUS: 약정에 포함할 vCPU 수입니다. 값은 양의 정수여야 합니다.

  • COMMITTED_MEMORY: 약정에 포함하려는 메모리의 크기(MB)입니다. 예를 들면 10240MB입니다. 메모리는 256MB 단위로 구매할 수 있습니다.

  • COMMITTED_LOCAL_SSD: 약정에 포함하려는 로컬 SSD 스토리지의 크기(GB)입니다. 각 로컬 SSD 디스크는 375GB입니다.

  • COMMITTED_ACCELERATOR_COUNT: 약정에 포함할 GPU 수입니다.

  • COMMITTED_ACCELERATOR_TYPE: 약정에 포함할 GPU 유형입니다.

  • RESERVATION_URLs: 약정에 연결하려는 기존 예약의 쉼표로 구분된 URL 목록입니다. 예를 들어 res-1res-2라는 2개의 예약을 연결하려면 다음을 지정합니다.

    "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/reservations/example-res-1",
    "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-c/reservations/example-res-2"
    

예시: 기존 예약을 연결하여 약정 구매

myproject 프로젝트의 us-central1-aus-central1-b 영역에 res-01res-02의 2개 예약이 있다고 가정해 보세요. 이러한 예약에는 NVIDIA P100 GPU 4개 및 로컬 SSD 디스크 4개가 조합된 용량이 포함됩니다. 이러한 GPU 및 로컬 SSD 디스크에 대해 이 프로젝트의 us-central1 리전에서 새 약정을 구매하고 이러한 기존 예약을 연결된 예약으로 사용하려면 다음 POST 요청을 수행합니다. 예시 약정에는 vCPU와 메모리도 포함됩니다.

POST https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-central1/commitments

{
  "name": "commitment-01",
  "plan": "TWELVE_MONTH",
  "type": "GENERAL_PURPOSE"
  "resources":
  [
    {
      "amount": "96",
      "type": "VCPU"
    },
    {
      "amount": "638976",
      "type": "MEMORY"
    },
    {
      "acceleratorType": "nvidia-tesla-v100",
      "amount": "4",
      "type": "ACCELERATOR"
    },
    {
      "amount": "1536000",
      "type": "LOCAL_SSD"
    }
  ],
  "existingReservations":
  [
    "https://www.googleapis.com/compute/v1/projects/my-project/zone/us-central1-a/reservations/res-01",
    "https://www.googleapis.com/compute/v1/projects/my-project/zone/us-central1-b/reservations/res-02"
  ]
}

연결할 새 예약 만들기

Google Cloud 콘솔, Google Cloud CLI 또는 REST를 사용하여 약정을 구매하는 동안 연결된 예약을 만들 수 있습니다.

콘솔

Google Cloud 콘솔을 사용하여 약정을 구매하기 전에 약정을 구매하는 데 사용할 프로젝트를 선택합니다. Cloud Billing 계정에 할인 공유가 사용 설정된 경우 해당 Cloud Billing 계정 계정의 프로젝트를 사용하여 약정을 구매할 수 있습니다. 프로젝트를 선택한 후 다음을 수행합니다.

  1. Google Cloud 콘솔에서 약정 사용 할인 페이지로 이동합니다.

    약정 사용 할인으로 이동

  2. 새 약정을 구매하려면 약정 구매를 클릭합니다.

  3. 약정 이름을 지정하고 적용할 리전을 선택합니다.

  4. 약정 유형을 선택합니다. 다음 약정 유형은 GPU, 로컬 SSD 디스크 또는 둘 다를 위한 옵션을 제공합니다.

    • C3 머신 유형 리소스의 경우 범용 C3
    • C3D 머신 유형 리소스의 경우 범용 C3D
    • N2 머신 유형 리소스의 경우 범용 N2
    • N2D 머신 유형 리소스의 경우 범용 N2D
    • N1 머신 유형 리소스의 경우 범용 N1
    • H3 머신 유형 리소스의 경우 컴퓨팅 최적화 H3
    • C2 머신 유형 리소스의 경우 컴퓨팅 최적화 C2
    • C2D 머신 유형 리소스의 경우 컴퓨팅 최적화 C2D
    • M1 및 M2 머신 유형 리소스의 경우 메모리 최적화 M1/M2
    • M3 머신 유형 리소스의 경우 메모리 최적화 M3
    • A3 머신 유형 리소스의 경우 가속기 최적화 A3
    • A2 머신 유형 리소스의 경우 가속기 최적화 A2
    • G2 머신 유형 리소스의 경우 그래픽 최적화 G2
  5. 약정 기간을 1년 또는 3년으로 선택합니다.

  6. 구매하려는 코어메모리 수량을 입력합니다. vCPU와 메모리에 대한 약정 없이 GPU 또는 로컬 SSD 디스크만 약정하고 예약하려면 vCPU와 메모리 약정 수량을 0으로 지정합니다.

  7. GPU 추가를 클릭하고 약정할 GPU 유형GPU 수를 선택합니다.

  8. 로컬 SSD 추가를 클릭하고 약정할 디스크 수를 지정합니다.

  9. 예약을 만들고 약정에 연결하려면 예약 추가를 클릭합니다.

    1. 이름 필드에 예약 이름을 입력합니다.
    2. 리소스를 예약할 리전영역을 선택합니다.
    3. 원하는 공유 유형을 선택합니다.
      • 단일 프로젝트에 대한 예약을 만들려면 로컬을 선택합니다.
      • 여러 프로젝트 간에 공유 예약을 만들려면 공유를 선택합니다. 이 예약을 다른 프로젝트와 공유하려면 프로젝트 추가를 클릭하고 현재 프로젝트의 조직에서 원하는 프로젝트를 선택합니다.
    4. VM 인스턴스와 함께 사용 필드에서 다음 옵션 중 하나를 선택합니다.

      • 이름을 통해 이 예약을 명시적으로 타겟팅하는 일치하는 VM을 만들 때만 이 예약의 리소스를 사용하려면 특정 예약 선택을 선택합니다.
      • 일치하는 VM 인스턴스에서 이 예약을 자동으로 사용하도록 허용하려면 예약 자동 사용을 선택합니다.
    5. VM 인스턴스 수 필드에 예약할 VM 인스턴스 수를 입력합니다.

    6. VM 인스턴스마다 예약할 리소스를 지정합니다.

      • 기존 인스턴스 템플릿과 일치하는 VM을 예약하려면 인스턴스 템플릿 사용을 선택하고 목록에서 인스턴스 템플릿을 선택합니다.
      • 또는 머신 유형 지정을 선택하고 다음을 지정합니다.
        1. 머신 계열 필드에서 범용, 컴퓨팅 최적화, 메모리 최적화 또는 GPU 머신 계열을 선택합니다.
        2. 시리즈머신 유형 필드에서 머신 시리즈와 머신 유형을 선택합니다.
        3. 선택사항: 최소 CPU 플랫폼 또는 GPU를 지정합니다.
          1. CPU 플랫폼 및 GPU를 클릭하여 섹션을 펼칩니다.
          2. 선택사항: 최소 CPU 플랫폼을 지정하려면 CPU 플랫폼 목록에서 옵션을 선택합니다.
          3. 선택사항: GPU를 추가하려면 GPU 추가를 클릭합니다. 그런 다음 GPU 유형 필드와 GPU 수 필드에서 각 VM의 GPU 유형과 수를 선택합니다.
        4. 선택사항: 로컬 SSD 디스크를 추가합니다.
          1. 디스크 수 필드에서 각 VM의 로컬 SSD 디스크 수를 선택합니다.
          2. 인터페이스 유형 필드에서 로컬 SSD 디스크의 인터페이스를 선택합니다.
    7. 이 예약의 속성 지정을 완료하려면 완료를 클릭합니다.

  10. 구매 버튼을 클릭하여 약정을 구매합니다.

  11. 구매 약관을 읽고 약정을 구매할 준비가 되면 구매를 클릭합니다.

gcloud

약정을 구매하는 동안 연결된 예약을 만들려면 gcloud compute commitments create 명령어를 실행합니다.

단일 예약 또는 다중 예약을 연결할지 여부에 따라 다음 방법 중 하나로 명령어를 실행합니다.

  • 단일 예약을 만들고 약정에 연결하려면 다음 명령어를 실행하여 연결된 예약의 속성을 정의합니다.

    gcloud compute commitments create COMMITMENT_NAME \
        --region=REGION \
        --project=PROJECT_ID \
        --plan DURATION \
        --type COMMITMENT_TYPE
        --resources=vcpu=COMMITTED_VCPUS,memory=COMMITTED_MEMORY,local-ssd=COMMITTED_LOCAL_SSD \
        --resources-accelerator=count=COMMITTED_ACCELERATOR_COUNT,type=COMMITTED_ACCELERATOR_TYPE \
        --reservation=RESERVATION_NAME \
        --reservation-zone=RESERVATION_ZONE \
        --machine-type=RESERVED_MACHINE_TYPE \
        --require-specific-reservation=REQUIRE_SPECIFIC_RESERVATION_VALUE \
        --vm-count=NUMBER_OF_RESERVED_VMs \
        --accelerator=type=RESERVED_ACCELERATOR_TYPE,count=RESERVED_ACCELERATOR_COUNT \
        --local-ssd=interface=INTERFACE_1,size=375 \
        --local-ssd=interface=INTERFACE_2,size=375 \
        --minimum-cpu-platform=MINIMUM_CPU_PLATFORM \
        --share-setting=SHARE_SETTING \
        --share-with=CONSUMER_PROJECT_ID_1,CONSUMER_PROJECT_ID_2
    
  • 다중 예약을 만들고 약정에 연결하려면 YAML 파일을 사용해서 예약 속성을 정의한 후 약정 구매를 위해 사용하는 명령어에 이 YAML 파일을 지정합니다. 또한 선택적으로 이 YAML 파일 방법을 사용해서 단일 예약을 만들고 약정에 연결할 수도 있습니다. 이 방법을 사용해서 연결된 예약을 만들려면 다음을 수행합니다.

    1. 현재 디렉터리에 YAML 파일을 만들고 연결된 각 예약에 대해 원하는 구성을 지정합니다. 예를 들어 GPU, 2개의 로컬 SSD 디스크, 최소 CPU 플랫폼을 지정하는 2개의 프로젝트와 공유된 공유 예약 구성을 지정하려면 YAML 파일에 다음 텍스트를 포함합니다.

      - reservation: RESERVATION_NAME
        reservation_zone: RESERVATION_ZONE
        require_specific_reservation: REQUIRE_SPECIFIC_RESERVATION_VALUE
        vm_count: NUMBER_OF_RESERVED_VMs
        machine_type: RESERVED_MACHINE_TYPE
        accelerator:
        - count: RESERVED_ACCELERATOR_COUNT
          type: RESERVED_ACCELERATOR_TYPE
        localssd:
        - interface: INTERFACE_1
          size: 375
        - interface: INTERFACE_2
          size: 375
        project: OWNER_PROJECT_ID
        minimum-cpu-platform: MINIMUM_CPU_PLATFORM
        share-setting: SHARE_SETTING
        share-with:
        - CONSUMER_PROJECT_ID_1
        - CONSUMER_PROJECT_ID_2
      
      

      다중 예약 구성을 지정하려면 만들려는 각 예약에 대해 해당 속성을 반복합니다. 기존 예약을 원하는 만큼 약정에 연결할 수 있습니다.

    2. gcloud compute commitments create 명령어를 실행하고 --reservation-from-file 플래그를 포함합니다.

      gcloud compute commitments create COMMITMENT_NAME \
          --region REGION \
          --project PROJECT_ID \
          --plan DURATION \
          --type COMMITMENT_TYPE \
          --resources=vcpu=COMMITTED_VCPUS,memory=COMMITTED_MEMORY,local-ssd=COMMITTED_LOCAL_SSD \
          --resources-accelerator=count=COMMITTED_ACCELERATOR_COUNT,type=COMMITTED_ACCELERATOR_TYPE \
          --reservations-from-file=YAML_FILE
      

다음을 약정 및 연결된 예약의 해당 속성으로 바꿉니다.

약정

  • COMMITMENT_NAME: 약정의 이름입니다.
  • REGION: 약정이 있는 리전입니다.
  • PROJECT_ID: 연결된 예약이 있는 약정을 구매하려는 프로젝트의 ID입니다.
  • DURATION: 약정 기간입니다(12-month 또는 36-month).
  • COMMITMENT_TYPE: 약정 유형입니다. 다음 약정 유형은 GPU, 로컬 SSD 디스크 또는 둘 다를 위한 옵션을 제공합니다.

    • E2 머신 유형 리소스의 경우 general-purpose-e2
    • N2 머신 유형 리소스의 경우 general-purpose-n2
    • N2D 머신 리소스의 경우 general-purpose-n2d
    • C3 머신 유형 리소스의 경우 compute-optimized-c3
    • C3D 머신 유형 리소스의 경우 general-purpose-c3d
    • Tau T2D 머신 유형 리소스의 경우 general-purpose-t2d
    • N1 머신 유형 리소스의 경우 general-purpose
    • C2 머신 유형 리소스의 경우 compute-optimized
    • C2D 머신 유형 리소스의 경우 compute-optimized-c2d
    • M1 또는 M2 머신 유형 리소스의 경우 memory-optimized
    • 메모리 최적화 M3 머신 유형의 경우 memory-optimized-m3
    • 머신 유형 리소스의 경우 accelerator-optimized
    • G2 머신 유형 리소스의 경우 graphics-optimized
  • COMMITTED_VCPUS: 약정에 포함할 vCPU 수입니다. 값은 양의 정수여야 합니다.

  • COMMITTED_MEMORY: 약정에 포함하려는 메모리 크기(MB 또는 GB)입니다. 예를 들면 10GB 또는 10240MB입니다. 단위를 지정하지 않으면 Compute Engine에서 GB가 단위로 사용됩니다. 메모리는 0.25GB 단위로 구매할 수 있습니다.

  • COMMITTED_LOCAL_SSD: 약정에 포함하려는 로컬 SSD 스토리지의 크기(GB)입니다. 각 로컬 SSD 디스크는 375GB입니다.

  • COMMITTED_ACCELERATOR_COUNT: 약정에 포함할 GPU 수입니다.

  • COMMITTED_ACCELERATOR_TYPE: 약정에 포함할 GPU 유형입니다.

  • YAML_FILE: 연결된 예약의 구성이 포함된 YAML 파일의 경로입니다.

연결된 예약

  • RESERVATION_NAME: 연결된 예약의 이름입니다.
  • RESERVATION_ZONE: 연결된 예약의 영역입니다.
  • REQUIRE_SPECIFIC_RESERVATION_VALUE: 연결된 예약이 특정 대상이 지정된 예약인지 여부를 지정합니다. true 또는 false입니다. 특정 대상이 지정된 예약에 대한 자세한 내용은 예약 작동 방법을 참조하세요.
  • NUMBER_OF_RESERVED_VMS: 연결된 예약에서 예약하려는 VM 수입니다.
  • RESERVED_MACHINE_TYPE: 연결된 예약에서 VM에 사용하려는 머신 유형입니다.

    • 사전 정의된 머신 유형의 경우 MACHINE_FAMILY-standard-CPUS 형식을 사용합니다(예: n2-standard-4).
    • 커스텀 머신 유형의 경우 MACHINE_FAMILY-custom-CPUS-MEMORY 형식을 사용합니다(예: n2-custom-4-5120). 제한사항의 전체 목록은 커스텀 머신 유형의 사양을 참조하세요.

      다음을 바꿉니다.

      • MACHINE_FAMILY: 머신 유형의 계열. 예를 들어 N2 VM의 경우 n2를 지정합니다.
      • CPUS: vCPU의 수
      • MEMORY: 예약된 VM의 총 메모리입니다. 메모리는 256MB의 배수여야 하며 MB 단위로 제공되어야 합니다. 예를 들어 vCPU 4개, 5GB(5,120MB) 메모리의 N2 VM을 만들려면 n2-custom-4-5120을 사용합니다.
  • RESERVED_ACCELERATOR_COUNT: 연결된 예약에서 VM당 추가하려는 GPU 수입니다.

  • RESERVED_ACCELERATOR_TYPE: 연결된 예약에서 추가하려는 가속기 유형입니다.

  • INTERFACE_1INTERFACE_2: 예약된 각 VM에서 로컬 SSD 디스크에 사용할 인터페이스 유형입니다. 유효한 옵션은 scsinvme입니다. 각 로컬 SSD 디스크는 375GB입니다. 추가하려는 각 로컬 SSD 디스크에 대해 local_ssd 매개변수를 반복합니다. 로컬 SSD 디스크를 최대 24개까지 지정할 수 있습니다.

  • OWNER_PROJECT_ID: 연결된 예약이 있는 약정을 구매하려는 프로젝트의 ID입니다. 여러 소비자 프로젝트 간에 연결된 예약을 공유하려면 이 필드를 지정합니다.

  • MINIMUM_CPU_PLATFORM: 연결된 예약에 지정하려는 최소 CPU 플랫폼입니다.

  • SHARE_SETTING: 연결된 예약의 공유 유형입니다. 여러 소비자 프로젝트 간에 연결된 예약을 공유하려면 이 필드의 값을 projects로 지정합니다. 단일 프로젝트 예약을 만들려면 이 필드를 제외합니다.

  • CONSUMER_PROJECT_ID_1CONSUMER_PROJECT_ID_2: 이 예약을 공유할 수 있는 프로젝트의 프로젝트 ID입니다(예: project-1project-2). 소비자 프로젝트를 최대 100개까지 포함할 수 있습니다. 이러한 프로젝트는 소유자 프로젝트와 동일한 조직에 있어야 합니다. 기본적으로 프로젝트가 이 예약을 소비하도록 허용되므로 이 예약을 만드는 프로젝트의 ID를 포함하지 마세요. 단일 프로젝트 예약을 만들려면 이러한 필드를 제외합니다.

Compute Engine은 대상 영역에 지정된 머신 유형의 리소스가 충분하고 요청 시 할당량이 충분한 경우에만 약정 및 연결된 예약을 만듭니다. 구매가 성공하면 다음과 비슷한 성공 메시지가 표시됩니다.

Created[https://www.googleapis.com/compute/v1/projects/your-project/regions/your-region/commitments/your-commitment-name]

연결할 새 예약을 만들어서 약정을 구매하는 예시

다음 예시 시나리오 및 명령어는 새 예약을 만들고 이를 약정에 연결해서 GPU나 로컬 SSD 디스크 또는 둘 다에 대한 약정을 구매하는 방법을 보여줍니다.

예시 1: 단일 새 예약을 연결하여 GPU 약정 구매

us-central1 리전에서 NVIDIA V100 GPU 4개가 포함된 commitment-01 약정을 구매한다고 가정해 보세요. 새 예약 reservation-01을 이러한 GPU에 대한 연결된 예약으로 만들어야 합니다. 또한 Compute Engine이 us-central1-a 영역에서 2개의 n1-standard-32 VM에 이러한 예약된 GPU를 사용하도록 지정해야 합니다. 연결된 예약이 있는 이 예시 약정을 구매하려면 다음 명령어를 실행합니다.

gcloud compute commitments create commitment-01 \
    --region=us-central1 \
    --project=myproject \
    --resources=vcpu=96,memory=624GB \
    --resources-accelerator=type=nvidia-tesla-v100,count=4 \
    --plan 12-month \
    --reservation=reservation-01 \
    --reservation-zone=us-central1-a \
    --machine-type=n1-standard-32 \
    --accelerator=type=nvidia-tesla-v100,count=2 \
    --vm-count=2

예시 2: vCPU 또는 메모리 약정 없이 GPU에 대한 약정 구매

vCPU 또는 메모리 약정 없이 GPU 및 로컬 SSD 디스크를 약정하고 예약하려면 vCPU 및 메모리 수량의 값으로 0을 지정합니다. 예를 들어 us-west2 리전에서 단일 NVIDIA P4 GPU에 대해 commitment-02 약정을 구매한다고 가정해 보세요. 또한 새 예약을 연결된 예약으로 만들고 Compute Engine이 us-west2-b 영역에서 n1-standard-2 VM에 예약된 GPU를 사용하도록 지정합니다. 연결된 예약이 있는 이 예시 약정을 구매하려면 다음 명령어를 실행합니다.

gcloud compute commitments create commitment-02 \
    --region=us-west2 \
    --project=myproject \
    --resources=vcpu=0,memory=0 \
    --resources-accelerator=type=nvidia-tesla-p4,count=1 \
    --plan 12-month \
    --reservation=reservation-01 \
    --reservation-zone=us-west2-b \
    --machine-type=n1-standard-2 \
    --accelerator=type=nvidia-tesla-p4,count=1 \
    --vm-count=1

예시 3: 새로운 다중 예약을 연결하여 GPU 및 로컬 SSD 디스크의 약정 구매

us-central1 리전에서 NVIDIA V 100 GPU 1개 및 로컬 SSD 디스크 2개에 대해 commitment-03 약정을 구매한다고 가정해 보세요. 또한 us-central1-a 영역에서 2개의 예약을 만들고 연결하려고 합니다. 첫 번째 예약 res-01에서 GPU 1개가 있는 n1-standard-2 VM 1개를 예약하려고 합니다. res-01을 대상이 지정된 예약으로 만들어야 합니다. 즉, 예약된 VM을 사용하도록 이름별로 예약 대상을 지정해야 합니다. 두 번째 예약 res-02에서 두 가지 유형의 연결된 로컬 SSD 디스크가 있는 n1-standard-8 VM 1개를 예약합니다.

연결된 예약이 있는 이 예시 약정을 구매하려면 먼저 두 예약의 속성을 사용해서 YAML 파일을 만듭니다.

- reservation: res-01
  reservation_zone: us-central1-a
  require_specific_reservation: true
  vm_count: 1
  machine_type: n1-standard-2
  accelerator:
  - count: 1
    type: nvidia-tesla-v100
- reservation: res-02
  reservation_zone: us-central1-a
  vm_count: 1
  machine_type: n1-standard-8
  local_ssd:
  - interface: scsi
    size: 375
  - interface: nvme
    size: 375

YAML 파일을 만든 후 연결된 예약이 있는 약정 구매를 완료하기 위해 다음 명령어를 실행합니다. 예시 약정에는 vCPU 및 메모리 리소스도 포함됩니다.

gcloud compute commitments create commitment-03 \
    --region=us-central1 \
    --project=myproject \
    --resources=vcpu=96,memory=624,local-ssd=750 \
    --resources-accelerator=type=nvidia-tesla-v100,count=1 \
    --plan 12-month \
    --reservations-from-file=YAML_FILE

REST

약정을 구매하는 동안 연결된 예약을 만들려면 regionCommitments.insert 메서드에 대해 POST 요청을 수행합니다. 요청에서 reservations 필드를 포함하여 만들고 연결하려는 모든 새 예약 목록을 정의합니다. 기존 예약을 원하는 만큼 약정에 연결할 수 있습니다.

  • 모든 VM 속성을 수동으로 지정하여 새 예약을 만들려면 instanceProperties 필드를 포함하고 sourceInstanceTemplate 필드는 제외합니다.

    예를 들어 GPU, 로컬 SSD 디스크 2개, 최소 CPU 플랫폼을 지정하는 2개의 프로젝트와 공유된 공유 예약 구성을 수동으로 지정하려면 다음 요청을 수행합니다.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments
    
    {
    "name": "COMMITMENT_NAME",
    "plan": "DURATION",
    "type": COMMITMENT_TYPE,
    "resources":
    [
      {
        "amount": "COMMITTED_VCPUS",
        "type": "VCPU"
      },
      {
        "amount": "COMMITTED_MEMORY",
        "type": "MEMORY"
      },
      {
        "acceleratorType": "COMMITTED_ACCELERATOR_TYPE",
        "amount": "COMMITTED_ACCELERATOR_COUNT",
        "type": "ACCELERATOR"
      }
      {
        "amount": "COMMITTED_LOCAL_SSD",
        "type": "LOCAL_SSD"
      }
    ],
    "reservations":
    [
      {
        "name": "RESERVATION_NAME",
        "specificReservation":
        {
          "count": "NUMBER_OF_RESERVED_VMS",
          "instanceProperties":
          {
            "guestAccelerators":
            [
              {
                "acceleratorCount": "RESERVED_ACCELERATOR_COUNT",
                "acceleratorType": "RESERVED_ACCELERATOR_TYPE"
              }
            ],
            "localSsds":
            [
              {
                "diskSizeGb": "375",
                "interface": "RESERVED_INTERFACE_1"
              },
              {
                "diskSizeGb": "375",
                "interface": "RESERVED_INTERFACE_2"
              }
            ],
            "machineType": "RESERVED_MACHINE_TYPE",
            "minCpuPlatform": "MINIMUM_CPU_PLATFORM"
          }
        },
        "specificReservationRequired": REQUIRE_SPECIFIC_RESERVATION_VALUE",
        "zone": "RESERVED_ZONE",
        "shareSettings":
        {
          "shareType": "SPECIFIC_PROJECTS",
          "projectMap":
          {
            "CONSUMER_PROJECT_ID_1":
            {
              "projectId": "CONSUMER_PROJECT_ID_1"
            },
            "CONSUMER_PROJECT_ID_2":
            {
              "projectId": "CONSUMER_PROJECT_ID_2"
            }
          }
        }
      }
    ]
    }
    
    
  • 인스턴스 템플릿을 지정하여 새 예약을 만들려면 sourceInstanceTemplate 필드를 포함하고 instanceProperties 필드는 제외합니다.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments
    
    {
    "name": "COMMITMENT_NAME",
    "plan": "DURATION",
    "type": COMMITMENT_TYPE,
    "resources":
    [
      {
        "amount": "COMMITTED_VCPUS",
        "type": "VCPU"
      },
      {
        "amount": "COMMITTED_MEMORY",
        "type": "MEMORY"
      },
      {
        "acceleratorType": "COMMITTED_ACCELERATOR_TYPE",
        "amount": "COMMITTED_ACCELERATOR_COUNT",
        "type": "ACCELERATOR"
      }
      {
        "amount": "COMMITTED_LOCAL_SSD",
        "type": "LOCAL_SSD"
      }
    ],
    "reservations":
    [
      {
        "name": "RESERVATION_NAME",
        "specificReservation":
        {
          "count": "NUMBER_OF_RESERVED_VMS",
          "sourceInstanceTemplate": "projects/PROJECT_ID/LOCATION/instanceTemplates/INSTANCE_TEMPLATE_NAME"
        },
        "specificReservationRequired": REQUIRE_SPECIFIC_RESERVATION_VALUE",
        "zone": "RESERVED_ZONE",
        "shareSettings":
        {
          "shareType": "SPECIFIC_PROJECTS",
          "projectMap":
          {
            "CONSUMER_PROJECT_ID_1":
            {
              "projectId": "CONSUMER_PROJECT_ID_1"
            },
            "CONSUMER_PROJECT_ID_2":
            {
              "projectId": "CONSUMER_PROJECT_ID_2"
            }
          }
        }
      }
    ]
    }
    
    

다음을 약정 및 연결된 예약의 해당 속성으로 바꿉니다.

약정

  • COMMITMENT_NAME: 약정의 이름입니다.
  • REGION: 약정이 있는 리전입니다.
  • PROJECT_ID: 연결된 예약이 있는 약정을 구매하려는 프로젝트의 ID입니다.
  • DURATION: 약정 기간입니다(TWELVE_MONTH 또는 THIRTY_SIX_MONTH).
  • COMMITMENT_TYPE: 약정 유형입니다. 다음 약정 유형은 GPU, 로컬 SSD 디스크 또는 둘 다를 위한 옵션을 제공합니다.

    • 머신 유형 리소스의 경우 ACCELERATOR_OPTIMIZED
    • C2 머신 유형 리소스의 경우 COMPUTE_OPTIMIZED
    • C2D 머신 유형 리소스의 경우 COMPUTE_OPTIMIZED_C2D
    • C3 머신 유형 리소스의 경우 COMPUTE_OPTIMIZED_C3
    • C3D 머신 유형 리소스의 경우 COMPUTE_OPTIMIZED_C3D
    • N1 머신 유형 리소스의 경우 GENERAL_PURPOSE
    • E2 머신 유형 리소스의 경우 GENERAL_PURPOSE_E2
    • N2 머신 유형 리소스의 경우 GENERAL_PURPOSE_N2
    • N2D 머신 리소스의 경우 GENERAL_PURPOSE_N2D
    • Tau T2D 머신 유형 리소스의 경우 GENERAL_PURPOSE_T2D
    • G2 머신 유형 리소스의 경우 GRAPHICS_OPTIMIZED
    • M1 또는 M2 머신 유형 리소스의 경우 MEMORY_OPTIMIZED
    • 메모리 최적화 M3 머신 유형의 경우 MEMORY_OPTIMIZED_M3
  • COMMITTED_VCPUS: 약정에 포함할 vCPU 수입니다. 값은 양의 정수여야 합니다.

  • COMMITTED_MEMORY: 약정에 포함하려는 메모리의 크기(MB)입니다. 예를 들면 10240MB입니다. 메모리는 256MB 단위로 구매할 수 있습니다.

  • COMMITTED_LOCAL_SSD: 약정에 포함하려는 로컬 SSD 스토리지의 크기(GB)입니다. 각 로컬 SSD 디스크는 375GB입니다.

  • COMMITTED_ACCELERATOR_COUNT: 약정에 포함할 GPU 수입니다.

  • COMMITTED_ACCELERATOR_TYPE: 약정에 포함할 GPU 유형입니다.

연결된 예약

  • RESERVATION_NAME: 연결된 예약의 이름입니다.
  • RESERVATION_ZONE: 연결된 예약의 영역입니다.
  • REQUIRE_SPECIFIC_RESERVATION_VALUE: 연결된 예약이 특정 대상이 지정된 예약인지 여부를 지정합니다. true 또는 false입니다. 특정 대상이 지정된 예약에 대한 자세한 내용은 예약 작동 방법을 참조하세요.
  • NUMBER_OF_RESERVED_VMS: 연결된 예약에서 예약하려는 VM 수입니다.
  • RESERVED_MACHINE_TYPE: 연결된 예약에서 VM에 사용하려는 머신 유형입니다.

    • 사전 정의된 머신 유형의 경우 MACHINE_FAMILY-standard-CPUS 형식을 사용합니다(예: n2-standard-4).
    • 커스텀 머신 유형의 경우 MACHINE_FAMILY-custom-CPUS-MEMORY 형식을 사용합니다(예: n2-custom-4-5120). 제한사항의 전체 목록은 커스텀 머신 유형의 사양을 참조하세요.

      다음을 바꿉니다.

      • MACHINE_FAMILY: 머신 유형의 계열. 예를 들어 N2 VM의 경우 n2를 지정합니다.
      • CPUS: vCPU의 수
      • MEMORY: 예약된 VM의 총 메모리입니다. 메모리는 256MB의 배수여야 하며 MB 단위로 제공되어야 합니다. 예를 들어 vCPU 4개, 5GB(5,120MB) 메모리의 N2 VM을 만들려면 n2-custom-4-5120을 사용합니다.
  • RESERVED_ACCELERATOR_COUNT: 연결된 예약에서 VM당 추가하려는 GPU 수입니다.

  • RESERVED_ACCELERATOR_TYPE: 연결된 예약에서 추가하려는 가속기 유형입니다.

  • INTERFACE_1INTERFACE_2: 예약된 각 VM에서 로컬 SSD 디스크에 사용할 인터페이스 유형입니다. 유효한 옵션은 scsinvme입니다. 각 로컬 SSD 디스크는 375GB입니다. 추가하려는 각 로컬 SSD 디스크에 대해 localSsds 매개변수를 반복합니다. 로컬 SSD 디스크를 최대 24개까지 지정할 수 있습니다.

  • MINIMUM_CPU_PLATFORM: 연결된 예약에 지정하려는 최소 CPU 플랫폼입니다.

  • INSTANCE_TEMPLATE_NAME: 연결된 예약을 만드는 데 사용하려는 인스턴스 템플릿의 이름입니다.

  • SHARE_SETTING: 연결된 예약의 공유 유형입니다. 여러 소비자 프로젝트 간에 연결된 예약을 공유하려면 이 필드의 값을 SPECIFIC_PROJECTS로 지정합니다. 단일 프로젝트 예약을 만들려면 이 필드를 제외합니다.

  • CONSUMER_PROJECT_ID_1CONSUMER_PROJECT_ID_2: 이 예약을 공유할 수 있는 프로젝트의 프로젝트 ID입니다(예: project-1project-2). 소비자 프로젝트를 최대 100개까지 포함할 수 있습니다. 이러한 프로젝트는 소유자 프로젝트와 동일한 조직에 있어야 합니다. 기본적으로 프로젝트가 이 예약을 소비하도록 허용되므로 이 예약을 만드는 프로젝트의 ID를 포함하지 마세요. 단일 프로젝트 예약을 만들려면 이러한 필드를 제외합니다.

Compute Engine은 대상 영역에 지정된 머신 유형의 리소스가 충분하고 요청 시 할당량이 충분한 경우에만 약정 및 연결된 예약을 만듭니다. 구매가 성공하면 Compute Engine이 REST API 요청에 대해 200 상태를 반환합니다.

연결할 새 예약을 만들어서 약정을 구매하는 예시

다음 예시 시나리오 및 명령어는 새 예약을 만들고 이를 약정에 연결해서 GPU나 로컬 SSD 디스크 또는 둘 다에 대한 약정을 구매하는 방법을 보여줍니다.

예시 1: 단일 새 예약을 연결하여 GPU 약정 구매

us-central1 리전에서 NVIDIA V100 GPU 4개가 포함된 commitment-01 약정을 구매한다고 가정해 보세요. 새 예약 reservation-01을 이러한 GPU에 대한 연결된 예약으로 만들어야 합니다. 또한 Compute Engine이 us-central1-a 영역에서 2개의 n1-standard-8 VM에 이러한 예약된 GPU를 사용하도록 지정해야 합니다. 연결된 예약이 있는 이 예시 약정을 구매하려면 다음 POST 요청을 수행합니다.

POST https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-central1/commitments

{
  "name": "commitment-01",
  "plan": "TWELVE_MONTH",
  "type": "GENERAL_PURPOSE"
  "resources":
  [
    {
      "amount": "96",
      "type": "VCPU"
    },
    {
      "amount": "638976",
      "type": "MEMORY"
    },
    {
      "acceleratorType": "nvidia-tesla-v100",
      "amount": "4",
      "type": "ACCELERATOR"
    }
  ],
  "reservations":
  [
    {
      "name": "reservation-01",
      "specificReservation":
      {
        "count": "2",
        "instanceProperties":
        {
          "guestAccelerators":
          [
            {
              "acceleratorCount": 2,
              "acceleratorType": "nvidia-tesla-v100"
            }
          ],
          "machineType": "n1-standard-8"
        }
      },
      "specificReservationRequired": false,
      "zone": "us-central1-a"
    }
  ]
}

예시 2: vCPU 또는 메모리 약정 없이 GPU에 대한 약정 구매

vCPU 또는 메모리 약정 없이 GPU 및 로컬 SSD 디스크를 약정하고 예약하려면 vCPU 및 메모리 수량의 값으로 0을 지정합니다. 예를 들어 us-west2 리전에서 단일 NVIDIA P4 GPU에 대해 commitment-02 약정을 구매한다고 가정해 보세요. 또한 새 예약을 연결된 예약으로 만들고 Compute Engine이 us-west2-b 영역에서 n1-standard-2 VM에 예약된 GPU를 사용하도록 지정합니다. 연결된 예약이 있는 이 예시 약정을 구매하려면 다음 POST 요청을 수행합니다.

POST https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-west2/commitments

{
  "name": "commitment-02",
  "plan": "TWELVE_MONTH",
  "type": "GENERAL_PURPOSE",
  "resources":
  [
    {
      "amount": "0",
      "type": "VCPU"
    },
    {
      "amount": "0",
      "type": "MEMORY"
    },
    {
      "acceleratorType": "nvidia-tesla-p4",
      "amount": "4",
      "type": "ACCELERATOR"
    }
  ],
  "reservations":
  [
    {
      "name": "reservation-01",
      "specificReservation":
      {
        "count": "1",
        "instanceProperties":
        {
          "guestAccelerators":
          [
            {
              "acceleratorCount": 4,
              "acceleratorType": "nvidia-tesla-p4"
            }
          ],
          "machineType": "n1-standard-2"
        }
      },
      "specificReservationRequired": false,
      "zone": "us-west2-b"
    }
  ]
}

예시 3: 새로운 다중 예약을 연결하여 GPU 및 로컬 SSD 디스크의 약정 구매

us-central1 리전에서 NVIDIA V 100 GPU 1개 및 로컬 SSD 디스크 2개에 대해 commitment-03 약정을 구매한다고 가정해 보세요. 또한 us-central1-a 영역에서 2개의 예약을 만들고 연결하려고 합니다. 첫 번째 예약 res-01에서 GPU 1개가 있는 n1-standard-2 VM 1개를 예약하려고 합니다. res-01을 대상이 지정된 예약으로 만들어야 합니다. 즉, 예약된 VM을 사용하도록 이름별로 예약 대상을 지정해야 합니다. 두 번째 예약 res-02에서 두 가지 유형의 연결된 로컬 SSD 디스크가 있는 n1-standard-8 VM 1개를 예약합니다. 연결된 예약이 있는 이 예시 약정을 구매하려면 다음 POST 요청을 수행합니다. 예시 약정에는 vCPU 및 메모리 리소스도 포함됩니다.

POST https://compute.googleapis.com/compute/v1/projects/my-project/regions/us-central1/commitments

{
  "name": "commitment-03",
  "plan": "TWELVE_MONTH",
  "type": "GENERAL_PURPOSE",
  "resources":
  [
    {
      "amount": "96",
      "type": "VCPU"
    },
    {
      "amount": "638976",
      "type": "MEMORY"
    },
    {
      "acceleratorType": "nvidia-tesla-v100",
      "amount": "1",
      "type": "ACCELERATOR"
    },
    {
      "amount": "768000",
      "type": "LOCAL_SSD"
    }
  ],
  "reservations":
  [
    {
      "name": "res-01",
      "specificReservation":
      {
        "count": "1",
        "instanceProperties":
        {
          "guestAccelerators":
          [
            {
              "acceleratorCount": 1,
              "acceleratorType": "nvidia-tesla-v100"
            }
          ],
          "machineType": "n1-standard-2"
        }
      },
      "specificReservationRequired": true,
      "zone": "us-central1-a"
    },
    {
      "name": "res-02",
      "specificReservation":
      {
        "count": "1",
        "instanceProperties":
        {
          "localSsds":
          [
            {
              "diskSizeGb": "375",
              "interface": "SCSI"
            },
            {
              "diskSizeGb": "375",
              "interface": "NVME"
            }
          ]
          "machineType": "n1-standard-8"
        }
      },
      "specificReservationRequired": false,
      "zone": "us-central1-a"
    }
  ]
}

예약이 연결된 약정을 구매한 후에는 약정이 활성 상태로 있는 한 예약이 활성 상태로 유지됩니다. 약정이 만료되면 Compute Engine이 연결된 예약을 자동으로 삭제합니다. 이러한 예약의 삭제는 해당 예약과 연결되어 있는 실행 중인 VM 인스턴스에 영향을 주지 않습니다. 실행 중인 VM은 계속 실행되며 VM에 대한 요금은 계속 청구됩니다.

약정 기간 동안 GPU, 로컬 SSD 또는 둘 다 포함된 연결된 예약을 삭제하거나 크기를 조절할 수 없습니다. 하지만 약정의 기존 연결된 예약을 새 예약으로 바꿀 수 있습니다. 연결된 예약에서 변경할 수 있는 항목과 변경할 수 없는 항목에 대한 자세한 내용은 약정에 연결된 예약 교체를 참조하세요.

라이선스 약정 구매

다음 운영체제(OS) 이미지를 사용하는 VM에서 워크로드를 실행하는 경우 라이선스 약정을 구매할 수 있습니다.

  • SUSE Linux Enterprise Server(SLES) 이미지
  • SLES for SAP 이미지
  • Red Hat Enterprise Linux(RHEL) 이미지
  • RHEL for SAP 이미지

각 OS 이미지의 라이선스 약정에 대한 CUD 비율은 VM에서 사용하는 vCPU 수에 따라 달라집니다. 다음 표에서는 각 소프트웨어 라이선스 약정 유형의 CUD 비율을 보여줍니다.

라이선스 약정 유형 vCPU 수 1년 CUD 비율 3년 CUD 비율
SLES 이미지 1-2 77% 79%
SLES 이미지 3-4 54% 59%
SLES 이미지 5+ 45% 50%
SLES for SAP 이미지 1-2 59% 63%
SLES for SAP 이미지 3-4 59% 63%
SLES for SAP 이미지 5+ 59% 63%
RHEL 이미지 1~4 20% 24%
RHEL 이미지 5+ 20% 24%
RHEL for SAP 이미지 1~4 20% 24%
RHEL for SAP 이미지 5+ 20% 24%

라이선스 약정을 구입하면 약정에 따라 지정된 리전의 선택한 프로젝트 내에서 실행되는 모든 VM에 자동으로 적용되는 라이선스 '풀'이 생성됩니다. 약정 라이선스는 하나의 특정 VM에 연결되지 않습니다. VM이 시작되면 풀에서 약정 라이선스를 가져오고, VM이 중지되면 라이선스를 풀로 반환합니다. 여기에서 다른 VM에 사용될 수 있습니다. 풀에 사용 가능한 약정 라이선스가 있으면 프리미엄 OS 사용에 대해 계속 할인을 받을 수 있습니다.

예를 들어 두 리전에서 VM 10개(us-central1에서 VM 5개, us-west1에서 VM 5개)를 동일한 프로젝트 ID로 실행해야 하는 경우 각 리전에서 라이선스를 5개 구매해야 실행 VM에 모두 사용할 수 있습니다. 각 약정에서 약정 라이선스는 1년 동안 해당 리전에서 동시에 실행되는 VM 5개에 적용될 수 있습니다. 사용량에 관계없이 약정에 대해 월 단위로 청구됩니다.

약정을 구매하면 미국 및 캐나다 태평양 표준시(UTC-8 또는 일광 절약 시간 중에는 UTC-7) 기준 다음 날 오전 12시에 약정이 활성화됩니다. Compute Engine은 약정을 구매한 프로젝트의 리전마다 프로젝트에 대한 선취권을 유지합니다. 프로젝트의 임의 리전에 대한 새 약정을 구매하면 Compute Engine이 해당 리전의 선취권을 새로 생성된 약정과 연결합니다.

약정 구매 시점부터 활성화 전까지는 약정 상태가 NOT_YET_ACTIVE(또는 Google Cloud 콘솔의 PENDING)로 유지됩니다. 활성화되면 약정 상태는 ACTIVE로 변경됩니다. 예를 들어 미국 및 캐나다 태평양 표준시(UTC-8 또는 UTC-7) 기준 1월 20일 오후 10시에 약정을 구매한다고 가정해 보겠습니다. Compute Engine에서 상태가 NOT_YET_ACTIVE인 약정을 즉시 만듭니다. 하지만 약정은 미국 및 캐나다 태평양 표준시(UTC-8 또는 UTC-7) 기준 1월 21일 오전 12시에만 ACTIVE가 됩니다.

라이선스 약정은 구입 후 취소할 수 없습니다. 라이선스 약정이 만료되면 실행 중인 VM이 계속 실행되고 온디맨드 이미지 가격에 따라 라이선스 비용이 부과됩니다.

Google Cloud 콘솔, Google Cloud CLI 또는 REST를 사용하여 라이선스 약정을 구매합니다.

콘솔

Google Cloud 콘솔을 사용하여 약정을 구매하기 전에 약정을 구매하는 데 사용할 프로젝트를 선택합니다. 결제 계정에 할인 공유가 사용 설정된 경우 해당 결제 계정의 프로젝트를 사용하여 약정을 구매할 수 있습니다. 프로젝트를 선택한 후 다음 단계를 수행합니다.

  1. Google Cloud 콘솔에서 약정 사용 할인 페이지로 이동합니다.

    약정 사용 할인 페이지로 이동

  2. 약정 구매를 클릭하여 새 약정을 구매합니다.
  3. 새 라이선스 약정 사용 할인을 클릭하여 새 라이선스 약정을 구매합니다.
  4. 약정의 이름을 지정하고 적용할 리전을 선택합니다.
  5. 약정 기간을 1년 또는 3년으로 선택합니다.
  6. 라이선스 계열을 선택합니다.
  7. 라이선스 유형 및 수량을 선택합니다.
  8. 라이선스 수를 선택합니다.
  9. 구매를 클릭합니다.

gcloud

gcloud CLI로 gcloud compute commitments create-license 명령어를 실행하여 라이선스 약정을 구매합니다.

gcloud compute commitments create-license COMMITMENT_NAME \
    --license `LICENSE_URI`
    --amount NUMBER_OF_LICENSES \
    --cores-per-license CORES_PER_LICENSE \
    --plan PLAN \
    --region REGION \

다음을 바꿉니다.

  • COMMITMENT_NAME: 약정의 이름입니다.
  • LICENSE_URI: 라이선스 URI입니다. 예를 들면 https://www.googleapis.com/compute/v1/projects/myproject/global/licenses/sles-sap-12입니다.
  • NUMBER_OF_LICENSES: 구매하려는 라이선스 수입니다.
  • CORES_PER_LICENSE: 라이선스당 코어 수입니다. 1-2, 3-4 또는 5+를 입력합니다.
  • PLAN: 약정 기간(12-month 또는 36-month)을 입력합니다.
  • REGION: 이 약정이 적용되는 리전입니다.

예를 들어 다음 약정은 us-central1 리전에서 36개월 동안 라이선스당 3~4개의 코어가 포함된 4개의 SAP 라이선스에 대한 약정입니다.

gcloud compute commitments create-license commitment-1
    --license https://www.googleapis.com/compute/v1/projects/myproject/global/licenses/sles-12
    --amount=4
    --cores-per-license=3-4
    --plan=36-month
    --region=us-central1

예를 들어 다음 약정은 us-central1 리전에서 12개월 동안 라이선스당 1~2개의 코어가 포함된 2개의 SLES for SAP 라이선스에 대한 약정입니다.

gcloud compute commitments create-license commitment-2
    --license https://www.googleapis.com/compute/v1/projects/myproject/global/licenses/sles-sap-12
    --amount=2
    --cores-per-license=1-2
    --plan=12-month
    --region=us-central1

REST

regionCommitments.insert 메서드를 사용하고 licenseResource 필드를 포함하여 라이선스 약정 속성을 정의할 수 있습니다.

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments?requestId=OPTIONAL_UNIQUE_ID

{
    "name": COMMITMENT_NAME,
    "plan": PLAN,
    "category": "LICENSE",
    "licenseResource": {
      "coresPerLicense": CORES_PER_LICENSE,
      "amount": NUMBER_OF_LICENSES,
      "license": `LICENSE_URI`
      }
}

다음을 바꿉니다.

  • COMMITMENT_NAME: 약정의 이름입니다.
  • LICENSE_URI: 라이선스 URI입니다. 예를 들면 https://www.googleapis.com/compute/v1/projects/myproject/global/licenses/sles-sap-12입니다.
  • NUMBER_OF_LICENSES: 구매하려는 라이선스 수입니다.
  • CORES_PER_LICENSE: 라이선스당 코어 수입니다. 1-2, 3-4 또는 5+를 입력합니다.
  • PLAN: 약정 기간(12-month 또는 36-month)을 입력합니다.
  • REGION: 이 약정이 적용되는 리전입니다.

예를 들어 다음 약정은 us-central1 리전에서 36개월 동안 라이선스당 3~4개의 코어가 포함된 SLES for SAP 라이선스 4개에 대한 약정입니다.

POST https://compute.googleapis.com/compute/v1/projects/myproject/regions/us-central1/commitments

{
    "name": "commitment-3",
    "plan": "THIRTY_SIX_MONTH",
    "category": "LICENSE",
    "licenseResource": {
      "coresPerLicense": "3-4",
      "amount": "4",
      "license": "https://www.googleapis.com/compute/v1/projects/suse-sap-cloud/global/licenses/sles-sap-12"
      }
}

약정 사용 할인 권장사항 적용

약정 사용 할인 권장사항은 Google Cloud 콘솔에서 확인할 수 있습니다. 추천자는 지난 30일 동안의 VM 사용에 대한 정보가 포함된 카드를 생성합니다. VM에 30일 동안의 무약정 사용 추세가 표시되면 추천자는 이를 약정 사용 할인을 구매하여 VM 비용을 줄일 수 있는 기회로 분류합니다.

다음 조건을 충족하는 사용은 무약정이고 자격이 있는 것으로 간주합니다.

  • VM이 30일 기간 내내 활성 상태였습니다.
  • VM의 SKU가 자격이 있는 약정 사용 할인 버킷의 일부입니다.
  • VM 사용이 기존 약정에 아직 포함되지 않았습니다.

권장사항은 하루에 한 번 새로고침되며 지난 30일간의 사용 기록을 고려합니다.

약정 사용 할인의 권장사항은 두 가지 개별 알고리즘에 의해 생성되며 이러한 알고리즘은 요약 카드에서 구매 또는 수락할 때 선택할 수 있습니다.

  • 안정적인 사용량 권장사항은 시간 경과에 따른 안정적인 사용량을 보장합니다.
  • 최적의 권장사항은 전반적인 사용량을 기반으로 하며 항상 사용 중이지 않은 리소스가 적용될 수도 있습니다.

약정 권장사항에 대한 자세한 내용은 약정 사용 할인 추천자 문서를 참조하세요.

제한사항

약정 사용 할인 권장사항은 머신 유형 약정의 CPU 및 메모리 구성요소에만 사용할 수 있습니다. SSD, GPU 또는 라이선스 약정에는 약정 사용 할인 권장사항을 사용할 수 없습니다.

권장사항 검토 및 수락

권장 약정 구매 방법은 권장사항 구매를 참조하세요.

권장사항 닫기

약정 권장사항을 닫거나 이전에 닫은 권장사항을 복원하는 방법은 권장사항 닫기를 참조하세요.

권장사항 기록

약정 권장사항을 적용하거나 닫은 기록을 보려면 권장사항 기록 보기를 참조하세요.

하드웨어 약정에 대한 할인 공유 사용 설정

기본적으로 하드웨어 리소스 기반 CUD는 리소스 기반 약정을 구매한 프로젝트에 적용되며 프로젝트 범위 할인입니다. 약정을 구매한 프로젝트를 다른 Cloud Billing 계정으로 이동하면 새 Cloud Billing 계정 아래의 프로젝트에 대하여 해당 약정 사용 할인이 계속 적용됩니다.

Cloud Billing 계정에 연결된 모든 프로젝트의 대상 사용량 간에 하드웨어 약정 할인을 공유하려면 Google Cloud 콘솔에서 약정 사용 할인 공유를 사용 설정하세요.

약정 사용 할인 공유를 사용 설정하면 약정 범위가 프로젝트에서 결제 계정으로 변경됩니다. 할인 공유를 사용 설정하여 약정 범위를 결제 계정으로 변경한 후에는 할인 공유를 사용 중지하여 프로젝트 범위로 되돌릴 수 없습니다. 대신 Cloud Billing 지원에서 이 작업을 수행해야 합니다.

할인 공유는 기여 분석 구성과 함께 작동합니다. 비례적 기여 분석 또는 우선순위 방식의 기여 분석을 사용하도록 선택할 수 있습니다.

기여 분석 환경설정을 먼저 구성하지 않은 한 할인 공유를 사용 설정할 때 Compute Engine 리소스 기반 약정에 대해 기본적으로 비례적 기여 분석을 사용하도록 설정합니다.

할인 공유를 사용 설정하기 전에 기여 분석 구성을 구성할 경우 자세한 내용 및 각 기여 분석 유형을 사용 설정하는 방법은 리소스 기반 약정의 기여 분석 선택을 참조하세요.

약정 사용 할인 공유를 사용 설정하려면 다음 단계를 완료하세요.

  1. Google Cloud 콘솔에서 Cloud Billing 계정에 로그인합니다.

    Cloud Billing 계정에 로그인

  2. 프롬프트에서 할인 공유를 사용하도록 약정 사용 할인을 구성하려는 Cloud Billing 계정을 선택합니다. 선택한 Cloud Billing 계정에 대해 결제 개요 페이지가 열립니다.

  3. 결제 탐색 메뉴에서 CUD 분석을 선택하여 약정 사용 할인 분석 페이지를 표시합니다.

  4. 약정 사용 할인 분석 페이지의 약정 유형 메뉴에서 리소스 기반 약정을 선택합니다.

  5. 리소스 기반 약정 보고서 제목 아래에서 약정 범위을 찾습니다.

    • 프로젝트 범위는 리소스 기반 약정 사용 할인에 대해 할인 공유가 사용 설정되지 않았음을 나타냅니다. 프로젝트 범위 할인은 약정을 구매한 프로젝트의 대상 사용량에만 적용됩니다.
    • 결제 계정 범위는 리소스 기반 약정에 대해 할인 공유가 이미 사용 설정되었음을 나타냅니다. 결제 계정 범위 약정은 Cloud Billing 계정과 연결된 모든 프로젝트모든 대상 사용량에 약정 사용 할인을 적용합니다.
  6. 약정 범위 설정을 변경하려면 수정을 선택합니다.

    • 현재 범위프로젝트인 경우 텍스트 입력 상자에 사용 설정을 입력하여 결제 계정 간에 할인 공유를 사용 설정한 후 결제 계정 범위 사용 설정을 클릭하여 변경사항을 저장합니다.

    • 현재 범위결제 계정인 경우 할인 공유가 이미 사용 설정된 것입니다. 할인 공유를 사용 중지하고 프로젝트 범위 약정으로 되돌리려면 지원팀에 문의를 클릭합니다.

하나의 프로젝트 범위 리소스 기반 약정에 대해서만 할인 공유를 사용 설정하면 동일한 Cloud Billing 계정의 모든 리소스 기반 약정 범위에 영향을 줍니다. 약정 사용 할인 공유를 사용 설정하면 약정 범위가 다음과 같이 변경됩니다.

  • 이전에 구매한 항목과 앞으로 구매할 새 항목을 포함하여 동일한 Cloud Billing 계정의 모든 프로젝트에서 현재 및 활성 리소스 기반 약정 사용 할인이 모두 Cloud Billing 계정에서 공유됩니다.
  • Cloud Billing 계정에 연결된 새 프로젝트를 만들거나 기존 프로젝트를 Cloud Billing 계정에 연결하는 것과 같이 약정 범위 구성을 변경하면 미국 및 캐나다 태평양 표준시(UTC-8 또는 UTC-7) 기준으로 다음 날 자정에 변경 사항이 적용됩니다.
  • 원래 약정이 있는 프로젝트를 새 Cloud Billing 계정으로 이동하면 할인 공유 설정이 변경됩니다. 프로젝트의 Cloud Billing 계정 변경 영향에 대한 자세한 내용은 프로젝트에 연결된 Cloud Billing 계정 변경을 참조하세요.

약정 사용 할인이 청구서에 미치는 영향과 표시되는 방식을 자세히 알아보려면 약정 사용 할인이 적용된 청구서 이해하기를 참조하세요.

약정 보기

Google Cloud 콘솔, Google Cloud CLI 또는 REST에서 모든 약정 목록을 봅니다.

콘솔

Google Cloud 콘솔에서 약정 사용 할인 페이지에서 약정 목록을 확인합니다.

약정 사용 할인으로 이동

gcloud

commitments list 명령어를 사용해 요청을 만듭니다.

gcloud compute commitments list

도구에서 약정 목록을 반환합니다.

 NAME              REGION    END_TIMESTAMP                  STATUS
 my-commitment     us-east1  2018-03-17T00:00:00.000-07:00  NOT_YET_ACTIVE

REST

다음 URL로 aggregatedList 요청을 만들어 모든 리전의 약정 목록을 가져올 수 있습니다.

https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/commitments

그러면 약정 목록이 반환됩니다.

"commitments": [
{
  "kind": "compute#commitment",
  "id": "3294122326373778983",
  "creationTimestamp": "2017-02-09T15:18:32.411-08:00",
  "name": "example-commitment",
  "region": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1",
  "selfLink": "https://www.googleapis.com/compute/v1/projects/example-project/regions/us-central1/commitments/example-commitment",
  "status": "NOT_YET_ACTIVE",
  "statusMessage": "The commitment is not yet active (its startTimestamp is in the future). It will not apply to current resource usage.",
  "plan": "TWELVE_MONTH",
  "startTimestamp": "2017-02-10T00:00:00.000-08:00",
  "endTimestamp": "2018-02-10T00:00:00.000-08:00",
  "resources": [
    {
      "type": "VCPU",
      "amount": "5"
    },
    {
      "type": "MEMORY",
      "amount": "32500"
    }]
  }
]

약정 수정

다음과 같은 방법으로 활성 약정을 수정할 수 있습니다.

약정을 만든 후에는 약정의 프로젝트, 유형 또는 리전을 수정할 수 없습니다.

약정 취소

약정을 생성한 후에는 취소할 수 없습니다. 약정 기간 동안 동의한 월납부액을 지불해야 합니다. Compute Engine 리소스의 표준 가격 책정이 나중에 변경되어도 약정은 영향을 받지 않습니다.

약정을 실수로 구매했거나 약정을 잘못 설정한 경우 Google Cloud Billing 지원팀에 문의하여 도움을 받으세요.

약정 사용 할인이 적용된 청구서 이해하기

결제에 대한 자세한 내용은 다음 문서를 참조하세요.

지원

청구서의 약정 사용 할인에 대한 문의 사항이 있는 경우 Google Cloud 지원팀에 문의하시기 바랍니다.

다음 단계