Have a question? Want to report an issue? Contact JFrog support

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Section
Column
width75%

Overview

Through the Replication Add-on in Artifactory Pro, Artifactory allows 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
  • Overcome connectivity issues such as network latency and stability when accessing remote artifacts
  • Accessing specific versions of remote artifacts
Note
titleArtifactory versions for replication

We strongly recommend that replication is only performed between servers running the same version of Artifactory Pro.

 

Two main methods of replication are supported:

Push Replication

Push replication is used to synchronize Local Repositories, and is implemented by the Artifactory server on the near end invoking a synchronization of artifacts to the far end.

There are two ways to invoke push replication:

  • Scheduled push: Pushes are scheduled asynchronously at regular intervals
  • Event-based push: Pushes occur in nearly in real-time since each create, copy, move or delete of an artifact is immediately propagated to the far end.

Advantages

  • It is fast because it is asynchronous.
  • It minimizes the time that repositories are not synchronized.
  • It reduces traffic on the master node in case of a replication chain ("Server A" replicates to "Server B", "Server B" then replicates to "Server C" etc.).
Section
Column
Warning
titleAvoid Replication Loops ("Cyclic Replication")

A replication loop occurs ("Cyclic" or "Bi-directional" replication) occurs 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, exponential growth of disk-space usage.

Column

Replication loop to be strictly avoided

Tip
titleWhen to Use Push Replication

Event-based push replication is recommended when it is important for the repository at the far end to be updated in near-real-time for any change (create, copy, move or delete of an artifact) in the repository at the near end.

In addition, we recommend running regular scheduled replication on top of event-based replication to guarantee full copy consistency even in cases of server downtime and network partitions.

Multi-push Replication

Image Added

With an Enterprise license, Artifactory supports multi-push replication allowing you to replicate a local repository from a single source to multiple enterprise target sites simultaneously.

Pull Replication

Pull replication is invoked by a remote repository, and runs according to a defined schedule to synchronize repositories (local, remote or virtual) at regular intervals.

This provides a convenient way to proactively populate a remote cache, and is very useful when waiting for new artifacts to arrive on demand (when first requested) is not desirable due to network latency.

Pull replication runs as a scheduled task.

Advantages

  • Many target servers can pull from the same source server efficiently implementing a one-to-many replication.
  • It is safer since each package only has one "hop".
  • It reduces traffic on target servers since they do not have to pass on artifacts in a replication chain.
Tip
titleWhen and when not to Use Pull Replication

 Pull replication is recommended in the following cases:

  • When you need to replicate a repository to many targets.
  • When your source repository is located behind a proxy that prevents push replication (e.g. replicating a repository hosted on Artifactory SaaS to a local repository at your site)

Pull replication cannot be used to replicate a remote resource that is not an Artifactory repository. Artifacts from third party repositories can only be cached on-demand in the normal cache and proxy behavior of a remote repository.

Column
Info
iconfalse
titlePage Contents

Table of Contents
maxLevel4
minLevel2

...