Artifactory 3.4
Skip to end of metadata
Go to start of metadata
Table of Contents

Overview

The Replication Add-on provides a method to synchronize content and properties from one repository to another in a remote Artifactory Pro instance.

Synchronization uses a checksum-based algorithm to ensure only the required deltas are ever transferred over the wire.

Two types of replication are supported:

  • Push Replication
  • Pull Replication

Push Replication

Where a local repository can actively push content to another local repository on a remote Artifactory Pro.

This is ideal for situations where you can only make an outgoing connection to the remote server, such as when pushing artifacts to a cloud instance.

Pull replication runs as a scheduled task and/or continuously based on storage events. 

Evented Push Replication

In addition to scheduled replication, push replication also supports continuous "event-based replication".

When enabled, storage events (deploy, delete, move and copy) are almost immediately applied to the remote instance, making sure the remote content is synced with the original content in near real-time.

Running regular scheduled replication on top of event-based replication, guarantees full copy consistency even in cases of server downtimes and network partitions.

Pull Replication

Where a remote repository can actively pull content from another repository (local, remote or virtual) on a remote Artifactory Pro

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.

Artifactory versions for replication

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

Avoid "cyclic" replication

"Cyclic" or "Bi-directional" replication is a situation in which 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".

We strongly recommend avoiding cyclic replication since this can cause both loss of data, or conversely, exponential growth of disk-space usage.

Replication Scheduling and Configuration

Replication is configured via the user interface as a scheduled task on local and remote repositories for push and pull, respectively.

To configure a replication task, enter the configuration of the local\remote repository you wish to replicate.  Go to the Admin tab and then Configuration -> Repositories and choose a repository.  The Edit Local Repository window opens and select the Replication tab and select the required repository.

The Edit Local Repository window is displayed.

Pull replication is also exposed via the Artifactory REST API, with support for REST-enabled push replication coming soon.

Pull and push replications are smart. Only diffs are synched and the replication plan is checksum aware.

All replication messages are directed to Artifactory's standard log file (artifactory.log).

Push Replication Local Repository Configuration

Field NameDescription
EnabledMark this checkbox to enable continuous replication to the remote instance based on storage events
URLThe URL of the target local repository on a remote Artifactory server.
Cron ExpressionDefines the replication task schedule using the a valid cron expression.
Next Replication TimeRelies on the information in the Cron Expression field.
Enable Event ReplicationMark this checkbox to replicate additions and modifications as they occur.
UsernameThe HTTP authentication username.
PasswordThe HTTP authentication password.
ProxyA proxy configuration to use when communicating with the remote instance.
Socket TimeoutThe network timeout in milliseconds to use for remote operations.
Sync DeletesChecks if items that were deleted remotely should be deleted locally too (also applies to properties metadata).
Sync PropertiesChecks if the task should synchronize the properties of synched items.
Path Prefix (optional)A subpath to replicate within the repository.


Pull Replication Remote Repository Configuration

 

Regarding credentials of the remote repository configuration

The remote repository's file listing for replication is retrieved using the repository's credentials defined under the repository's Advanced configuration section.

The remote files retrieved depend on the effective permissions of the configured user on the remote repository (on the other Artifactory instance).

Watch the Screencast

To see the Replication in action you can watch the short demo screencast below.

  • No labels