4 ms·
I think if you are spending more than $100 a month in VMs you should seriously consider co-locating if you have the skills to support it. For my side-projects,
by jeremyjh 14y ago
I think if you are spending more than $100 a month in VMs you should seriously consider co-locating if you have the skills to support it.
For my side-projects, personal websites and general purpose "whatever" I'm using an in-expensive colo provider(Colo@). For $50 I get 10mbit/s @ 95% (basically, burstable to 100mbps for up to 5% of a month). That's about 3 TB of data transfer which alone would cost hundreds of dollars at EC2. Of course, it is also way more data than most people would use.
The server I bought used on eBay for $365. Its a dual Xeon L5420 (8 hw cores) and has 24 GB of RAM. I run seven or 8 VMs under KVM on it presently. These images are pretty portable and a couple of them I backup regularly to S3; I could recover to an EC2 instance if I lost the box.
I monitor this with an EC2 micro instance and have not had any network outages in 6 months there. If I wanted to run a production site there I would need at least a second machine for redundancy; that would be another $30-40 a month. I'd probably also replicate real-time to a small EC2 instance so that would cost a little (though the incoming B/W to EC2 is free) - I don't do that now as I don't have real "production" data.
Not everyone should do this but if you like servers you should consider it. Another advantage here is that I own the server. If I get in a billing dispute or other issue with my provider they can take me off the network but they cannot hold my server hostage. Also they cannot login to the box - any attempt at social hacking is pretty well doomed.
On the other hand, on the two occaisions I've needed remote hands and the one time I needed a KVM they responded in less than fifteen minutes. It is mind-blowing the level of support you can get with the right provider.
- ericcholis 14y agoI completely agree, having co-located a few projects in my day as well as using dedicated HW through Rackspace. One of your key points is what turns some people towards more managed services: "skills to support it". I'd add time to that factor as well. If I had the support staff, I would co-locate in a second. Heck, one of our previous locations was next-door to a Level 3 co-location facility. It was pretty nice to be able to walk 10 feet and access your hardware.
- jeremyjh 14y agoGreat point about the time factor. To be clear I'm not really recommending this to a startup - in a startup your time is probably too valuable for this. For myself the work is just as enjoyable as programming so it makes sense for my side-projects. I'm on-the-fence if I would actually use it in production. But its been pretty hands-free since I initially set it up. Its a pretty small sample size for time, so far it hasn't happened but I could easily have an issue that blows out a whole weekend.
- rhizome 14y agoRelatively none of the AWS/Heroku-type startups of the type most publicized on HN is spending money hiring those skills.
- Xylakant 14y agoThere's a distinction to be made between AWS and Heroku. If you're hosting on AWS you still need to have someone who's able to maintain a server. With heroku, you don't. So the advantage of AWS over Colo is mainly scalability and the reduced need for expensive hardware. Depending on your apps load behavior, spikes can require that you keep 10 times as much HW than you'd need on the average, that's where AWS really shines. But in the end, the instances you buy at AWS are virtual servers that need a real admin.
- rhizome 14y agoIt's a distinction without much of a difference when most are deploying via Rubber, Vagrant, Chef/Puppet/cfengine, etc. to maintain a policy of programmer-deployers. Of course this isn't a rule, but it's prevalent.
- Xylakant 14y agoNo, not true. Server maintenance is a job that requires that you track what services are deployed on a server, which ones need security updates, knowledge about how to correctly configure a firewall and lots of other stuff. Deployment via Rubber/Puppet/Chef etc. only changes how you get the needed packages and configuration on the server. It doesn't tell you magically what configuration you need on a system. Nitpick: Vagrant is not a deployment system. It's an awesome tool, but it falls back to puppet/chef for the actual configuration.
- andrewljohnson 14y ago$100/month doesn't really matter to a real business. By the time you are paying employees, renting offices, buying equipment, paying for book-keeping and tax services, and other things, you stop caring about $100/month. What you do care about is starting a new project like moving to a colo, which will take up time, money, and distract you from your mission. I think it would be better to put it this way - if you care about $100/month, you should consider co-locating. Otherwise, you need other reasons.
- jeremyjh 14y agoI agree completely, but the OP is talking about a handful of Linodes and he's looking at cost so I would think he fits the bill there. I don't think a start-up should spend their time on Colo. A small business - maybe - the question should be, how big a part of your total expenses is your hosting and bandwidth. For some businesses like a very busy blog, hosting may be a very big part of their total costs (and a meaningful number in absolute terms).
- taligent 14y agoWell firstly the OP would be crazy to go with Linode. Secondly there is actually little difference between the amount of time spent managing a VPS versus a dedicated or colo. Hardware failures aren't going to be your biggest concern. It's going to be services going down, database misbehaving, OS misconfigurations, general scaling issues, network dropping out etc e.g. witness all of the AWS/Linode outages almost all of which are due to DC power/networking. And the fact is that my Mac Mini has an equivalent Unixbench/disk test as the Linode instances + AWS m1.xlarge. So it gives you an idea of how much better performance and value you will get from a dedicated or colo.
- thaumaturgy 14y agoYou need to qualify your first statement: "the OP would be crazy to go with Linode [because I disagree with how they handled a particular security-related incident]." You should be as transparent as you expect other entities to be.
- pjungwir 14y agoA good compromise is renting a dedicated server. I usually prefer Linode, but I'm planning on taking this route for a current project that requires a disproportionately large amount of disk. I'm currently looking at gorillaservers.com and ubservers.com. (Advice welcome.)
- fallenhitokiri 14y agoAuthor here. Co-location sounds nice, if you or one of your employees is always near the datacenter. This alone is reason enough for me not to consider it. For $100 I could get a Xeon E3-1245 with 32GB ECC Ram, 2x 3TB HDs from Hetzner. One year later? Better system, same price. Upgrade costs? One to two days of work migrating. I believe co-location has its place but not if we are talking about "only" $100 and pretty simple needs. There is always a time factor that outweighs its gains. "Hostage situations" and incompetent personal is something, I believe, that is hard to compare. Everyone near your system, no matter what or where, can cause problems. What if they refuse to hand out your server till all payment problems are solved? Maybe this depends on the country but getting the server if they refuse to hand it out will likely consume more time than just paying whatever they want. Also if you planned for this situation with some EC2 instances just switching the domain over and settling the dispute should be doable.