Documentation

GCP Commitments

Supported types

Committed Use Discounts (CUDs)
Flex/Spend
Resource

Inventory

Commitment KPIs:

  • Estimated Monthly Cost: Monthly cost of your existing commitments
  • Utilization: Utilization percentage of your existing commitments
  • Estimated Monthly Savings: Estimated monthly savings from all existing Committed Use Discounts
  • Total Recommendations: Total of all recommendations available for Committed Use Discounts
  • Estimated Monthly Savings: Estimated monthly savings for all recommendations available.
  • Estimated Total Savings: Estimated total savings over the life of all recommendations available. For example, if you had an estimated monthly savings of $100 for a 1-year CUD your estimated total savings would be $1200.

Configuration Options

You have two configurable options on the Committed Spend Manager page:

  • You can switch between Flex/Spend based CUD recommendations and Resource based recommendations as well as term length (1-year or 3-year).
  • You have the ability to change the date range to see how that impacts things such as estimated costs, savings, utilization and total savings. We also provide the ability to switch to an hourly view in the date range configuration section.

Switching between Flex/Spend and Resource Based

Once you click either blue icon, a side panel will open to switch between Flex/Spend and Resource based CUDs as well as some additional information to be aware of when purchasing CUDs

Area Chart Overview

Important Note: Currently, the chart will only reflect Flex/Spend based Committed Use Discounts and if you are doing Resource Based Recommendation planning they will not be reflected in the chart.

  • Total Spend: This is the total amount of spend across all services that you can purchase Flex/Spend based CUDs for. Google documentation on eligible services for Flex/Spend based CUDs: https://cloud.google.com/docs/cuds#spend_based_commitments
  • Coverable Cost: Most applicable to GCP Compute Engine as only certain SKUs and machine types are available to consume Flex/Spend based CUDs (https://cloud.google.com/skus/sku-groups/compute-engine-flexible-cud-eligible-skus) but this represents the amount of the Total Cost that is actually coverable by Flex/Spend based CUDs.
  • Existing Coverage: If you have any existing Flex/Spend based CUDs this will represent that coverage.
    Recommendations: This represents a view of where your coverage will be when compared to your Total Spend, Coverable Cost and Existing Coverage.

Account and Service Filters

You can filter by account if you have multiple GCP organizations configured in Ternary. You can also add or remove services from the chart to review a single service or multiple services together.

Account

Service

Existing CUD Inventory Table

The first table below the area chart is your existing Flex/Spend based CUDs

  • Service: Service existing CUD was purchased for
  • Family: Only populated when viewing Resource based CUDs
  • Region: Only populated when viewing CloudSQL, Compute Engine and Resource Based CUDs
  • Amount Saved: Amount saved, thus far, from utilizing the purchased CUD
  • Utilization Percentage: How much of the purchased CUD has been utilized expressed as a percentage
  • Hourly Spend Commit: The hourly dollar commit of the purchased CUD
  • Reserved vCPU: Only populated when viewing Resource based CUDs
  • Reserved RAM: Only populated when viewing Resource based CUDs

You can view the actual commitments by clicking the ellipsis to the left of the table which will bring up the details of the CUD. By clicking the service name, you also will filter the area chart to the service selected.

Commitment Details

  • Commitment ID: The unique commitment ID assigned by GCP
  • Owner: Account in which the CUD is owned
  • Service: The service the CUD was purchased for
  • Hourly Spend Commit: If it is a Flex/Spend based CUD this will represent the hourly commitment for the CUD
  • Reserved vCPU: If this is a Resource based CUD this will represent the amount of reserved vCPU
  • Reserved RAM: If this is a Resource based CUD this will represent the amount of reserved RAM
  • Term: Length of time the CUD was purchased for
  • Term End: When the CUD will expire
  • Status: Indicates whether the CUD is Active, Expired or Cancelled. For any CUD expiring in the next 30 days there will be a warning indicator.

Recommendation CUD Table

This table represents all of the active recommendations for either Flex/Spend based or Resource based CUDs based on your configured settings.

  • Account: Account from which the CUD recommendation is being generated
  • Service: The Service the recommendation is generated for
  • Estimated Commitment Cost: Estimated total cost of the commitment over the life of the commitment term
  • Estimated Monthly Savings: Estimated monthly savings if the CUD is 100% utilized
  • Scoped: Indicates whether it is a Billing/Shared CUD or Project specific CUD
  • Term: Length of the CUD recommendation
  • Region: The Region where the CUD is applicable/can be consumed
  • Total Target Coverage: The total hourly commit recommended
  • Last Refresh Date/Time: The last time recommendations were refreshed

You can view the actual recommendation details by clicking the ellipsis to the left of the table. By clicking the service name, you can filter the table to only surface recommendations for that particular service to analyze.

Recommendation Details

You can click the link, at the bottom of the pop-up, to go directly to a relevant report in the Ternary Reporting Engine with the appropriate filters applied. This allows you to do further analysis of the usage before purchasing the commitment.

Note: When using filters to view Resource Based CUDs, if a CUD recommendation has resources with corresponding Rightsizing recommendations you will see a warning indicator with a link to the recommendation for consideration before purchasing the commitment.

Additional Helpful Tips

You can export either the existing inventory table or recommendation table for analysis in a CSV file.

Optimization: CUD Optimizer

If you’re new to buying CUDs, it can be quite overwhelming. This knowledge base will give a brief overview of how CUDs work as well as how you can use the Ternary CUD Optimizer to explore how many CUDs you could buy and see the potential impact on your bill.

Step 1: Set your region and instance family where you want to buy CUDS

Note: If you only have one region and instance family where CUDs are applicable, the tool will autoselect those and take you straight to the optimizer.

Why do you need to do this: As stated above, you can only buy CUDs in a certain region for a a specific instance family. The filters above are the first step in evaluating the right usage that you can buy commitments for.

Why can’t I select the Project Filter and what does CUD sharing mean?

GCP now allows you to apply your commitments to your entire organization. You can still buy CUDs for specific projects. In general, unless there is a very specific reason you are buying CUDs for a specific project i.e. customer requirement, you should generally have CUD sharing enabled in your GCP console.

If it is enabled, then you won’t be able to select a specific project within Ternary.

Step 2: Use the 1 Yr / 3 Yr Slider to test what different levels of commit mean in terms of discounts

What are the units on the slider?

The unit represents your commitment to use a usage family for every second for the remainder of your term.

This will be the number that you ‘punch in’ within the GCP console to make your commitment.

CUD FAQ

Why is my estimated savings number negative?

To calculate estimated savings, our tool assumed that your usage in the hypothetical month will be similar to what your usage was at the end of the month. A negative number implies that your average CUD usage was better than your CUD usage at the end of the month. Thus when you extrapolate for the hypothetical month, you have a higher spend (less savings). But that may or may not be the case in the following months.

What is Actual and Adjusted?

Actual spend is what you were invoiced for these sets of resources in that given region and instance family.

Adjusted spend is an estimate of what your spend would look like if you change the level of commitments.

Note: The CUD optimizer tool is a rough estimate of what your savings could be. It assumes that your usage will be the same in the forward months as it was in the past 30 days. Thus you should proceed with caution before making any CUD purchases and make sure you understand if there are any optimizations or other architectural changes the engineering team is working on that could impact your usage forecast.

Why are their CPU and Memory Sections?

The sections are there because within an instance family you purchase CUDs for CPU and Memory separately within the console.

What does the Resource Usage Graph Represent?

This represents your actual usage for that instance family for the past 30 days.

What is On-Demand?

The grey area under on-demand is the number of resources that you paid an on-demand price for

What is 1 Yr/ 3 Yr CUD Usage Mean on the Graph?

This represents the relative % of your resources that were on 1 and 3 Yrs respectively.

Why do certain areas turn read when I increase my commits?

The red areas under the graph signify CUD wastage.

How is On-demand cost Calculated?

The output on the table assumed 30 days of usage. The formula is:

On Demand Cost = (# of Resources per second X number of secons in a month X Price of On-Demand ) - Sustained Usage Discounts Attained

Why don’t I see Sustained Usage Discount anywhere:

Our calculation incorporates any sustained usage discounts you’ve received in the on-demand cost (see formula above)

How is 1-Yr / 3-Yr Cud Cost Calculated?

CUD Cost = (# of Resources per second on 1-yr / 3- yr X number of seconds in a month X Price of On-Demand X (1- 1yr/3 yr Discount Rate* )

** 1 year is 37% & 3 Year is 55%

How is the Estimated Monthly Savings Calculated?

Estimated Monthly Savings = Total Actual Cost - Total Adjusted Cost

I can’t reduce my commitments, Why does the optimizer tool give me the option to model a scenario that I could not apply in real life i.e. back out of my current commitments?

There are a couple of reasons that informed this decision. One is that it might be the case that your CUDs are expiring soon. Secondly, it’s an easy way for you to check what your monthly bill would have been if you have bought no commitments at all.

How Do the Commitments Apply to my Bill?

As far as evaluating the level of CUDs you need to buy, this part is not as important. But this will help you understand your invoice a little better.

The best way to explain this is by way of example. So let’s say

But how much money did you actually save?

Google billing essentially shows you the data in a way that calculates the savings for you. It wants to you know you’ve made the right decision!

Prerequisites

Before you begin

Ternary leverages some specific permissions that must be enabled in the Ternary assigned role for the commitment manager to be able to properly access your organization's usage and any customized pricing. If you are new to Ternary these permissions should have been automatically applied during onboarding. If your organization has been onboarded prior to the availability of the Commitment Manager(or any successive additions to the Commitment Manager), your organization’s Google Cloud team may need to update some of the following permissions.

"bigquery.reservationAssignments.search", # BigQuery Visibility Feature
"bigquery.reservations.get", # BigQuery Visibility Feature
"bigquery.reservations.list", # BigQuery Visibility Feature
"bigquery.tables.get", # BigQuery Optimizations Feature
"bigquery.tables.list", # BigQuery Optimizations Feature
"bigquery.capacityCommitments.get", # BigQuery Visibility Feature
"bigquery.capacityCommitments.list", # BigQuery Visibility Feature
"billing.resourceCosts.get", # View project-scoped requirements reflecting custom contract pricing
"cloudasset.assets.exportResource", # Find projects with a specific asset type (ex. CUD, Compute Instance, etc.)
"compute.commitments.list", # GCE CUD Planning feature, CUD expiration alerts

If you believe all of the required permissions have been enabled and you are not seeing the information you expect, please contact our Customer Success team by selecting ‘Contact Us’ in the help window in the lower right.

Navigation
To access the Commitment Manager select ‘GCP Commitments’ within the ‘Commitments Discounts’ section of the primary navigation on the left side of the application.

If you do not see this menu selection from the navigation, you may not have been granted access to this particular section of the application. Please check with your organization's Ternary administrator or your managed service provider’s administrator for access.

General Layout Overview
The Commitment Manager consists of three general sections:

Preference and KPIs - This section includes selections for setting preferences for generating commitment recommendations, date range and granularity for viewing the charted presentation, along with key metrics for existing owned commitments and recommendations.
Purchase Preferences enable individual users to select the term length (1 or 3-years) as well as the type of compute commitment (resource or spend/flex) recommendations to be generated and displayed.

The date range selection allows users to select the preferred time display window and granularity for the charted presentation.

Usage and Coverage Chart - The chart presents a combined view of current owned and recommended commitment coverage superimposed over Google Cloud infrastructure service usage (in the billed currency). The chart provides a visual representation of how the purchase of additional commitments could add to the existing owned commitments to cover usage.

The drop-down selector at the upper right of the chart enables users to select which services are included in the chart.

Users can also add or remove usage and coverage by clicking items in the legend below the chart.

Tabular Owned Commitment Inventory and Recommendations - The inventory of commitments currently owned by the organization as well as recommendations for purchase of additional commitments are displayed below the charted data.

Existing commitments are grouped into rows delimited by service type family and region (when applicable according to rules established by the cloud service provider). Details for individual commitments represented in each row can be viewed by clicking on the icon at the left of each row.

Each row in the Recommendations table presents a separate recommendation for purchase of a commitment. For a given coverage classification (e.g. for a service in a specific region) there may be both a Full Utilization and Optimal coverage recommendation. Full Utilization recommendations are those projected to be 100% utilized while Optimal coverage recommendations, when added on top of full utilization recommendations, are projected to result in maximum overall saving but at less than 100% utilization.

Optimal recommendations when purchased in conjunction with the Full Utilization recommendation will likely not be 100% utilized but will yield the greatest savings based on the projected usage to be covered.

To view details about individual recommendations, including a hyperlink to a preconfigured report of usage applicable to the recommendation, click the icon at the left of any row.

Commitment based discounts are intended to work in concert with usage based optimizations (i.e. rightsizing). In the event that a commitment recommendation is projected to cover usage that may go away with the implementation of an existing usage optimization recommendation, the commitment recommendation will be flagged by an alert. From the alert icon tooltip users can navigate directly to and view details about the relevant usage optimization recommendation.

Additional Information
Commitments of services vary slightly in some cases. Ternary normalizes recommendation but there are some intricacies of individual service recommendations to be aware of including (but not limited to):
Resource based commitments are only available for Compute Engine and BigQuery. Only spend based(flex) commitments are available for all other services. Even when the preference for resource based commitments is selected, recommendations for all services besides Compute Engine and BigQuery will be spend based commitment purchase recommendations.
Only resource based (slot) commitments are available for BigQuery. Even when the preference for spend based commitments is selected, resource based BigQuery commitments will be displayed.
BigQuery commitments recommendations are typically only generated to cover only baseline reserved slot capacity. This being the case, Optimal recommendations have a higher probability of being 100% utilized.