12 ms·
I've made it a habit to absolutely avoid any and all AWS services for any side projects, unless it's on the employer's dime. I'd rather pay a bit more per month
by danjac 5y ago
I've made it a habit to absolutely avoid any and all AWS services for any side projects, unless it's on the employer's dime. I'd rather pay a bit more per month for a flat-fee Digital Ocean droplet. Maybe I'll end up paying a few dollars more than I would with the equivalent AWS setup, but I'll rest easy knowing I won't get a surprise bill thanks to the opaque and byzantine billing. I mean, there are consultancies whose entire premise is expertise on AWS billing, so the chance of AWS newbie-me running up many thousands because I forgot to switch off service A or had the wrong setting for service B is non-zero.
And the general advice is "don't worry, call their customer support and they'll refund you". Um, seriously? If I want to spend a morning on hold to deal with a huge unplanned bill I'll call my local tax office, thank you.
Which sucks as I learn best by building things in my spare time, but AWS makes that learning process a bit more stressful than I'd prefer.
- tomxor 5y agoPretty much summarises my decision to use Linode, at a small company AWS presents a bigger monetary risk and drain on precious developer time and mental overhead than relatively small savings it might return at smaller scales... I also actually like Linode as a company and enjoy using their services and management interface; Amazon is challenging to be positive about.
- wly_cdgr 5y agoAlso use Linode, they're great. Their docs are a treasure Seems absolutely insane to use AWS for small personal/learning projects (unless the goal is to learn AWS for career purposes, I guess). It'd be like using Unreal Engine to make your 2d indie game Always use the smallest and simplest solution that'll do the job. Simple solutions are not just as good for simple jobs...they're better
- sokoloff 5y agoIMO, AWS isn’t competing on cheaper-in-dollars-per-byte but rather in faster and cheaper for your engineering team. If your engineering team is free (as you might decide your time is on a hobby/side project), it’s harder to make the case (I still run my side projects there though), but when they can make the ops team half wearing AWS badges, that offsets a lot of lone-item markups.
- noogle 5y agoBut it doesn't save much engineering time. You now need to manage those services, and the high mark-up means you need to invest effort in scaling things up/down. Yes, it took me about a week to learn to set-up a Postgresql high availability cluster. But now it saves me $4,000 per MONTH for each of our 10 databases. And if you are using EC2 instances, AWS saves very little effort compared to bare metal.
- Daishiman 5y agoSo did you send your database logs to a centralized logging system? Did you set up roles and keys to access those systems? Are your roles integrated with the rest of your permissions system? Do you have a perf dashboard where you can see the real-time usage of your DBs? Have you already rehearsed updating your database version? The thing is that it's totally possible that you learned everything needed to set up the cluster, in my experience most database systems that aren't set up by a professional DBA will sooner or later hit a configuration or maintenance snag. Once that happens, you're pretty much totally on your own and for critical systems that downtime is going to cost you more than the costs of your infra. So you either need to have a DBA on retainer if you're serious about data integrity, or you pay management costs which means your system was set by literally the most expert people on the planet in the area. If you're running a cluster where performance is the highest priority and downtime and maintenance isn't a huge issue because you have a nice decent maintenance window and enough dev cycles to spend on staying up to date, for sure, go for it. But in my experience, if you care more about a system staying up, good managed infra is so much more reliable that it's not even a question.
- 5y ago
- Galanwe 5y agoI don't get why you're so stressed out by AWS billing. From my experience, once you've worked a bit seriously with AWS, billing is not a blackbox anymore and you're able to plan ahead without too much surprise. If you're still worried, there's also the option of settings alerts on budget spent and forecast of budget, which should settle the debate. (these are also part of the API, so you can deploy and configure these alerts through terraform)
- danjac 5y ago> once you've worked a bit seriously with AWS Kind of a chicken-and-egg situation, no? Unless you're on the company dime, learning to work with AWS entails that risk. A beginner simply won't know how to configure all of these things.
- RobRivera 5y agothe risk is minimalized by reading the docs and proper planning. EDIT: got to love the holy downvoters
- danjac 5y agoThat's the point though. A beginner is going to make mistakes and should be able to learn in a safe environment. Think of a student on a tight budget at college or in a bootcamp, who has to learn AWS because it's on the curriculum.
- fleaaaa 5y agoExactly, it's pretty common for them to shoot their own foot with a couple of hundred dollar bill, just for one tiny instance with additional options that 'you have to do'. IMO AWS is deliberately make these things happen and reimburse it later with excuses. It's rather a strategy at this point it seems like.
- danjac 5y ago
- tester756 5y agoI struggle to understand what's so interesting in X(AWS/Azure/GCP/Alibaba/SAP/Oracle...) Cloud that it appears basically daily on HN I see it like +-decade old (in mainstream) wrapper/apis over managing VMs/Infra while being proprietary as hard as possible What's the difference between this and javascript frameworks posts? (except js frameworks being OSS) How many years have to pass until "Cloud" stops being $hot_topic? Were "admin" topics (heh you know those guys that were predecessors of "DevOps") 10-15 years ago hot too?
- duiker101 5y agoI don't think we are even near the peak "Cloud" before it can slow down. We are just starting to see now entire dev envs in the cloud, and I'm pretty sure we will continue to go in that direction.
- sofixa 5y ago> I struggle to understand what's so interesting in X(AWS/Azure/GCP/Alibaba/SAP/Oracle...) Cloud that it appears basically daily on HN > I see it like +-decade old (in mainstream) wrapper/apis over managing VMs/Infra while being proprietary as hard as possible Don't know if serious or not, but nevertheless let me try. It's the global and near infinite scale, the enormous amounts of managed services you get behind those APIs. You need a database/message queue/object storage whatever at whatever scale? Have at it, and pay as you go. If you can't see the interest in that, i wonder what it is that you do. And IMHO there's nothing inherently complex about the APIs of AWS or GCP ( the only ones I've really used). They're as complex as the things they manage.
- theamk 5y agoWe are talking about things we re using or want to use. And the usage of cloud is not going to go down anytime soon. For example, I think AWS spend is likely the biggest spend in my company after the payroll/offices, so it is pretty important topic, business-wise. And unlike JS frameworks which only matter to a subset of JS frontend developers, everyone can use cloud: JS or Java or Rust or C++ or C; frontent, backend, data science, ML, compilers, embedded.
- throwdecro 5y ago
- tsss 5y agoWho told you to call their customer support for a refund? AWS (and other cloud vendors) practically never refund. They will give out credits for their platform but that won't help you much as a private individual who just lost hundreds of dollars.
- ratww 5y agoThat’s kind of a meme in HN and Reddit: there were a few public occasions where users were refunded and people now just assume AWS will also refund for every instance.
- scrollaway 5y agoI've never had a refund request rejected myself, and I've made multiple mistakes over multiple accounts. Even things such as "Hey, I forgot to turn off this ec2, i wanted to destroy it, any chance for a refund?"
- sofixa 5y agoThey always refund mistakes, of private individuals or companies.
- isbvhodnvemrwvn 5y agoThe first ones anyway. After that, not really.
- nucleardog 5y ago> Who told you to call their customer support for a refund? AWS (and other cloud vendors) practically never refund. I've gotten refunds about a half a dozen times now. Every time I've asked. One was for over a hundred thousand dollars. I've never paid for support, I have no contacts within the company (like are often necessary at places like Google), I literally just put in a support ticket asking for a refund and got a refund. They usually require some documentation/explanation of how you're going to avoid making the same mistake again (which is fair), but otherwise have been very cooperative.
- mattmanser 5y agoIn terms for bang for your buck, DO is much cheaper. Yeah you can get a cheaper AWS server, but it's a much lower performance one.
- marcosdumay 5y agoFrom what I can see, it's not a matter of bang for your buck, what matters is that AWS scales lower than a DO, so if your are not fully using your VPS, AWS is cheaper. Of course, I side with the GP here, it's just not worth the risk. I could save a bit by switching my VPS too, but I won't.
- deleted 5y ago[deleted]
- VadimPR 5y agoYou can set a global budget cap to avoid this kind of concern. That said, I've also blown the budget cap by accident - so agree with you on the DO.
- triska 5y agoWhat good is a budget cap that can be "blown by accident"? From a budget cap, I expect the key invariant that it reliably caps the budget.
- Tenoke 5y agoWith employers I almost always use AWS, for side projects I almost always use hetzner for cheap servers. I don't even think you need to worry much about learning AWS unless you need it but if you do you can limit your budget, set alerts and hope they go off.
- danjac 5y agoI'd be happy to never touch AWS unless a) I'm not the one paying for it and b) there is a genuine need. Unfortunately it's increasingly a job requirement.
- Thaxll 5y agoDO is very amateurish, exactly how to use secure resources with rbac or anything? I mean it took them 10 years to have a load balancer service lol. I would never use DO or Linode at work, those are for garage project over the week-end.
- sethammons 5y agoDO does not have a good support channel. My droplet died. I couldn't reach it, and neither could the world. There was no emergency button for getting help. Just send in an email. After a small time window, I had to just delete and rebuild my droplet. Two days or so later, they got back to me and because I deleted it, they couldn't debug it. Two days to get back to me on a dead, non-reachable droplet. I don't think that is acceptable for anything running in production.
- mwcampbell 5y agoBut the whole point of treating cloud servers as cattle rather than pets is that when one dies, you can spin up another one, right? Ironically, that's one reason I prefer AWS over DO and the like, because AWS's EC2 auto-scaling and availability zones are great for this kind of resilience.
- mathnmusic 5y agoI was recently forced to migrate my hobby FOSS project the other way: from DigitalOcean to AWS. The primary reason being: a generous quota of 60,000 emails per month to send via SES. Most mail providers give only up to 3,000 to 6,000 emails per month.
- BackBlast 5y agoYou can use ses without moving your digital ocean server.
- mhitza 5y agoFrom the AWS SES free tier fine print > 62,000 Outbound Messages per month to any recipient when you call Amazon SES from an Amazon EC2 instance directly or through AWS Elastic Beanstalk.
- TriNetra 5y agowow, they are really tracking from where you're calling the API to give credit, first of its kind I've heard :)
- rualca 5y agoIt's not that hard or far-fetched, given that your EC2 instance needs to have permissions to call SES and AWS can tell whether these requests come from inside or outside their network.
- BackBlast 5y agoGood eye.
- lamnk 5y agoYou can host your project on DO and connect to SES to send emails. Why do you have to move the complte project over?
- 5y ago
- StratusBen 5y ago[Disclosure] I'm Co-Founder and CEO of http://vantage.sh/ http://vantage.sh/ and was previously the lead PM on DigitalOcean's Droplet product as well as on the product team at AWS for container services. We try to help out a bit on this with Vantage which essentially gives you a DigitalOcean-esque view of your AWS costs. The first $2,500 in AWS costs are tracked for free which would seemingly cover your side-projects. It sounds like you've found your home on DigitalOcean, but I'd be curious if something like Vantage would potentially change your decision to build on AWS? In particular what you mention about runaway bills is something that Vantage sends alerts on in advance. We also show you a full inventory of your AWS resources and what they cost you.
- civilized 5y agoWhat happens if your tracking doesn't end up matching the actual bill?
- StratusBen 5y agoVantage integrates at an AWS account level through a mechanism called a Cross account IAM role which allows us to ingest and process the raw data that AWS uses for its own billing systems (Cost and Usage Reports, Service APIs and Cost Explorer) We haven't seen a single case where we don't end up matching the actual AWS bill. In fact, with a release currently in BETA and rolling out in a week or two, we'll be providing richer data faster than AWS Cost Explorer provides. You can see a demo of that here (designs still need to be implemented) https://www.loom.com/share/dcb72a921f134e59b19a0dd3d3ab0e2f https://www.loom.com/share/dcb72a921f134e59b19a0dd3d3ab0e2f
- ManuelKiessling 5y agoI feel you. I do take the risk – the leverage on automation and manageability that Terraform e.a. give me are just too good to pass, and only with a 100% API approach like AWS provides it can I play the 100% infrastructure-as-code game, and I simply won't play any other game anymore. Through the very same means, first thing I do with every new AWS-based project is setting up a cleanly organized Org with centralized billing, centralized IAM&Roles, centralized billing alarms, centralized SCP limitations(!!!) (as in “I will never run anything in Southeast Asia, so I disallow anything in Southeast Asia for all Org accounts), and very not-centralized resources per stage/subproject/vertical/whatever. Plus sensible service limits on everything that has a service limit (request on API gateway etc.). But as someone here said: your risk will remain > 0, you just have to accept that.
- whichquestion 5y agoDigitalOcean has a terraform provider you can use for an IaC approach
- atmosx 5y agoDO doesn’t offer accounting in services (who accessed what and when), no IAM which is a huge problem and their APIs and services are a bit low on reliability. Spaces has extremely low rate limit and their communication API time outs often. The k8s service works overall but has some annoying hiccups that only support tickets will fix, the CDN returns random 503 errors. All droplets are shared and resource contention is a thing. That said, AWS support has its own issues, rarely solving the problem even when we pay for a TAM. Services like elasticache are hard to upgrade with zero downtime. Their solutions always involved spending inordinate amounts of money on open source clones with 1/10 of features and their good services (DynamoDB) will cost an arm and a leg. My 2 cents.
- bsd44 5y agoI would avoid DO and similar McDonald's-type cloud providers for anything production. Commercial or private. AWS might make it difficult to figure out the cost (most common complaint) but the services are professional grade and their support is as well. DO on the other hand provided me an instance with an IP that was on a public blacklist and banned my account within 5min of spawning an instance with the explanation that "it was compromised and hacking" failing to accept that they provided me with the OS image and the public IP. Took me two months of arguing to get the account unblocked and balance withdrawn. Lesson learned; you get what you pay for. Back to AWS for me.
- id5j1ynz 5y ago> I mean, there are consultancies whose entire premise is expertise on AWS billing, so the chance of AWS newbie-me running up many thousands because I forgot to switch off service A or had the wrong setting for service B is non-zero. That line of reasoning is wrong. I'm sure there are consultancies that specialize in office stationery procurement; doesn't mean anything for your small use case of buying a few pens for your home office.
- imadethis 5y agoThere's no chance I accidentally buy $10,000 worth of staplers when I walk into Office Depot though, while the opposite is extremely easy in AWS. Plus, when I checkout I'll get an itemized total of what I owe before I pay, I won't be charged an unclear amount at a future date.
- mrtksn 5y agoThat must be some kind of “trick of the trade” because Firebase originally had feature for limiting the bill with a hard cap and they even have videos explaining how to use it however it was removed later on. Now they suggest building a script that monitors your bill and nukes the project if something happens. The catch? Billing is not real time.
- deleted 5y ago[deleted]
- TriNetra 5y agoIt's the same with Azure. On multiple occasion, I had databases created in tiers several times expensive than the one I use with my subscription. This wasn't a manual mistake; a sleeping app got awakened (may be I'd have hit the run button by mistake) and it ended up creating the database via the ORM framework. Since the ORM framework is only executing create database on the sql server, Azure goes with the default for tier which they had chosen as one with $250 or something monthly price. I've setup the budget alerts on Azure but these are threshold (% of budget consumed) based and they come every month so technically they aren't alert rather information which requires you to do the math whether or not you're in the budget. So you tend to ignore them after a while. Recently, we decided to build a simple solution ourselves [0] which gives alerts based on budgeted pace and not consumption. 0: https://cloudalarm.in/ https://cloudalarm.in/
- deleted 5y ago[deleted]
- ptman 5y agoCheck out https://www.oracle.com/cloud/free/#always-free https://www.oracle.com/cloud/free/#always-free . I tried to write a comparison https://gitlab.com/ptman/matrix-docs/-/tree/master/free-matrix-server#get-a-free-server https://gitlab.com/ptman/matrix-docs/-/tree/master/free-matr... . Also check out https://free-for.dev/#/ https://free-for.dev/#/