약정 사용 할인

Compute Engine에서는 약정 사용 계약을 구매할 수 있으며, 이 계약을 구매하면 VM 사용 요금이 대폭 할인됩니다. 이러한 할인을 약정 사용 할인이라고 합니다.

작업 부하가 안정적이고 예측 가능한 경우, 사용 기간을 1년 또는 3년으로 약정하여 정상 가격 대비 할인된 가격으로 특정 양의 vCPU와 메모리를 구매할 수 있습니다. 대부분 머신 유형 또는 커스텀 머신 유형의 할인은 최대 57%입니다. 메모리가 최적화된 머신 유형의 할인은 최대 70%입니다.

구매하면 서비스 사용 여부와 관계없이 선택한 기간 동안 월별 요금이 청구됩니다.

약정 사용 할인은 사전 정의된 머신 유형과 커스텀 머신 유형을 비롯하여 모든 Compute Engine 비공유 코어 머신 유형에 적용됩니다. 약정 사용 할인은 다음과 같은 특징이 있습니다.

  • 간단하고 유연함: 할인이 지역 내 vCPU 또는 메모리의 총 수에 적용되므로 인스턴스 머신 유형의 변경에 영향을 받지 않습니다.

  • 선불 비용 없음: 약정 사용 할인에는 선불 비용이 없습니다. 약정 사용 할인은 매월 청구서에 적용됩니다.

시작하기 전에

약정 사용 할인이 적용되는 방식

약정 사용 할인을 사용하려면 Compute Engine API 또는 Google Cloud Platform Console을 통해 약정을 구매해야 합니다. 이렇게 구매한 약정은 동시에 사용할 수 있도록 프로젝트에 자동으로 적용됩니다.

예를 들어 8코어 약정을 구매하고 8시간 동안 24코어를 실행하면 8시간 동안 8코어에 해당하는 만큼만 약정 사용 할인을 받을 수 있습니다. 나머지 16코어는 약정 사용 요금이 아닌 표준 요금으로 청구됩니다. 일정 크기의 약정을 구매할 경우 사용하지 않더라도 매월 해당하는 약정에 대한 요금이 청구됩니다. 따라서 8코어 약정을 구매한 후 8코어를 실행한 기간이 1개월 미만이라고 해도 1개월 전체에 대한 8코어 약정 사용 요금이 청구됩니다. 이에 따라 앞으로 사용할 증분 단위로만 약정을 구매할 수 있기 때문에 유리합니다.

버스트 시나리오가 발생하더라도 약정이 누적되지는 않습니다. 예를 들어 1개월에 10코어를 구매한 후 0.5개월만에 20코어를 실행했다면 사용 기간이 0.5개월이기 때문에 약정이 전체 20코어에 적용되지 않습니다.

약정 사용 할인이 제공되는 유형은 다음과 같습니다.

  • 일반 용도: 표준, highmem, highcpu, 커스텀 머신 유형 및 일반 용도 단독 테넌트 노드에 대한 약정 사용 할인
  • 메모리 최적화: 메모리가 최적화된 머신 유형용 약정 사용 할인

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

약정 사용 할인은 vCPU와 메모리에 동시에 적용됩니다. vCPU 또는 메모리에 개별적으로 약정 사용 할인을 구매할 수 없습니다. 커스텀 머신 유형과 마찬가지로 약정 사용 할인을 구매할 때는 특정 증분 단위로 메모리를 구매해야 합니다.

  • 일반 용도 약정 사용 할인을 적용하려면 vCPU당 메모리 크기를 0.9GB부터 6.5GB까지 구매해야 합니다.
  • 메모리가 최적화된 머신 유형에 메모리 최적화 약정 사용 할인을 적용하려면 vCPU당 메모리 크기를 14GB부터 40GB까지 구매해야 합니다.

약정 사용 할인은 지역 단위로 구매해야 합니다.

약정 사용 할인을 구매할 때 할인은 다음 순서로 리소스에 적용됩니다.

  1. 커스텀 머신 유형
  2. 단독 테넌트 노드 그룹
  3. 사전 정의된 머신 유형

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

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

약정 사용을 위해 vCPU 15개와 13.5GB 메모리를 구매합니다. 약정 사용 할인은 먼저 커스텀 머신 유형에 적용되고, 나머지 할인이 사전 정의된 머신 유형에 적용됩니다. 이 경우 커스텀 머신 유형의 vCPU 10개 모두 약정 사용 가격으로 청구되며, 커스텀 머신 유형 메모리 13.5GB도 약정 사용 가격으로 청구됩니다. 약정 사용의 나머지 vCPU 5개는 n1-standard-4 머신 유형 2개에서 임의의 vCPU 5개에 적용됩니다. 약정 사용이 적용되지 않는 리소스는 지속 사용 할인을 받습니다.

n1-megamem-96 또는 n1-ultramem-160 같이 메모리가 최적화된 머신 유형을 지역에 추가한 경우에는 이전 약정에 따른 약정 사용 할인을 받지 못합니다. 이러한 머신 유형에서 할인을 받으려면 메모리가 최적화된 머신 유형에 적용되는 vCPU 및 메모리 약정 사용 할인을 별도로 구매해야 합니다.

약정 사용 할인에는 Google Cloud Platform의 서비스별 약관이 적용됩니다. 약정 사용 할인을 구매하면 해당 약관에 동의하게 됩니다. 약정 사용 할인은 갱신되지 않으므로 할인을 계속 받으려면 새 약정을 생성해야 합니다.

사양

  • 약정을 생성할 수 있는 할당량이 있는 경우에만 약정을 구매할 수 있습니다. 할당량이 약정을 생성하기에 충분한지 할당량 페이지에서 확인하세요. 약정이 할당량 페이지에 나와 있지 않거나 추가 할당량이 필요한 경우 할당량 증가를 요청하세요.

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

    gcloud components update
    

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

    gcloud version
    
  • 약정 사용 할인이 적용되지 않는 나머지 vCPU와 메모리는 지속 사용 할인을 받을 수 없습니다.

제한사항

  • Google Kubernetes Engine, Google Cloud Dataproc, Google Compute Engine에서는 약정 사용 할인이 VM에 자동으로 적용됩니다. App Engine 가변형 환경, Google Cloud Dataflow 또는 Google Cloud SQL을 사용하여 생성된 VM에는 약정 사용 할인이 적용되지 않습니다.
  • 무료 등급 기간의 프로젝트와 결제 내역이 없는 프로젝트는 약정 사용 할인을 받을 수 없습니다.
  • 약정 사용 할인은 리전 단위로만 구매할 수 있습니다.
  • 약정 사용 할인은 할인을 구매한 프로젝트의 사용량에 적용됩니다.
  • 선점형 VM 인스턴스, 공유 코어 머신 유형 또는 확장 메모리에는 약정 사용 할인이 적용되지 않습니다.

  • vCPU와 메모리의 약정 사용 할인을 함께 구매해야 합니다.

    • 일반 용도 할인을 적용하려면 vCPU당 메모리 크기를 0.9GB부터 6.5GB까지 구매해야 합니다. 총 메모리는 256MB의 배수여야 합니다.
    • 메모리 최적화 할인을 적용하려면 메모리가 최적화된 머신 유형의 범위를 수용할 수 있도록 vCPU당 메모리 크기를 14GB부터 40GB까지 구매해야 합니다. 총 메모리는 256MB의 배수여야 합니다.
    • n1-standard, n1-highmem, n1-highcpu, 커스텀 머신 유형, 단독 테넌트 노드의 경우 vCPU당 0.9GB~6.5GB의 메모리를 구매해야 합니다. 총 메모리는 256MB의 배수여야 합니다.

가격

약정 사용 할인이 적용된 VM 인스턴스의 가격은 지역에 따라 다릅니다. 최신 가격은 가격 페이지를 참조하세요.

약정 사용 할인 및 지속 사용 할인

약정 사용 할인이 적용된 모든 리소스는 지속 사용 할인을 받을 수 없습니다. 두 가지 서로 다른 할인 유형이 vCPU 또는 GB 메모리의 동일한 부분에 적용되지 않습니다.

약정 사용 할인이 적용되지 않는 리소스는 머신 유형 계열별로 자동으로 지속 사용 할인을 받습니다. 1개월 중 일부 기간에 n1-standard-2를 실행하고 나머지 기간에 n1-standard-8을 실행하는 경우 두 개의 머신 유형 모두 n1-standard 계열에 속하므로 Compute Engine에서는 두 기간을 결합하고 약정 사용 할인이 적용되지 않는 부분에 지속 사용 할인을 적용합니다. n1-highmem 및 n1-highcpu 머신 유형 계열에도 동일한 논리가 적용됩니다.

약정을 위한 할당량 요청

약정을 생성할 수 있는 할당량이 있는 경우에만 약정을 구매할 수 있습니다. 할당량이 약정을 생성하기에 충분한지 할당량 페이지에서 확인하세요.

gcloud 도구 또는 API를 사용하여 요청할 때 약정 할당량이 없는 경우 서버에서는 다음 오류를 반환합니다.

"Quota 'COMMITMENTS' exceeded. Limit: 0.0"

콘솔에서 할당량을 확인하려면 다음 단계를 진행하세요.

  1. Google Cloud Platform Console의 할당량 정보 페이지로 이동합니다.

    할당량 정보 페이지로 이동

  2. 할당량 유형 드롭다운 메뉴를 확장하고 전체 할당량을 선택합니다.
  3. 측정항목 드롭다운 메뉴를 확장합니다.
  4. 없음을 클릭하여 모든 할당량을 숨긴 다음 검색창에 commitments를 입력하여 약정 할당량을 검색합니다.
  5. 결과 목록에서 약정을 선택합니다.

    약정 스크린샷

  6. 원하는 지역의 약정 할당량을 확인합니다. 약정을 생성할 수 있는 할당량이 없는 경우 할당량에 0이 표시됩니다.

    약정이 없는 경우의 스크린샷

약정 할당량 요청

  1. Google Cloud Platform Console의 할당량 증가 페이지로 이동합니다.

    할당량 증가 페이지로 이동

  2. 할당량 유형 드롭다운 메뉴를 확장하고 전체 할당량을 선택합니다.
  3. 측정항목 드롭다운 메뉴를 확장합니다.
  4. 없음을 클릭하여 모든 할당량을 숨긴 다음 검색창에 commitments를 입력하여 약정 할당량을 검색합니다.
  5. 결과 목록에서 약정을 선택합니다.

    약정 스크린샷

  6. 원하는 지역의 약정 옆에 있는 체크박스를 선택하고 할당량 수정 버튼을 클릭합니다.

  7. 메시지가 표시되면 이름, 성, 전화번호를 입력합니다. 다음을 클릭합니다.

  8. 요청 양식을 작성하고 다음을 클릭합니다.

  9. 요청 제출을 클릭하여 요청을 제출합니다.

COMMITTED_CPUS 할당량 늘리기

COMMITTED_CPUS의 할당량이 충분하지 않으면 총 CPUS 할당량에 맞게 COMMITMENTS의 할당량 증가를 요청하세요. 이러한 할당량 증가는 언제든지 요청할 수 있습니다.

약정 구매

약정은 GCP Console, gcloud 명령줄 도구 또는 API를 통해 프로그래매틱 방식으로 구매할 수 있습니다.

약정을 구매하면 다음 날 자정부터 약정의 효력이 발생합니다. 예를 들어 월요일 오후 3시(PST)에 구매한 약정은 화요일 오전 12시(PST)에 효력이 발생합니다. 할인은 지정한 리전의 적용 가능한 인스턴스에 자동으로 적용됩니다.

약정을 구매하려면 아래의 지침을 따르세요.

콘솔

  1. GCP Console의 약정 사용 할인 페이지로 이동합니다.

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

  2. 구매를 클릭하여 새 약정을 구매합니다.
  3. 약정의 이름을 지정하고 적용할 지역을 선택합니다.
  4. 약정 유형을 선택합니다. 사용할 머신 유형에 따라 일반 용도 또는 메모리 최적화를 선택하세요.
  5. 약정 기간을 1년 또는 3년으로 선택합니다.
  6. 약정의 입력 모드를 선택합니다.

    • (권장사항) 커스텀 입력을 사용하면 vCPU 개수와 메모리 양을 맞춤설정할 수 있습니다.

    • 기본 입력을 사용하면 vCPU 수를 선택할 수 있으며, Compute Engine이 vCPU 수에 맞는 메모리 양을 자동으로 채웁니다.

  7. 구매할 vCPU 수량과 메모리 크기를 입력합니다. vCPU당 메모리 크기는 선택하는 할인 유형에 따라 특정한 비율이어야 합니다. 표준 약정 사용 할인의 경우 vCPU당 0.9~6.5GB를 사용하세요. 메모리 최적화 약정 사용 할인의 경우 사용할 메모리 최적화 머신 유형에 따라 vCPU당 14GB 또는 vCPU당 40GB를 지정하세요. 총 메모리는 256MB의 배수여야 합니다.

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

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

gcloud

gcloud 도구를 사용할 경우 compute commitments 명령어를 실행합니다.

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

각 항목의 의미는 다음과 같습니다.

  • [COMMITMENT_NAME은 이 약정을 식별할 이름입니다.
  • [REGION]은 이 약정이 적용되는 리전입니다. 리전마다 약정 가격이 다릅니다. 최신 가격은 가격표를 참조하세요.
  • [NUMBER_VCPUS]는 약정을 구매할 vCPU의 수입니다. vCPU 수는 1 이상이어야 하며 짝수 또는 홀수일 수 있습니다.
  • [MEMORY]는 약정을 구매할 메모리의 양이며 MB 또는 GB 단위입니다. 예를 들면 1000MB입니다. 단위를 지정하지 않으면 GB가 기본 단위로 사용됩니다. 이는 커스텀 메모리를 지정할 때의 사양과 동일해야 합니다.

    • 커스텀 머신 유형의 vCPU당 메모리는 vCPU당 0.9GB~6.5GB여야 합니다.
    • 총 메모리는 256MB의 배수여야 합니다.
  • [DURATION]은 약정 기간이며 12-month 또는 36-month입니다.

  • [COMMITMENT_TYPE]은 대부분의 머신 유형에서 GENERAL_PURPOSE이고, 메모리가 최적화된 머신 유형에서는 MEMORY_OPTIMIZED입니다. 이 플래그를 지정하지 않으면 기본값으로 GENERAL_PURPOSE가 사용됩니다.

일반 용도 약정을 만들려면 다음 예제를 사용할 수 있습니다.

gcloud compute commitments create example-commitment --region us-central1 \
    --resources vcpu=5,memory=33280MB --plan 12-month

메모리 최적화 약정을 만들려면 다음 예제를 사용할 수 있습니다. 이 예제에서는 n1-megamem-96 머신 유형에 1년 약정을 구매합니다.

gcloud alpha compute commitments create example-memory-optimized-commitment \
    --region us-central1 --resources vcpu=96,memory=1434 \
    --plan 12-month --type MEMORY_OPTIMIZED

API

API에서 요청 본문에 약정 정보를 포함하여 다음 URL로 POST 요청을 보냅니다.

https://www.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를 모두 지정해야 합니다.

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

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

메모리 최적화 약정을 만들려면 Alpha API를 사용하고 type 속성을 포함하세요. 다음 예제에서는 n1-megamem-96 머신 유형에 1년 약정을 구매합니다.

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

자세한 내용은 참조 문서를 확인하세요.

활성 약정 보기

콘솔 또는 API에서 약정을 봅니다.

콘솔

Google Cloud Platform Console의 약정 사용 할인 페이지에서 약정 목록을 봅니다.

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

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

API

다음 URL로 aggregatedList 요청을 보내 모든 지역의 약정 목록을 가져올 수 있습니다.

https://www.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"
    }]
  }
]

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

  • CREATING: 약정을 생성 중입니다.
  • NOT_YET_ACTIVE: 약정이 생성되었지만 아직 활성화되지 않았습니다. 다음 날 자정부터 약정의 효력이 발생합니다.
  • ACTIVE: 약정이 활성 상태입니다.
  • EXPIRED: 약정이 만료되었습니다. Compute Engine은 만료일로부터 210일이 경과한 만료된 약정을 삭제할 권리를 보유합니다.

약정 취소

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

실수로 약정을 구매했거나 약정을 잘못 구성한 경우 Google Cloud 결제팀에 문의하여 도움을 요청하세요.

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

Google Cloud Platform은 대차대조표 결제 형식을 사용합니다. 청구서를 비교할 때 리소스의 전체 요금이 항목으로 표시되고, 그 뒤에 실제 약정 사용이 적용된 금액을 상쇄하는 크레딧이 표시되며, 마지막에 실제로 지불할 약정 사용 요금이 표시됩니다. 다음 청구서 예에서 청구서에 표시되는 요금에 대해 알아보세요.

이 시나리오에서 고객은 모든 사용량에 적용되는 약정을 구매했습니다. A행에는 이 리소스의 표준(비약정 사용) 요금이 표시됩니다. B행은 크레딧으로, 모든 사용량에 약정이 적용되므로 A행을 완전히 상쇄합니다. C행은 고객에게 실제로 청구되는 할인된 약정 사용 가격입니다. 총 결제 금액은 청구 금액 합계에서 크레딧을 뺀 금액입니다. 이 경우, 약정이 모든 사용량에 적용되므로 최종 결제 금액은 $7.17입니다.

Screenshot of example committed use bill

이 시나리오에서 고객은 청구 중 일부에만 적용되는 약정을 구매했습니다. A.1행과 A.2행에는 vCPU 및 메모리의 표준(비약정 사용) 요금이 표시됩니다. B.1행과 B.2행은 약정 사용이 적용되는 요금 부분을 상쇄하는 크레딧입니다. C.1행과 C.2행은 B.1행과 B.2행에 설명된 리소스 부분의 할인된 약정 사용 가격입니다. 이 청구서의 총액은 C.1행과 C.2행의 약정된 사용 요금과 약정 사용이 적용되지 않는 나머지 청구 부분의 합계입니다.

Screenshot of complex example committed use bill

지원

청구서의 약정 사용 할인과 관련하여 궁금한 사항이 있으시면 Google Cloud Platform으로 문의하여 지원을 받으세요.

다음 단계

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

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

Compute Engine 문서