By James Scott, CTO, NeuEon Cloud Practice Lead
In 2020, COVID-19 drove demand for secure remote access to information and applications from anywhere — and, if your organization is like most, you accelerated your cloud migration efforts. In fact, a recent survey indicates that 82% of IT leaders ramped up the use of cloud solutions in direct response to the pandemic.
Unfortunately, as a business’s cloud footprint grows, new challenges arise, including those related to the ongoing cost management of cloud services. We’ve seen our clients struggle with expanded, convoluted invoices that are difficult to interpret. They’re realizing that correlating costs with specific needs, departments, or users requires in-depth analysis. And, often, the person paying the bills doesn’t have the technical expertise to catch signs of potential overspend.
So, while IT leaders in the early stages of a cloud migration may be losing sleep figuring out how to accelerate their organization’s cloud transition, those in the later stages are often staying up nights fretting over their confusing cloud invoices. Are they getting the value they expect from their investment? Are they paying for things they don’t need? How do they know?
Controlling AWS Costs
While the pay-as-you-go nature of cloud computing offers tremendous flexibility, organizations must be proactive about ongoing cost management to maximize ROI. Take, for example, the market leader, Amazon Web Services (AWS) — average AWS overspend is estimated to be 35% to 45% of total spend.
The AWS platform does have capabilities to help manage costs, including alerts that can provide an early warning if monthly usage is trending higher than normal and monitoring dashboards to view service usage. While these are useful, neither provides the detailed information needed to understand, for example, that overspending was caused by someone leaving a workload running or because someone started up a service and forgot to turn it off.
There are common culprits that drive up AWS overspending, which can also be addressed in relatively straightforward ways. Here are the top three we run across in most engagements.
S3 Storage Class Misconfiguration
AWS’ S3 storage service is one of the most commonly used cloud services. It’s well suited for a wide variety of use cases, from website content delivery to backup storage. S3 offers a number of storage classes that provide different cost-vs-performance tradeoffs. The default standard storage class is the most responsive, but also the most expensive. Many organizations overspend by choosing more expensive storage classes than they need. Moving to lower-cost classes reduces costs, often significantly. We helped one client cut their AWS S3 costs in half — a savings of thousands of dollars per month — by taking the time to analyze and adjust storage classes.
EC2 and RDS Instance Overprovisioning
Amazon EC2 and RDS provide cloud-based servers for compute capacity and relational databases respectively. As with on-site servers, you configure these services to meet your specific technical needs. With EC2, for example, you specify the processor, storage, networking, and OS needs. With RDS, you choose the database instance types that are optimized to meet your needs for processing, memory, and performance. You can change these configurations as your needs evolve.
Organizations often overspend by overprovisioning, usually because they’re worried about performance. They also overspend by not scaling those resources back as needs change. Analyzing and adjusting the resource provisioning for EC2 and RDS can go a long way to reducing cloud costs without impacting performance. For monolithic applications, modernizing the architecture with auto-scaling or serverless components will minimize service charges when the application is lightly loaded.
One of the most powerful benefits of cloud services is that it enables teams to experiment by quickly setting up a solution, evaluating the results, and then shutting it down if it didn’t work. But if users forget to remove services they no longer need, overspending can increase very quickly. Creating policies and governance related to service end-of-life can help prevent this common cause of overspending.
Ramping Up AWS Cost Management
Reducing AWS overspend requires more than just looking into these three areas. Gartner estimates that, without a defined plan for cost management, organizations are likely to overspend on cloud services by up to 70%! To get started, put plans in motion to:
- Set up access policies. Use IAM permissions to restrict user access to only the services the user needs. While this won’t control cost directly, it will reduce the opportunities for unexpected and unneeded service usage.
- Monitor your AWS spend. AWS’s Budget feature allows you to set cost expectations and send alerts when spending exceeds your budget. Budgets can be established for overall spending as well as specific services, and we recommend using both options to detect spending in unexpected services as well as higher-than-usual usage of services you know you need. Even with a solid budget configuration, it’s a good idea to manually review invoices. Analyze each line item to understand what you’re paying for and ensure it aligns with your organization’s policies.
- Identify who can help you address this challenge long-term. If you use a variety of AWS services, you’ll likely need to apply a variety of cost-control and budget-monitoring strategies to ensure you’re getting the most for your money. And financial management isn’t everyone’s cup of tea. Look for people with business and technical expertise, a highly analytical mind, and a desire to solve problems. Bring in outside help to get started if needed.
Cloud is how the world works today. And whether you know it or not, it’s in your organization and growing fast. It’s important to get ahead of its expansion — to take time and create guardrails for cloud adoption so you set your organization up with a solid foundation.
At NeuEon, we work with companies to develop cloud migration and budgeting strategies, understand which AWS cloud services meet (and don’t meet) their needs, and analyze AWS expenses and usage to reduce costs. Please reach out to us to learn how we can help you get the most from your migration.