> For the complete documentation index, see [llms.txt](https://docs.parallels.com/landing/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.parallels.com/landing/ras-admin-guide/v19-en-us/parallels-ras-19-administrators-guide/virtual-desktop-infrastructure-vdi/manage-vdi/manage-providers-vdi/using-a-provider-in-multiple-farms.md).

# Using a Provider in multiple farms

This topic describes how to use the same Provider in multiple RAS Farms simultaneously. To better understand the problem and the solution, consider the following hypothetical example:

* Let's say we have a hypervisor with two available virtual machines.
* We also have two Farms (1 and 2).
* Our intention is to use the first host to host resources in Farm 1 and the other to be a template in Farm 2. Both hosts will run simultaneously on the hypervisor, but each one will be available in its respective Farm only.

The problem is, RAS Guest Agent can normally communicate with one RAS Provider Agent, but since each Farm has its own RAS Provider Agent, this will not work out of the box. The solution is to make the RAS Guest Agent running in a host to be aware of only one specific RAS Provider Agent with the ability to change the assignment as needed.

The assignment is done via Windows registry. All hosts belonging to VDI pools and host clones created from a template need to have a new String value `2XVDIAgent` specifying the RAS Provider Agent name or address. To add the value:

1. Log in to Windows running in the virtual machine, open the registry editor (regedit) and locate the following keys:
   * 32-bit systems: `HLKM\Software\Parallels\GuestAgent`
   * 64-bit systems: `HLKM\Software\WOW6432Node\Parallels\GuestAgent`
2. Add a String value named `2XVDIAgent`. The value data should be specified as follows:
   * If a dedicated RAS Provider Agent is used, the value must be set to the FQDN or IP address of the server where the agent is installed.
   * If the built-in RAS Provider Agent is used with manual agent selection, the value must be set to the FQDN or IP address of the RAS Connection Broker.
   * If the built-in RAS Provider Agent is used and the agent is selected automatically (high availability), the string must contain FQDNs or IP addresses of all RAS Connection Brokers separated by a semicolon (i.e. \<PA1 address>;\<PA2 address>;\<PA3 address>).

Note that you can include names or IP addresses of multiple Connection Brokers for the manual agent selection scenario as well (the second bullet in the list above). This way you will not need to change the value every time you switch the preferred Connection Broker for a Provider.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.parallels.com/landing/ras-admin-guide/v19-en-us/parallels-ras-19-administrators-guide/virtual-desktop-infrastructure-vdi/manage-vdi/manage-providers-vdi/using-a-provider-in-multiple-farms.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `build a script that syncs our docs to a CMS` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
