My Cloud Billing Screw-Up
masterpoint.beehiiv.com
masterpoint.beehiiv.com
Sounds perfectly fine until you realize the internet is a vast space for people constantly scraping. I too left it over the weekend and came back to 70k unique series in our cloud account, pushing the bill well over $1k. What's worse is that Grafana is kind enough to not charge for these spikes, if you catch them before 48hrs. I caught it approx 50 hours later.
Like the OP, though, Grafana was nice enough to make it fall off after I explained the situation. Lesson learned!
Also on a Kubernetes cluster we hit 1.8 million series out of the box on prometheus so you can imagine how much much that would have cost. And we had one service double that due to some poor understanding by an engineer.
Anything that isn't constrained cost is a major financial risk.
I had deployed basic websites / servers with more managed platforms before, but I needed? more control to be able to host the C++ server.
So I found GCP, created a docker image, and got the server up and running somehow. We played for maybe 10 minutes before we ran out of stuff to do, and stopped playing. What I didn't realise at the time was that auto-scaling was a concept. I thought when there was no traffic then the server wouldn't work, and I forgot I ever deployed it.
Anyways, a month later I got a $400 bill, not nearly as much as some people have lost but for a broke college student it was a lot - especially considering I only used it for 10 minutes.
Thankfully, they forgave the bill (thanks jdt!), but it still scared me. I was still at the point back then where a bill like that could've killed my company, or at the very least got me into a lot of trouble.
After that, I pretty much ruled out usage-based billing for my company as too risky. This was quite a few years ago, but to this day I still have no major dependencies that offer usage-based billing.
1. "It was late and I was done for the evening so I didn't validate the change." - if I could use one sentence to explain what is my value as a DevOps engineer, it could be putting these safety pins in place. You shouldn't need to validate anything - it should be a part of the pipeline.
2. AWS is using extortion fees for things like NAT Gateway processing, egress traffic etc. Knowing that, and being aware that container images need to be pulled frequently, it does make sense to use ECR or any other internally hosted container registry. If you don't do that, you will spend that $1000 anyway, just over a longer period than a weekend.
3. Any changes on Friday evening - just don't.
Turned out it was a billing error on their side that they would have probably completely ignored if we didn't notice it.
Luckily, my credit card had a reduced limit, and later Google Cloud forgave the debt as long as I promised not to do it again.
* Once two disks failed at once - fairly normal occurrence but they should know better and differentiate - fortunately the third one allowed me to rebuild the whole thing
* Once the motherboard failed (but they replaced it within half an hour or so)
* Once there were strange irq messages on the console so I just migrated the machine to another one
* I had a problem with a server once that it would not react to any standard reset attempts so I had to ask for a manual intervention - it worked but turned out the machine had a hidden fault so they replaced it
All in, I'm happy to have migrated to Hetzner Cloud as I don't have to worry about these anymore. I still have two physical machines but just for fun (as a Minecraft server for my kids and a Nextcloud setup for my ebook collection).