5 ms·
Hosting your own servers doesn't require foregoing virtualization and containers. All the tools listed in the article that aid deployment can be used on your ow
by kogir 13y ago
Hosting your own servers doesn't require foregoing virtualization and containers. All the tools listed in the article that aid deployment can be used on your own hardware, and should be! Also, if you suddenly need 10 or 100 new machines, EC2 is still there - you've not sworn it off forever.
Using the cloud, your own servers, or both should be a deliberate decision based on cost and your real business needs. Not thinking about this seriously is doing yourself a disservice.
- druiid 13y agoThis indeed. A smart company will do a cost-benefit analysis, not blindly go to the cloud, or 'double-down'. There are great benefits to doing things (maybe even your entire environment) on 'The Cloud', but sometimes physical hardware (rented or purchased) will be a better investment in the long-run. Also, Hybrid Cloud is big at the moment (physical servers for day-to-day traffic and either dev tasks on the cloud, or expansion/failover).
- matlock 13y ago>A smart company will do a cost-benefit analysis, not blindly go to the cloud But often times those cost-benefit analysis don't take into account how quickly you can improve and work on your infrastructure. The performance or cost improvements need to be a lot to slow down your team even a bit. Especially for startups this can hit them very hard.
- druiid 13y agoNot sure that this would really change the analysis that much. If you were buying physical servers and installing them yourself then sure, this could very well (perhaps even will) cause slowdown. Most everyone that does bring up using physical hardware for start-ups on here instead discuss leasing managed dedicated servers. You can just as easily spin instances on those up/down as needed, and many of the solution providers out there will even have Openstack/VMWare/etc. available pre-installed so you don't have to do any of that legwork. I think engineering for 'The Cloud' can be just as time consuming if not more so for start-ups. For Amazon at least you have to engineer for failure. With a dedicated server configuration you still do need to engineer for that, but you aren't worrying about if depending on the solution providers block storage is going to take certain aspects of your architecture offline when it goes down (yet again), or if the portal won't allow you to bring up/down new instances during a very critical period of time, etc.
- Spooky23 13y agoIt's a risk shift. Generally speaking, most sysadmins at small places do a horrible job engineering for failure. Or, worse, they don't have professional SA's, just devs who know enough to be dangerous. So while you don't run into a US-East EBS failure every now and again that affects millions of servers, you are subject to random unforseen failures because somebody didn't do X correctly. (Where X could include: disk configuration, HA configuration, DR plan, backup/restore plan, os management, firewall management, etc) There's no one right answer here. I've rolled specific hardware solutions managed by a single team for certain applications, and everything was fine. I've been stuck working within the bounds of a managed services provider, and things worked too. Cloud is just another model. EC2 lets you roll a globally distributed solution with good tooling for low cost.
- matlock 13y ago>EC2 lets you roll a globally distributed solution with good tooling for low cost This is the Crux. There are other options available, but going cloud makes it very easy to roll out something big without the necessity to have experts in all the lower level parts of your infrastructure. It lets you focus and the price for that is absolutely reasonable
- druiid 13y agoI fully agree on the SA stuff. Sadly more often than not it's some dev who knows enough to be really dangerous. I make a good amount of money by coming in and mopping up after those kinds of scenarios (sadly... I'd rather make less money up-front by helping in the planning phase). I will say however that while yes, it's a risk shift you can still have and will have plenty of those risks that are shifted to the cloud still unaccounted for. For instance, backups. Just because your servers are now on 'the cloud' does not mean they're immune from losing all of their data if the instance dies, especially on EC2. On EC2 it's generally just a 'whoops, bye!' scenario. At least with Rackspace cloud it might be a 'whoops, restore from a VM image snapshot from last week'.
- fragsworth 13y agoI think we've reached a point where most small companies can and should blindly use the cloud for everything that can be done remotely. There are only two situations where the cloud shouldn't be used: 1. If you're using tons of servers, you might benefit from hosting your own hardware on a large scale. But even then you can probably negotiate with the cloud service for a better price (like Netflix did). If you're a big customer and you think you should move off the cloud, the provider can beat your expected costs and still make a profit. Your team doesn't have thousands of years of combined hardware experience, and you're not buying hardware at a better price than Amazon got. 2) You don't want The NSA snooping on your company's data. This is a moot point because they will obtain the data anyway, with a gag order, if they really need to.
- cgag 13y ago"If they really need to" and by default is a pretty big gap imo.
- fragsworth 13y agoThey don't access your servers "by default" on the cloud, because they have to go through Amazon, still spend effort, and it probably isn't as legal as obtaining things through a court order. But I think the chance is high enough that it's still worth considering hosting your servers locally.
- oijaf888 13y agoWhy should a small company use the cloud for everything instead of a dedicated server or VPS? Most small companies aren't going to benefit from the elasticity that the cloud provides. The administrative overhead will be similar on each except in the case of the cloud you need to worry about the persistence of data either via EBS, replication or having an acceptable loss level.
- fragsworth 13y agoI would think remote dedicated servers and VPS services fall under the definition of "cloud"? The question is whether or not you're paying up-front for hardware, and managing it locally somewhere. If you lease a $10/month VPS, you're using cloud services.
- matlock 13y agoI absolutely agree, but oftentimes small cost optimisations are done by teams without thinking about how this impacts the speed with which they can build their business. The cloud is not the definitive answer for all teams, but leaving all the power cloud computing gives for a little cheaper hosting at the beginning of a project seems wrong to me.
- corresation 13y agoHosting your own servers doesn't require foregoing virtualization and containers. This is a critical point. In every recent hardware project where we've deployed big, beefy servers to colocation, the first step was deciding on the virtualization platform and the automation tools to manage it, as the flexibility, scaling, and reliability concerns are principal now. I have to hope that no one thinks of in terms of a physical box that is the database server, etc, any more. And worth noting that on a couple of medium-range Dell servers you literally can spin up and down hundreds of virtual machines, obviously depending upon size and scale. Even on a recent low end OVH server I requisitioned, the first thing I did was configure libvirt. The base image becomes almost irrelevant.
- matlock 13y agoBut even in that case there is a single point of failure in the host. That's all manageable, but it is effort, that could otherwise be put into developing the application
- corresation 13y agoI would never advocate that someone build a production stack with a single physical server -- I've generally used three servers in concert in such situations.
- matlock 13y agoBut then you are probably getting close in pricing to running the stack on AWS, as you don't need to have that much reserved infrastructure when you can easily replace it when there are problems with the server
- druiid 13y agoIf you have the requirements for more than a few VM's on AWS, then the pricing for physical is going to be cheaper by far, even with a three-stack of physical servers. Let's put a basic Poweredge R620 as an example. For about $10k/server (and I'm going for buying hardware to kind of do a worst-case-scenario), you can get 384GB of memory per server, times three that's over 1T of memory in your cluster. Given the EC2 Small instance type of 1.7GB/VM that would be over 600 VM's you could run on that kind of stack. Pricing for a half cabinet with power and bandwidth (you can find places with un-metered gigabit connectivity) will run you no more than about $2500/month (Much less if you are good at negotiating). So you have an outlay of around $40k for total hardware costs and recurring monthly of $2500/month. Amortizing this over expected lifespan of three years for the servers (worst case scenario), you can estimate per month costs somewhere in the range of $3600/month. With EC2 to reach parity with those 600 'Small' instances would be an initial deposit of $57,600 (for three year term) and a recurring monthly of $11,826 for a total 'recurring' of $13,426/month. Now, I should point out that these are obviously not apples-to-apples if you have: Huge CPU requirements on those 600 instances, or need lots of disk. Your up-front hardware costs increase (perhaps substantially) once those come into play. More I'm just trying to compare a bare instance scenario. As per one of my comments elsewhere in the thread really it all comes down to workloads and doing a real business analysis.
- j_s 13y agoHN user dergachev mentioned this on yesterday's discussion moving away from AWS ( https://news.ycombinator.com/item?id=6431126 https://news.ycombinator.com/item?id=6431126 ) > OVH actually supports running the Proxmox* virtualization distro on their servers As noted in the response there, limiting this to one physical server does introduce a single point of failure. * http://www.proxmox.com/ http://www.proxmox.com/
- druiid 13y agoIndeed. You should never, ever just spin up a single physical box, put virtualization on it and go to work. Doing this is not only not engineering for failure, but is setting the company up for failure.