This article focuses on Amazon Web Services (AWS) cloud cost optimization and offers advice to readers to assist them in checking the crucial services that account for the majority of the monthly AWS cost.
- Convert your Amazon EBS volumes from GP2 to GP3 and save up to 20% on volume costs
Amazon EBS volumes for General Purpose SSD (GP2) are simple to use, but their performance is tightly tied with provisioned capacity, which grows linearly with volume size. For example, 1 GB of GP2 volume supports 3 IOPS, so 100 GB only supports up to 300 IOPS.
AWS designed GP3 in December 2020 to provide consistent 3,000 IOPS baseline performance and 125 MiB/s throughput independent of volume size. When compared to GP2 volumes, GP3 volumes allow you to provision IOPS and throughput separately without expanding storage size, at prices up to 20% lower per GB.
EBS volumes can be migrated from GP2 to GP3 instantly and without any downtime.
2. Use AWS Instance Scheduler to turn off you’re on-demand instances during out of business hours
The Instance Scheduler on AWS solution automates the starting and stop- ping of Amazon Elastic Compute Cloud (Amazon EC2) and Amazon Relational Database Service (Amazon RDS) instances.
By turning off resources when they are not in use and turning them on when they are, this method helps to lower operational expenses.
For example, a company can use Instance Scheduler on AWS in production environment to automatically stop instances outside of business hours every day. This method can result in cost savings of up to 70% for those instances that are only required during regular business hours if you operate them all at full utilization (weekly utilization reduced from 168 hours to 50 hours).
3. Use Savings Plan to save costs on EC2, Fargate, and Lambda
Savings Plans are a flexible pricing structure that offer cheap prices on utilization of Amazon EC2, AWS Lambda, and AWS Fargate in exchange for a commitment to a predictable level of usage (calculated in terms of dollars per hour) for a 1 or 3-year period. You will be charged the discounted Savings Plan pricing for your usage up to your commitment when you sign up for a Savings Plan.
AWS provides two different kinds of savings plans:
Compute Savings Plan:
The most flexible option is a compute savings plan, which can also lower your expenditures by as much as 66% regardless of instance family, size, AZ, region, operating system, or tenancy, these plans automatically apply to EC2 instance utilisation. This plan also applies to Fargate or Lambda usage.
For example, with Compute Savings Plans, you can change from C4 to M5 instances, shift a workload from EU (Ireland) to EU (London), or move a workload from EC2 to Fargate or Lambda at any time and automatically continue to pay the Savings Plans price.
EC2 Instance Savings Plan:
The most affordable plans are EC2 Instance Savings Plans, which give savings of up to 72% in exchange for a promise to use specific instance families in a Region (e.g. M5 usage in N. Virginia). Regardless of AZ, size, OS, or tenancy, this automatically lowers your cost on the chosen instance family in that region. EC2 Instance Savings Plans give you the flexibility to change your usage between instances within a family in that region.
For example, you can move from c5.xlarge running Windows to c5.2xlarge running Linux and automatically benefit from the Savings Plan prices.
4. Identify Amazon EC2 instances that are underutilised and reduce costs by stopping or rightsizing them
Right sizing is the process of analysing deployed instances and identifying opportunities to eliminate or downsize without sacrificing capacity or other requirements, resulting in lower costs. AWS Cost Explorer Resource Optimization can be used to generate a report of EC2 instances that are either idle or underutilized. You can cut costs by either stopping or reducing the size of these instances. AWS Operations Conductor can be used to automatically resize EC2 instances (based on the recommendations report from Cost Explorer).
Right sizing must become an ongoing activity because your resource needs are constantly changing if you want to continuously achieve cost efficiency. Find the reference below for more information on how to check the rightsized recommendations.
5. Identify low-utilization Amazon RDS(Relational Database Service) and reduce costs by stopping RDS
Amazon RDS is powerful and extensively customizable. However, it has a complicated pricing structure that makes it challenging to anticipate costs. Your monthly AWS spending may as a result increase suddenly and drastically.
Use tools, such as CloudWatch, to check database connections to your RDS instances. Downsize, stop, or snapshot and terminate instances with zero connections. Downsize RDS instances that have less than 50 percent CPU utilization to lower instance classes. Multi-AZ deployments cost twice as much as single AZ deployments. Disable Multi-AZ if you don’t need it. Maximize Utilization of Reserved Instances (RI) wherever possible.
6. Analyse Amazon S3 usage and save money by utilising lower-cost storage tiers
By default, Amazon S3 objects are created in the most expensive storage class — Amazon S3 Standard.Analyse storage access patterns on the object data set using S3 Analytics for at least 30 days. It makes recommendations on how to save money by leveraging S3 Infrequently Accessed (S3 IA). Using Life Cycle Policies, you can automate the movement of these objects to a lower-cost storage tier.
The S3 storage classes that are currently accessible are shown below, with details on each class’s cost, performance, availability, minimum size, and duration.
7. Identify low-utilization Amazon EBS volumes and save money by snapshotting and then deleting them
EBS volumes with very low activity (less than 1 IOPS per day) over a 7-day period are most likely not in use. Use the Trusted Advisor Underutilized Amazon EBS Volumes Check to identify these volumes. To save money, take a snapshot of the volume (in case you need it later), then delete it. The Amazon Data Lifecycle Manager allows you to automate the creation of snapshots.
8. Analyzing data transfer costs with AWS Cost Explorer
Some businesses could try to minimize their data transfer costs by limiting the number of regions and availability zones where their applications are deployed. However, there are several advantages to regional variety.
Let’s say you run a global application and have seen a rise in the number of users in Asia. You might need to host your application locally to facilitate this expansion and give users the best possible experience, perhaps in the AWS Singapore region (ap-southeast-1). This prevents data from travelling between the US and Asia experiencing extensive round-trip latency problems.
9. Reduce EC2 costs by using Amazon EC2 Spot Instances
Customers can use Spot Instances to save up to 90% off On-Demand prices without committing to a term. Spot instances are ideal for fault-tolerant, scalable, or flexible applications such as big data containerized workloads (ECS/EKS or self-managed Kubernetes), CI/CD, web servers, and test and development environments.
10. Optimize your Amazon EC2 instances cost at scale by migrating from Intel to AMD Processors
Changing the processor type from Intel to AMD on an existing instance saves money. However, ensure that the new processor will support your application without causing any performance issues. A minor change can help you save up to 10% on your compute costs.
When you use AWS Graviton processors in EC2 to optimise your instance utilisation, you can reduce your overall costs by 10% to 45% for a variety of workloads.
I hope the above article was beneficial in making clear which AWS factors should be prioritized to save AWS consumption costs. Please leave a comment if you notice anything that needs to be changed or corrected. I would appreciate everyone’s support in writing more articles like this in the future.