report
Article Resource July 17, 2018

Cloud Cost Optimization: 3 Ways to Reduce Costs in Your Multi-Cloud Environment

More competition in the public cloud market, increasing industry collaboration between the leading cloud players and improving workload portability are helping to drive the growing trend towards multi-cloud computing.

And the benefits to enterprise IT are clear.

You can avoid reliance on a single cloud provider. You can choose from a wider range of services and features to suit your applications. You can continue to make use of your existing on-premise infrastructure. And you can choose where to host your workloads, based on cost, the geographical reach of your applications and compliance, redundancy and data sovereignty requirements.

But set against these advantages is the high initial cost of rearchitecting and integrating your cloud-based systems. In addition, you’ll need to maintain visibility and control over a complex and dynamic multi-cloud environment.

Above all, you’ll need to be accountable for the cost of running your federated IT systems by keeping your monthly cloud bills in check.

 

Read How CloudCheckr Drives Cloud Governance at Siemens

 

In this post, we cover the three areas of multi-cloud cost management that can make the biggest difference to your overall IT expenditure.

We explore cost-efficient methods of deploying your applications. We discuss how cloud vendor pricing mechanisms can have an impact on your multi-cloud strategy. But let’s start with the biggest challenge to multi-cloud cost optimization—the hidden cost of transferring your data between your clouds.

1. Data Transfer

The cost of transferring data into your cloud is usually free. But transferring it out is another matter.

So, in same way you should design single-cloud systems to minimize the cost of internal data transfers, you should also aim for a cost-efficient multi-cloud architecture.

Cost Variations

First, you’ll need to be mindful that outbound network charges vary from vendor to vendor. And also that, at individual vendor level, the cost of data transfer between different cloud regions varies from geographical region to region.

For example, Google Cloud Platform charges far less for data transfers between its regions in the US than elsewhere in the world. Similarly, Amazon EC2 users pay lower rates for transfers between US East (N. Virginia) and US East (Ohio) than between any other two regions.

So, in order to achieve the best balance between cost and performance, you’ll need to strategically select regions across your multi cloud—taking into account the scale and resource consumption patterns of your applications, logistical complexity and the cost of other vendor services you’ll need.

Fault Tolerance

You can achieve a higher level of fault tolerance by replicating data between vendor platforms rather than between regions of the same cloud provider.

In view of the relatively high cost of outbound transfer, this may seem an expensive option. But, as vendors also charge for network transfer between each of their geographically separate regions, multi-cloud replication may not be as pricey at it first appears—especially if you plan your data flows carefully.
Dedicated Network Connections
Dedicated network connection services, such as AWS Direct Connect, Microsoft Azure ExpressRoute and Google Cloud Interconnect, can also play a role in keeping your data transfer charges down.

In multi-cloud environments requiring large-scale interchange of data, they can offer significant cost savings compared with transfers over the public Internet, as well as providing a faster and more secure connection.

Network Topology

Your multi-cloud environment should put your on-premise infrastructure at the center of all data workflows. This ensures all data, which moves from one cloud platform to another, flows through your data center.

That way, all data rolled out from one cloud platform to the others takes just one outbound path. The cost of forwarding your traffic from your data center out to your other clouds will be free, as this would be treated by each vendor as inbound data transfer. As a result, you avoid several direct outbound transfers, each subject to vendor network charges.

Although a centralized network topology could help you significantly reduce your data transfer charge, you should still allow for a potential increase in bandwidth costs for the additional data flowing in and out of your data center.

Application Architecture

To prevent more expensive external traffic flows, you should also avoid deploying different components of the same application to more than one public cloud.

However, this may be unavoidable. For example, when you need to host applications in certain geographical locations. In such cases, your application architecture should mirror your network topology—by minimizing traffic across cloud boundaries.

Content Delivery Networks

And, finally, don’t forget you can reduce the network load on your cloud servers by offloading web traffic to a content delivery network (CDN). Depending on your application requirements, this could be a third-party solution, such as Cloudflare, or in-house cloud vendor offering, such as AWS CloudFront or Azure Content Delivery Network.

A CDN not only helps lower your data transfer costs, but also speeds up delivery of data at same time. What’s more, it can help extend the geographical reach of your web applications without having to distribute them across different cloud regions and different cloud platforms.

cost savings best practices screenshot cloudcheckr

CloudCheckr Cost Best Practice Checks

2. Compute and Storage

Comparing Cloud Costs

Each cloud vendor offers a range of different instance types and storage services aimed at different use cases, cost requirements and performance expectations. So finding the best fit for your workloads can be a complex challenge—all the more so when comparing resources across several clouds.

On top of that, pricing structures vary between vendors, where like-for-like resources may be charged differently.

Cost comparisons can get particularly difficult when weighing up your storage options. Depending on the nature of the service, charges could be based on several factors, such as the number of read and write requests, the amount data you transfer out of storage and the amount of capacity you provision.

Even where a price comparison appears relatively simple, you’ll still need to consider how different vendors stack up as your requirements change.

For example, two or more equivalent services may use one simple pricing metric, such as a monthly charge per GB of storage.

However, vendors tend to structure their charges into pricing tiers, where you pay lower rates at higher levels of resource consumption. This could mean one vendor is a better choice when your capacity requirements are low, but works out more expensive as your applications scale.

Lifecycle Management

You should set up lifecycle management policies to help lower the cost of storing data, such as logs and snapshots, as frequency of access reduces over time.

It may make sense to move your data to lower-cost archiving and cold storage services within the same cloud platform. However, it may be more economical to transfer it to another cloud.

Do your homework first and don’t just compare headline costs. You should allow for data transfer costs—both when you migrate your data and in the event you need to recover it. And you should also consider vendor charges for data retrieval, along with any minimum storage periods.

cloudcheckr S3 Storage Costs screenshot

S3 Storage Costs
Logistical Considerations

Your choice of cloud vendor platform will also be governed by a range of other logistical considerations.

For example, with internal applications, you’ll likely want to keep compute and storage resources under the same roof. So you’d need to compare charges collectively to establish the most cost-effective option.

By contrast, many public-facing websites will afford more flexibility. In many cases, you’ll be simply serving static files from object storage and handing over much of the processing work to the end user. So keeping compute and storage together will be less important.

Another issue is compliance, where you may have little or no alternative but to host applications on a specific vendor platform that meets your regulatory obligations. This will limit your scope to make cost-based choices. And, in the case of sensitive workloads, your only option may be to continue using your in-house data center.

3. Discount Capacity

Discounted alternatives to standard virtual machine pricing offer the potential to significantly reduce the running costs of your multi-cloud environment. They typically come in the form of billing constructs, such as AWS and Azure Reserved Instances, and disposable capacity, such as AWS Spot Instances and Google Preemptible VMs.

But the problem is that, when you distribute your workloads between clouds, it becomes more difficult to exploit discount capacity to maximum advantage.

For example, the key to good Reserved Instance management is to make sure you consume your usage credits as much as possible. But, in a multi-cloud environment, you host fewer applications on any particular vendor platform, making it harder to align workloads to matching reservations.

On similar lines, by reducing your focus on a single provider, you could miss out on volume discounts that apply when your resource consumption exceeds a qualifying threshold.

CloudCheckr RIPurchaseRecommendationsSummary screenshot

Reserved Purchase Recommendations
The Answer to Multi-Cloud Complexity

Cost management in a complex multi-cloud environment is no easy challenge.
Hidden costs often go unnoticed—from unnecessary network charges to wasted opportunities to leverage discounted pricing.

Another problem is the sheer minefield of different pricing mechanisms, which make manual calculations and comparisons between different vendor offerings a complicated and time-consuming process.

That’s why third-party tools are so important to effective cost optimization.

They do all the hard work for you and can ensure complete visibility into your entire multi-cloud environment—not just a single-vendor cloud. They can identify wasted expenditure on unused, underutilized and unsuitable infrastructure. And they can make recommendations for reallocation of resources based on your consumption patterns.

Cost-optimization tools to manage your cloud inventory should form an essential part of your multi-cloud strategy and shouldn’t simply play a supporting role. Because, without them, you could end up spending considerably more.

View CloudCheckr Plans and Pricing

Todd Bernhard
Todd Bernhard is a Product Marketing Manager at CloudCheckr and AWS Solutions Architect Associate and AWS Certified Cloud Practitioner. He has been administering, teaching and developing on Unix systems since 1984 including 16 years at Sun Microsystems, now part of Oracle. In 2010, Todd founded the award-winning app development firm NoTie.com. This photo is the last known image of him wearing a tie!
Subscribe to our Blog
Sign up now to get more great content.
TRY CLOUDCHECKR FREE FOR 14 DAYS!
Learn how CloudCheckr can help you optimize and automate your cloud.
WANT TO SEE CLOUDCHECKR IN ACTION?