Cloud Cost Optimization: 3 Ways to Reduce Cloud Costs in Your Multi-Cloud Environment
Moving your workloads to the cloud (or multiple clouds) is supposed to save you money. So why are your computing expenses piling up? The answer is in the transition. 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 single cloud and multi-cloud computing.
The benefits to enterprise IT are clear:
Avoid reliance on a single cloud provider
Choose from a wider range of services and features to suit your applications
Continue to make use of your existing on-premise infrastructure
Choose where to host your workloads, based on cost, the geographical reach of your applications and compliance, redundancy, and data sovereignty requirements
Set against these advantages is the high initial cost of rearchitecting and integrating your cloud-based systems. In addition, you’ll need to maintain total 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. In this article, you’ll learn:
The hidden cost of transferring data between your clouds
Cost-efficient methods of deploying your applications
Cloud vendor pricing mechanisms that can have an impact on your multi-cloud strategy
Keep reading to learn about the three areas of multi-cloud cost management that make the biggest difference to your overall IT expenditure.
3 Ways to Reduce Cloud Costs Right Now
1. Data Transfer
Whether you use Amazon Web Services (AWS), Microsoft Azure, Google Cloud Platform (GCP), or another cloud provider, the cost of transferring data into that cloud environment is usually free. Unfortunately, transferring it out is another matter altogether. In the same way that you should design single-cloud systems to reduce the cost of internal data transfers, you should also aim for a cost-efficient multi-cloud architecture.
When focusing on reducing cloud costs, it’s important to be mindful that outbound network charges vary from vendor to vendor. At an individual vendor level, the cost of data transfer between different cloud regions varies geographically, from 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. 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.
You can achieve a higher level of fault tolerance by replicating data between vendor platforms as opposed to replicating 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—and overall cloud costs—down. In multi-cloud environments requiring large-scale interchange of data, these services can offer significant cost savings compared with transfers over the public Internet, as well as providing a faster and more secure connection.
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 one, singular, 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.
To prevent more expensive external traffic flows, you should also avoid deploying different components of the same application to more than one public cloud. The problem is, this may be unavoidable. When you need to host applications in certain geographical locations, your application architecture should mirror your network topology by minimizing traffic across cloud boundaries.
Content Delivery Networks
Finally, 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 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 helps speed up delivery of data at the 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.
2. Compute and Storage
Each cloud vendor offers a range of different instance types and storage services aimed at a variety of use cases, cost requirements, and performance expectations. Therefore, finding the best fit for your workloads can be a complex challenge—especially when comparing resources across several clouds. On top of that, pricing structures vary between vendors, where equivalent resources may be charged differently.
Comparing Cloud Costs
Cost comparisons can get particularly difficult when weighing 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 of data you transfer out of storage, and the amount of capacity you provision. Even when a price comparison appears relatively simple, you will still need to consider how different vendors stack up as your requirements change. One use case: Two or more equivalent services from different vendors use one simple pricing metric, such as a monthly charge per GB of storage. However, the vendors structure their charges into pricing tiers, where you pay lower rates at higher levels of resource consumption. This means one vendor is a better choice when your capacity requirements are low, but ends up being more expensive as your applications scale.
Lifecycle management policies can be set up to help lower the cost of storing data (like logs and snapshots) as the frequency of access reduces over time. To reduce cloud costs using lifecycle management, it might 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. Allow for data transfer costs—both when you migrate your data and when you need to recover it. Plus, you will want to consider vendor charges for data retrieval and any minimum storage periods.
Your choice of cloud provider will also be governed by a range of other logistical considerations. With internal applications, you’ll likely want to keep compute and storage resources under the same roof. 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. In these situations, keeping compute and storage together will be less important. Another common logistical issue is compliance. 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 (VM) pricing can give you an opportunity to significantly reduce the running costs of your multi-cloud environment. They typically come in the form of billing constructs, like AWS and Azure Reserved Instances (RI), as well as disposable capacity, like AWSSpot Instances and Google Preemptible VMs. However, when you distribute workloads between clouds, it becomes more difficult to exploit discount capacity to maximum advantage. For example, the key to good RI management is to make sure you consume your usage credits as much as possible. Although, in a multi-cloud environment, users often host fewer applications on any particular vendor platform, making it harder to align workloads to matching reservations. Similarly, 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.
The Answer to Reducing Costs in Complex Multi-Cloud Environments
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 minefield of different pricing mechanisms, which make manual calculations and comparisons between different vendor offerings complicated and time-consuming. That’s why a trusted cloud management platform (CMP) is so important to effective cloud cost reduction and optimization. Only CloudCheckr can do all the hard work for you—ensuring Total Visibility into your entire multi-cloud environment. CloudCheckr can identify wasted expenditure on unused, underutilized, and unsuitable infrastructure. It can also help reduce costs by making 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. Without a cloud management platform, you could end up spending considerably more in the cloud. Read how CloudCheckr streamlined Siemens Mobility’s security protocols, ensuring developers can easily identify the most urgent security issues, and reduced cloud costs by up to 20%.
Try CloudCheckr Free for 14 Days
Learn how CloudCheckr can help you optimize and automate your cloud with our free trial.
About the Author
Todd Bernhard has been with CloudCheckr handling Product Marketing and Technical Evangelism roles since 2017. He holds multiple certifications including AWS Solutions Architect Associate, Microsoft Azure Fundamentals, Google Cloud Associate Engineer and FinOps Certified Practitioner. Prior to joining CloudCheckr, Mr. Bernhard was an award-winning, bestselling mobile app developer and entrepreneur and previously worked for Sun Microsystems, as an Evangelist, Sales and Technical Trainer and Product Marketing Manager for Sun’s high-end data center servers.
Cloud Resources Delivered
Get free cloud resources delivered to your inbox. Sign up for our newsletter.