Commit-edge deployment

Swarm can connect to a Helix Core Server configured to use the commit-edge architecture, which is a specific replication configuration that employs a commit server and one or more edge servers. This configuration distributes the compute, storage, and network requirements for improved performance and geographic distribution.

For more information on Helix Core Server's commit-edge architecture, see the Commit-edge chapter in the Helix Core Server Administrator Guide.

Tip

P4V users may have problems when P4V connects to an edge server and your commit and edge tickets are different. For more information on P4V authentication for commit-edge deployment, see P4V Authentication.

Swarm commit-edge configuration

This section describes what configuration changes need to be made to Swarm and the Helix Core Servers to run Swarm with a commit-edge deployment. Before you begin making changes ensure that your Helix Core Server commit-edge deployment is working correctly, and that Swarm has been installed and configured.

Configure Swarm for a commit-edge deployment:

  1. Configure Swarm to connect to the Helix Core Commit server, see Swarm configuration. This is called the Commit Server Swarm Instance.
  2. When Swarm is connected to the Commit Server Swarm Instance, the first worker detects this situation and sets a key in the Helix Core Server, P4.Swarm.CommitURL, to an auto-detected URL.

  3. Configure the Swarm triggers:
    1. Configure the Swarm triggers on all of the Commit and Edge servers, see Installing Triggers.
    2. Important
      • Save all of the Swarm trigger scripts in exactly the same place on each of the Commit and Edge servers. This is important because they all share the same trigger table.
      • You must install the trigger dependencies on all of the Commit and Edge servers, see Trigger dependencies.
    3. Configure SWARM_HOST in the swarm-trigger.conf file of all of the Commit and Edge servers to point to the Commit Server Swarm Instance, see Installing Triggers.
  4. Configure all of the Commit and Edge servers to point to the Commit Server Swarm Instance URL. This is done by setting the P4.Swarm.URL to the Commit Server Swarm Instance URL on each of the Commit and Edge servers, see Swarm integration properties in the Helix Core Server Administrator Guide.
  5. Your Swarm configuration is now complete but you must check that it is working correctly before using it in production, see Validate your Swarm installation.

P4V Authentication

When using P4V's Swarm integration in a commit-edge deployment, users may encounter authentication errors; such errors can result from incorrect configuration of login tickets in distributed environments. Essentially, the problem is that while P4V is connected to an edge server, Swarm is connected to the commit server, and the login tickets do not match.

If P4V users see the error Host requires authentication, the solution we recommend is to forward login requests to the commit server. This can be achieved by executing the following commands as a user with operator or super privileges in the Helix Core Server.

For example, the following p4 configure set commands run against the commit server set auth.id globally and enable login forwarding from the edge1 and replica1 servers:

p4 configure set auth.id=myAuthName
p4 configure set edge1#rpl.forward.login=1
p4 configure set replica1#rpl.forward.login=1

Replace myAuthName with the authentication identifier for your Helix Core Server.

For more information, see our Knowledge Base article Single Ticket Login in Distributed Environments, and the p4 serverid command in the Helix Core Command-Line (P4) Reference.