From the course: Complete Guide to the AWS Well-Architected Framework

Cost optimization pillar overview

- [Instructor] The cost optimization pillar is one that we all understand. This is one of the key aspects of using the well-architected framework, because at the end of the day, once you tune your stack, you make it as efficient as possible. What's actually going to be the determining factor is how much does this cost? So the cost optimization pillar is going to provide details on how to run your systems at Amazon to get the best business value at the cheapest price point. So how am I going to know how things are operating? Well, I have to measure my business output against the actual costs that I'm paying to get that. Everybody might be completely happy with the application, but again, the integration between these pillars, maybe I can reduce my costs by increasing my performance efficiency. So again, the integration between all of these pillars that we're discussing, but ultimately, it has to be the right price point to continue. So I have to analyze the costs of my systems and the use of my systems. Again, monitoring. But we can also be monitoring by letting Amazon do the collection for us. We could go to the billing dashboard and get details on our bill for each service that we're using. In fact, we can tag all our resources and break down our costs by department, so we can do some pretty interesting things with costs to actually know exactly what's going on. Obviously, we're measuring the investment at AWS. Are we getting the return for what we expected? Another way we can see if the ROI is matching up, is breaking things down by department and actually setting billing alerts to ensure that if somebody has been assigned a certain amount of money over X number of months, you can actually track how they're spending that money. Is it efficient? Is it what you expected? And finally, you might want to use a managed service to reduce your overall costs, i.e. using a monitoring service or a service that manages to track any security issues with your application stack, rather than you building that application or that service from scratch. Some of the best practices to follow for cost optimization at AWS include maintaining an awareness of what you're spending. Again, looking at the billing dashboard, setting up alerts, setting up budgets, we can actually have a pretty good idea as to what we are spending. Choosing a cost-effective resource also goes back into being efficient with our performance, but perhaps a cost-effective resource might be, I'm ordering a lot of EC2 instances, I think I'll sign up for reserved instances, which give me 70% off the price. Or maybe I'm going to set up a savings plan that allows me to define a baseline of what I'm doing at AWS and get a break on the price for that compute. Maybe I have to take a look at matching supply and demand. Maybe I have to look at scaling my applications up and down automatically. This involves using autoscale, entirely doable. And finally, optimizing over time, paying attention to the bill. Why are we doing it this way? Could we reduce it in this manner and save money? So cost optimization, everybody's favorite topic, saving money.

Contents