WS 2012 R2 Essentials on Physical Host as Domain Controller and as a VM Guest

I have a Dell Server with Windows Server 2012 R2 Essentials server for a small business (4 users). I installed and configured the operating system on the physical host as the Active Directory server and connected all the clients to it. Everything was going just fine until I tried to install SQL Server Express 2014 at which point I received a warning message that I should not install SQL Server Express 2014 on a domain controller.

My next step was to enable the Hyper-V role on the server and create a virtual machine with the Windows Server 2012 R2 Essentials OS. However, when I log in to the VM it wants me to configure the OS all over again. That makes sense to me but what I can't figure out is how to configure the guest VM to join the domain rather than be it's own AD server.

Does anybody have any experience with this type of setup or have a recommendation for a different setup without involving additional machines or operating systems?
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Cliff GaliherCommented:
What you are trying to do is not supported nor does your license allow for it. You'll need a 2012 Standard license if you want to virtualize for SQL Server 2014.  The standard license can be the host (and *ONLY* the host, no other roles!) and then you can have VMs for Essentials and for SQL.
nsd8322Author Commented:
I am trying to install SQL Server Express 2014 not SQL Server 2014. Does that make a difference? Otherwise, you are saying that I am not able to install SQL Server Express 2014 on my WS 2012 R2 Essentials OS. Is that right?
Cliff GaliherCommented:
Makes no difference SQL 2014 any edition) on a DC is unsupported now. And essentials is a DC.
Has Powershell sent you back into the Stone Age?

If managing Active Directory using Windows Powershell® is making you feel like you stepped back in time, you are not alone.  For nearly 20 years, AD admins around the world have used one tool for day-to-day AD management: Hyena. Discover why.

nsd8322Author Commented:
I pulled this off of the Microsoft site (

"For security reasons, we recommend that you do not install SQL Server 2014 on a domain controller. SQL Server Setup will not block installation on a computer that is a domain controller, but the following limitations apply:"

Please let me know what I am missing.
Cliff GaliherCommented:
You aren't missing anything. They don't block it. They don't support it either. If you want to run an unsupported config, go ahead. I can't stop you.
nsd8322Author Commented:
Cliff, it's needless to say you can't stop me and that's not the point. However, I don't see anywhere that it says it's not supported. It simply says the following limitations apply....

Anyway, forget about SQL Server since my post is heading in a direction that is not helping me. What I am trying to figure out is how to configure my VM properly with 2 instances of the OS. The first being the physical host and the second being the guest VM. Both the physical host and the guest VM would both be running WS 2012 R2 Essentials. Is this a proper architecture and if so how do I handle the guest VM OS config so that it doesn't try to run as a domain controller.
Cliff GaliherCommented:
As I said above, that is also not supported. And, in fact, is actively illegal. Essentials offers very limited virtualization rights, and the only way to take advantage of it is to *not* have the host be a DC or run any other software (so no SQL) and configure the guest essentials VM to be the DC. It is also the only allowed VM. And to configure that is a nightmare of a script. It was really designed for OEMs, not end users, and is not recommended by most essentials experts. But as it stands, because your host is already a DC, you can't do what you want legally at all.
nsd8322Author Commented:
Cliff, can you please provide some support for your statements. In my research that is not my understanding.
nsd8322Author Commented:
Cliff, forget about the support. I will assume you are right. What do you suggest I do then?
Cliff GaliherCommented:
My recommendation is that if you have a LOB app that needs SQL then you want to run two servers (either physical or virtual.)  If you choose virtual, Windows Server Standard is the most economical solution. It has virtualization rights that allows up to three installations on a single 2-processor physical machine (with restrictions.)  That is one install for the host (that legally can only run Hyper-V if you are going to run two other instances), and 2 VMs (giving you the full 3 installs on a single machine.)  Running other roles or installing other applications in the host *will* negate these virtualization rights and can put you in an illegal state, so don't do that.

Then in the first VM you can install the Essentials role (for 2012 R2) if you want that feature set, or you can exercise downgrade rights to install the Essentials product (for 2012) if that is what you prefer. The second VM can be a member server and, because it isn't a VM, can easily run the SQL instance without fear of it colliding with DC duties. This isolation is better for security, performance, and maintenance.

So one standard license (plus CALs) with all of the features of essentials and best practices regarding app isolation. I have dozens of setups similar to this right now.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
nsd8322Author Commented:
Thanks for that explanation Cliff.

What you are saying makes sense. I do have Just one question for clarification though.

You say "The second VM can be a member server and, because it isn't a VM, can easily run the SQL instance without fear of it colliding with DC duties. "  You are referring to the second VM and then say because it isn't a VM. What do you mean by this?
Cliff GaliherCommented:
Pure mental mistype.  I meant "because it isn't a DC"  it is, of course, a VM.
nsd8322Author Commented:
Got it. That's what I figured but wanted to be sure. Thanks for your help!
nsd8322Author Commented:

I am purchasing a Dell Server (Power Edge T320). For the system we discussed with the Hyper-V host and 2 VM's (one DC and one lightly used small SQL Server Express DB), what would you recommend in terms of processor(s) and RAM (for each VM and host)?
Cliff GaliherCommented:
I try not to get into that level of detail on EE. I'm more than willing to help a person who is stuck, but I don't give away consulting services. It is a good way to make enemies in a relatively small community of consultants who all charge for that service. And I don't need more enemies.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Windows Server 2012

From novice to tech pro — start learning today.