Public cloud provides many opportunities, but without effective cost management, money can be spent on unused and underused cloud resources. The appearance of such resources is most often caused by incorrect settings of services, low automation of actions, and poor understanding of payment concepts. There are special services to identify unused resources in AWS.
Tools for working with AWS budgets and resources
AWS Cost Explorer
A tool for analyzing and forecasting costs that will help you understand the costs on rendered models for a period of up to 12 months. However, Default reports allow you to quickly determine the main expenditure items and resource usage trends. For a deeper analysis, the service allows you to select data according to various parameters.
AWS Trusted Advisor
A comprehensive tool that, based on recommendations, allows you to allocate resources to improve the security of the system and find opportunities to save money. Cloud cost optimization services include checks and alerts for:
- insufficiently used instances of EC2 and RDS;
- EBS volumes with little or no write activity;
- insufficiently used load balancers;
- unused elastic IP addresses.
Trusted Advisor also provides RI recommendations on reserved instances based on previous usage history.
AWS CloudWatch
Infrastructure monitoring service, where the user can analyze log files, track the estimated cost of individual AWS services and configure alarms to exceed the resource utilization threshold. Also, CloudWatch can be used to collect metrics and respond automatically to changes in AWS resources.
It is easy to allocate computing resources to AWS. But it’s just as easy to leave them on when capacity is no longer necessary. Therefore, efforts to save money are best to start by cleaning up all unused resources that waste the budget aimlessly. To prevent unnecessary losses, you should use CloudWatch alarms to automatically stop or terminate instances that have been idle for more than a certain period.
What else can be done to save on the Amazon cloud
Correctly configure computing resources
If instances provide more power and memory than is necessary for workloads, budgets merge, and if they do not reach, application performance will be affected. Applications need to be configured so that 70-80% of the capacity is always used.
Optimize storage
In February 2017, AWS changed the way EBS works, allowing you to configure
the size of the volumes without disconnecting them. Also, This simplifies block storage capacity optimization and cost management. You can control the use of disks by EBS volumes using CloudWatch.
The most cost-effective way to store data is to use Amazon S3. Storage limits the use of more expensive services such as EBS and EFS. S3 can automatically scale. After configuring S3, the data will be automatically moved to another storage class, and there is no need to change the application.
Apply automatic scaling
EC2 Auto Scaling is a horizontal zoom function that automatically deploys new instances as the load on the application increases, and collapses them when the need drops.
Use Reserved Instances
Reserved instances can provide savings of up to 75% compared to standard tariffs. RI must be monitored in order to distribute other workloads between them in time if they are not used or are not used enough. In addition, AWS does not update them automatically.
RI is a good way to save money if it is known in advance that a certain number of EC2 machines will be constantly used for a long period. However, The backup concept is applied in AWS, including ElasticCache, DynamoDB, Redshift.
Buy Spot Instances
The use of spot instances can potentially bring savings of up to 90%. In fact, these are virtual capacities that are idle at this time. Therefore, the car can be stopped at any time.
However, the ability to put spot instances into hibernation mode or, in case of interruption, stop them to then restore, makes this savings tool attractive for a number of tasks.
Optimize working hours
To implement, you will need to use EC2 AMI, EBS, CloudFormation and other settings. The main task here is to turn the machines on and off without data loss.
Build an economical architecture
To take full advantage of cloud functions, you need to split applications into loosely related components. Also, This helps to scale effectively by being able to independently adjust the capacity of each component, ensuring more accurate compliance of the application with resources.
As a rule, all actions listed in the article to reduce the cost of services are performed by cloud service providers by default. No serious provider will allow its customers to have unused resources. Therefore, if you do not have time to look for opportunities to save money and deal with tags, you can turn to the help of devops services by itoutpost.