Preface: Questions are in the text and marked bold.
I read a lot about Hyper-V clustering, but never have I seen practical tips or best practices when it comes to building a highly available environment in small businesses. Creating a huge environment that comprises multiple servers is not viable in small businesses where budgets are usually low.
I am starting with the general idea of creating a failover cluster and virtualising the required service which are Active-Directory services, file services, print services, certification services, etc (sketch #1). So if one cluster node fails the company is still able to access critical services and have a productive business day.
(above: sketch #1)
I am assuming that the Active-Directory domain for the failover cluster (here:cluster.local) is independant from the domain containing the direct business services (files services, and so on). My first question is if this thought is legit?Do you use a separate AD domain for the cluster and another for the business data? Or do you use a single AD domain that comprises both, the failover cluster and the business services?
Continuing with that thought, I create a new highly available virtual machine (HAVM) withine the cluster. That will be the domain controller for the business domainad.example.com (seen in sketch #2 below). In the same way I create two other HAVMsDC2.ad.example.com and PRINT.ad.example.com, which represents an additional domain controller and a print server.My question here is, if this is still common practise?
Now, as far as I know, there are some services that can or should be made available not as a HAVM. Such would be MSSQL, which brings it's own technology in regards of high availability. Since the company is on a small budget, I cannot buy two additional
servers, but instead add another CPU and some RAM into each cluster node. Another services that (AFAIK) should not simply be installed into a highly available machine are file services. For MSSQL I would create a normal (non-HA) virtual machine on each node
(CL1.cluster.local+CL2.cluster.local) install MSSQL on both machines and let them handle the HA stuff themselves. For file services I would also create two normal virtual machines as shown in the picturesketch#2 below (FILECL1.ad.example.com+FILECL2.ad.example.com). With those two VMs I would create another cluster and only make file services highly available (FILE.ad.example.com).Also on this practise I do not know whether this is the actual solution or just bad practise?
(above: sketch #2)