After some problem investigation I made the conclusion that packing core services into VM and relaying on VM-level fail-over is not a good practice:
- cluster environment itself can not relay on core services this case;
- risks of core services outage bacuse of cluster misconfiguration;
- application-level failover looks to be much more stable and reliable.
Moreover, Miscrosoft 2-node cluster setup guide recommends to place DCs externally, even not on cluster hardware. Main reasons, I think, core services should be isolated from all others as much as possible.
For my case (CentOS) the main problem is that from three services I consider (ldap, dns, dhcp) only one (ldap - 389 Server) has a full failover functionality. Thanks to TomTom who advised me that others could use LDAP as a backend.
Looking for a stable integrated solution I found that FreeIPA project and its RedHat implementation in Identity Management Server -- is just what I need.