Create Hyper-V failover cluster on Nutanix
Hyper-V is one, out of three (VMware ESXi and Nutanix Acropolis aka. AHV are on the support list too) hypervisors supported by Nutanix. There are two ways you can create create Hyper-V failover cluster on Nutanix. You can do it either manually or use scripts provided by Nutanix. In this blog post I will show to create Hyper-V failover cluster on Nutanix using scripts (provided by Nutanix), for Hyper-V clusters without SCVMM and with SCVMM.
NOTE: Below procedure is applicable for AOS 4.5.X and 5.0.X
Since Acropolis Base Software 4.5 you can join and create Hyper-V cluster right out from Prism Element. No need to use Python scripts with switches. Process is basically the same like you in older version (pre-4.5) Acropolis Base Software. First you have to join Hyper-V hosts and Nutanix cluster to Active Directory (which requires reboot). Second step is to configure Microsoft failover cluster. When both aboove are copmplete, you can create new container and add it Hyper-V cluster. Also, right out of Prism UI.
Watch below video to see it in practice.
NOTE: Hyper-V on Nutanix is supported without SCVMM.
NOTE: Below procedure is applicable for NOS 4.1.X and older ONLY
Step 1 – Requirements
- AD functional level 2008R2 or newer
- ADWS – Active Directory Web Services installed
- Open ports between Nutanix\Hyper-V cluster and AD – you can find all necessary ports either on Nutanix documentation or on my blog Nutanix network diagram.
Step2 – Create Nutanix cluster.
Before you create hyper-v failover cluster on Nutanix, you have to have Nutanix cluster created and up and running. In one of my previous posts you can see how to create Nutanix cluster either using command line or web interface – Nutanix Basics – create Nutanix cluster.
Step4 – join Hyper-V nodes to Active Directory domain
- Log in to CVM and run setup_hyper-v.py setup_hosts – script will join servers into Active Directory, remove 1GBps from network bound if 10GBps is used, set up NTP, DNS IP addresses and set up hostnames.
[box type=”warning”] NOTE: servers will reboot after script is completed.[/box]
[email protected]::~$ setup_hyperv.py setup_hosts Getting the cluster configuration ... Done Getting information about each host ... Done Please enter the IP address of the domain controller: Configuring NTP ... Done Please enter the fully qualified domain name (e.g. corp.contoso.com) to which the hosts will be joined: gso.lab Will a 10G switch be used for this cluster ([Y]/N)? Y Please enter the domain account username that has permissions to join the hosts to a new domain: gso.lab\artur.krzywdz Please enter the password for gso.lab\artur.krzywdz: Please enter a name for the cluster (max 11 characters). Each host will be named using this as a prefix followed by the host number: gsocls3 Please enter the name for host 1 (cvm) (Press ENTER for gsocls3-1): Please enter the name for host 2 (cvm) (Press ENTER for gsocls3-2): Please enter the name for host 3 (cvm) (Press ENTER for gsocls3-3): Please enter a name for accessing the Nutanix SMB shares (max 15 characters). Press ENTER for gsocls3-smb: Setting external IP address ... Done Joining nodes to the domain ... 2 nodes remaining Done Rebooting hosts of CVMs ... Rebooting the host to make domain joining take effect ... [email protected]:~$ Broadcast message from [email protected] (unknown) at 7:34 ... The system is going down for power off NOW!
Step5 – Create Hyper-V failover cluster on Nutanix
Hyper-V on Nutanix requires Active Directory functional level 2008R2 or newer. If you have AD on 2012R functional level you will not be prompted to preform any manual action. Configuration scripts will do the job from end to end. In my lab I have AD on functional level 2008R2 and, as you can see below, configuration is partially automated.
[email protected]:~$ setup_hyperv.py create_failover_cluster Getting the cluster configuration ... Done Getting information about each host ... Done The hosts are joined to domain gso.lab Please enter the domain account username that has local administrator rights on the hosts: gso.lab\artur.krzywdz Please enter the password for gso.lab\artur.krzywdz: Verifying credentials for accessing localhost ... Done Adding "gsocls3-2.gso.lab","gsocls3-3.gso.lab" to the failover cluster ... 1 nodes remaining Done Preparing to join the Nutanix storage cluster to domain ... Done Joining the Nutanix storage cluster to the domain ... manual steps needed Please log into the active directory domain controller and run the following commands in a powershell window. When asked for a password, please create a new password. You will have to re-enter the same password here later: Import-Module ActiveDirectory dnscmd.exe /recordadd 'gso.lab' 'gsocls3-smb' 'A' '' $password=(get-credential gsocls3-smb).password New-ADComputer -Name gsocls3-smb -SAMAccountName gsocls3-smb ` -UserPrincipalName [email protected] -PasswordNeverExpires:$true ` -CannotChangePassword:$true -AccountPassword $password -Enabled:$true ` -DisplayName 'Nutanix storage cluster on gsocls3-smb' ` -Description 'Nutanix storage cluster on gsocls3-smb' ` -DNSHostName gsocls3-smb.gso.lab $computer = [adsi]("LDAP://" + (Get-ADComputer gsocls3-smb).DistinguishedName) $computer."msDS-SupportedEncryptionTypes" = $(0x08 -bor 0x10) $computer.SetInfo() Press ENTER to continue ... Please provide the password for the Nutanix storage computer object created using the manual steps: Joining the Nutanix storage cluster to the domain ... Done [email protected]:~$
Step 6 – add Nutanix SMB shares as default storage to Hyper-V hosts – Hyper-V manager
- Start Hyper-V manager and connect to each Hyper-V host
- In Hyper-V settings – provide UNC path to container
Step 7 – Install updates on Hyper-V cluster
DONE. Now you can start provisioning VM on new and shiny Hyper-V cluster on Nutanix.