Upgrade the term of commitments


You can upgrade the term of your 1-year commitments and convert them into 3-year commitments to get a higher discount rate for your committed resources and continue receiving the discounts for a longer time period.

This document shows you how to upgrade the term of your commitment from 1 year to 3 years.

Limitations

  • You can upgrade the term for only active commitments.
  • You can't upgrade the term for software license commitments.
  • You can't upgrade the term for your commitments that have nvidia-tesla-k80 GPUs as commitments for these GPUs are available only as 1-year commitments.

How a term upgrade works

When you upgrade the term for your commitment, the expiration date of the commitment moves into the future by two years. The upgraded commitment term becomes valid at 12 AM US and Canadian Pacific Time (UTC-8, or UTC-7 during daylight saving time) on the day following the upgrade operation and you begin to receive the new discount percentage that is applicable for your upgraded term.

Upgrading the term doesn't affect the other properties of your commitment. The following commitment properties remain the same after the upgrade operation:

  • Name
  • Start date
  • Region
  • Project
  • Commitment type
  • Auto renew status
  • Committed resources

Any attached reservations for your commitment continue to exist throughout the lifetime of your upgraded term, unless you manually replace them.

Pricing implications for term upgrade

Your commitment fee is the sum of the discounted prices of all your committed resources. When you upgrade your commitment's term, Compute Engine applies the new 3-year CUD percentage and recalculates the discounted price for each committed resource. To do this recalculation, Compute Engine uses the prevailing on-demand price of each resource on the day your original term became active. This new discounted price for each resource stays the same until the end of your upgraded term, even if the on-demand prices change.

The following table shows an example where the term of an existing commitment (commitment-1) gets upgraded by 2 years:

Commitment property Before term upgrade After term upgrade
Name commitment-1 commitment-1
Type N2 N2
Region us-central-1 us-central-1
Project example-project-1 example-project-1
Resources
  • vCPUs: 200
  • Memory: 200 GB
  • vCPUs: 200
  • Memory: 200 GB
Term 1 year 3 years
Start date* January 1, 2020 January 1, 2020
End date† January 1, 2021 January 1, 2023
Auto-renew status Disabled Disabled

*Commitment starts at 12 AM US and Canadian Pacific Time (UTC-8, or UTC-7) on the specified start date.
Commitment ends at 12 AM US and Canadian Pacific Time (UTC-8, or UTC-7) on the specified end date.

Quota considerations during a term upgrade

You don't typically need to request additional quota when you upgrade your commitment's term. However, if you upgrade a commitment's term on the same day that it expires, you must verify that you still have sufficient quota available. That's because on the day that a commitment expires, whatever quota the commitment was using up gets released back into your pool of available quota, and it might get used up by your other business needs.

Perform a term upgrade

Upgrade your commitment's term by using the gcloud CLI, Google Cloud console, or the Compute Engine API.

Console

  1. In the Google Cloud console, select the project where you want to upgrade your commitment's term, and go to the Committed use discounts page.

    Go to Committed use discounts

  2. To initiate the term upgrade operation for a commitment, select an active hardware commitment in the Hardware commitments tab of the Commitment list page and click Upgrade.

    • Alternatively, you can click the name of the active commitment that you want to upgrade. After the Hardware commitment details page opens, click Upgrade.
  3. In the Upgrade committed use discount pane that appears, verify the New end time of your modified commitment and click Upgrade.

  4. To finish the term upgrade operation and return to the Commitment list page, in the Upgrade your commitment? dialogue that appears, review the terms and conditions and then click Upgrade.

gcloud

To upgrade your commitment's term, use the gcloud compute commitments update command command with the --plan flag.

gcloud compute commitments update COMMITMENT_NAME \
    --plan=36-month \
    --region=REGION \
    --project=PROJECT_NAME

Replace the following:

  • COMMITMENT_NAME: the name of the commitment whose term you want to upgrade.
  • REGION: the region of your commitment whose term you want to upgrade.
  • PROJECT_NAME: the name of the project for which you want to upgrade the commitment.

For example, consider a 1-year commitment, commitment-upgrade-example, in us-central1 region and for the project project-upgrade-example. The following gcloud CLI command upgrades the commitment's term and modifies it into a 3-year commitment.

gcloud compute commitments update commitment-upgrade-example \
    --plan=36-month \
    --region=us-central1 \
    --project=project-upgrade-example

API

To upgrade your commitment's term, use the regionCommitments.update method.

PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/commitments/COMMITMENT_NAME
{
  "name": COMMITMENT_NAME,
  "plan": "THIRTY_SIX_MONTH",
}

Replace the following:

  • PROJECT_ID: the project ID of the project where you want to upgrade your commitment's term.
  • REGION: the region of the commitment whose term you want to upgrade.
  • COMMITMENT_NAME: the name of the commitment whose term you want to upgrade.

For example, consider a 1-year commitment, commitment-upgrade-example in us-central1 region and for the project project-upgrade-example. The following Compute Engine API request upgrades the commitment's term and modifies it into a 3-year commitment.

PATCH https://compute.googleapis.com/compute/v1/projects/project-upgrade-example/regions/us-central1/commitments/commitment-upgrade-example
{
  "name": "commitment-upgrade-example",
  "plan": "THIRTY_SIX_MONTH",
}

What's next