-1

Our company is getting ready to upgrade our infrastructure by moving away from physical machines, and into load balanced VMs. We are trying to decide how many VMs we need, and I am curious how others separate their servers. We will be running Exchange,AD,SQL,IIS,Print Server, and alot of internal license services all on 2008 R2 OS's.

Should we put each service on its own VM, or keep some of them together if the overhead is low(such as AD). What are large companies doing in regards to this? I looked for some best practice docs but couldn't find anything useful outside of SQL.

5
  • This should probably have been part of the "should we virtualize" discussion...
    – ceejayoz
    Feb 7, 2013 at 17:48
  • 2
    If you're putting a single VM on one physical machine, then what's the point of virtualizing? Feb 7, 2013 at 17:49
  • App into a VM, App into a VM, lather, rinse, repeate.
    – Zapto
    Feb 7, 2013 at 18:00
  • I mistyped the question, there will be multiple VMs on each server. Yes, it wouldn't make sense to run only 1 VM per machine except for quick failover and speedy recovery. Feb 7, 2013 at 18:38
  • Well, the more guests you have, the more resources you're using for just extra operating system processes. This is not much different from capacity planning for physical servers - you have to figure it out on an app-by-app and server-by-server basis. You just have some more flexibility compare to a non-virtualized environment.
    – mfinni
    Feb 7, 2013 at 18:45

3 Answers 3

2

Licensing is one factor in making the decision, certainly. For many people it ends up being the major factor because of the potentially immense cost. Microsoft's updated Windows Server 2012 licensing makes these choices different than prior versions (not better, just different).

Another factor is separation of security concerns. I'm one of these old "stick in the mud" paranoid security types that believes that you don't mix VMs of different security concerns on the same physical host computer. There are too many side-channel attacks possible to exfiltrate data from a more secure VM to a less secure VM, let alone attacks against the hypervisor itself.

Most applications today are agnostic about virtualization. You should be more concerned about being able to provide the necessary RAM, CPU cycles, IOPS, and I/O bandwidth (to storage and to the network) than about the application's suitability for being run in a VM. Obviously, if you're running older applications then you should probably keep this in mind.

1

Aside from licensing concerns, you should generally attempt to keep your services separated out to provide for better stability and easier management. Exchange and SQL should definitely get their own VMs. Typically you'd have your print server on a DC or file server, not by itself.

As Evan said, it's far more important to make sure the VMs have sufficient resources available to them.

1

Of course the value of Virtualization is you can distribute roles across as many instances as you need. IMO you asked a general question so I will try to give you a general answer.

If you are looking towards windows Virtualization consider 2012 as the Host hypervisor. Economics and ease of management are my first thoughts, reliability is high but debatably not as high as competition.

If you license the host with datacenter edition you should be able to run unlimited Guest win VMs. W/o worrying about licensing you could spin up a VM for any Role. Monitor the performance of the guest and host, then distribute your loads evenly across the hosts. 2012 makes it far more easier "live migrate".

If you are new to virtualization make sure you have the storage infrastructure to support your needs. Also, consider it a "best practice" to keep your active directory PDC on reliable physical hardware. Not required, but seriously decreases potential for AD related issues.

Hope this helps, if you need more specific answers just ask more specific questions.


Not the answer you're looking for? Browse other questions tagged .