4 ms·
I'm slowly coming to the complete opposite opinion you seem to have. I've worked almost entirely for companies that run services in various cloud infrastructur
by horsawlarway 7y ago
I'm slowly coming to the complete opposite opinion you seem to have.
I've worked almost entirely for companies that run services in various cloud infrastructures - Azure/Heroku/Aws/GCP/Other.
I recently started a tiny 1 man dev shop in my spare time. Given my experience with cloud services it seemed like a no brainer to throw something up in the cloud and run with it.
Except after a few months I realized I'm in an industry that's not going to see drastic and unplanned demand (I'm not selling ads, and I don't need to drive eyeballs to my site to generate revenue).
So while in theory the scaling aspect of the cloud sounds nice, the reality was simple - I was overpaying for EVERYTHING.
I reduced costs by nearly 90% by throwing several of my old personal machines at the problem and hosting things myself.
So long story short - Cost. I'm happy to exchange some scaling and some uptime in favor of cutting costs. Backups are still offsite, so if my place burns I'm just out on uptime. The product supports offline, so while no one is thrilled if I lose power, my customers can still use the product.
Basically - cost, Cost, COST. I have sunk costs in old hardware, it's dumb to rent an asset I already own.
There might well be a point when I scale into a point where the cloud makes sense. That day is not today.
- tjbiddle 7y agoWhat's the time trade-off? I've been drawing out my plans lately for a hobby project, all 100% on AWS. Being able to spin up my entire infrastructure with Terraform, build out images with Packer, setup rules for off-site backups, ensure everything is secure to the level I want it, etc. - It takes me next to no time at all. I can't imagine buying hardware, ensuring my home is setup with proper Internet, configuring everything here, and then still needing off-site backups anyway. Now, keep in mind - I'm definitely coming in from a Millennial point of view. My entire career was built on cloud. I've never touched hardware apart from building a computer back when I was 15 or something. I understand virtual. But being able to build up and tear down an entire setup, having it completely self-restore in minutes. Can't beat that. Napkin math has me at ~$50/mo: Full VPC, private/public isolated subnets, secure NACLs and security groups, infinitely extendable block storage and flat-file storage, near-instant backups with syncing to a different continent, 5 servers, DNS configurations, etc. All depends what you're doing too - of course. But for me, just the trade-off of working with what I know and not needing to leave my cafe of choice, still not breaking the bank - and if I do, having instant tear down and restore. Bam.
- jcrawfordor 7y agoI'm not going to say that there aren't advantages, but when you start doing anything non-trivial with system configuration you'll find that the "infrastructure as code" approach also involves a large amount of work. Having done plenty of both in my career I don't think it's fair to say that IaC is at all less time consuming than traditional system administration. The advantages it comes with can also pretty easily come out to a wash if you don't plan around to some extent. I guess what I'm saying is that, just like "cloud means cost savings" doesn't necessarily pan out, "cloud means time savings" also doesn't necessarily pan out. The best strategy continues to depend on your strengths, the application, etc.
- deleted 7y ago[deleted]
- Strum355 7y agoYou can do IaC for bare metal home servers as well. And thats coming from a 90s kid. We run a few physical servers for a college society with proxmox on top, and all of our VMs are codified in Ansible
- moondev 7y agoDo you think automation doesn't exist with on-prem? The vSphere terraform provider is very mature. https://www.terraform.io/docs/providers/vsphere/index.html https://www.terraform.io/docs/providers/vsphere/index.html You can build your own machine images with packer, and actually have more control by building them from scratch (ISO) rather than being locked into a selection of base AMIs. https://www.packer.io/docs/builders/vmware/ https://www.packer.io/docs/builders/vmware/ You can launch HA kubernetes clusters with cluster API. vSphere, openstack and even bare metal pxe all have providers https://cluster-api.sigs.k8s.io/user/quick-start.html https://cluster-api.sigs.k8s.io/user/quick-start.html Cloud native is not just for the public cloud!
- the_angry_angel 7y ago> You can launch HA kubernetes clusters with cluster API. vSphere, openstack and even bare metal pxe all have providers I've been looking for a decent solution for pxe and cluster-api. I've not pushed the button on any as I feel like they're all a little immature. Admittedly I've not had time to set up any in a test env yet. Any recommendations?
- flukus 7y ago> Backups are still offsite, so if my place burns I'm just out on uptime There are plenty of exceptions, but I generally find uptime is given way too much consideration for the value it gives. Most companies up to the national level generally only require about 12 hours a day of uptime from most of their software, more than that is a nice to have, but the company won't collapse if you turn off the servers overnight because no one is working anyway. Even a whole day outage of a critical system can just mean that work has to be delayed for a day and everyone has to work a bit harder the next day. Then as you move down the scale of importance outages can be much longer before people will even notice. I've seen plenty of "5 nines" style requirements put forth but few that truly need it and even fewer that have considered the costs imposed by it.
- chillfox 7y agoYeah, I find the constant focus on ~100% uptime a bit crazy. I used to work for one of Australia's largest bookmakers and we would regularly switch off the datacenter overnight to do some work on the servers. It didn't seem to impact the growth of that business one bit. There were times of course where uptime equalled cash, it just wasn't all the time. For my personal hobby projects, I would actually rather have downtime than a surprise bill if something gets popular.
- gscott 7y agoI pay for one virtual private server instance. I used to colocate several machines but vps is just as good for smaller setups.
- dasil003 7y agoIMHO the optionality the cloud gives you is the main value at the low-end. You can play around with different architectures, mixing and matching managed services with no commitment. When you need to scale you can always switch to on-prem, and with the benefit of having a working system to base your hardware requirements on. Of course this migration has costs too, but if this is your strategy you can minimize cloud-specific dependencies and leverage automation that can be used in both environments (eg. ansible).
- hinkley 7y ago> I reduced costs by nearly 90% by throwing several of my old personal machines at the problem and hosting things myself. This is what's pulling me back toward semi-static websites. Do most of the write traffic on premises and push the results to the cloud. Only part of your application that needs to be always-on. If you treat the entire thing that way, it'll cost you. I've seen a couple of read-mostly applications that are so divorced from this fact that the paths that should be the cheapest are some of the most expensive, and the ones that happen at the speed of human interaction (eg, editing things) are fast. They are in effect backward and inside-out.