Save to My DOJO
Use the following checklist when installing or verifying the installation of a Hyper-V host
- Configure physical switch(es) to match your Hyper-V host’s networking design
- Rack or place system and connect all cables
- If present, configure the out-of-band management tool on the physical system, such as IP addresses and management accounts.
- Disable power management in the hardware BIOS/UEFI settings. Specifically, disable C-states.
- Configure physical storage RAID
- Install Windows Server or Hyper-V Server on the physical hardware
- Set the host name
- Set the time zone
- If using a version of Windows/Hyper-V Server prior to 2019, disable SMB 1
- If using Windows Server, enable the Hyper-V role
Check our complete guide to Hyper-V networking if you need help on the networking components in the following list items
- Create adapter team(s)
- Disable VMQ on all physical and logical adapters on gigabit hardware that will host a virtual switch
- Create an external virtual switch
- Configure the host’s management adapter:
- If you will use a virtual network adapter for the host’s management traffic, create it
- Set IP address, mask, and gateway
- Set DNS server address(es)
- Configure optional networking components, such as NetBIOS over TCP/IP
- Patch to current
- Join the domain. Perform any additional Active Directory steps, such as moving the account to a special OU
- Enable PowerShell Remoting
- Enable Multipath I/O
- If you will use iSCSI storage:
- Configure the relevant network adapter(s)
- Enable the iSCSI initiator
- Connect to iSCSI target(s)
- If you will use SMB storage (also applies for using remote tools to connect ISOs to VMs):
- Enable delegation
- If using dedicated adapters:
- Assign IP and netmask to storage adapters
- Disable DNS registration for storage adapters
- If you will use Fibre Channel storage:
- Install the necessary software
- Configure Fibre Channel hardware adapter(s)
- Connect to Fibre Channel target(s)
- Format any volumes as needed
- Configure Hyper-V Host defaults
- Default VM location
- Default storage location
- Migration policies
- NUMA spanning
- If the host will belong to a cluster:
- Create additional virtual network adapters, if using converged networking
- Assign IP and netmask to cluster and Live Migration adapters
- Disable DNS registration for cluster and Live Migration adapters
- Run the Cluster Validation Wizard
- Create/join the cluster
- Verify/configure quorum
- Verify/configure clustered storage
- If you will use Hyper-V Replica:
- Assign a valid certificate from a trusted PKI authority
- Configure Replica
- Install and configure backup
- Configure monitoring system
Note: not all steps will apply to every situation
You can also automate most of these steps using deployment tools, group policy, Desired State Configuration, and your own custom scripts.
Think I’ve missed anything out? Let me know in the comments below!
Not a DOJO Member yet?
Join thousands of other IT pros and receive a weekly roundup email with the latest content & updates!
11 thoughts on "The Ultimate Hyper-V Host Installation Checklist"
If you using Windows Server 2016, and your hardware has more then 256 GB of memory, consider disabling totally the live dump.
When S.O create a live dump, it could create a snapshot consistent of all active pages of Kernel, it can provoke the lost heartbeat and the occurrence of Event 1135.
On Windows Server 2019, environments with more than 256 GB, the registry livedump are disabled.
Great writeup, could you add the steps if this is to be used in a disaster recovery situation where backups are restored from onsite or offsite location. Also if additional steps are required if destination hardware does not match source hardware.
Hmm… Good ideas, but I think those items would be better suited to a different article.
What about HCI?
Using Hyper-V with Storage Space Direct.
Interesting point, I’ll have to work on that.
This could be improved by turning the page into a Wiki and providing supporting references to any specific statements. Food for thought on how the community could better contribute is all.
I never take a single statement as gospel unless I can verify it from the original source, so supporting Microsoft references would be helpful. Also would be helpful if a Powershell script or a Desired State config did most of the work vs old school manual methods.
That’s my contribution!
I have nothing against the concepts in anything that you said, but this is a checklist.
And I never ask anyone to take anything that I say as gospel anyway, cited or not.