If you are running a web or mobile application in the AWS Cloud, chances are high that you are overpaying for your servers. If that’s you, you’re in for a treat, because today we are going to share with you the top 6 strategies we use, the AWS secrets and lessons we’ve learned over years in the cloud that can reduce your costs today.
By the time you finish this short article, you’ll know exactly how to mitigate your cost risks and how to have a system that runs extremely efficiently without sacrificing power.
6 Ways to Pay Less for AWS Cloud
Use The Right Sized EC2 Instance
Whatever kind of application you run, it’s certain that you’re going to need servers. Sometimes you might need larger ones and sometimes you might need smaller ones. Sometimes you might not need many and other times you might need tens or hundreds.
Amazon Elastic Compute Cloud, or Amazon EC2, makes it easy for you to obtain virtual servers also known as compute instances in the cloud, quickly, and inexpensively. You simply choose the instance type you want, the template you’d like to use, and launch the quantity you need.
So to begin right-sizing your instance type you need to monitor and analyze your current use of services to gain insight. This typically takes at least two weeks (in a perfect world, over one month) to identify the workload and business peak. The most important metrics to review during that time frame are vCPA utilization, memory utilization, network utilization, and ephemeral disk usage as well.
There are over six specific approaches we can take once we have run through this data monitoring period and four tools we can use within AWS itself to help mitigate your cost. One of those tools is CloudWatch.
Utilize CloudWatch To Handle This Data Monitoring For You
One of the best tools to use is called CloudWatch by AWS. CW allows you to observe the specific CPU usage, network throughput, and disk I/O, in addition, it then matches the observed peak metrics to a new and cheaper instance type for you automatically.
Within your CloudWatch, you can also check in on your Amazon EC2 Usage Reports, which will be updated every few hours. Those reports will provide you with in-depth usage information for all the EC2 instances you are running.
Take Full Advantage Of The AWS Cost Explorer
The AWS Cost Explorer is yet another free tool courtesy of AWS that will let you investigate further into your cost and data usage to identify trends, put your finger on the real cost drivers, and understand any anomalies when they arise.
We recommend keeping this tool close to your vest and usually run daily or weekly reviews on this to catch small problems before they become large and expensive.
Shutdown (Or Decommission) Unused AWS Resources
It can be very simple to set a series of Amazon CloudWatch alarms that can detect and then shut down idle Amazon EC2 instances (read: smaller bill from AWS):
- The first thing you need to do here is jump into your AWS Management Console and select an EC2 instance.
- Once selected, just click on the ‘Create Alarm’ button in the Monitoring tab.
- Then, enter an email address to notify (choose a secure email, preferably not a personal email), click on ‘Stop’ or ‘Terminate’, set a utilization threshold that suits your needs, and you’re done.
If the threshold is ever reached, Amazon CloudWatch will shut down the instance and email you a notification.
Setup Consolidated Billing
AWS can provide you with what is called “consolidated billing” so that you can keep a close watch on the combined costs of all your linked accounts in the organization in one place. This means less guesswork and more precision when it comes to your costs.
You can set this up in a few short clicks:
- Just open your AWS Billing and Cost Management console, once here, choose “Consolidate Billing”, and click on “Get Started”.
- At this point, you can create an organization in the AWS Organization Console. Click on “Create Organization” on the AWS Organizations console.
- Next, create an organization from the account that you want to be the payer account of your new organization. The payer account is responsible for paying the charges of all the linked accounts.
From that point on, each month AWS will charge your payer account for all the linked accounts in a consolidated bill.
Minimize Overpayment By Using Reserved and Spot Instances
This next strategy is about using what other end users are letting go to waste. The way this works is that you can access those instances up to a 90% discount compared to what you pay normally for your “on-demand” prices. This is called using “Amazon EC2 Spot Instances.”
Think about it, why would you pay full price for some of your various stateless, fault-tolerant, or flexible applications, like, for example, big data, containerized workloads, web servers, high-performance computing, and other test & development workloads?
Since these Spot Instances are tightly interwoven with AWS services such as ECS, Auto Scaling, EMR, CloudFormation, Data Pipeline, and AWS Batch, you can select the launching and maintenance of your applications running on Spot Instances.
If that wasn’t enough, you can very quickly merge Spot Instances with your On-Demand and RIs to optimize workload cost with performance. That’s almost the perfect scenario, the ideal hybrid of function and expense reduction.
Due to the AWS operating scale, Spot Instances can offer the scale and cost savings to run hyper-scale workloads. You also have the option to hibernate, stop or terminate your Spot Instances when EC2 reclaims the capacity back with two-minutes of notice.
When you look at these steps outlined here, we have to appreciate the flexibility in cost that AWS allows to its end-users! These 6 steps will help you easily lower your AWS Cloud costs today.