In this article I will show the steps for upgrading a XenDesktop 7.x infrastructure to the latest release.
Upgrading a XenDesktop 7.x environment
With the previous release of Citrix XenApp version, upgrading was a word which was not available in the Citrix dictionary. It was adviced to go through a new install and also in practice this was the way to go to a newer version of the Citrix software. In that timeframe it was not a bad thing as almost every upgrade also involved a new version of the Operating System. When this was no longer the case for all scenarios, Citrix introduced tools to export the configuration out of the current environment and import it again.
The first step Citrix made were tools to export the configuration of the current environment to the new infrastructure. With the release of XenDesktop 7.0, Citrix changed the way the versions were released. They made the decision to release versions in a smaller timeframe (including less changes per version). For the Current Release cycle every quarter a new version will be released. Logically within just released cycles, upgrades are a requirement to keep up to speed.
For this article I will upgrade a XenDesktop 7.8 to the 7.9 (which is the latest release during writing this article), however the article applies to any 7.x version as the steps are the same for each version.
Happily, upgrading to a new version of Citrix XenDesktop (where I write XenDesktop, you can also read XenApp. The software is exactly the same, it’s on a license that makes the difference) is not that hard. Citrix did a great job by simplifying the installation and upgrade process.
The first step is to create a back-up of the XenDesktop database. During the upgrade the database will be altered, so in case the upgrade fails we need to have the possibility to go back to a database just before the upgrade.
The back-up should be made from the SQL Management Studio or ask your database administrator to create a full back-up.
After creating the back-up, Citrix describes two upgrade paths. In the first scenario (which is shown within the upgrade wizard described later on) you first upgrade the VDAs, followed by the Directory and the Delivery Controllers. In the other scenario you first upgrade Director, the Delivery Controllers and later on the VDAs. Personally I like the second scenario better. It provides an easier roll-back path, while Citrix officially supports older VDA versions managed by a higher level Delivery Controller.
So I will start describing the installation steps of the Delivery Controller.
A good way to go back after failing upgrades it to create a snapshot/checkpoint (in the case of virtual machines) within the hypervisor.
Delivery Controller Upgrade
The best way to Delivery Controller Upgrade is using the autorun on the ISO download. This will start the full installation, which ensures that all prerequisites will be installed if required. The installation will automatically detect the installed components.
In my demo environment I have also StoreFront and Directory installed on the Delivery Controller and those will automatically upgrade as well. There is no way to change this behavior using the GUI, so take that into account (especially if you have multiple StoreFront servers as this can cause outages on StoreFront). For larger deployments, StoreFront and Director are often installed on another machine. The upgrade starts by clicking the upgrade pane on the left. The upgrade wizard starts with accepting the license agreement.
The following screen describes the upgrade path Citrix recommends. As stated this is just a preferred path, not required. For example also PVS is added to the path, while the product can be upgraded separately in advance or later as well. As mentioned I will use another strategy that Citrix supports.
After the instruction we can choose if the installation may update the Windows Firewall or if you will perform these steps manually. They are the same ports as the previous versions were using, so in theory those ports should be already configured. To be 100% sure I’m choosing to add the ports by the XenDesktop Upgrade.
Next an overview will be shown of which components will be upgraded. Via the upgrade button the upgrade is actually started. If any prerequisites are not available, the installer will automatically install those. In my case the prerequisites are already in place and are not shown. At each component the progress is shown till the upgrade has finished.
After the upgrade the wizard automatically continues with the next question. Citrix built in a component to gather information that is useful for Citrix to improve the product. They call this part Call Home, which can only be enabled or disabled (easily with a GUI) during the installation or upgrade as shown in the figure below.
After choosing to participate or not in the Call Home program the upgrade of the software is finished and the final upgrade screen will be shown stating that the upgrade was succesful.
The next step is to start Studio to continue with the upgrade. If you want, the adminitration console can be started directly after the upgrade by checking the Launch Studio box at the end of the upgrade process.
When Studio is started after the upgrade of the software, the database needs to be upgraded as well. There are two scenarios available: upgrading via Studio or via PowerShell scripts to modify the database.
The last option is required if your account or the Citrix Service Account does not have sysadmin rights and the SQL administrator will take care of the database upgrade. For the automatic site upgrade the account running the wizard should have the sysadmin rights. I have customers that provide that right temporarily during the upgrade and change the rights back to dbowner only after the upgrade process.
For this article I’m using the automatic site upgrade option. When choosing the 'Start the automatic Site upgrade', a message appears reminding you that you should have made a back-up of the database.
After choosing the Upgrade button, the database modifications will be executed. After some time the site upgrade will be completed successfully.
After the upgrade, Citrix Studio is showing a warning that the other Delivery Controllers should be upgraded as well. So let’s continue with the upgrade of the other Delivery Controllers.
The installation part is exactly the same, so I will be reffering to those steps as described above for the first delivery controller. During this upgrade the second Delivery Controller was automatically registered again and the warning was not shown in Studio anymore (after starting the console again). If the message still shows up, click the warning Upgrade remaining Delivery Controllers followed by Register Controllers.
Citrix Director / StoreFront
In the upgrade of the Delivery Controller, StoreFront and Director were automatically upgraded as they were installed on the same machine as the Delivery Controller role. However it would advise to install StoreFront and Director together on a different machine. In that case we need to upgrade the Director and StoreFront on that machine. The easiest way is to use the auto select of the ISO for this part as well especially if you installed the current version used on the ISO. For example StoreFront is often installed via the separate provided executable. First take a look at the upgrade process using the ISO.
The start-up screen shows in the left pane that there are server components available to upgrade. In the right pane we see that the installer automatically detected StoreFront and Director installed.
We need to select the upgrade option in the left pane which leads us to the license agreement part of the upgrade process.
After accepting the license agreement by choosing I have read, understand and accept the terms of the license agreement the steps are shown to successfully upgrade, just like the installation of the Delivery Controller.
The next step is to define your Delivery Controllers. This information is being used for Citrix Director, so this software component can communicate with the XenDesktop site.
Also for Director. (however it is already added by the previous installation) the Windows Remote Assistance feature will be added.
Next the earlier seen firewall question is asked again to automatically or manually open the required firewall ports on the machine.
After the firewall question, the upgrade process will be actually started via the Upgrade button.
Just as the previous upgrade processes, the installer shows the progress of the update.
At the end the wizard it will show that the upgrade was successful and we are done upgrading StoreFront and Director. Especially for StoreFront you should be careful because if you have multiple servers (which are not configured to only communicate on their own for the StoreFront part). I advise to upgrade the other StoreFront server(s) directly after the first one.
I will continue showing the upgrade steps of the StoreFront servers, which is installed with the stand-alone installer executable followed by upgrading the VDAs.