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 ...
-
Buy a Windows 2003R2/8 server (quad core, 4gb ram+)
- domain controller
- SQL Server
-
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.