Server infrastructure for small companies

I work for a small company with six employees during the summer holidays. This means that money for many servers is a no-go, but we still need servers for some internal stuff (internet gateway, some Django apps and test systems). As every other company we would like a reliable service, outsourcing is no option with our requirements.

Currently our services run on an old dual core Intel Xeon with one GB ram. We use Xen for virtualization, but the machine is near at it's limit. Also it's just one machine and if it fails nothing works. So we decided to buy new servers and since I think others might run into the same situation I decided to blog about everything related to the servers.

Before I asked for the money I wanted to inform myself, so I went straight to Thomas-Krenn and configured two 2-HE Intel servers:

  • Supermicro X9SCM-F mainboard
  • Intel Xeon 4-Core E3-1240 3,3GHz
  • 8 GB ECC DDR3 Ram
  • 4 500 GB SATA II WD Raid Edition IV 3,5" disks
  • 3Ware 9750-4i raid controller
  • extra network card (pushing the interfaces up to four)

The above configuration costs around 3600€, and allows another 4 HDDs and 8 GB ram. The only limit here might be the CPU, there might be cheaper AMD CPU's out there with more cores for the same price. If this is still to costly for you, you might want to take a look at desktop hardware -- yes, I know that we want a reliable solution, but that's what we have two servers for ;)

The servers arrived two days after ordering, which caught me somewhat unprepared, since our old rack (which houses the old server and two IBM AIX machines) needs a bit of cleanup before I can put the new servers in. So instead of being in a rack they get on my nerves when I work on them since they are quite noisy :/

But let's move on to the more interesting parts: Configuration and setup of the new servers. I decided to go with XenServer from Citrix (they do have a free edition which does more than enough for our needs). Now you obviously will ask why I need XenServer and don't use the normal Xen. I don't have anything against Xen but this are the reasons for trying XenServer this time (after all I want some fun at work too):

  • XenCenter which makes the management easier for my colleagues
  • XenServer supports the XenApi which I wanted to try (Yes, Xen supports it too to some extend, but it's quite limited)
  • XenServer is configured to just work, no playing with the broken network scripts like in Debian Squeeze ;)

The planned setup, which I will start implementing on Monday (and will post along the way) looks like this:

  • RAID 5 over 3 disks with one hot spare, I could achieve the same with RAID 10 (probably with better performance too), but RAID 5 + Spare seems more reliable to me. Also performance is not an issue here, both of the raids would perform fine enough for us.
  • DRBD to allow live migration between the machines and to provide "HA" if one of the machines dies.
  • XenServer 5.6 configured to use DRBD as shared storage.

More on Monday (or if I end up in to much work Tuesday).