In our article series comparing AWS services for cloud cost management and optimization, we’ve already outlined our framework for cloud cost management maturity and compared AWS tools for cloud cost visibility.
In this article, we’ll focus on the second phase of cloud cost management maturity: cloud cost optimization. We’ll address the key challenges organizations face when it comes to optimizing their cloud spend, the native tools AWS provides to help meet these challenges, and the capabilities that are important to consider as you evaluate the best solution—or combination of solutions—for your business.
As a reminder, you can also download the complete whitepaper to have all the information we’ll cover in this series in one place.
The cloud cost optimization challenge
Once an organization achieves visibility into their cloud environment, they can progress to the next phase of cloud management maturity—optimization. Optimization is the process of finding opportunities to be more efficient and reduce spend or save time, without sacrificing functionality or resources needed to meet your broader business objectives.
Without the right toolset, many AWS customers can easily overprovision their resources and spend more than needed. For example, engineers may be driven to provision the largest possible machine for a workload to ensure 100% coverage, even if only 10% of available resources are actually used throughout most of the year.
How AWS tools address the cloud cost optimization challenge
AWS Trusted Advisor
Trusted Advisor provides guidance to help customers provision and deploy services in line with AWS best practices, including the Cost Optimization pillar of the AWS Well-Architected Framework.
AWS CloudWatch Anomaly Detection
Based on historical usage patterns, the anomaly detection feature will look for standard patterns of cloud usage and costs and send notifications if behavior deviates from that expected behavior. You can learn more about AWS CloudWatch and how it compares to Azure’s equivalent, Azure Monitor, in the article here.
AWS Compute Optimizer
Rightsizing, or the practice of aligning the resources provisioned with the actual needs of the workload, can be one of the most effective ways to reduce spend and optimize the performance of your cloud infrastructure.
AWS Compute Optimizer provides rightsizing recommendations to improve cost and performance for workloads based on AWS EC2 instances, Elastic Block Store (EBS), and AWS Lambda.
What you need to consider about AWS tools for cloud cost optimization
These tools provide important functionality to help AWS customers identify inefficiencies in their environment and can help those early in their cloud journey encourage their teams to think critically about costs and usage.
As cloud usage grows, there are a few important factors to keep in mind.
Additional cloud costs and limited scope
Amazon CloudWatch is adequate for monitoring the utilization of most AWS services, but can incur additional costs, typically due to using a high number of custom metrics, exceeding dashboard and reporting limitations, and/or unchecked ingested data or PutMetricData calls. AWS customers will need to anticipate how their requirements and these additional costs affect the net savings generated as a result of their CloudWatch usage.
Additionally, AWS Compute Optimizer’s EC2 rightsizing recommendations are restricted to a select number of regions and instance types, thereby reducing the scope of cost optimization efforts for those who rely entirely on the tool.
Reservations and discounts
AWS Cost Explorer can be used to produce Savings Plans purchasing recommendations, but it will always recommend the largest potential purchase with no ability to tune or refine options.
CloudHealth’s Savings Plans Recommendations offers users the ability to build out quotes for comparison based on “what-if” scenarios to evaluate potential coverage and savings with different evaluation periods, committed spend levels, and targeted coverage. Customers can then purchase Savings Plans directly within the CloudHealth platform.
Finally, AWS tools are only able to make reservation recommendations for AWS services. CloudHealth offers recommendations and manages reservation lifecycles across AWS, Microsoft Azure, and other cloud service providers. This is important for maximizing the total benefit of discount pricing across clouds.
Limited support for additional cloud cost optimization opportunities
In addition to rightsizing instances and taking advantage of discount pricing options, effective cloud cost optimization efforts should also consider additional sources of wasted spend in the environment. For example, unattached Elastic Block Storage (EBS) volumes—which are usually attached to act as the local block storage for the application when a new instance is launched— can linger even after the instance is terminated. At scale, unattached EBS volumes can generate thousands of dollars of unnecessary spend, and are one of the more common challenges for those in the optimization phase of their cloud journey.
AWS tools can help customers find unattached resources such as EBS volumes, but require a significant amount of manual work to complete successfully and at scale. CloudHealth incorporates EBS volumes as part of a proactive cloud cost optimization strategy, sending notifications about unattached resources across multiple cloud environments, and enabling customers to configure policies that will delete them automatically.
Limited visibility into performance data
As AWS customers provision instances and storage to match workloads, Cost Explorer can make recommendations based on CPU and disk. However, this is only part of the picture when it comes to workload performance.
CloudHealth integrates with third-party tools like Wavefront, New Relic, and Datadog to add information and custom metrics around memory and network to ensure every optimization recommendation is all-encompassing. Customers can push performance metrics to the CloudHealth platform and retrieve metrics for specific resources, time periods, and time granularity (e.g. hourly, daily, monthly) to make more informed decisions about workload efficiency.
Final thoughts
In this article, we’ve outlined the key capabilities organizations should consider when evaluating the tools they’ll use to support their cloud financial management practice during the optimization phase of the cloud management maturity framework. In our next article, we’ll focus on the third phase: cloud cost governance. This will cover the key challenges organizations face when it comes to ensuring disparate teams and lines of business adhere to policies, stay within budget, and avoid unnecessary costs, as well as the primary tools and services AWS provides to help solve these challenges.
If you’re looking for more detailed information into CloudHealth capabilities and how this differs from your cloud provider’s native tools, please don’t hesitate to get in touch with us directly. Our team of experts would be happy to answer any questions you may have and demonstrate how the platform can help you with your cloud cost management and optimization practice.