Helix Core is now P4. Product user interfaces will be updated soon. Learn more >>

P4 Server Administration Documentation | 2025.2

# Create commit and edge server configurations

1. On the commit server, create the commit server specification:

       p4 server -c commit-server chicago_commit

   and modify the DistributedConfig section so that it contains:

   Copy

       DistributedConfig:
           serviceUser=svc_chicago_commit
           monitor=2
           journalPrefix=/chicago/backup/p4d_backup
           P4TICKETS=/chicago/p4root/.p4tickets
           P4LOG=/chicago/logs/chicago_commit.log

   with tab indentation,

   where:

   - serviceUser is the name of the service user account that will be used for communication with edge servers
   - monitor=2 enables monitoring of active commands and idle connections on this commit server with p4 monitor show

   - journalPrefix is the prefix path used for the location and name of commit server checkpoints and rotated journals. When replicating metadata, edge servers periodically need to locate and read rotated commit server journals. The value of journalPrefix identifies the name and location of those journals.

   - P4TICKETS contains the path to the tickets file used by the commit server serviceUser when communicating with edge servers.
     If edge servers use SSL/TLS, configure P4TRUST for the commit server by adding:

     P4TRUST=/chicago/p4root/.p4trust

     to the DistributedConfig to define a trust file location used by the commit server serviceUser when communicating with edge servers.

   - P4LOG contains the path to the commit server's log file

   When you create a server spec with the `Services` field set to `commit-server`, some database upgrades occur. For details, see P4 Schema Documentation on Upgrades. In addition, any open files with the `+l` exclusive open file type modifier cause a `db.excl` record to be created along with an associated journal record. A large number of such records might affect replication performance.
2. On the commit server, set the `serverID` of the commit server:

       p4 serverid chicago_commit

3. On the commit server, set the security level to require ticket-based authentication in your multi-server environment:

       p4 configure set security=4

   Higher security levels provide additional security checks in multi-server environments. See Server security levels.

4. On the commit server, create the edge server specification with

       p4 server -c edge-server tokyo_edge

   and set the ExternalAddress to the P4PORT that will be used by the edge server. (If the edge server uses ssl, the port must include the ssl prefix.)

5. Also, in that edge server specification, modify the DistributedConfig section to contain:

   Copy

       DistributedConfig:
           db.replication=readonly
           lbr.replication=readonly
           rpl.compress=4
           startup.1=pull -i 1
           startup.2=pull -u -i 1
           startup.3=pull -u -i 1
           P4TARGET=chicago.perforce.com:1666
           serviceUser=svc_tokyo_edge
           monitor=1
           journalPrefix=/tokyo/backup/p4d_backup
           P4TICKETS=/tokyo/p4root/.p4tickets
           P4LOG=/tokyo/logs/tokyo_edge.log

where

- The db.replication=readonly and lbr.replication=readonly values indicate the edge server will replicate metadata and archive data from the commit server
- rpl.compress=4 enables compression of journal data sent by the commit server to this edge server and is recommended if the edge server is remote to the commit server
  - For edge servers that are local to the commit server, compression can be disabled by removing the rpl.compress=4 from the DistributedConfig before saving
- The startup.N values define one metadata (pull -i 1) and two archive (pull -u -i 1) pull threads that the edge server will run on startup to facilitate metadata and archive replication
- P4TARGET specifies the P4PORT (host:port) of the commit server this edge server will replicate from

- serviceUser is the name of the service user account that will be used for communication with commit server

- monitor=1 enables monitoring of active commands on this edge server with p4 monitor show

- journalPrefix is the prefix path used for the location and name of edge server checkpoints and rotated journals

- P4TICKETS contains the path to the tickets file used by the edge server serviceUser when communicating with commit server.
  If the commit server uses SSL/TLS, configure P4TRUST for the edge server by adding:

      P4TRUST=/tokyo/p4root/.p4trust

  to the DistributedConfig to define a trust file location used by the edge server serviceUser when communicating with the commit server.

- P4LOG contains the path to the server log file used by the edge server.

## Next step

Create and start the edge servers

Your search for returned results