Chapter 16. Paying Less: Rate Optimization

In Chapter 5, you learned that your Cloud Cost = Rates × Usage. The previous chapter looked at how to manage the usage part of the equation—using resources in the size you need, and only when you need them. This chapter and the two that follow focus on the other half of that equation, and cover how to optimize rates to pay less for the resources you continue to use.

This work will primarily be managed by the centralized FinOps function for your organization, which has the highest-level view of your organizational cloud usage, the specialized skills and knowledge to purchase these specialized discounts, and the responsibility to manage your cloud rates across the business.

By now, you know that a dollar is not a dollar when paying for cloud. With multiple purchasing options, billing in different time and volume increments, a slew of payment structures and commitment options, and unique differences from each cloud provider, customers have a panoply of purchasing options, each of which has its own unique financial ramifications. This chapter covers the basics of the pricing options you can use to manage your rates. Reservations, Savings Plans (SPs), Reserved Instances (RIs), Committed Use Discounts (CUDs), and Flexible CUDs are the primary levers for adjusting rates for many services, but they can be quite complex, so we talk about those specifically in Chapter 17. Then, in Chapter 18, we talk about strategies you can use to bring all of your rate optimizations tools together in a holistic way.

Compute Pricing

Rate optimization and usage optimization both typically begin by looking at compute usage—what we’re paying for the AWS EC2 instances, Google Compute Engine, Azure virtual machines, managed containers, or serverless usage that we’re running in cloud. There are two key reasons for this. First, for most customers, compute costs are the largest single cost category, often by far. And second, compute pricing is one of the oldest and most mature offerings from cloud providers, and it has the most options for obtaining rate discounts based on commitments.

Depending on the cloud service provider and the resources you’re using, cloud resources can be priced many ways. Different cloud service providers also use different terms for similar pricing offerings. First, let’s take a quick look at the big three providers in Table 16-1.

Table 16-1. Comparison of reservation options across the big three cloud service providers
AWSGoogleAzure
Public priceOn-demandOn-demandPay-as-you-go
SpotSpotSpot/preemptibleSpot VM
Sustained use discountN/ASustained Use Discounts (SUDs)aN/A
ReservedRIs/SPsCUDs/Flexible CUDsReserved VM instances/SPs
Volume discountsVolume discountsVolume discountsVolume discounts

a SUDs are being phased out for new instance families, because customers favor the predictability of CUDs.

On-Demand/Pay-As-You-Go

When you request a normal resource and run it without making any precommitments (like reservations), you’re charged the list price, or the on-demand/pay-as-you-go rate. This is typically the highest price you can pay for a resource. It’s also the most flexible, as you can stop using it at any time without a penalty.

Spot Resource Usage

Most cloud service providers offer a way to run a resource using the spare capacity of their cloud platforms. With spot pricing, you typically set a maximum price you’re willing to pay for the resource, which can sometimes be more than the on-demand rate but usually is set much lower. You will pay that spot rate for the spot resource until your price threshold is exceeded or there is no longer available spot capacity to fulfill your request, at which point you will have a short period in which to stop using the resource before it’s recalled by the cloud service provider. These low rates are possible as opportunistic utilization of what would otherwise be idle cloud capacity.

This pricing offers significant savings (up to 91%!) over on-demand rates and normally can be the cheapest method of running resources. However, the risk of losing the resource at any minute means the services running on spot resources need to be able to handle the reduction of resource availability. Common uses of spot resources are for batch processing that can be resumed or restarted if you lose the resource.

Commitment-Based Discounts

Commitment-based discounts is a good general term for rate discounting options like Reservations, Reserved Instances, Savings Plans, Flexible CUDs, or Committed Use Discounts. Generally speaking, these types of discounts allow you to make a long-term commitment to the cloud service provider to run a set amount of usage of (or spend a certain amount on) a particular type of cloud resources—such as compute, databases, AI/ML (artificial intelligence/machine learning)—for a period of time (sometimes in a particular place or with particular parameters). In return, the cloud service provider will discount the normal on-demand rates for that set amount of usage or cost. The more specific your commitment or the longer you commit or the more you pay up front, the more your discount will be in most cases. As stated earlier, Chapter 17 covers details about commitment-based discounts in great depth.

Storage Pricing

In addition to Azure Storage reserved capacity to reduce the rate you pay on storage, all the major cloud service providers have a range of storage services that provide different levels of availability, durability, performance, and capacity. Generally speaking, the more performant, durable, and available your data is, the more you pay. The key is to find a balance between the price, availability, and quality of the data storage. Generally we would consider that a usage optimization, but in this case we are referring to the differences between the rates you pay for different tiers of storage rather than reducing the amount you store in order to cut costs.

Tip

You should optimize your storage tier based on the access patterns of your stored data. This can save significant amounts without the need to reduce storage volume. Each of the major cloud providers offers various, and frequently evolving, storage tier options to choose from, depending on whether you frequently or infrequently access the data.

Consider production data that’s being served to customers. This will most likely need to be stored on the most performant, highly available storage offerings. But a backup of this data is less likely to need storage on the same higher-cost offering. As your backups age, they’re not likely to be needed in a pinch, so the data could then be stored in the lowest performance level with low availability, but still durable, storage layers. When you move data like this, it’s called data lifecycle management.

Some cloud service provider storage offerings can manage the lifecycle of your data for you. With S3 in AWS, data can be relocated to lower-availability storage tiers based on rules. For example, after 1 month, S3 can move the data to lower available storage, and after 12 months, it can be moved to a very cheap “cold” storage offering called Glacier, which can take hours to retrieve your data.

The more effort you put into classifying and locating your data in the different service offerings, the more you’ll save on data storage costs. Using the built-in features of the cloud services to automate the data lifecycle can reduce management overheads. It is, of course, very important that your data be stored on the correct service offering with the amount of availability and durability you require.

Volume/Tiered Discounts

Most cloud service providers’ built-in pricing plans for some of their services will reduce cost as you use more. When you have large amounts of usage, these automatic price reductions can add up to substantial savings. Generally, these volume discounts are either usage-based or time-based.

Tip

Volume discounts may apply at a regional level, meaning usage across regions won’t be combined for discounting. Consider possibilities to consolidate cloud resources into a smaller number of regions to take full advantage of volume discounts.

Volume discounts reward large cloud users, ensuring that growing on a cloud service provider’s platform continues to make sense for large enterprises. To calculate projected costs correctly on the cloud platform, you need to identify the type of volume discount you’re getting. When calculating savings in reducing your usage, you must understand which pricing tier applies to the usage being reduced. Using the rates from the correct pricing tier enables you to calculate costs (and possible savings) correctly.

Keep in mind also that volume discounts usually apply to usage over the specified volume; they typically do not alter the rate paid for usage below the discount tier.

Usage-Based

When a discount is applied based on the total amount of usage rather than the length of time a resource is running, we call it a usage-based volume discount. The amount of usage in a single hour is combined, and then a rate discount is applied to the amount of usage over the tier thresholds.

When you look at Figure 16-1, which shows your usage-based volume discount in action, the pricing tiers run on the y-axis (usage). When usage exceeds the Tier 2 threshold (within any set hour), all usage above that threshold will be charged at the Tier 2 pricing. Usage discounts are applied each hour using this same calculation.

Usage-based volume discount graph
Figure 16-1. Usage-based volume discount graph

A free tier is a special type of volume discount that applies to a small amount of cloud usage. Cloud service providers offer these free tiers on many of their services to enable customers to try the service with lower costs. Some free tier offerings are available only for short periods of time, while others are available on an ongoing basis. For organizations with large cloud environments, the savings generated by the free tiers are often immaterial.

Time-Based

When a resource is charged at a lower rate after it’s been running for a particular amount of time, it’s called a time-based volume discount. A good example of this type of discount is the Google Cloud Sustained Use Discount (SUD), where compute usage is charged at lower rates the longer it is running. However, it’s worth noting that Google Cloud SUDs are being phased out. Some time-based discounts apply to a specific resource and stop applying as soon as the resource is removed, while others match a resource usage type and can be applied to multiple resources over time. Note that time-based volume discounts aren’t combined with other resources running at the same time. For example, 100 resources running in the same hour are not equivalent to one resource running for 100 hours.

In Figure 16-2, you can visualize how time-based volume discounts work. In the first hour, 10 resources are being used, and in turn 10 individual volume discount counters are started. Let’s assume the cost is charged at Tier 1 pricing for the first five hours of usage, and then at Tier 2 pricing after that. The important change from the usage-based scenario is that the volume discount applies on the x-axis (time), so even though you have 10 resources in the first hour, they all are charged at the Tier 1 price. As each hour progresses, the 10 timers are started and stopped based on the amount of resource usage.

Time-based volume discount graph
Figure 16-2. Time-based volume discount graph

For Resource 1—which runs all the time—you receive the Tier 2 price after five hours in the graph. For Resource 6, however—as it stops and starts over time—it takes eight hours on the graph for it to reach Tier 2 pricing.

Negotiated Rates

In some situations you may be able to negotiate with the cloud service providers, cloud resellers, or marketplace vendors for better pricing.

Custom Pricing

For large usage levels of some services, the pricing page published by cloud vendors advises you to call them. At these top usage tiers, the cloud service providers might be willing to give you better pricing than they offer publicly. We’re unable to go into any details on what these deals are, as they often come under nondisclosure agreements.

Tip

When you have outgrown the published volume discount tiers, be sure to start conversations with your cloud providers early to determine if there are any opportunities for deeper discounts, either across the cloud bill in total, in a region, or at a service level.

Seller Private Offers

When you’re using third-party software in the cloud, license agreements must be organized, and licensing payments are usually made directly to that third party. The license is then applied to cloud servers to run the software. This leads to having one bill from your cloud service provider for the resources to run your software and a separate bill from your software vendor for the licenses. With the creation of services like AWS, Google Cloud, and Azure marketplaces, third-party vendors can now offer their software through these channels. The license and resource fees are paid directly on the customer’s cloud provider bill, and the cloud provider, in turn, pays the license fees back to the third-party vendor.

While the marketplace reduces the effort to calculate the total cost of running services, you now pay a fixed public rate for the license costs. When you organized licensing directly with your third-party vendor, you were able to negotiate better rates for your organization. Fortunately, some services, such as AWS Marketplace, now allow vendors to have Seller Private Offers. Customers negotiate the license rates with the third party, and a custom marketplace listing is created specifically for that customer via a private link. When an organization uses these services direct from a marketplace, they pay custom rates for the license and maintain the single billing source convenience direct from the cloud provider.

BYOL Considerations

Some cloud service providers allow you to use existing license agreements that you might already have within your organization to reduce the costs of cloud, which is known as the BYOL (“bring your own license”) model. One example of this is the Azure Hybrid Benefit for Windows Server. Organizations with an existing Software Assurance or Subscription License (such as the Enterprise Agreement Subscription [EAS]), Server Cloud Enrollment (SCE) subscription, or Open Value Subscription on their Windows Server licenses are able to reuse the license(s) when they deploy servers into the Azure platform.

Identifying opportunities to reuse existing licenses—especially while migrating from a data center into the cloud—avoids unnecessary licensing costs, which can save organizations large amounts of money.

Use cases for owned/perpetual licenses or license rights purchased for noncloud to be used in the cloud are extremely complex and are often subject to changing rules and requirements. If your organization uses a significant amount of licensed software or maintains a large number of agreements with other software vendors that you intend to use in the cloud, we strongly recommend considering the implications of BYOL and involving professionals with procurement or software asset management perspectives to advise on how to use these rights most effectively and within your rights.

Conclusion

By varying service performance, availability, and durability, cloud service providers are able to offer similar services at different rates. Effective FinOps teams centralize this function and keep engineers focused on using the service offering that best fits the profile of their workloads. Using usage optimization and rate optimization together can produce significant savings.

To summarize:

  • Rate optimization is about getting charged lower rates for the same resources.

  • Compute pricing can be reduced by using spot, committing to usage over time, achieving volume discount levels, negotiating discounts, or applying licenses you already own.

  • Storage pricing can be reduced by selecting the appropriate tier of service to meet your needs.

  • For large usage amounts you are able to negotiate better rates, either directly with your cloud service provider or with third-party software license vendors.

It’s important to realize that there are multiple ways to reduce the rate you’re charged for the same cloud resources. Next up, we’ll cover the most popular and arguably the most complex rate reduction mechanisms: using Reserved Instances, Savings Plans, Committed Use Discounts, and Flexible Committed Use Discounts.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset