Patch a vCenter Server High Availability (VCHA) environment

Last week I tried to patch a vCenter Server High Availability (VCHA) 7 cluster environment. I read the documentation and the procedure described looks still the same as in version 6.x. First patch the witness node, then the passive node, failover the active node, and patch the passive node using the software-packages tool. The whole process is described in this link.

When I tried to stage the ISO on the witness node the following error occurred:

You can not patch a vCenter Server appliance in a vCenter HA cluster. resolution: You must remove the vCenter HA configuration, apply patches to vCenter Server appliance, and then reconfigure your vCenter HA deployment.

So I removed the vCenter Server HA cluster configuration and patched the single vCenter Server Appliance.

After the patching of the single VCSA, I redeployed the VCHA cluster again.

Conclusion: The vCenter Server HA cluster documentation still has the VCHA 6 update procedure documented that does not work anymore. I will update this blog article if there is more information available.

Microsoft Windows Virtual Desktop (WVD) learning resources

As an End User Computing (EUC) consultant I’m looking for a couple of weeks into Microsoft Windows Virtual Desktop (WVD). My first step was to take the on-line course “Zero to Hero with Windows Virtual Desktop WVD” from Travis Roberts. I can highly recommend this course to everyone who is starting with Microsoft WVD.

Here’s a list of useful resources I discovered during my journey (this list will be updated frequently).

General

Website Description
Microsoft WVD website The official Microsoft WVD Website
WVD UserVoice Helping improve Windows Virtual Desktop
WVD Tech Community Windows Virtual Desktop discussion forum
What’s new in Windows Virtual Desktop The latest new enhancements in WVD
Christiaan Brinkhoff blog Microsoft WVD Evangelist with great content
Microsoft WVD roadmap Microsoft WVD roadmap

Community / User Groups

Website Description
WVD Community site A single place where you can go to learn about everything related to Windows Virtual Desktop.
WVD Dutch User group YouTube Dutch WVD User group
WVD Dutch User Group meetings YouTube WVD Dutch User Group recordings
Slack WVD Community Slack WVD Community

Tools

Website Description
WVDAdmin Marcel Meurer created an additional tool to manage WVD
Windows Virtual Desktop Experience Estimator Your tool to estimate the quality of the experience your users will receive when connecting to Windows Virtual Desktop
Windows WVD desktop clients Windows WVD desktop clients
MSIX app attach Azure portal integration public preview MSIX app attach Azure portal integration public preview
WVD Optimization tool WVD Optimization tool
Az Mask This is a browser extension that will mask GUIDs (such as Subscription IDs), email addresses, keys, and connection strings with a blur. Very useful for presentations.
Auto Start/Stop script  This script is intended to automatically start and stop session hosts in a Windows Virtual Desktop
host pool based on the number of users

Articles

Website Description
MicroCloud How to – Add a Dutch language pack to WVD
Sander Rozemuller blog A lot of WVD automation examples
Windows Virtual Desktop QuickStart The WVD QuickStart solution simplifies and automates the WVD deployment process leveraging the power of Azure DevOps
Rudlintech Ltd. Windows Virtual Desktop imaging using Azure Devops CI/CD, Packer and PowerShell

AZ-104 Exam preparation (available in March 2021)

Microsoft WVD Learning resources Deliver remote desktops and apps from Azure with Windows Virtual Desktop
AZ-140 Exam overview AZ-140 Exam overview
Microsoft Certified: Windows Virtual Desktop Specialty
– Skills Measured
Microsoft Certified: Windows Virtual Desktop Specialty
– Skills Measured
AZ-104: Microsoft Azure Administrator GitHub AZ-104: Microsoft Azure Administrator GitHub
AZ-140 Windows Virtual Desktop Speciality Study Guide AZ-140 Windows Virtual Desktop Speciality Study Guide

 

Training / YouTube Channels

Website Description
Azure Academy Azure Academy channel
Travis Roberts Travis Roberts YouTube channel
Zero to Hero with Windows Virtual Desktop WVD WVD training
WVD Workshop Micha Wets Microsoft & Cloud-Architect WVD Workshop
WVD on sizing and licensing Wayne Chapin explains WVD on sizing and licensing.
Dutch WVD YouTube channel Dutch WVD YouTube chanel
Christiaan Brinkhoff YouTube Channel Christiaan Brinkhoff YouTube Channel with a lot of WVD information

 

Adding a static route to a vCenter Server with multiple Network Interface Cards (NICs)

For a Disaster Recovery (DR) site, I designed a separate isolated VMware Horizon environment. The Center Server has an external (eth0) and internal (eth1) IP address. The external connection is for management and restoring production VMs to the DR environment. The internal connection is for Horizon infrastructure components that need to accesst to the vCenter Server such as a VMware Horizon Server and VMware App Volumes. |This looks simplified as follows:

There must be a static route to the Horizon subnet because the Horizon Connection Servers and VMware App Volumes integrate with the vCenter Server.

Here are the steps outlined to create such an environment:

  • The first thing after deploying a new vCenter Server is adding an extra NIC (VMXNET3). The steps are explained in the following article: KB2147155
  • Add the NIC to the correct internal PortGroup
  • Open the VAMI interface (https://<IP_Address>:5480) of the vCenter Server and add the IP configuration of eth1 (NIC1).

  • Enable SSH in the VAMI interface (Access – Edit – Enable SSH login)
  • Make an SSH session to vCenter Server and log-in with root and the correct password
  • Enter “shell” to launch the BASH shell
  • Browse to the following location:
cd /etc/systemd/network
  • There are two files available (10-eth0.network and 10-eth1.network). The 10-eth0.network represents eth0 and looks like:
[Match]
Name=eth0

[Network]
Gateway=10.2.145.249
Address=10.2.145.202/24
DHCP=no

[DHCP]
UseDNS=false
  • The 10-eth1.network file represents eth1 and looks like this.
[Match]
Name=eth1
[Network]
Address=192.168.0.102/24
DHCP=no
[DHCP]
UseDNS=false
  • Add a static route by adding the [Route] section of this file.
[Match]
Name=eth1
[Network]
Address=192.168.0.102/24
DHCP=no
[DHCP]
UseDNS=false

[Route]
Gateway=192.168.0.1
Destination=10.21.9.0/24
  • Restart the network services
systemctl restart systemd-networkd.service
  • Check if the route is added with the route -n command:
root@vcdr01 [ /etc/systemd/network ]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.2.145.249 0.0.0.0 UG 0 0 0 eth0
10.2.145.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
10.21.9.0 192.168.0.1 255.255.255.0 UG 0 0 0 eth1
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
  • Test with the ping command from the vCenter Server if you can reach the Horizon infra components in the subnet.