Get the Slide Deck
I've uploaded the slide deck and it can be downloaded HERE.
Webinar Q&A
Q: Will Node Fairness adhere to host placement rules?
Yes. If you have preferred owner rules in place in your cluster, node fairness will adhere to those rules when attempting to load balance a cluster.
Q: Is the startup delay for start order priorities configurable?
Yes. There is no need to stick with the default of 20 seconds if you don’t want to. Using the Set-ClusterGroupSet with the -StartupDelay parameter will allow you to configure the startup delay.
Q: Are all the mentioned features available on the free Hyper-V Server?
All features covered in the webinar are available on all editions of Hyper-V.
Q: I thought it was required that each nested Hyper-V host have 4GBs of memory?
I’m not aware of any such requirement. All the nested hosts in my demo had a static 2GBs of memory configured.
Q: Similar to Start Up Priorities, is there a feature to Power off VMs in a specific order?
Not in the same sense as Start-Up Priorities where one VM requires another VM be running to boot. What you can do is create a PowerShell script that calls the Stop-VM cmdlet to stop VMs one at a time in a specific order.
Q: Does Altaro VM Backup now support Windows Server 2016?
Yes! Windows Server 2016 support was added as part of our version 7 release.
Q: Is ReFS file level restore now supported in version 7 of Altaro VM Backup?
While we don’t support doing file level restores of an ReFS volume, remember that ReFS was designed primarily with Storage Spaces Direct and Hyper-V in mind. The chances of you actually having to recover an individual file on an ReFS volume are remote. However, you could take advantage of some of the new ReFS features by hosting your Hyper-V VMs on an ReFS volume. Then, as long as the file system inside of the protected VM is NTFS, you can still do a file level restore with Altaro VM Backup even though that VM is hosted on an ReFS volume. The filesystem contained within the VM is the important one.
Scripts from the Webinar
Fixed VHDX Creation Demo
# Targeting Varibles
$DomainName = "ANDOHV.mobile"
$TargetHost = "ANDO-MB-HV1.andohv.mobile"
$NTFSPath = "\\ANDO-MB-DC1\VMS"
$REFSPath = "\\ANDO-MB-DC1\ReFS_VMs"
# Credential Variables
$DomainUser = "$DomainName\administrator"
$DomainPWord = ConvertTo-SecureString -String "Password01" -AsPlainText -Force
$DomainCredential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $DomainUser, $DomainPWord
# First let's make a new VHDX on NTFS Storage
Invoke-Command -Computer $TargetHost -Credential $DomainCredential -ScriptBlock {
param ($NTFSPath)
Measure-Command {New-VHD -Path $NTFSPath\NTFSDisk.VHDX -Fixed -SizeBytes 30GB}
} -ArgumentList $NTFSPath
# Now let's do the same thing with ReFS Storage
Invoke-Command -Computer $TargetHost -Credential $DomainCredential -ScriptBlock {
param ($REFSPath)
Measure-Command {New-VHD -Path $REFSPath\REFSDisk.VHDX -Fixed -SizeBytes 30GB}
} -ArgumentList $REFSPath
# Clean up for disks below
Del $NTFSPath\NTFSDisk.vhdx
Del $REFSPath\REFSDisk.vhdx
Start Order Priorities Demo
# Targeting Variables
$TargetHost = "ANDO-MB-HV1"
# Let's Remote into one of the Clustered Hyper-V Hosts
Enter-PSSession -ComputerName $TargetHost
# Now Let's Setup Some Cluster Groups
New-ClusterGroupSet -Name "Databases"
New-ClusterGroupSet -Name "WebServices"
# Now Let's Assign VMs to these groups
$MYSQLVM = "ANDO-MB-SQL1"
$WEBVM = "ANDO-MB-WEB1"
Add-ClusterGroupToSet -Name "Databases" -Group "$MYSQLVM"
Add-ClusterGroupToSet -Name "WebServices" -Group "$WEBVM"
# Now that Groups are created and VMs assigned, let's setup the dependency
Add-ClusterGroupSetDependency -Name "Webservices" -Provider "Databases"
# Now Let's take a look
Get-ClusterGroupSet
# Clean up the created Cluster Group Sets
Remove-ClusterGroupSet -Name "WebServices"
Remove-ClusterGroupSet -Name "DataBases"
# Then we Exit the Remote Session
Exit
PowerShell Direct Demo
# First let's get a list of virtual machines running on this host
Get-VM
# We're going to target ANDO-MB-PSD1. First let's verify the vNIC is disconnected
$TargetVM = "ANDO-MB-PSD1"
Start-VM $TargetVM
Get-VMNetworkAdapter $TargetVM
# Now we'll capture credentials, and run commands against the target VM with PS Direct.
$LocalUser = "$TargetVM\Administrator"
$LocalPWord = ConvertTo-SecureString -String "Password01" -AsPlainText -Force
$LocalCredential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $LocalUser, $LocalPWord
Invoke-Command -VMName $TargetVM -Credential $LocalCredential -ScriptBlock {Get-Volume}
Invoke-Command -VMName $TargetVM -Credential $LocalCredential -ScriptBlock {Get-WindowsFeature -Name *FS-FileServer*}
# We can also run an interactive PS Session over PS Direct as well.
Enter-PSSession -VMName $TargetVM -Credential $LocalCredential
Get-Process
Get-Service
Exit
# Clean up
Stop-VM $TargetVM
Nested Virtualization Configuration
# Targeting Variables
$TargetVM = "ANDO-MB-HV1"
# Checking the status of the virtualization extensions
Get-VMProcessor -VMName $TargetVM | Select-Object *
# Configuring the Virtualization Extensions
Set-VMProcessor -VMName $TargetVM -ExposeVirtualizationExtensions $true