Product Documentation

Using Worker Groups for Enhanced Resource Access

Apr 29, 2015
Worker groups are collections of XenApp servers, residing in the same farm, that are managed as a single unit. Using worker groups, you can:
  • Streamline application publishing to multiple farm servers
  • Load balance access to published resources
  • Filter policies so that settings are applied only to sessions hosted on a specific set of farm servers
When using worker groups, consider the following:
  • A farm server can belong to multiple worker groups
  • A worker group can include any number of XenApp servers or none at all
  • Only servers that belong to the same XenApp farm are included in a worker group

Publishing Applications

When publishing an application, you can use worker groups to specify the servers hosting the application. To increase capacity for the application, you can add more servers to the worker group rather than modify the application properties. If your environment includes Active Directory, you can create the worker group based on the Organizational Unit (OU) that includes the servers hosting the application. To increase capacity for the application, you add servers to the OU. New servers that you add to the OU are automatically included in the worker group.

When adding servers to worker groups for application publishing, all XenApp servers in the worker group must have the application installed. When a user attempts to launch an application, XenApp checks to ensure the application is installed on the farm servers in the worker group. If the application is not installed, the application does not launch and an error is logged to the Application event log on the data collector.

Load Balancing Access to Published Resources

To ensure an optimal experience for users accessing published resources, XenApp provides load balancing policies to direct users to the least-loaded XenApp server hosting the resource. You can use load balancing policies to:
  • Reduce WAN traffic by directing users to the closest regional server
  • Direct users to a backup server in the event of an outage
  • Direct a specific group of users to a group of dedicated servers
Load balancing policies consist of the following elements:
  • A filter to determine when the policy is applied
  • A worker group preference list to determine the servers to which users are directed when logging on

When you create a load balancing policy, configure a filter so that the load balancing policy can be applied to users when they access published resources. If you do not configure a filter, the load balancing policy will have no effect when users log on. As with other Citrix policies, you can filter based on access control, client IP address, client name, and users.

Additionally, to ensure users are directed to the appropriate servers, create a worker group preference list to prioritize the servers that users can access. A priority of 1 is considered the highest priority. When a user launches a published application, the load balancing policy directs the user to servers in the highest priority worker groups first. Users are directed to servers in lower priority worker groups if servers in the higher priority worker groups are offline or have reached maximum capacity. Users are not directed to servers in worker groups that are not included in the worker group preference list. If a user attempts to launch an application that is not installed on any servers in any of the listed worker groups, regardless of priority, the launch attempt fails and an error is logged to the Application event log on the data collector.

After you create load balancing policies, you prioritize them just as you would any other Citrix policy. If multiple load balancing policies apply to a single user, XenApp uses the worker group preference list from the highest priority policy to direct the user. Preference lists from lower priority load balancing policies are not considered.

Using Worker Groups to Filter Policies

You can use worker groups as filters in Citrix policies to apply policy settings to connections. When adding the filter, you specify the worker group by name only. If the worker group is subsequently renamed or deleted, XenApp no longer recognizes the filter and the policy is not applied to any connections.

To create a worker group

  1. From the Delivery Services Console, select the Worker Groups node in the left pane.
  2. From the Actions pane, click Create Worker Group.
  3. In the Create Worker Group dialog box, type a name for the worker group.
  4. In Select source, select the server grouping and then click Add. For example, select Organizational Units to add servers based on their OU membership in Active Directory.
    Note: If you do not use Active Directory in your environment, select Farm Servers to add individual XenApp servers to the worker group.
  5. Select the groups of servers you want to add to the worker group. For example, if you selected Organizational Units in the previous step, select the organizational units that contain the servers you want to add to the worker group.
    Note: Only XenApp servers that reside in the same farm are included in the worker group. If an organizational unit contains XenApp servers that reside in other farms, those servers are not considered part of the worker group.

Creating and Prioritizing Load Balancing Policies

  1. From the Delivery Services Console, select the Load Balancing Policies node in the left pane.
  2. From the Actions pane, click Create load balancing policy.
  3. Under Filters, select the filter to use to determine when the load balancing policy is applied.
  4. Under Load Balancing Policies, select Worker Group Preference and then select Configure application connection preference based on worker group.
  5. Click Add and select the worker group you want to include.
  6. Click Add to add the worker group to the list. Each worker group you add is automatically assigned a priority, from highest (1) to lowest.
  7. To adjust the priority of the worker groups in the list, select a worker group and then perform one of the following actions:
    • Click Set priority and enter the priority level you want for the worker group. Entering a priority for a worker group does not affect the priority of any other worker group in the list. Multiple worker groups can share the same priority.
    • Click Increase Priority or Decrease Priority to adjust incrementally the priority of the worker group.

To adjust the priority of a load balancing policy

  1. From the Delivery Services Console, select the Load Balancing Policies node in the left pane.
  2. From the middle pane, select a load balancing policy.
  3. From the Actions pane, perform one of the following actions:
    • Click Set priority and enter the priority level you want for the policy.
    • Click Increase priority or Decrease priority as appropriate to adjust incrementally the priority of the policy.

Enhancing the Performance of a Remote Group of Servers

For business continuity, you can specify that if all servers in a worker group go offline, XenApp redirects user connections to a backup worker group. This feature is known as Worker Group Preference and Failover; you configure it in the XenApp console through the Load Balancing Policies.

As a best practice, to keep ICA traffic from going over the WAN, you should:
  • Direct requests for applications by specifying a Worker Group connection order in the Load Balancing Policies.
  • Create a policy that applies to connections from a worker group. Then, specify that worker group as the Primary Group in the policy. This makes XenApp route incoming connection requests from users to that worker group first.

For more information about worker groups, see Creating Worker Groups.