Version 1.4.0 – Download Link
The XenDesktop Farm Migration Utility allows you to seamlessly migration VM’s between different XenDesktop farms, both On-Prem and in Citrix Cloud. This can be done on a per VM basis or in batches of up to 500. As well as providing migration functionality, it can also be used for Disaster Recovery, allowing you to back up and restore your VM’s on your farm.
- Support for migrations between Citrix Cloud regions.
- Tool now only uses the Citrix Remote PowerShell SDK.
- Option to delete VM from source farm post migration.
- Timeout option for VM registration check post migration.
- Support for VM tags.
- Support for migrations to Citrix Cloud.
- Backup/Restore capabilities for Citrix Cloud.
- Bug fixes.
- Command line support for disaster recovery backup.
- Bug fixes.
- Added disaster recovery functionality.
- When the utility is first launched, it will check for the Citrix Remote Powershell SDK. If this is not found, the utility will not be able to process any migrations and it will not run.
- You can select to perform a migration on a single VM or on a batch of VM’s. The VM name must be entered in DOMAIN\VM format. For batches, the list of VM’s is loaded via a text file. The name of the source DDC or details of a source Citrix Cloud farm should be entered. You can select your target to be another On-Prem DDC or Citrix Cloud. If you are selecting Citrix Cloud, you must supply a customer ID and a secure client CSV for authentication. Once you have enter this information, the Validate button is clicked. The utility will communicate with both source and target and ensure that they are valid for use.
- After validation has run, the drop down menus for target catalog and target delivery group will be populated with the options that are available from the target farm, you must provide a selection for each.
- Before you click on the Migrate button to start the migration process, there are 5 additional options that are available to you for selection:
- Add users to delivery group? -> This option will add each users that is assigned to the VM to the delivery group that the VM is being placed in.
- Set DDC in registry? -> When checked, this will bring up a dialog that will allow you to build a list of DDC information to be added to the ListOfDDCs key in the registry.
- Force off disconnected sessions? -> This option will force off any sessions that are showing as disconnected before proceeding with the migration.
- Force off non-brokered sessions? -> This option will force off any sessions that are showing as non-brokered before proceeding with the migration.
- Override source hypervisor? -> If this option is checked, the Target Hypervisor drop down menu will become enabled. The hypervisor selected will be used instead of the hypervisor recorded from the source farm when adding the VM to the new farm. Be sure to use this option with care and know what you are doing.
- Delete VM from source farm? -> Select this if you want to delete the VM from the source farm after it has been added to the new farm.
- Migrate VM Tags? -> Option to migrate the VM tags.
- Registration Check Timeout in mins -> Set the length of time that the tool will check if the VM has become registered in the new farm. It performs a check every 30 seconds. Set this to zero to skip this check.
- After clicking on the Migrate button, the migration progress will be shown in the top window of the Progress pane. The bottom window will show any PowerShell commands that are being executed. When the process completed, the result for each stage of the migration will be shown.
Watch a demo of a migration here.
Watch a demo of a Citrix Cloud to Citrix Cloud migration here.
There are two options available on this tab, Backup and Restore. You can perform a back up and restore from either On-Prem or Citrix Cloud.
Backup – Select your target as either On-Prem or Citrix Cloud. If you have selected On-Prem, you should enter the name of the DDC. If you have selected Citrix Cloud, enter the Customer ID and select your secure client CSV file. Click on Validate to confirm that your target selection is valid. Once the validation is complete, you click on Process and it will gather all the VM’s from that farm and display them in the output grid. When complete, you click on export to save the CSV file with the VM information.
Restore – When you select the restore option, you will need to browse and select the CSV file that contains your farm backup. After the CSV file has been loaded ,the VM’s for restoring are displayed in the grid. You must enter and validate a DDC for On-Prem or a Citrix Cloud account before you can begin processing.
There is a checkbox option available called Import Override. If this is selected, it will enabled three drop down boxes for Machine Catalog, Delivery Group and Hypervisor. These options will allow you to override the information that is contained in the CSV file. These options are for advanced administrators.
DISCLAIMER -> Use these options with care and only if you know what you are doing. Ensure that you test before using at scale.
When you are ready, click on process and all the VM’s listed in the CSV file will be added to your farm.
Watch a demo of a back up here.
Watch a demo of a restore here.
Disaster Recovery – Command Line Support
The tool provides command line support (On-Prem only) for performing backups of the VM’s that are hosted on your XenDesktop farm. This allows you to set up a scheduled task to take a backup of all the VM’s in your farm on a schedule of your choosing. There are 4 parameters required:
BACKUP – This is going to tell the tool that it is working in a backup mode.
DDC NAME – You have to give it the name of the DDC that it is going to connect to.
FILE PATH – This is the path to the folder that you want to save the CSV file to. The name of the file is pre-set. It will be in the format DDCNAME_BACKUP_DATE_TIME.csv. If you have a space in the file path, make sure to enclose it in quotes as shown.
VM TYPE – This can be ALL, MANUAL, PVS or MCS. For most, you will probably want to pick ALL but there might be occasions that you want a specific provisioned type so I gave that option.