11

Load balancing Nexus is currently not supported by Sonatype, except by putting a Nexus instance in front of two with smart-proxying enabled or via a newer feature.

Still, I gave it a shot, by sharing the filesystem with GlusterFS for the /storage, and trying to enable stickyness in the Apache Load Balancer config and in Nexus config for the UI.

With the UI I am failing miserably, as it seems the Nexus container does not honor the properties for setting the cookie value; using the following configuration at the moment:

For the storage it seems to work, by limiting to GET and HEAD requests only, still have to try opening to POSTs. I was also unsure about the possible collateral effects of scheduled jobs, so all were disabled in the "secondary" node.

Has anybody achieved some level of trustworthy configuration for load-balancing nexus? The UI is not actually important to be load-balanced, I would be happy enough with the storage.

7

Sonatype's Nexus 3 Pro supports High Availability through a couple of mechanisms that are collectively known as Component Fabric:

  • Peer-to-peer Repository Managers means there is no one master, also known as a single point of failure. Packages are replicated between the nodes to ensure they are eventually consistent.
  • Storage Backends mean you can use high durability storage such as S3.
  • Dynamic Nodes enable auto-scaling support to increase capacity when demand is high and decrease it when demand is low to reduce costs.

It's not really in Sonatype's interests to support HA for the community project as it would cannibalize some of the enterprise customers from their paid product.

  • Thanks, we are using Nexus pro licensed indeed, but we are stuck on v 2.x for the foreseeable future unfortunately. – ᴳᵁᴵᴰᴼ Apr 10 '17 at 7:58
  • 1
    @ᴳᵁᴵᴰᴼ unfortunate indeed, any chance of setting up Nexus 3 as a mirror of Nexus 2? – Richard Slater Apr 10 '17 at 21:26
  • Is High Availability - Clustering (HA-C) in Nexus Repository Manager OSS as well ? – Nitul Dec 15 '17 at 12:05
  • Doesn't deploying Nexus on Kubernetes essentially enable high availability, or am I getting this wrong? – lostsoul29 May 25 '18 at 15:50
  • @lostsoul29 It depends on the storage you are using. If you use k8s in AWS your EBS volumes will end up in a Availability Zone X. If this all your nodes in that instance die, you won't be able to mount the volume. So no HA here… – Pascal Hofmann Nov 12 at 10:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.