System requirements
Replica servers must match the master server in the following:
- release version - see Upgrade the server
- Unicode setting and encoding, such as UTF-8
- file system case-sensitivity
-
permitted characters - for example:
- macOS file names cannot contain a colon (:)
- Windows NTFS excludes / ? < > \ : * | " and a full path is limited to 260 characters
-
time zone setting
- On Windows, the time zone setting is system-wide
- On UNIX, the time zone setting is controlled by the
TZ
environment variable at the time the replica server is started
-
A current checkpoint and versioned files from the master server are required for initial seeding of the replica server.
Replica servers must be at the same release level as the master server, or at a release later than the master server.
A given feature only works if both the master and the replica are at a release level that supports the feature.
Additionally,
- p4 pull (when replicating metadata) does not read
compressed journals.
- The master server must not compress journals until the replica server has fetched all journal records from older journals.
- Only one metadata-updating
p4 pull
thread can be active at one time.
- The replica server does not need a duplicate license file, however, if the replica serves as a failover server for the master, a duplicate license file is recommended. Fill out the form for a Helix Core Duplicate Server Request.
See the details for the lbr.replication configurable.
Enabling SSL support
To encrypt the connection between a replica server and its end users,
the replica must have its own valid private key and certificate pair in
the directory specified by its P4SSLDIR
environment
variable. Certificate and key generation and management for replica
servers works the same as it does for the (master) server. See Enable SSL support. The users'
Helix Core Server
applications must be configured to trust the fingerprint of the replica
server.
To encrypt the connection between a replica server and its master, the
replica must be configured so as to trust the fingerprint of the master
server. That is, the user that runs the replica p4d
(typically a service user) must create a P4TRUST
file (using
p4 trust
) that recognizes the fingerprint of the
master Helix Core Server.
The P4TRUST
variable specifies the path to the SSL trust
file. You must set this environment variable in the following cases:
- for a replica that needs to connect to an SSL-enabled master server, or
- for an Edge Server that needs to connect to an SSL-enabled Commit Server.