It is undeniable that the facilities are large, but these services are usually charged per hour of use, and the cost estimate at the end of the month can be quite unpredictable. Allocated machines are charged even when idle and can become an unnecessary black hole in small businesses’ budgets. You can use these four tips for aws cost optimization.
Monitor Your Demand
The elasticity of your instances is a key factor of your infrastructure that can bring big savings; identifying when it is possible to shut down machines without giving up system stability is the first step. It is common in B2C that traffic outside business hours is reduced; it is usually possible to reduce instances by up to 30% without prejudice to the application. In continuous integration models, test environments running online parallel with the actual application in production must also be turned off daily if no one will use it.
Also, the Autoscaling tool itself can point you in the right direction and automate the process of turning machines on or off. The tip is to use tags for each instance and monitor the evolution over time. If there is constancy or predictability in demand, your system must adapt to it using the minimum resources required.
Take A Bottom-Up Approach.
T2. medium or T2. Large? M4 or C4? The choice of instance can be quite confusing, especially for developers who are starting to venture into infrastructure. Is it essential to know your application and have estimates of the main bottlenecks? Will you need more memory, processing, or storage? Is available bandwidth a limiter? With these variables in mind, the simple answer is that the ideal instance is the cheapest option that meets your demand.
If you already use AWS, you can guide your decision from CloudWatch information and set usage alarms. The general idea is to identify a minimum standard that your application needs, choosing the most appropriate instances: the options include optimizations for processing, RAM, I / O, GPU, among others. But it is useless to be seduced by the specifications and overpay without a real need.
Trusted Advisor is a tool that offers suggestions for use based on the metrics of the application, including reducing instances or changing types. For a very variable demand, it is interesting to use a more significant number of smaller intermittent instances (T2) instead of more significant fixed instances (M3, M4); if their application allows, they generally bring a cost reduction and operate with less idle capacity.
Use Reserved Instances
After identifying the most appropriate instance profile for your application, it is possible to purchase instances reserved for that minimum of resources that will always be connected. It is possible to commit to an instance for 1 or 3 years and obtain substantial discounts on face values. It is possible to reserve resources from EC2, ElastiCache, Redshift, RDS, and DynamoDB in different payment methods (Upfront, Partial or No-Upfront), eliminating risks exchange changes or better adjust to a more limited budget now.
But do not stop there; you should continue to monitor the use of reserved instances and, if applicable, sell instances that are not used in the Instance Shop or even look for bargains for shorter periods. The tip is to leave about 80% of your demand 24/7 as reserved instances, with some leeway for a temporary demand reduction. The payback is usually high: you pay in 1 year what you would pay in 7 months without reserved instances.
Take Advantage Of Your Business Intelligence Team
Even if they are not developers or do not understand infrastructure, BI professionals can have good insights when analyzing Amazon’s platform tools, such as the Billing Console. Identifying resources by tag helps to identify departments or managers, and creating budget alerts help to avoid billing surprises,
Cost Explorer also allows you to access metrics clearly and translate your needs in a simplified way for other company sectors. For more advanced users, it is possible to generate Reports per hour for later analysis and creation of KPIs. A tip is to observe at least three aspects: IR coverage (Reserved instances / online instances 100% of the time), elasticity (% of machines being shut down per day), and resource use.