Remote Agents: Crossing Network Boundaries and Firewalls

Serena Release Automation supports remote agents cross-network deployments. As long as there is at least a low bandwidth WAN connection between the server and remote agents, the Serena Release Automation server can send work to agents located in other geographic locations. To aid performance and ease maintenance, Serena Release Automation uses agent relays to communicate with remote agents. An agent relay requires that only a single machine in the remote network contact the server. Other remote agents communicate with the server by using the agent relay. All agent-server communication from the remote network goes through the relay. Agent relays can be configured as CodeStation proxies in order to optimize the transfer of large objects.

The following, a simple artifact move, illustrates the mechanics of remote communications:

  1. A remote agent starts and establishes a connection to the agent relay via JMS, which, in turn, alerts the Serena Release Automation server via JMS that the remote agent is online.

  2. The server sends, say, an artifact download command to the relay via JMS, and the relay delivers the message to the remote agent (also via JMS).

  3. The server locates the artifacts, and then:

    1. Uploads the artifacts to the relay over HTTP(s), which begins streaming them directly to the agent over the server-relay HTTP(s) connection.

    2. Once the remote agent completes the work, it informs the server via JMS.

Crossing Network Boundaries

Crossing Network Boundaries

By default, agent relays open the connection to the Serena Release Automation server, but the direction can be reversed if your firewall requires it. Remote agents open connections to the agent relay.

In configurations with relay agents, agents local to the Serena Release Automation server continue to use direct communications.