1

After much deliberating and advice I'm intending to use an element of virtualisation for deploying some new servers.

The original (physical) plan was one server running as domain controller, SQL (express), IIS and file/print server. It would be for 100 users although probably only a quarter of them would be using the IIS and file/print.

To assist with disaster recovery though I now plan to run ESXi 5.1 on the server which has 10GB RAM and then 2 VMs:

VM1: Windows 2012 - domain controller

VM2: Windows 2012 - SQL Express, IIS, file/print server

How should I go about allocating resources? Does 4GB RAM for VM1 and 6GB RAM for VM2 sound right? Or can I "overcommit" memory and let ESXi handle it? (I believe that's supposed to be one of the benefits of virtualisation).

My ESXi host is going to have two data stores (2x500GB mirrored RAID and 2x1TB mirrored RAID). I intended to have the VMs on the 1st data store and then a 2nd virtual hard drive (for VM2) on the 2nd data store and this would be my file server share.

I get the impression thick provisioned disc would be best for this. I'm also considering making the file server virtual hard disc "independent" within ESXi meaning it wouldn't be snapshotted and thus wouldn't be included if I do a VM backup(?) The files would be backed up from within the guest OS, that's why I wouldn't want my "disaster recovery" VM backup to include all them as well as the size would be very large.

I will have a "backup" domain controller elsewhere.

Am I making any glaring errors with the above? (I hope not).

Thanks.

george
  • 71
  • 9

3 Answers3

4

Yes, there are a few design mistakes here...

  • Why not use an array of four equal-sized disks in RAID 1+0? Better performance and resiliency and more flexibility.

  • What type of server/disks/RAID controller will you be using?

  • Will you have write-cache on your RAID array?

  • You don't need 4GB of RAM for a domain controller. It can live with less. Just because you can overcommit the RAM on the ESXi host, doesn't mean you should in this case.

  • I would use thin-provisioning for portability, consistency and to avoid space issues in the future. I'm undoing a VMware environment right now that thick-provisioned 250GB for every virtual machine on their system when the average OS utilized size was less than 50GB.

  • I wouldn't mess with independent disks unless you have a very specific reason.

  • How will you be performing backups?

ewwhite
  • 197,159
  • 92
  • 443
  • 809
  • server is HP Proliant ML310e Gen 8. B120i RAID Controller. WD RE4 hard drives. What RAID configuration should I use if 4 identical drives? Still mirrored? I've read things advising against using RAID 5. Fair point about the 4GB RAM, that's the sort of info I was after. I intended to use some external software that does VMware backups but thought if that was also backing up my file share then the backup would be huge. I will be backing up the file share separately from within the guest OS. The independent disc was to try to avoid that drive being backed up with the rest of the VM. – george May 13 '13 at 12:17
  • It's a low-end controller. It won't support write caching, so your VM write performance will suffer. Four drives in one array will be better than two separate RAID1 arrays. – ewwhite May 13 '13 at 12:25
  • So is that 4 drives in a RAID5 array? And one big ESXi datastore? – george May 13 '13 at 12:37
  • You'd want RAID 1+0. – ewwhite May 13 '13 at 12:41
  • Thanks - so 4x1TB drives would give me a total usable array of 2TB, would I make one big datastore in ESXi from this? Did my comment about the independent disk above make sense? Would you still recommend against it? – george May 13 '13 at 13:05
  • I still wouldn't bother with independent disks. But you didn't explain what your backup software solution would be. – ewwhite May 13 '13 at 13:15
  • Haven't decided for definite but there seems to be various software that you point at your ESXi host and can backup VMs through a VMware API. I think it takes a snapshot, does a backup then deletes the snapshot. I've got NovaBackup Business Essentials. Veeam Backup & Replication is another product I've seen mentioned. – george May 13 '13 at 13:27
  • You'll want to get a good handle on your SQL workload and dataset size and then set the VM memory accordingly as well as the SQL RAM limit. If you don't control SQL RAM use it will consume as much of the OS RAM as it can, pushing out file caching of the File Server role (or vice-versa). If you are set on using 4xSATA drives, consider just few bucks more in physical RAM for the SQL/File VM so it can cache more and keep IO's from tying up the SATA disks. – Jeff Hengesbach May 13 '13 at 16:41
  • @JeffHengesbach Thanks for your input. The SQL database is a relatively small 170MB in size with not massive workload. Also since it will be SQL 2012 Express I think it will only make use of 1GB of system RAM anyway. Given ewwhite's comment above ("you don't need 4GB for a DC") would 2GB for DC, 8GB for rest make sense or maybe 3GB for DC, 7GB for the rest? I'm wondering about installing ESXi on bootable USB. Then one big datastore on RAID 10 (3TB usable). VM1 (DC) would have one virtual disc, VM2 (SQL/file server) would have two, one smallish for OS then one big for the file share. Sound ok? – george May 14 '13 at 07:38
  • USB/SD deployment of ESXi is good for environments with a SAN or shared storage. If this is a standalone server, use real disks. As far as your memory concerns, try and see! If 2GB isn't enough, you can change it quite easily. Or is 3GB RAM is too much, you can decrease it. – ewwhite May 14 '13 at 07:42
1

For VM1 you could setup a Windows Server Core installation, without a GUI, which only needs around 512MB RAM. I've done that here for our second domain controller, and it's ideal for a 'fire and forget' solution. Remember that it's highly recommended that you have >1 DC, and that at least 1 is on a physical box.

kafka
  • 547
  • 2
  • 15
  • 27
  • Hi @kafka I do intend to have a 2nd DC although I'll admit at the moment it's looking like being virtual also. I have seen various advice some recommending having one physical but others say all virtual is fine providing you're careful about a few things (time sync being one of them). – george May 14 '13 at 07:41
  • Yes you need to be very careful taking snapshots of VMs, as if you rollback to a previous checkpoint you can screw up the AD replication. Good thing about a core OS install is no GUI, no IE and minimal services/roles means small attack surface, and minimal area to update. This should mean you don't need to snapshot that often - just fire and forget. – kafka May 14 '13 at 08:29
0

Unless you have a very compelling reason, I would split off some of your services on VM2, so that a problem in SQL doesn't knock out your file server, filling the file server knocks out your IIS, etc. With the thin-provisioned disk (as ewwhite recommends), you should still have plenty of room for everything.

CC.
  • 1,196
  • 1
  • 10
  • 22
  • Hi @CC in an ideal world I guess everything would be split out but I'm constrained by hardware and OS licence costs. It is a relatively small number of users accessing these services and also at the moment I've actually got everything (DC/SQL/IIS/File server) on one single Win2003 box. – george May 14 '13 at 07:44
  • True enough! Just in case you didn't know, you might also consider Server 2012 Enterprise, as you then have unlimited VMs available on the box. We use VMWare, but we actually bought Enterprise to cover all of the VMs in VMWare just for that purpose. – CC. May 14 '13 at 16:00
  • I presume you mean DataCenter (don't think there is an Enterprise version of 2012) which yes allows unlimited VMs. I was aware of this but it's out of our budget. – george May 15 '13 at 07:23
  • This is why I should have more coffee before I write. :) Yes, Datacenter, my mistake. – CC. May 15 '13 at 19:24