Desktop Broker Farm

How to create a desktop broker

A broker farm is a representation in Flexxible|SUITE of a Citrix Virtual Apps & Desktops (formerly XenDesktop) site or farm.

Search for  "Desktop Brokers Farm" in the search area of the left side menu to get to the broker farms list:

Click the "New" button, to create a new broker farm:

Some relevant information about a broker farm:

Name: It's the descriptive name for the broker farm.

In maintenance: if checked, the broker farm is set to maintenance mode, which prevents its VMs, status, and sessions from being synchronized. Also, the infrastructure related to this broker farm is not read by the "Synchronize infrastructure" process while in maintenance.

First Node: the FQDN of the master farm node. It is the preferred node to send commands for execution, and it is used to automatically discover the rest of the broker farm nodes

Kind: the Citrix Virtual Apps & Desktops version grouping that specifies the broker farm functioning and capabilities.

Minimum controller version: the version of the oldest Citrix delivery controller software version for the farm. Ideally, all the farm nodes should run the same software version, unless the farm is in an upgrade process.

Site database connection string: the database connection string that Flexxible|SUITE uses to synchronize data from the Citrix Virtual Apps & Desktops site. You may get this string by executing this command from a Powershell console in one of the delivery controller VM: Get-ConfigDBConnection.

The result should be a text expression like this: 

Data Source=SDDB;Initial Catalog=XDSite02Site;Persist Security Info=True;Integrated Security=SSPI;    

The data in orange should be replaced by the data returned by the PowerShell command as indicated above.

Monitoring database connection string: the connection string to the Citrix Virtual Apps & Desktops monitoring database for the site from where Flexxible|SUITE reads status, connection, and session information. It can be left blank if the Citrix site is configured with a single database but must be informed if the monitoring database is segregated into a different database.  

The set up of the MinPoolSize parameter in the DB connection string is not recommended, as it could cause excessive resource consumption by keeping too many connections open.

Instead of database connection data, for broker farms of a kind "Citrix Virtual Apps & Desktops on Cloud," access credentials are required, so Flexxible|SUITE can interoperate with the farm:

Nodes: the list of the Citrix Virtual Apps & Desktops site delivery controllers.

VM Managers: the list and status of each VM Manager connected to this broker farm.

VM Sessions: the currently open sessions in VMs part of this broker farm, whether they are VDI, SDI, or application sessions.

Zones: the zones defined in the Citrix Virtual Apps & Desktops site. Some objects can be moved between zones from this list, like users/groups, catalogs, or published applications, other zones settings must be configured by using the Citrix Studio administration console.

Tags: the list of tags defined in the Citrix Virtual Apps & Desktops site. Tags must be configured by using the Citrix Studio administration console.

Customer Id: The Citrix DaaS subscription customer id. It can be found in the "Identity and access management  -> API Access" page of the Citrix Daasconsole.

Secure client Id: This Id identifies Flexxible|SUITE as a Citrix DaaS API consumer. The secure client must be generated in the Citrix DaaS console, under the "Identity and access management -> API Access" option, and because it will inherit the permissions from the user who creates it in the Citrix DaaS console, that user should be an administrator with full access.

Secure client secret: the secret code that is tied to the secure client on creation. You must type or paste the secret twice to avoid typos.

Finally, click on the "Save" button to create the new broker farm. 

Once the first "Synchronize Structure" process is completed, we'll be able to deploy and orchestrate VMs associated with the specified Citrix farm. You may also manually run the synchronization process.

Broker farm synchronization can be performed in parallel from Flexxible|SUITE v 4.6 by using the setting "BrokerFarmParallelSync". This setting admits these values:

  • None (default): the synchronization of broker farm information is performed sequentially, one thing at a time, one farm at a time
  • API: broker farms with no database access (for example Citrix DaaS) are synchronized using parallelism to reduce the duration
  • DBQuery: broker farms with database access are synchronized using parallelism
  • All: every broker farm is synchronized with parallelism

Note: if you use parallelism for broker farms synchronization, please consider increasing the resources of your VCC Worker roles (particularly assigned RAM) to avoid resource exhaustion.

Note: remember that the Citrix DaaS connectors AD computer accounts must be added to the Desktop Delivery Controllers AD group (which name is specified by the setting "DDControllersGroup") and restarted to apply for new membership permissions.

After the synchronization process, the system will automatically find the VMManager associated with Citrix, and those new appliances not previously detected will be added to the "VDI Appliances" section:

In each appliance, the following fields are mandatory:

1) DESKTOP TEMPLATE DEFINITION PATH:  Local path where the new desktop templates will be deployed for this appliance. This should be provided by the team that deployed Flexxible|SUITE. 

2) APPLICATION TEMPLATE DEFINITION PATH: Local path where the new application templates will be deployed for this Appliance. This should be provided by the team that deployed Flexxible|SUITE.

Please keep in mind that the value of the setting VMTempDisksPath should be provided, be able to create templates.

Was this article helpful?