XenDesktop 7: How to set Load balancing

With XenDesktop 7, the name XenApp will no longer be used for new products. Well I even made a statement that XenApp died! Well it will be on 14th of January of 2020. When we take a look at XenDesktop 7 Studio, we see that there is no longer a Load Balancing option in the console. For a Desktop OS there is no need for load balancing because you have just one session per OS. XenDesktop 7 gives us to opportunity to add a Servers OS. With a Server OS you are able to have multiple sessions to one OS. So how do we set the Load Balancing for Server OS? With policies.

Yes, Citrix has put the load balancing options as policies. There are seven load balancing policies to be exact. The policies are named:

  1. CPU usage
  2. Disk usage
  3. Memory usage
  4. Memory usage base load
  5. Maximum number of sessions
  6. Concurrent logons tolerance
  7. CPU usage excluded process priority

What are the default settings?

  • CPU usage: report full load (%) 90, disabled by default
  • Disk usage: Report 75% load (disk queue length) 8, disabled by default
  • Memory usage: report full load (%)90, disabled by default
  • Memory usage base load: Report zero load (MBs) 768, enabled by default
  • Maximum number of sessions: limit 250, enabled by default
  • Concurrent logons tolerance: Target value 2, enabled by default
  • CPU usage excluded process priority: exclude processes that have a priority of Below Normal or Low, enabled by default

The default load will look like this: Max 250 users per Server OS, a max of 2 concurrent logons and 768 MB reserved for the OS.

XenDesktop 7 and Qfarm

Can I still use Qfarm to get the load? No you cannot, Qfarm is an IMA command and with XenDesktop we use FMA. So how we do get the load? There are several methods. First by using Director. On the first page you will receive an error when a machine gets a full load.

XenDesktop 7 Director

You can also create a custom filter using the following view and filter options:

XenDesktop 7 Director02

The second method

The second method is by using Studio. This method requires you to look for the full load. By selecting the correct machine catalog and adding the Load Index column.

XenDesktop 7 Load Index

The load is 0 for no load and 10,000 for a full load.

Xendesktop 7 Studio Load Index

The third method

The third method is by using PowerShell. I have created a PowerShell script with the output similar to the Qfarm /load command:  Get-BrokerMachine –Filter ‘SessionSupport –eq “MultiSession”’ –Property @(‘DNSName’,’LoadIndex’)

XenDesktop 7 PowerShell 01

When users try to launch an application or desktop while all active servers are reporting a full load, a new server will be started and made available for new connections. If there are no servers to start or the machines are put in maintenance mode, then the connection will fail.

8 thoughts on “XenDesktop 7: How to set Load balancing

  1. Fantastic site!

    I have been ringing my hands over how I,will get my qfarm dashboard in XD7

    Thank God for powers hell

    Thanks for sharing your knowledge

    John Smith

  2. That’s a very good information. Made me to come out of the traditional Citrix load balancing concepts.
    Thank you.

  3. Hi Bader,
    How is possible to solve this situation?
    I have 3 OS servers and 2 of them are in Max. Load.
    I have a GPO name Citrix – Load Balancing that I put CPU use to 80% and mem use to 80 % too. Just now I’ve disable this GPO to try to solve it.

    Thanks for your post

    1. Hi Jordi,

      When a server is in max load it means that your resources are insufficient.
      The only way to solve this is to add more servers or more resources to your server.
      Or find the application or user that’s responsible for the high load.

      Thank you

Leave a Reply

Your email address will not be published. Required fields are marked *