Citrix Presentation Server and XenApp are among the best products in the application delivery space. Rick Vanover explains some of the factors to keep in mind when the time comes to upgrade your environment.
Server virtualization is the hot button topic on everyone's agenda, so application delivery systems, such as Citrix Presentation Server or XenApp, may now be due for an upgrade. Here are 10 ways to map out your upgrade to prevent headaches and keep the environment functioning as planned.
Note: This information is also available as a PDF download.
#1: Presentation Server is now XenApp
When Citrix announced that Presentation Server is now XenApp, it shouldn't have been a big surprise, given the investment into the Xen hypervisor. It will take some getting used to, but it's a well-timed and fitting rebranding of the standard in presentation and delivery. Much of the product literature, documentation, and live screens still mention Presentation Server. But functionally, it's the same product. So don't get too wrapped up in making sure that you are getting all of the functionality you need.
#2: Just publishing apps? Things are easier
A Citrix farm that's publishing only applications reduces the testing requirement, as most Citrix ICA client interaction functionality is transparent across versions when upgrading. Isolation environments and published desktops drive the testing footprint a little higher because they're frequently used with terminal type devices or with frequent local device interaction. This can include local drives, sound, or USB devices.
If you aren't changing your server operating system, your task is made that much easier because you know that your published application inventory works correctly on the XenApp host operating system. For example, if your current environment runs on Windows Server 2003 and you want to run your new XenApp environment on the 64-bit version, you may need some additional testing and configuration to ensure that everything functions as expected. In the situation where there is no change to the XenApp server operating system, there is an established expectation that the applications will perform correctly.
#3: Get the Web interface correct firstOne of the better features of XenApp in regard to an upgrade is that you can point your new environment to your existing environment via the Web interface. In this manner, your new Web server can provide published applications on your older servers and the client connections can be directed to the new Web servers. Figure A shows an example where the Citrix40 farm's connections are inventoried into the new Web server's farm inventory:
Note that while you can have a newer XenApp Web interface provide applications from an older farm, the reverse can't be performed. So make sure that the newer Web interface is ready for prime time action.
#4: Get licensing in order before the upgrade
Having the license servers in place before the upgrade will save time within the upgrade process. If your license server is the same for your current environment as for your old environment, make sure you can concurrently use the Citrix environment for your live workload while still allowing for adequate testing in the pre-upgrade phase. Before the upgrade process begins, check the following administrative topics:
- Get a picture of current client simultaneous connection usage.
- Make sure licensing inventory is adequate.
- Verify that support options are current and available.
- Check that installation software is available and kept in a centrally accessible location for all XenApp servers during the upgrade.
#5: Put published applications on multiple servers
If existing servers will be used for the new XenApp version, make sure each published application is available on more than one server. This will enable one server to be taken offline during the upgrade, and the other servers can provide the published application inventory. But be sure that the remaining server(s) can handle the workload with one or more servers offline for the upgrade. Most administrators have already arrived at this configuration, but there may be a few one-off published applications that were rapidly provisioned, and they may not be configured for multiple servers to publish the application. By having this arrangement in place before the upgrade, you can save time for normal server maintenance tasks on the new version as well.
#6: Go through the upgrade process once before going live
There are a lot of options to the XenApp environment, and testing the installation process is just as important as testing the functionality of the upgraded environment. By having the upgrade process made into a procedure specific to your environment, you can avoid the risk of incorrect options for important topics such as farm name, database, licensing, and port configuration. It will also save time during the upgrade process because the critical information is already defined.
By performing the upgrade once in a test environment, licensing will be required for it to function. But if the test environment is not installed on the same systems as the licensing server, those licenses will be made available to new systems once they replace the test servers.
#7: Make sure the SSL certificate is used for the Web interface
The XenApp Web interface has many options for logging in and authentication methods. If a login is required in the Web interface directly, ensure that the SSL or HTTPS is required on the Web configuration. Using the HTTPS option will encrypt the passwords, as they would otherwise be sent as clear text. For large Windows Active Directory environments, it is also a good idea to have the domain restriction configured so that only specified domains can log into specified Web interfaces.
You can strengthen security by configuring IIS the same way on the XenApp server and putting IP address restrictions on where the Web requests originate.
#8: Add more servers during the upgrade for padding
Citrix licensing is generally more concerned with the number of client connections used than with servers that have XenApp installed. With this flexibility, you can add more servers to the farm to make the upgrade very clean, with extra capacity to accommodate a number of servers offline. A common strategy is to add two new Web interface servers and two new XenApp presentation servers and then proceed on the upgrades on the existing servers.
#9: Consider uninstalling Presentation Server first
For a server that is going to be upgraded, if Presentation Server (yes, the prior product name) is uninstalled as a first step, XenApp can then be installed. Doing so can save time, as this system would have all of the published applications installed and configured already. This can be especially valuable in systems where an interactive licensing or activation is required to use the published application. Performing the upgrade on the same instance of the operating system would skip the step of needing to reactivate or configure all of the published applications during the upgrade timeframe.
#10: Test nonstandard ICA client installations extensively
Should any devices be in use that are less common or limited to an older ICA client, proper testing is due. Terminals devices, older systems, non-Windows clients, and other less common configurations are much more difficult to address compared to normal Web-based or Program Neighborhood Agent connections. This can be especially important if a published application has an encryption requirement that's higher than the ICA client can support — such as the 128-bit RC-5 encryption options with the minimum requirement value selected.
Are you ready for the upgrade?
Like any undertaking, proper planning is critical to a successful outcome. Citrix XenApp is an incredibly reliable product when properly deployed, so don't sell it short. What have you learned along the way about upgrading your Citrix environment? Share your lessons learned below.
Rick Vanover is a software strategy specialist for Veeam Software, based in Columbus, Ohio. Rick has years of IT experience and focuses on virtualization, Windows-based server administration, and system hardware.