Recently, the development group at eGroup had the opportunity to put the Citrix XenApp SDK into action for a large customer with a 50+ servermulti-site Citrix XenApp Deployment. The main production farm is a mix of Windows 20032008 and Presentation Server 4.5XenApp 5.

Using C# and the Citrix XenApp SDK, eGroup was able to deliver a solution in the form of an MSI that allowed for quick and painless deployment to the customer's large Citrix installation. The Problem? A hands off reboot utility that considers time sensitive reboot windows along with zero user session disruption. The Solution? Read More to find out.

<!--more-->

Deployed as a Windows Service driven by an XML configuration file, the solution allows for granular control over when and under what conditions the Citrix servers are eligible for an automated reboot. The basic operation allows for servers to be automatically changed to an offline load evaluator once the server enters its reboot window. The server is then continuously monitored for a state of zero active sessions before the reboot is executed. The option to wait for a period of time and reboot regardless of user activity is also included. After reboot, the server is returned to its online evaluator for normal user operation. Several values, including last reboot time, the install location of the utility, and the online evaluator are stored in the Windows registry.

Reporting of the solution is handled by writing to the Windows Application Event log. Verbose Errors and Warnings are written when the server enters the reboot window, as it monitors for conditions "allowing" a reboot, and immediately before and after the reboot as load evaluators are changed by the application.

Also included in the package is a lightweight utility that allows for fast enumeration of all available Farm Evaluators and their attached servers. This is an improvement over the painful practice of reviewing each server for its active evaluator when dealing with large Citrix Farm deployments.

eGroup has the capability to develop custom applications solutions using a variety of tools from our many vendor partners including Microsoft, VMware, and Citrix. Look for soon to be posted blogs detailing several real-world challenges and solutions using ThinApp from VMware!