Federated Topology
Federated repositories are easy to set up and support bi-directional synchronisation of local repositories without the need to set up complex topologies. These types of repositories are based on bidirectional replication, whereby artifact metadata is replicated constantly separately from the binary content.
As displayed in the following example, setting up mirroring across three sites using the traditional Replication feature, would have required setting up quite a complex mesh topology consisting of setting up multiple virtual repositories with a local repository and 3 remote repositories, whereas Federated repositories inherently support mirroring removing the need to create the mesh topology.
Multi-Version Support
Artifactory version 7.49.3 and above includes multi-version support, which enables the members of a Federation to run different versions of Artifactory, even if the version at one site includes configuration features and values that are not supported on the versions running at other sites. Thanks to multi-version support, future upgrades after 7.49.3 can be performed on one site at a time, eliminating the need for simultaneous upgrades across all locations.
Whenever an instance with a new Artifactory version is introduced to the Federation, the configurations of the other members are retrieved and a negotiation process checks for new and upgraded features that are not supported on the older versions. If there are new features that older versions do not support, the new feature is disabled. For upgraded features, a default value is chosen that is supported on all member versions.
It is a prerequisite of the multi-version support feature to upgrade all Federated repository members to Artifactory 7.49.3. After this has been done, multi-version support is enabled for all versions going forward.
Get Started
To start working with Federated repositories, you will first need to set up cross-instance authentication (Circle-of-Trust) between the JPDs to allow the Platform Administrator to perform a set of CRUD (Create, Remove, Update and Delete) actions on the repositories based on their predefined set of permissions. All the actions performed on one of the Federated repositories will automatically be synchronized and reflected on all of the Federated members, including not just the repository content, but also certain configuration changes. For example, if Federated repository A in "JPD A" and Federated repository B in "JPD B" are members of the same Federation, deploying a file to Federated Repository A in "JPD A", will trigger a copy the file action to the Federated Repository B in "JPD B". Similarly, deploying a file to Federated Repository B in "JPD B", will trigger a copy the file action to the Federated Repository A in "JPD A". The configuration changes are also synchronized based on the latest update (e.g. latest update to the configuration is propagated to all members of Federation).
To start creating your first Federated repository, click here.