3 ms·
Managing cloud cost is much easier if you target it from the beginning. Having worked in this space, the things that work are mostly centred on making it easie
by chris_armstrong 4y ago
Managing cloud cost is much easier if you target it from the beginning.
Having worked in this space, the things that work are mostly centred on making it easier to attribute the source of costs, proactively exploring your bill on multiple dimensions, thinking about the problem early in the lifecycle, and looking for opportunities to delete or turn off unused resources.
The more successful practices that will deliver quickly:
* tagging everything to able to understand who owns what and it is used for
* separating workloads into different accounts (might be easier than tagging and crudely achieves the same objective: attribution)
* turning off unused instances at night in dev environments
* automating the removal of incorrectly tagged resources in non prod environments
* automating image and snapshot cleanup
* avoiding right sizing (it’s trickier than you think and the effort is better spent rearchitecting for more cloud native usage based resource types like serverless)
* exploring your bill and slicing it by service type, account, department and other dimensions you’ve tagged, paying attention to size and trends
* paying attention to network paths (AWS is notorious for expensive outbound and it’s worth understanding how it works and how to architect around it)
* use templates to deploy resources (Terraform/CloudFormation/ARM) instead of console so they’re easier to tear down
* set retention limits on other expensive storage resources (hello CloudWatch Logs)
* being careful with high level services that leverage others under the hood, especially when they’re immature (eg Control Tower + constantly tearing down resources will blow out AWS Config charges)
* using cost alarms
* explore using spot instances, reserved instances or savings plans for EC2 instances
- scapecast 4y ago+1 for this awesome list.
- Hayvok 4y agoGreat list, and TLDR, there’s no silver bullet. You need to engage across the whole platform. I would only disagree about avoiding right-sizing, though. I made some instance-type adjustments on our batch compute platform thar saved millions per year. Follow the money!
- chris_armstrong 4y agoI should have been more nuanced on right sizing: if you have a large fleet of servers with homogeneous specs ir workloads, it can be very much worthwhile. The problem with rightsizing is the amount of planning and testing that needs to go into it for production workloads, which is a significant cost in staff time vs the potential savings - this must be thought through. For many workloads its not simply good enough to review some historic metrics and adjust, as there will be implications for baseline and performance under load