Questions on Hyper-V performance

Milan 41 Reputation points
2020-11-20T00:38:56.077+00:00

I have been trying out with Hyper-V recently and intend to use Hyper-V failover to replace our existing failover cluster. I know that Hyper-V is a type-1 hypervisor, in the way that the guest OS does not sit above the host OS. However, I am also aware that the host OS has exclusive access to hardware resources like USB thumb drive. Apart from this, is there any other performance difference, in terms of CPU and disk performance, between the host and guest OSes?

As said above, we intend to use Hyper-V failover to replace the existing failover cluster, which causes a lot of problems to our video streaming server because it does not fully support the failover at the service level. The hostname change after the failover often caused some services to stop working. In the existing architecture, our cluster connects to a SQL database hosted by a NAS. If we want to implement failover at the VM level, do we need to implement vSAN? What will the architecture look like?

Windows for business Windows Server Storage high availability Clustering and high availability
0 comments No comments
{count} votes

2 answers

Sort by: Most helpful
  1. Xiaowei He 9,936 Reputation points
    2020-11-20T08:10:37.43+00:00

    Hi,

    If we use Hyper V failover cluster, we will have VM level failover, not service level failover.

    Simply, the architecture like below:

    1. Several physical hosts install failover cluster feature, then create Cluster with the hosts, lets call them cluster nodes.
    2. Then, deploy a shared storage server and create virtual disks to connect to all cluster nodes, via ISCSI, Fiber channel or other methods.
    3. Format the shared virtual disk in disk manager on cluster nodes, then we can add the shared disk into Cluster. After adding the shared disks into the cluster, add the disk to be CSV(Cluster shared volume).
    4. Add Hyper V role on all cluster nodes, then create the VM on the Hyper V cluster, store the VM in the CSV, so that the VM store in shared storage, when one node fails, the VM can failover to other cluster nodes.
    5. Services will install in VM, and failover with VM.

    Thanks for your time!
    Best Regards,
    Anne

    -----------------------------

    If the Answer is helpful, please click "Accept Answer" and upvote it.

    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.


  2. Alex Bykovskyi 2,241 Reputation points
    2020-11-20T17:27:45.73+00:00

    Hey,

    Just to add, there are Hyper-V best practices and recommendations to follow, which will allow you to get maximum performance out of your environment. The following link might be helpful:
    https://learn.microsoft.com/en-us/windows-server/administration/performance-tuning/role/hyper-v-server/

    In any case, I would recommend you analyzing current workload in your environment to plan the VM configuration.
    Speaking about Failover Clustering, it requires shared storage, as mentioned. It could be a separate SAN or different kind of VSAN (to utilize your local storage). S2D is a great option, which will allow you to create desired shared storage for Failover Cluster.
    StarWind VSAN is a great alternative, which can provide replicated storage pool for a Failover Cluster. You can choose between free and paid versions. Both will do the job for you.
    https://www.starwindsoftware.com/resource-library/starwind-virtual-san-for-hyper-v-2-node-hyperconverged-scenario-with-windows-server-2016/

    Cheers,

    Alex Bykovskyi

    StarWind Software

    Note: Posts are provided “AS IS” without warranty of any kind, either expressed or implied, including but not limited to the implied warranties of merchantability and/or fitness for a particular purpose.

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.