6 ms·
Show HN: Infracost (YC W21) – Open-source cloud cost policies
Hi, we’re Ali, Hassan and Alistair, co-founders of Infracost (https://www.infracost.io/ https://www.infracost.io/). Infracost shows engineers the cost of each Terraform change in CI/CD before resources are launched. When something changes, it posts a comment with the cloud cost impact. e.g. you’ve added 2 instances and volumes, and have changed an instance type from medium to large, this will increase your bill by 25% next month from $1000 to $1250 per month.
We launched the first version of Infracost just under a year ago (https://news.ycombinator.com/item?id=26064588 https://news.ycombinator.com/item?id=26064588). As we said in our first release ‘the people who are purchasing cloud resources are not shown costs upfront, so they don’t know how much the resources will cost before launching them’. Our assumption was that because we are open source and engineers are flying blind, they (the engineers) would pull us into their workflow. Actually, something different is happening:
The engineers are not pulling us in - it turns out to be the senior DevOps, SREs and platform teams. One of their challenges is figuring out how their small team of 7 people can fulfill the infrastructure requirements of hundreds of engineers. To solve this, they have created and put in place processes for engineers to provision infrastructure when they need. Now they want to implement cost policies and guardrails so that these hundreds of engineers don’t blow past all budgets. For example, if a change will result in a higher than 15% increase, leave a warning. If a change results in a >25% increase in costs, block the change till a team lead has reviewed it.
This has two implications for us. First, we need to create an output that isn’t only used by humans but is also digested into other systems to make further decisions. The second is the people we have been speaking to are not our end users. We need to figure out how we can get introduced to our end users, and create a different set of questions for each persona.
We’d really love your feedback around the cost policies use-case. We've created examples with standard policy tools like Open Policy Agent (OPA), HashiCorp Sentinel and Conftest. Check out the repo for GitHub Actions at https://github.com/infracost/infracost https://github.com/infracost/infracost. Our other CI/CD integrations are listed here: https://www.infracost.io/docs/#4-add-to-cicd https://www.infracost.io/docs/#4-add-to-cicd.
We'd love to hear how you think about policies and guardrails for containing cloud costs!
- deleted 5y ago[deleted]
- bovermyer 5y agoThis looks very cool. I'll definitely see if it works for us (we have a mix of Terraform and CloudFormation).
- hkh 5y agoAwesome! Let me know how it goes :) We also have CloudFormation in our target: https://github.com/infracost/infracost/issues/190 https://github.com/infracost/infracost/issues/190
- cube2222 5y agoCongrats on the Show HN! I can confirm Infracost is very easy to integrate with various automation as we’ve been able to implement it in Spacelift[0] using their CLI tool and even integrated[1] it into our OPA-based policy system. Great stuff, and makes this use case so much simpler to accomplish. (Imagine having to scrape cost data from various providers yourself, ugh.) Keep it up! [0]:https://spacelift.io https://spacelift.io [1]:https://docs.spacelift.io/vendors/terraform/infracost https://docs.spacelift.io/vendors/terraform/infracost
- hkh 5y agoWoohoo, thank you. The Spacelift integration is sweet and super easy to use. It's been great working with you and more to come :)
- ayewo 5y agoCongrats on the launch! > The second is the people we have been speaking to are not our end users. We need to figure out how we can get introduced to our end users, and create a different set of questions for each persona. I'm not exactly clear on what you are trying to say in the quoted text. Perhaps it is because of how you've framed it? Both the senior and junior folks are end users, it's just their role aka personas that are different, no?