Farms simplify the task of managing RDS hosts, RDS desktops, and applications in an enterprise. You can create manual or automated farms to serve groups of users that vary in size or have different desktop or application requirements.

A manual farm consists of RDS hosts that already exist. The RDS hosts can be physical or virtual machines. You manually add the RDS hosts when you create the farm.

An automated farm consists of RDS hosts that are instant-clone or linked-clone virtual machines in vCenter Server.

Connection Server creates the instant-clone virtual machines based on the parameters that you specify when you create the farm. Instant clones share a virtual disk of a parent VM and therefore consume less storage than full virtual machines. In addition, instant clones share the memory of a parent VM and are created using the vmFork technology.

Although helpful in speeding up the provisioning speed, the use of parentVM does increase the memory requirement across the cluster. In some cases when the benefit of having more memory outweighs the increase in provisioning speed, Horizon automatically chooses to provision instant clones directly from replicaVM, without creating any parentVM. This feature is called Smart Provisioning. A single instant clone farm can have both instant clones that are created with parentVMs or without parentVMs.

View Composer creates the linked-clone virtual machines based on the parameters that you specify when you create the farm. The virtual machines are cloned from a single parent virtual machine and are linked to the parent in a mechanism that reduces the amount of storage that the virtual machines require.

When you create an application pool or an RDS desktop pool, you must specify one and only one farm. The RDS hosts in a farm can host RDS desktops, applications, or both. A farm can support at most one RDS desktop pool, but it can support multiple application pools. A farm can support both types of pools simultaneously.

Farms provide the following conveniences:

  • Load balancing

    By default, Horizon 7 balances the load of the RDS desktop sessions and the application sessions across all the RDS hosts in the farm. You can control the placement of new application sessions by writing and configuring load balancing scripts. For more information, see "Configuring Load Balancing for RDS Hosts" in the Horizon 7 Administration document.

  • Redundancy

    If one RDS host in a farm is offline, the other RDS hosts in the farm continue to provide applications and desktops to users.

  • Scalability

    A farm can have a variable number of RDS hosts. You can create farms with different numbers of RDS hosts to serve user groups of different sizes.

Farms have the following properties:

  • A Horizon 7 pod can have a maximum of 200 farms.
  • A farm can have a maximum of 500 RDS hosts.
  • The RDS hosts in a farm can run any supported version of Windows Server. See "System Requirements for Guest Operating Systems" in the Horizon 7 Installation document.
  • Automated linked-clone farms support the View Composer recompose operation but do not support the refresh or rebalance operation. You can recompose an automated farm but not a subset of the RDS hosts in the farm.
Important: Microsoft recommends that you configure roaming profiles for users separately for each farm. The profiles should not be shared between farms or users' physical desktops since profile corruption and data loss may occur if a user is simultaneously logged in to two machines that load the same profile.