Cloud customer?
Start for Free >
Upgrade in MyJFrog >
What's New in Cloud >





Overview

You can configure JFrog services for High Availability with a cluster of two or more active/active nodes on the same Local Area Network (LAN). For both high availability and resiliency, an HA cluster with a minimum of three nodes provides you true HA. If one node goes down due to a system failure or is even taken down for hardware maintenance, the other two nodes still provide high availability and load balancing. A three-node cluster is critical to provide no-downtime upgrade as well. 

Setting Up High Availability on Insight

High Availability configuration for Insight requires a cluster of 3 or more active/active nodes on the same LAN.

An HA configuration provides the following benefits:

Optimal Resilience

Maximize your uptime. In case one or more nodes is unavailable or down for upgrade, the load is shared between the remaining nodes, ensuring optimal resilience and uptime.

Improved Performance with Load Balancing

Scale your environment with as many nodes as you need. All cluster nodes in an HA configuration are synchronized, and jointly share and balance the workload between them. When a node becomes unavailable, the cluster will automatically spread the workload across the other remaining node(s).

Managed Heavy Loads

Accommodate larger load bursts with no compromise to performance. With horizontal server scalability, you can easily increase your capacity to meet any load requirements as your organization grows.

Always being Synchronized

Seamlessly and instantly synchronize data, configuration, cached objects, and scheduled job changes across all cluster nodes.

JFrog Subscription Levels

SELF-HOSTED
ENTERPRISE X 
ENTERPRISE+
Page Contents


HA Architecture

The HA architecture consists of 3 building blocks: load balancer,  application(s) and common resources.

Getting Help

JFrog support team is available to help you configure the JFrog service's cluster nodes. It is up to your organization's IT staff to configure your load balancer, database, and object store. 

Load Balancer

The load balancer is the entry point to your JFrog Platform Deployment and optimally distributes requests to the nodes in your system. The load balancer is only required for the Artifactory service, which is then responsible to route and balance between the nodes of the other services. For additional information refer to Configuring Load Balancer.

Application

A JFrog service (or application) running in HA mode represents a cluster of two or more nodes that share common resources.

  • You can run all JFrog services (Artifactory, Xray, Insight, Mission Control, Distribution, and Pipelines) in HA mode, though only Artifactory requires a load balancer.
  • Each cluster node runs all microservices, described in the System Architecture

Common Resources

Each service requires a set of common resources. The resources vary per service but typically include at least one database.

Local Area Network

To ensure good performance, all the components of your HA installation must be installed on the same high-speed LAN (in theory, HA could work over a Wide Area Network (WAN), however network latency makes it impractical to achieve the performance required for high availability systems, and is not recommended).


Cloud-Native High Availability

From Artifactory 7.17.4, all nodes in the high availability cluster can perform tasks such as replication, garbage collection, backups, exporting, and importing. Every node in the cluster can serve any of the mentioned tasks and if any node goes down, the different nodes in the cluster will be able to perform these tasks instead. By default, when adding a new node (member) to the cluster, it will be able to perform cluster-wide tasks without user intervention.

The "taskAffinity": "any" attribute is set by default, on all the nodes in the cluster, when installing an Artifactory version 7.17.4 and above and is configured under the Nodes section in the Artifactory Configuration YAML. To remove this functionality from a node, set  "taskAffinity": "none".

Backward Compatibility when Upgrading HA Environments

To maintain backward compatibility, when upgrading to Artifactory 7.17.4 from a previous version, the primary: true attribute is maintained.
To use this new functionality, add the taskAffinity: any to each of the nodes in the cluster in the Artifactory System YAML.



Installing and Upgrading to HA

For additional information refer to the Installation and upgrade sections:

  • No labels
Copyright © 2022 JFrog Ltd.