Getty Images

Tip

5 Google Cloud cost optimization best practices

Cost is always a top priority for enterprises. For those considering Google Cloud, or current users, discover these optimization best practices to gain better control of spending.

When enterprises are researching service providers before migration or even starting a new implementation project in cloud, cost is always a consideration. While workloads may seem inexpensive initially, nothing is ever "set it and forget it."

It's up to enterprises to build the internal processes and playbooks to bring cloud and financial teams together to make the best use of Google Cloud. Fortunately, Google Cloud offers tools and best practices for cloud cost optimization. See how using discounted VMs, resource hierarchies, alerts, quotas and recommendation services can help improve spending.

Consider discounted VMs

In Google Cloud, users can choose discounted VMs, such as preemptible and Spot. A preemptible VM is the same as a Compute Engine VM except that Google Cloud has the right to terminate it after giving 30 seconds' notice. While preemptible VMs are still available and supported, Spot VMs are the latest version offering a 60% to 91% discount compared to the price of standard VMs.

These options are cost-effective for running short-lived or fault-tolerant workloads, such as batch processing or testing. Google Cloud enables a time limit and options for VM termination for provisioning preemptible VMs, which can be used in Kubeflow pipelines.

Implement budgets and alerts

Google Cloud has a function to create, edit or delete budgets and budget alerts using native console tools. The first step is to get the cloud and financial stakeholders together to set clear goals and expectations for an organization's cloud spending. Then, document it for future reference and updates. Taking these preliminary steps ensures that the budget aligns with the realities of the business. The following are some recommendations to consider:

  • Create a budget. Create a budget based on usage or total cost. Google Cloud can create multiple budgets for different purposes. Optionally, set a budget using an API or CLI.
  • Create alerts. Set alerts to receive notifications when spending reaches a certain threshold or when a budget is exceeded. Create alerts using the Google Cloud console or the Cloud Monitoring API. Optionally, customize alert settings to receive budget notifications via email, text or group chat.
  • Identify trends. Use budget notifications to identify trends in an organization's cloud spending. Apply the necessary optimizations to cloud services.
  • Monitor. Monitor budget and alerts regularly to ensure cloud spending remains within budget using the Google Cloud budget console or monitoring dashboard.

Follow recommendations

Users have the option to take advantage of Google Cloud Recommender, which is a service that provides recommendations and insights for using resources. Recommendations come from machine learning models that analyze usage patterns, resource configurations and other factors to identify opportunities for optimization. Following recommendations can help right-size resources, optimize configurations and automate tasks. Common recommendations include the following:

  • Right-sizing VM instances. Based on Recommender's analysis of usage patterns, it may recommend right-sizing VM instances. Smaller or larger instances can lead to cost savings.
  • Idle resources. Delete or resize idle resources that a cloud team isn't using.
  • Analyze storage usage patterns. Organizations should use different storage offerings or delete unnecessary data.
  • Use task automation. Shut down certain VM instances during off hours to reduce costs.

Set quotas

Runaway usage is a common culprit in higher and unexpected cloud costs. Setting quotas prevents overprovisioning and overconsumption of resources that could lead to unforeseen or unnecessary expenses.

Quotas can also become foundational to an overall cloud cost optimization strategy. Setting usage quotas as a project requirement encourages your developers and solution architects to use cloud resources more efficiently. In turn, this makes recycling or deleting unused cloud resources a reality across a cloud portfolio, leading to further cost savings.

Allocate costs

Google Cloud offers cost allocation by hierarchy, via tagging, which allots costs to specific departments or projects. It also gives a view across all the spending in a Google Cloud account. This enterprise-level view helps teams identify areas for optimization and enables them to assign budgets more accurately. This can also improve collaboration between cloud and financial groups.

Allocating costs to specific departments or projects makes it feasible to do chargebacks for internal services. It also enables you to monitor cloud spending on a project basis, whether for internal or external customers. Users have access to the Google Cloud Billing API, which enables the automation of cost allocation and management tasks and reduces manual intervention in the cost management lifecycle.

Next Steps

Manage cloud waste and high costs with automation

Dig Deeper on Cloud provider platforms and tools