Repository Replication

JFrog Artifactory Documentation

Products
JFrog Artifactory
Content Type
User Guide
ft:sourceType
Paligo

Artifactory supports replication of repositories between two Artifactory instances to support development by different teams distributed over distant geographical sites. The benefits of replication are:

  • Ensuring developers all work with the same version of remote artifacts

  • Ensuring build artifacts are shared efficiently between the different development teams

  • Overcoming connectivity issues such as network latency and stability when accessing remote artifacts

  • Accessing specific versions of remote artifacts

Artifactory versions for replication

We strongly recommend performing replication between two servers running the same version of Artifactory. If one of the two servers has been upgraded to a newer version, replication can typically continue without issues, but it is recommended to upgrade the other server to the same version as soon as possible.

Warning

We do not recommend using Artifactory repository replication in conjunction with AWS S3 cross-region replication of your filestore. Such a configuration can cause synchronization issues.

Note

Learn more about how to tune Cron Replication for a large number of artifacts.

Two main methods of replication are supported:

  • Push replication

    Both scheduled and event-based push replication are supported, and multi-push replication is available with an Enterprise license

  • Pull replication

    Both scheduled and event-based pull replication are supported; event-based pull requires an Enterprise license.

Avoid Replication Loops ("Cyclic Replication")

A replication loop occurs ("Cyclic" or "Bi-directional" replication) when two instances of Artifactory running on different servers are replicating content from one to the other concurrently.

For example, "Server A" is configured to replicate its repositories to "Server B", while at the same time, "Server B" is configured to replicate its repositories to "Server A".

Or "Server A" replicates to "Server B" which replicates to "Server C" which replicates back to "Server A".

We strongly recommend avoiding cyclic replication since this can have disastrous effects on your system causing loss of data, or conversely, the exponential growth of disk-space usage.

ReplicationLoop.png