5 ms·
AWS employs a whole lot of brilliant people, and they're an insanely profitable business unit. I'm sure those people, given the appropriate motivation and oppo
by paranoidrobot 5y ago
AWS employs a whole lot of brilliant people, and they're an insanely profitable business unit.
I'm sure those people, given the appropriate motivation and opportunity, could provide a solution (or several) that avoids foot-gun data loss at every turn.
There's all sort of solutions they could go with.
As an idea, perhaps some kind of functionality within the billing side of things:
They could, perhaps, decide to just apply a basic cap functionality - when you reach that cap, it stops/disables all chargeable resources above the free-tier and gives you 72 hours to go raise the cap or they'll delete everything except things in their AWS Backup.
AWS can eat the storage cost for the stopped things without a noticable impact on revenue.
Perhaps a more advanced workflow-type setup:
When monthly spend reaches $x across all regions:
- stop all running instances that are not below the free-tier limit
- apply deny policies for per-request charged services
- send an email alert to the billing, tech and admin contacts.
When monthly spend reaches $y across all regions:
- Delete all chargable resources not tagged with 'Foo: bar'
- send an email alert to the billing, tech and admin contacts.
One of the other things that would be great, is to be able to apply limits to AWS Accounts.
For instance, the AWS Account that we give to developers to experiment on, it would be great to forbid them from starting baremetal instances, or GPU instances, etc.
Some of it can be controlled through deny rules, but not enough.
Billing alerts are also currently nowhere near responsive enough - it can be hours or days before you get told that some resource is running up your bill.
A comprehensive dashboard of 'here is every chargeable resource running in this account, in all regions, right now' wouldn't go astray, either.
- tedk-42 5y agoIt's a good lesson in cloud computing to know how much you're spending on services. Usually if you're a single person and you leave an expensive product running unknowingly, AWS support have been kind and refund you the money and take the loss as 'customer made an error' type transaction. It's not like they hold the debt over your head for life. I think the article is a bit extreme to highlight the person's reaction, it's pretty easy bait for most people to swallow. Realistically though, if you can't afford $20, how on earth did you afford a credit card to sign up for AWS in the first place? There are people comparing this person's response with the Robinhood investor that lost money and took their life. The real issue here is a mental health problem and better awareness around that - AWS is a cheap scapegoat we can all blame to ignore the real issue at hand...
- paranoidrobot 5y agoThe problem is only partially "know how much you're spending on services". There's a big problem of: There's a huge amount of AWS that even if you configure it "right" - still leaves you with potentially unlimited liability. Take a simple example of using Cloudfront and S3 together to host a basic website. There's a good well documented way of securing this all "right". However that doesn't protect you from "slashdotting" - perhaps you put an image on your site and it gets linked from the frontpage of Reddit. You go from paying a few $/month, to suddenly overnight having potentially hundreds or thousands of dollars of spend because tens of millions of people have viewed your image. AWS Billing alerts are not going to save you, because once they (eventually, maybe a day or so late) fire, and assuming you immediately see that notification, figure out what it is being accessed, and remove that file (or just turn off the bucket/cloudfront entirely) - the bills could have gone way up. It gets worse when you're talking about other AWS services. The whole point being that billing caps, along with billing alerts that are actually timely, are actually necessary. You shouldn't have to depend on the grace of AWS Customer Service to not force you to decide whether to pay rent, eat, or your massive credit card bill. > Realistically though, if you can't afford $20, how on earth did you afford a credit card to sign up for AWS in the first place? The example was $200. And for a lot of people, particularly students and other people new to development - $200 can be a large chunk of money. Part of the problem is that you go to AWS Conferences and talks, and they talk about how there's all this amazing stuff, and encourage people to sign up and try it out. What they never do is tell you "Oh, by the way, this demo costs $x/hour". I'd love to see some kind of taxi-meter style box behind the presenter/in the corner of webcasts showing how much the AWS Bill would be for the demo.
- tedk-42 5y agoTaking your cloudfront example, the free tier covers 50GB data out at 2 million requests - so your image would need to be less that 25KB to be under the free tier limit. Taking a 4MB image, that would equate to around 8TB which is priced at under $1. Make that 20 million views and you hit $10 - oof! --- $20 or $200 doesn't matter - how on earth could you have a credit card if you can't afford to pay off $200? --- AWS is great and people are free to try it out. They should also be aware that things cost money and not to put their credit card down for services without being fully aware of the costs associated. It's like buying a property for investment then complaining to the real estate agent later down the line for a number of issues the property has that require maintenance down the line. What's wrong with buyer beware? Why can't people/big companies offer services without people crying foul about 'getting hurt from bill shock'? Where's the personal responsibility and accountability for your own actions and decisions gone? AWS aren't scheming to scape little bits of money from small time developers. They're interested in catching big fish companies who are looking to choose their platform / service offering in the cloud computing space. If you think these small time developers with 'bill caps so i don't overspend' is at the top of their feature priority list you've got the wrong idea about the business.