Cloud solutions offer significant business benefits for startups as well as established enterprises. To help the cloud setup, Amazon Web Services (AWS) delivers brilliant cloud infrastructure solutions with pay-per-use service and other computing resources with respect to the growing needs of a business. However, even with all the benefits there still exist cost related issues. Even though AWS model saves building and maintenance cost there are cost management issues which users encounter while using cloud. So keeping cost management in mind, we have the 7 common AWS cost issues and how you can fix them.
Remember to check your resource utilization before purchasing. The reserved, on-demand and spot instances should be purchased appropriately depending on use and risks; as spot instances have termination risk or reserved instances become inactive due to improper mapping. For long term usage, use reserved EC2 instances.
Remember to analyze your needs and choose the appropriate size rather than sizing for the highest demand. As the size may vary, like large, medium or small, so do not choose the defaults. You can use autoscaling services to manage high load for certain period of time. Also, save cache or non-critical data from application into non-persistent storage, instead of increasing the size of the Elastic Block Storage (EBS).
The Elastic Compute cloud (EC2) is charged as per their usage time even if the EC2 instance is using less than destined capacity or sitting idle. You can identify the idle and underutilized instances and analyze the CPU utilization and network activity. If these data hit low then EC2 instance should be flagged. So you could contact the instance owner and verify if the instance is needed or not or the correct size. Shutdown the instances when they are not needed. This can help you reduce cost. Also find way to reuse the unused reserved instances.
Using elastic cache to store cache information from application and database reduces the instance CPU utilization and bandwidth; this allows us to minimize the bandwidth usage and thus reduces the cost. Also, you can use ECS service on underutilized EC2 instances to increase the workload and efficiency of the Instances, instead of launching new resources.
Keep an eye on your object storage and regularly track the following: what storage you have, where the storages are and how you are storing it. By using the Simple Storage Service (S3) lifecycle you can control and reduce the storage costs. During expiration and transition of object storage class to RRS and Glacier you can reduce your S3 and storage costs. The data that are no longer needed or need to be highly available can be deleted or moved to Glacier storage using the S3 Lifecycle Policy.
Use Glacier to archive data for longer time period and plan the data retrieval process from Glacier, do not retrieve data frequently.
Data Transfer Charges
It is important to constantly track the data transfer charges as they could cause unnecessary expenses. Maintaining a precise resource inventory on ‘what data is transferred’ and ‘where’ (i.e. to which region) would prevent money wastage on data transfer.
AWS Support Services
The EC2 hourly charges are greater for many users than the pay-as-you-go usage charges. So using AWS support services like ELB and pay-as-you-go would help to reduce cost. Analyze your costs and check if these services are effective for your usage.
Detach elastic IPs from instances that are in stopped state and release the other unattached IPs. Also, delete older and unwanted AMIs and snapshots as well as delete snapshots of deleted AMIs. These resources should be tracked regularly so they don’t get missed among the many other resources. Also individually these items cost less but together they create large expense. Meanwhile in AWS environment, all resources are accounted even if they are inactive so it is important to turn off the unused ones. So take snapshot of unused RDS instance (if needed) and terminate the RDS instance. So keep track and remove all unwanted RDS manual snapshots and all unused resources.
Though AWS is a dynamic and effective cloud service it is important to regularly check the progress manually or via automated reports to avoid mistakes. As well as these 7 cost issues can be avoided by regularly monitoring the AWS services, which will largely help to reduce the cost.