Where can I find recommendations for my new server?
April 8, 2008 4:46 PM   Subscribe

I've been offered funding to buy a shiny new web server. Now the Chair wants me to give her some specs/costs. How do I go about giving her a ballpark figure?

This machine will be serving an online academic journal with a lot of multimedia content; it needs to be super-stable and not burn out in a hurry since this is a one-time grant. Now, obviously given my druthers I'd go nuts and get a Mac Pro and OSX Server. But, short of that, where's the best place to look for advice? Must be Mac or LAMP; no Windows.

& of course the Dean did not give me a budget amount.. we're playing Budget Chicken!
posted by media_itoku to Computers & Internet (13 answers total) 2 users marked this as a favorite
 
Do you know what kind of traffic you're talking about? You say "a lot of multimedia content", but is that content going to be downloaded by five users, or five million?
posted by AmbroseChapel at 4:49 PM on April 8, 2008


Response by poster: Good question, AmbroseChapel. I'm going to say it will be a couple of thousand per day, but I'd like to leave plenty of room for growth!
posted by media_itoku at 5:20 PM on April 8, 2008


A Dell 6950 or a 2950. Not that those are better than anything else but those are probably Dell's two most popular models. Or a HP DL380 or DL360.

Make sure to spec it with more than the stock memory - probably 4 or 8 GB. And more disk. The stock specs outside of the processors is often stupidly small.

Looking at Dell or HP's sites for a few minutes should give you a price ballpark. You should be able to run Linux on either of those.
posted by GuyZero at 5:32 PM on April 8, 2008


Let me preface this with the fact that I have worked in grant-funded academic IT for some time, and I have experience dealing with these types of grants.

You really haven't given enough information for us to figure out what you need. That said, the Mac Pro is not going to be a good solution. It's expensive, and while it may be sexy, it's just not worth the premium. (Cue fanboy attack.)

How important is availability and reliability? You claim you need the web site to be 'super-stable'. If I've learned one thing about web sites, it's that you can't trust one machine. It WILL fail, most likely at 4am, when you're miles away from the server. See if you can budget for a pair of machines rather than one big machine. Whether you've got one or two machines, look for the following:

- Hot swap SATA/SAS/SCSI disks (at least two in a RAID 1 configuration, with a real-live RAID controller, not Fake Raid or 'software raid'). Make sure you have at least one spare disk hanging around.
- Redundant power supplies. I have seen one academic building kill the budget HP server's power supplies one after another.
- Remote management (I prefer IPMI management rather than proprietary solutions, though HP's management is slick if you can spend money on all the extras)
- Multiple ethernet interfaces ... you can never have enough!

If you're going for just one machine, make sure you get the best support you can afford. An overnight parts support plan is the least you'd want. 4 hour is better. Even if you've got redundancy all over the place, you want to be able to replace failed components asap.

In my experience, the Dell servers we got lasted approximately 4 years, and started to die piece by piece. The supermicro white box servers we have are near flawless, and almost half the price. Memail me if you want a supplier of these machines.

Oh, and if you decide on an entry level HP box with the smart array card, get SAS drives. Performance will suck with SATA. It's outrageous.
posted by Geckwoistmeinauto at 6:52 PM on April 8, 2008


Oh, and Sun has an academic matching grant program so you can buy two Sun machines for the price of one. I loved the V40Z machines I used to work with, and they were awesome as web servers.

http://www.sun.com/secure/products-n-solutions/edu/grant.jsp
posted by Geckwoistmeinauto at 7:04 PM on April 8, 2008


Don't get one machine. A low-end desktop PC running solely as a web server can actually perform quite nicely as a web server- and 3-4 of them exceptionally well when it comes to sharing the load and maintaining high availability. As noted, you haven't given us information as to what kind of web serving this will really be doing: is it all static content, is there a lot of dynamic page creation requiring heavy processor utilization, etc? These kinds of things are somewhat important to know what you need to actually buy. If you're doing to be hosting lots of static multimedia, you may need higher throughput storage. But if you're going to host a lot of static multimedia... but with only 2,000 visitors a day hitting the most popular content, you don't really need very much in the way of a web server. Enough RAM to keep disk hits from going crazy on page requests should be fine.

Things like SAS, or large amounts of memory, or hot swap drives, are extra cost you don't need. If you can have 75% of your capacity and 100% availability by failing out a machine and then fixing it offline even if it takes an hour or two, that's far better than spending a bundle on one machine with incredibly redundant hardware... that gets taken out by one bad hotfix or misconfiguration. Hell, given that you can get linux distros that boot off a simple CD, you could even have your "web servers" be little more than dummy PC boxes where the disk drives simply store content, and you can "reimage" a server by simply popping in a freshly burned CD and rebooting.

I have years of experience hosting large, high availability sites, and I can give you two tips that will make you able to host a pretty well running site, even on a tight budget:
  1. Scale horizontally, not vertically. If your demand increases or your application needs change, always works to ensure that you can simply pad out with some more cheap boxes and not reconfigure your footprint. Hardware should be cheap, and easily replaced; don't invest in high-availability per server, but rather in high availability through volume. You can kill a bear with one gunshot, but you can't kill a swarm of bees the same way.
  2. Master the art of the 4 R's: Reboot, Reinstall, Reimage, RMA. If you can get your OS and application configuration down to an easily run one-click set of automation, you will save yourself hours of trouble. If a server seems to be misbehaving, simply take it out of rotation from your load balancing system, then reboot it. If that doesn't work, reinstall your app. If that doesn't work, reimage the server cleanly. If you're still not able to get a functional server, you probably have a HW problem. RMA it or repair it as a hardware problem. But the key is if your reinstall and reimage are highly automated/scripted and easy (the easiest of all is if you can simply copy over a set of folders and point your apache/IIS root "there"), you won't waste time troubleshooting bad RAM or faulty OS/hotfix problems as application problems.
Don't believe me? Go search AskMe and countless online questions about "I have one web server, and it takes hours to rebuild and customize, so now I'm going to perform the equivalent of open heart surgery on my server. How do I do this?". As noted in point 1, servers can be cheap and disposable. If you are agile at imaging out a server quickly and deploying your app and content, you don't get hung up on the small shit- and it's all small shit.


So to answer your question: I'd target 4 servers hosting the same content. The servers should be as cheap as possible- if you can get them to $400-500 a piece you're probably okay with some small form factor bare bones boxes. Throw in a hard drive, some RAM, and a DVD drive, perhaps buying one extra drive and two sticks of RAM for quick turnaround on hardware failures. Make a simple bootable CD/DVD OS like kubuntu with your modifications to point to the physical hard drive as the application root. You'll also need some simple load balancing device- this can even be one of your ~4 servers using apache as a reverse proxy and a different boot CD.

Burn 4 copies of your Kubuntu install, pop 'em in each server, boot them, then copy your app data down from wherever you centrally store it. If you ever have a server problem, just follow the four R's: reboot, reinstall, reimage (if this were a CD-based OS, you'd be doing the first three in one step plus syncing the application files). You'll have a very scalable web server platform- if your usage grows, you can increase your capacity by 25% by simply adding one more $400-500 box and a burned CD- with incredibly efficient repair processes, guaranteed application validity, and extremely high uptime.
posted by hincandenza at 8:40 PM on April 8, 2008


Oh, and I should have mentioned that something like LVS mentioned in this post just a few down from yours is an example of load balancing on the cheap. Whichever box has the "load balancer" CD in it is the one that is also set to use the static IP that you have for your hosting purposes (where you direct users, or where your company's firewall NAT points to) the rest are booted using a LAMP CD-distro and DHCP'ed in a range that is load balanced to, and the load balancer handles taking servers in/out of rotation and not load balancing to non-existent IPs/machines.

As for budget chicken: budget it out like I describe, then double that and use the extra for parts and as a slush fund should something go awry. :)
posted by hincandenza at 8:46 PM on April 8, 2008


Almost-too-obvious question: does your grant have to be spent on hardware? It can't just be spent on hosting, using a hosting company? Because you could get a lot of commercial hosting for the kind of money you'd be spending on the servers.

Say you buy a cheap server for $3,600 or hosting from Dreamhost at $30 a month. That's ten years of hosting.
posted by AmbroseChapel at 8:55 PM on April 8, 2008


I realize this is weak anecdote, but I have worked in places that have gone through five or six Dell and HP servers for every 10-year-old Sun server that's still running.
posted by rokusan at 9:52 PM on April 8, 2008


Seconding what AmbroseChapel said, but putting in a shout-out for Rackspace -- they're not particularly cheap, but holy mother of God, do they know their s**t. I worked with them for six years, and do not regret one DIME of what was spent with them. It's colo, but with the best support I've ever seen.
posted by liquado at 10:55 PM on April 8, 2008


Geckwoistmeinauto's link the that list of Sun educational discounts is awesome. Those are great prices. Sun gear is definitely good quality and if you prefer Linux their x86 servers are good for that. No harm in learning Solaris though - those 8 core SPARC servers have great web serving performance too.
posted by GuyZero at 10:56 PM on April 8, 2008


We used to call it the sun '2-for-1' deal, because that's how the prices used to work out. I haven't taken advantage of it at my current job, but I plan to soon.

Also, for those of you in the 'real world', purchasing equipment in a grant-funded environment is much different than in the real world. Most likely, it's near impossible to purchase services, but almost criminally easy to buy ridiculous amounts of overspec'ed hardware. In the US, there are various silly federal rules (for federal grants, naturally) regarding purchasing equipment. For instance, some days I can only purchase computers UNDER $5,000, because of the wording of a grant. On other days, under a different grant, I must purchase a computer that costs MORE than $5,000. It is a challenge to spec workstations out to over $5,000 without seriously blowing money on silly stuff like standalone tape drives and UPSes. Either way, we need more information before we can suggest something that would work for the OP.

That said, if you've got the money, it's short sighted to forgo easily replaceable components so you can buy more machines. At the level the OP is talking about (~5,000 hits/day, with room to grow) the complexity introduced by burning custom cds and all that is just not going to pan out, unless time is not a factor. For simplicity's sake, you want to stay as close to a bog-standard install as possible.

Go with Centos 5.1, and just install the applications using yum.

If your school has a Sun rep, stick with Sun. They love education, and you just can't go wrong with the prices. Sun's SP (out of band management) on the V40Z and V20Z (I guess I'm dating myself here?) is awesome. I am guessing the newer machines are even better.
posted by Geckwoistmeinauto at 7:35 AM on April 9, 2008


Forget OS X Server, it's a bug-riddled dog. If you knew enough about serving to get the best (ha) out of it, you'd already know what hardware to get. It very much feels like enterprise-level serving is even more of a backwater project at Apple than, say, Garageband. Avoid.

Sun hardware, however, rocks, and there are good educational deals.
posted by bonaldi at 2:43 PM on April 9, 2008


« Older Depressing enough?   |   Help me Geek Squad these laptops! Newer »
This thread is closed to new comments.