JESS KILLIPS: Hello, everyone.
My name is Jess, and presenting with me is Yasmin.
We are both Google Cloud product managers.
Thank you for taking 20 minutes to learn more practical tips
and best practices for how to save more faster
on Compute Engine.
Google Cloud is making it simpler and easier
to save money.
First, we'll share best practices on VM Family
selection to ensure you're optimizing
for workload performance while minimizing costs.
We'll also provide tips on how to save
on licensing costs, show you how you can save by optimizing
resources, and finally, how you can
leverage discounts to quickly and easily save more money.
Let's jump in.
We have hundreds of pre-defined machines
and customizable options for your workloads.
One major part of optimizing costs
is choosing the right VM Family.
As of September 1st, the free tier
will only include E2 micro, which
offers more CPU and RAM than the previous F1 micro free tier VM.
E2s are our lowest priced general purpose
VMs: up to 31% savings compared to N1.
E2 VMs can provide cost efficiency,
with similar baseline performance as N1s.
Those running N1 standard one can
consider using E2 medium to unlock some cost savings.
Meanwhile, customers who require GPUs may want to consider N1s.
Compared to N1s, N2s offer more than 20%
price performance improvement for many workloads,
and support up to 25% more memory for the CPU.
So for workloads that don't require GPUs, we recommend N2s.
Finally, our new Tau VMs are built for scale
out applications, and deliver 42% better price performance
among the leading Cloud providers.
We have various machine families depending on your use case:
high performance, high memory, accelerator optimized.
Bottom line, to optimize on both cost and performance,
it's important to choose the right VM for your workload.
To learn more about VM right sizing, check out INF 300
at Next.
Today, I'm excited to announce the launch of spot VMs
in preview.
Spot VMs-- enhanced preemptible VMs--
are excess Compute Engine capacity,
which is sold for up to 91% off on demand prices.
So availability and prices may vary.
We provide more pricing predictability
compared to Spot in any other leading Cloud.
We offer a minimum guaranteed savings of 60%,
and guarantee changes occur no more than once a month.
Like preemptible VMs, they are ideal for flexible, fault
tolerant workloads, like Batch, CICD, and HPC.
But with Spot VMs, there will be no 24 hour limit,
so you can run workloads on Spot for longer periods.
You can secure deep discounts with Spot on all VM types,
including custom machine types with a la carte
GPUs and local storage.
Finally, Spot extends to GKE standards.
So you can automatically save on underlying compute costs
while gracefully handling preemption automatically.
For those migrating traditional enterprise workloads
to the Cloud, Google offers tools
to help you reduce costs and optimize your existing
licenses.
One way to save on licenses is to bring your own license.
We know that a vast majority of customers with Enterprise
agreements own perpetual licenses that
can be brought over to Google, so that they
have the flexibility to use their existing licenses instead
of repurchasing them on GCP.
We call this Bring Your Own License, or BYOL,
on sole tenant nodes.
And this can save you up to 55%.
Windows licenses are perfect example
for using this, where licensing requirements are
supported on sole tenant nodes.
This is dedicated hardware to support license reporting
and compliance.
And with CPU overcommit, you can oversubscribe your hosts
and maximize unlimited virtualization licenses.
It helps you save money by maximizing BYOL licenses.
This way, you can reduce per socket, per core licensing
requirements.
This is ideal for underutilized workloads
in uncorrelated bursts, like dev test, or VDI.
Many software licenses are charged on a per vCPU basis
in the Cloud.
And for some use cases, you may have high memory requirements
but lower CPU requirements.
Extended memory allows you to increase your memory footprint
without increasing the number of vCPUs you have to provision.
For example, you could have a memory intensive database
with a one vCPU machine and 512 gigabytes of RAM,
and for that, you would need to pay
for one vCPU worth of license.
There is an extra charge to use extended memory,
but many times, its incremental cost
is significantly less than the cost
of licensing the extra course.
Another way you could save on licenses
is disabling simultaneous multi-threading, or SMT.
By default. SMT is enabled on VMs.
So single physical CPU core can run on two virtual CPUs,
each as separate threads.
Disabling SMT reduces the number of vCPUs for each core
from two to one, which can reduce your costs.
For a multi-tenant pay-as-you-go workflow in Compute Engine,
this can result in significant savings on total VM cost
for many enterprise workloads.
What if you don't pre-own licenses?
So you use OS licenses provided through Google Images,
but you still want a discount.
We offer committed use discounts for SUSE Linux, Enterprise
Server for SAP, and we print add more license types
in the future.
The offering allows you to get up to 64% off on demand pricing
by committing to use licenses for one or three years.
It seamlessly supports version upgrades for the license
and requires no prepayment, so you
don't have to tie up your investments Yasmin
will share more committed use discounts shortly.
Another important consideration in reducing costs
is reducing waste, or in other words,
optimizing compute resources and reducing running hours.
Many providers require you to create power of 2 VM shapes,
for example, 2, 4, 8, 16, 32, 64.
This makes the unpacking easy for the provider,
but it can be wasteful for you.
For example, let's say you only need 20 cores and 130 gigabytes
of RAM.
If you're stuck in the old world of power tubes,
you would need to launch a 32 core VM
and pay for 12 cores you don't need.
Unique to GCP, Google offers custom machine types.
This allows you to pick precisely the amount of memory
and CPU that your app needs, so you
don't pay for anything more.
Cloud can be complex.
Active Assist Recommendations simplifies and automates
resource optimization by providing
insightful, actionable recommendations
for how to optimize your GCP experience.
Recommendations currently provide
optimization suggestions in four categories:
cost, performance, security, and manageability.
Today, we'll go over a few ways Active Assist can
help you optimize performance while reducing cost,
by automatically identifying the fastest and easiest ways
to make immediate improvements in both resource optimization
and billing optimization.
You can find these recommendations
in the recommendation hub or in context on VM resource pages.
You can also consume recommendations via our API
and BigQuery export.
BigQuery export allows you to download the insights
and recommendations, and run your own custom analysis
to uncover potential other opportunities to reduce costs
within other projects across the organization.
The first recommendation we'll talk about is rightsizing.
Finding instances that are over provisioned
and are good candidates for right sizing is hard.
The rightsizing recommendation engine
looks for instances that require resizing
for cost or performance by running multiple simulations,
and gives you insights, with forecasting
casting potential savings based on those recommendations.
From there, you can click a button and resize the VM
or select a more optimal VM family.
That also applies for VMs within [INAUDIBLE] MIGs
that are not out of scale.
Another type of recommendation offered
is idle or unused resource recommendations.
Here, the engine identifies any virtual machines
that are unused, so no CPU usage or almost no network traffic,
and any unused persistent disks along with potential cost
savings.
If a VM is idle, you can use one click to shut it down.
Or if a disk is empty, it will recommend
to remove it if it was not connected to any VM for more
than 14 days.
Or it will create a snapshot, which
costs less than a persistent disk, before removing the disk,
so the operation is reversible.
Next, Yasmin will share a few more ways
to reduce costs by optimizing resource utilization.
YASMIN MOWAFY: Thank you, Jess.
Another way to optimize your resource usage
is to run resources only when you need them.
VM scheduling is available today,
which lets you schedule the start and stop of your VMs.
Using innocent schedules to automate
your deployment of the PMs can help
you optimize costs and manage VM instances more efficiently.
You can use instant schedules for both recurring and one
off workloads.
A typical use case would be to handle cyclical or recurring
workloads, for example, starting VMs in a dev or test
environment at 9:00 AM and shutting them down
at 5:00 PM every day.
Or to turn them off during the weekend.
You can also use the scheduling to schedule one-time events,
like one machine for a monthly performance,
test or to set up machines for a training session for your staff
or for your customers.
With scheduling we also offer natively integrated logging
to achieve visibility and easy troubleshooting.
If the load of your workload is variable over time,
like web serving, provisioning a fixed capacity
will be wasteful.
And managed instance groups, or MIGs,
can be a very good fit here.
MIGs provide many benefits, one of which
is the autoscaling capability.
That creates more VMs when there is demand to be served,
and removes them as demand decreases.
By using autoscaling, we find that on average, customers
can save up to 43%, compared to provisioning
VMs for maximum capacity, dependent on peak times.
I also want to share two other variations of autoscaling
techniques we have--
predictive and scheduled.
With predictive autoscaling, and by forecasting the future,
we can start creating VMs ahead of the load,
to make sure that you always have enough serving capacity.
For example, if it takes five minutes for new VMs
to boot and start your application,
then predictive autoscaler will create
VMs five minutes ahead of load, so your app
is ready to handle new demand right away.
Predictive autoscaling is using Google's machine learning model
on historical load to predict future demand
and improve application reliability.
Now, what if your demand cannot be predicted based on history?
We have schedule based autoscaling
to help you with that.
Scheduled scaling lets you define periods
where you want the autoscaler to maintain a minimum number
of VMs you specify.
You can use schedule-based scaling
to spin up VMs ahead of anticipated spikes,
like every morning, or to have capacity for regular cron jobs.
You can create, also, schedules for one time special events,
like promo campaigns or product launches.
In this coming section, we will talk
about the last layer of cost optimization, which
is discounting, and explore how you
can optimize your discounts.
Committed Use Discounts, or CUDs,
provide deeply discounted pricing
in exchange for a usage commitment.
They are ideal for steady state usage,
and provide some of the deepest discounts on Compute
Engine, up to 55% off.
CUD discounts offer simplicity and flexibility,
where it can be applied to different machine sizes
or cross operating systems by default.
The same CUD will be applied to other GCP services,
like Google Kubernetes Engine, GKE, and data prod.
Committed use discounts are flexible,
as you can bring VMs up and down and change their shapes,
and commitment will still apply automatically.
Any resource that does not qualify for committed use
discounts automatically qualifies
for sustained use discounts.
You cannot combine committed use discounts and sustained use
discounts for the same resource at the same time.
You can also use the committed use discount
cost breakdown chart to monitor your CUD costs
and answer the ever so popular question, how much money are
CUDs really saving me?
Here, you can see that the black bar represents the CUD fees,
and the blue bar represents the CUD savings.
By adding these two bars together,
you arrive at a number that represents
the net savings you get from buying
CUDs in a particular month's invoice.
Another useful CUD monitoring tool
is the CUD analysis dashboard, which
helps you to visualize and understand the effectiveness
and financial impact of the committed use
discounts you have purchased.
Using the CUD analysis dashboard,
you can analyze your Compute Engine resource usage
alongside your commitment to answer questions such as,
how much of my eligible usage is covered by commitments?
And am I really fully utilizing my existing commitments?
And to also answer, is there an opportunity
to save more by increasing my commitments?
You can also get help to know how much committed
use discounts to by checking the CUDs recommendation
section in the vending console, which
is also accessible through the recommendations hub.
CUDs recommendations analyzes your resource usage trend
over time, and recommends how much
CUDs to buy to optimize your savings,
along with the dollar saving opportunity
for these purchases.
This gives you the peace of mind that you
are making the right decision for your business.
Committed use discounts by default
apply to the project usage where you bought them.
However, by turning on billing account CUD sharing,
committed used discount can start
to be shared across projects within the same billing
account, which usually leads to higher utilization
levels of the commitments.
Once spending account level sharing is turned on,
you start to have more options on how
to attribute the fee and credit of your commitment,
to align with your internal chargeback models.
The first option is proportional attribution,
which is the default setting.
This setting attributes the CUD fees and benefits
proportionally amongst the projects
according to their usage.
The second option, which will be available soon,
is prioritized attribution, where
you can specify in more detail how to attribute
each CUD amongst the project.
Finally, we are excited to share that we are working
on an even more flexible committed used discount model,
so stay tuned for more information on this.
Thank you so much for taking the time
to attend this breakout session with us.
If you have any feedback or questions
about anything we presented today,
or about Compute Engine cost optimization in general,
you can reach us at gce cost optimization@google.com.
We also have a number of cost savings related sessions
under the infrastructure track for you
to check out throughout the conference.
And with that, I'd like to thank you for joining us today,
and I hope you enjoy the rest of the conference.