Wednesday 23 January 2013

XenApp qfarm commands

List server loads

Command qfarm /load

Server Name           Server Load
--------------------  ------------
XASRV1               0                   
XASRV2               1900                
XASRV3               2317                
XASRV4               0                   
XASRV5               2140                
XASRVA1              0                   
XASRVA2              1100                
XASRVT               100                 

Load ranges from 0 (no load) to 10000 (full load).  The load is configured by default to take into account the number of users on each server and assign a set "load" to each user.  This will evenly distribute users across the farm but does not take into account that perhaps users on one server are undertaking much more CPU intensive tasks than users on another server.  The load balancing settings can be found in the Citrix Delivery Services Console/App Ceneter (XA 6.0/6.5 respectively) XenApp>XenApp Farm > load Evaluators.

At my company I have setup the load to be evaluated by instead taking into account the CPU Utilisation and RAM usage and actually ignore the number of users on the server as a factor to calculating which server a user should be pointed to when logging onto the farm.  I have also set the "Impact of logons on load" to high, meaning that when a user logs on I want that to make a significant impact on the load value assigned to that server.  This will help prevent several users all logging onto the same server at the same time and thus causing it to slow down while it processes all of those logons.

Server Load Error Codes

In some cases the server load when queried using the qfarm /load command will be an error code (any value above 10000 is an error)

  • qfarm /load = 10000 100% Full load on the server
  • qfarm /load = 20000 XenApp is configured to an incorrect server edition or the license server is unavailable
  • qfarm /load = 99990 You do not have rights to run qfarm commands!
  • qfarm /load = 99999 There is no load evaluator is configured.

View status of servers

Command qfarm /online

Server Name          Zone Name               LBOff
-------------------- ---------------------- -------
XASRV1              192.168.102.0        D   
XASRV2              192.168.102.0            
XASRV3              192.168.102.0            
XASRV4              192.168.102.0            
XASRV5              192.168102.0            
XASRVA1             192.168.102.0            
XASRVA2             192.168.102.0            
XASRVT              192.168.102.0                     

The qfarm /online command gives you a list of all servers that the farm believes are online.

You can see that there is a "D" next to XASRV1 - This is to indicate that it is the zone data collector for the 192.141.168.0.   If we have muliple zones e.g. servers in different geographic loacations they would be listed as well as long as they are part of the same farm and we would see more servers marked as Zone Data Collectors (each zone must have its own data collector).

Command qfarm /offline

Same as above but will list the servers that are known to be offline