Server configuration for small company

Solution 1:

You'll definitely want RAID if your DC is running on it. You'll also want something from the VMWare Hardware Compatibility List, as it only supports certain systems.

http://www.vmware.com/resources/compatibility/search.php?ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a

For a CPU, I'd say get at least a Quad Core Xeon, the newer the better. And RAM is cheap (relatively speaking) and even 24GB isn't too big of a budget cruncher. If you can afford it, I'd get a chassis with 6 drive bays and a SAS controller and set up a RAID 10 across 450GB 15k drives, giving you about 1.2TB of space, and some serious performance.

Solution 2:

Those ten people may be really mighty ticked if one hardware failure dies and everything...everything...is gone for awhile.

If I wanted to virtualize everything on the cheap, I'd look at investing in two computers like those from whitebox's site...hardware compatibility for building an ESXi system from scratch. You can build a suitable ESXi (free bare metal hypervisor for VMWare) for ~$500, if you play your cards right.

Or you can look for compatible used Dell servers like 2950's from their refurb store.

I'd set up at least two systems so I could copy backups and run two separate physical VM's for domain controllers. AD likes having more than one to sync to, and the ESXi VM will improve performance a little.

Small company is one thing and I understand the budgeting issues, but complete failure of all servers can also impact a small company far more than a larger company with plans and staff in place to deal with it. Having those two machines to create some form of redundancy when something fails will make you a hero...

Solution 3:

For 10 users I would ...

  1. Buy a Windows 2003R2/8 server (quad core, 4gb ram+)

    • domain controller
    • SQL Server
  2. Run Hyper-V with:

    • web server
    • other services

Invest in a quality server (avoid whitebox or custom) with a nice raid card and a hot spare drive and your off to the races.

I would have a plan in place to move these roles around if you grow, in which case I wuold recommend the DC and SQL servers be split, and the machine run everything inside virtual containers, but for 10 users, having 5 virtual windows servers is OVERKILL.

Likely you have NUMEROUS single points of failure --

  • Single power source, no generator
  • Single switch network
  • Single internet connection

Millions of small businesses run off a single server with good backups. Its a risk to do so, but for the 50-60 servers I actively maintained for 3 years as a consultant, the only issue we ever had was memory related, or a dead raidcard. Measure the cost of downtime. Does a 1% risk of a server going down for two days in 3 years justify a more redundant system.

Solution 4:

I would always want a physical DC somewhere in my network. I can imagine a scenario where the VM's won't start properly because there isn't a running DC, and you have to play with the start-up processes to ensure that the DC VM is always running before the others, make sure the host has a local account you can get into. Having a small DC that is physical, even if it is not a real server machine, can get you by this.