Provisioning Services has included support for a Boot Device Manager (BDM) Partition since version 7.0. There are some use cases where it is preferable to choose the BDM partition, and it is simple to do when provisioning machines using the XenDesktop Setup Wizard within the Provisioning Services Console. One limitation the partition had, however, is that after the initial provisioning, there was no built in way to modify it, leaving you to have to provision a new machine, or provision a new machine, copy the BDM hard disk, and use the hypervisor tools to script a replacement. It could get messy and time consuming. Unfortunately, the BDM creation utility itself creates a boot device manager that relies on Two-Stage Boot, so that option isn’t always desirable either. For more information on the boot process, see CTX136378
Citrix recognized the limitations and introduced the ability to update the boot partition for any machines that have been provisioned with BDM using the XenDesktop Setup Wizard. This means that you will be unable to convert existing machines from PXE or boot ISO methods to BDM without provisioning machines using the XenDesktop setup wizard. There is info within PVS for the target device to specify if it has BDM or not, however manually modifying that will mean that your environment may be unsupportable by Citrix. You can, however, set BDM using the “Set-PVSDevice –bdmBoot $true” cmdlet for a target device, but this doesn’t create the link for the VirtualHostingId, which is currently read-only in PowerShell. You may ask yourself, ‘When would I use this?’ There are cases where you may need to update the BDM, such as changing the IP your PVS servers. With that said, let’s take a look at the steps to update some virtual machines that have been provisioned using the XenDesktop Setup Wizard with BDM as the boot option of choice.
The XenDesktop Setup Wizard uses the server “Bootstrap” settings to configure the Boot Device Manager. In my testing, it actually uses the bootstrap settings from the top most server in the farm server list, though for consistency sake, you may simply choose to configure bootstrap on all servers identically or do testing on your own.
In this screenshot, we see the server’s old IP address of 192.168.1.5.
After changing the IP address of our PVS server due to networking changes, our provisioned VMs will no longer boot.
In order to resolve the problem, we need to update the Boot Device Manager partition. First, we edit the IP address in the server bootstrap. You can have up to 4 servers in the bootstrap. Click the existing entry, choose edit, and change the IP address.
Next, browse to the Device Collection that contains the target devices, select the target devices you wish to update, right click, choose Target Device, then Update BDM partitions…
Click Update Devices. Note: The devices must be shut down or you will receive an error.
Once the operation is complete, you will see success. Close the window.
Now boot your VMs and notice they successfully begin streaming the vDisk!
The addition of this feature helps ensure that organizations can deploy the Boot Device Manager partition and retain the flexibility of having to modify the bootstrap used. Using Provisioning Services 7.9, administrators can quickly and easily update all of their target devices without the need to script the replacement of Boot Device Manager hard disks.