Skip to main content

Requirements for High Availability

This section covers specific requirements for high-availability (HA) deployments for Nexus Repository. Review the following details before starting:

  • Requires a Nexus Repository Pro license

    High-availability (HA) deployments are only available for Nexus Repository Pro customers.

  • Requires technology outside of Nexus Repository scope

    Prepare to have in-house expertise in these technologies. E.g.; Load Balancer, Kubernetes, Helm Charts, Docker, Cloud Infrastructure, etc.

  • Requires significant infrastructure and maintenance costs

    Evaluate the total investment costs of your architecture to meet your expected traffic and business requirements.

  • Requires full testing before implementation in production

    Improper deployment to production may result in excessive downtime and data loss.

High Availability Requirements

  • Every node must meet the system requirements

    The system requirements including the CPU and memory requirements must be met for each node independently. Every node must be on the same version of Nexus Repository with the same configuration in their nexus.properties file.

    See Zero Downtime Upgrades to learn more.

  • Each node is on a separate server

    For fault-tolerant deployments, ensure each Nexus Repository instance is on a physical server. Have different servers for each node to limit the risk of a system failing.

  • Deploy to a single region or data center

    HA deployments are restricted to a single data center. Deploying across-region leads to significant database latency and data loss. Nexus Repository may be deployed in a federated model to support other regions.

    See the Deployment Pattern Library

  • Review the performance metrics when sizing deployments

    Performance Using AWS

    Performance Using Azure

Technology Requirements

The following external technologies are required for HA deployments:

  • A load balancer is required to distribute traffic

    Examples include: HAProxy, NGINX, Apache HTTP, AWS ELB, etc

  • Blob stores accessible to active nodes

    See Migrating to Shared Blob Storage for details.

  • An external PostgreSQL database accessible to active nodes

    A low-latency and high-performance database server is critical for HA deployments.

Supported Infrastructure and Limitations

The following table outlines the supported infrastructure for HA deployments. Our support team's expertise is in AWS technologies. Other cloud infrastructure is supported but may fall outside of where our support team can provide guidance.

You must retain in-house expertise for the technologies you are using for your deployment.

Hardware/Software Components

Specific Technology and Version

Nexus Repository

Nexus Repository Pro 3.50.0+

Java Runtime Environment

See the Java Compatibility Matrix

Cloud Providers

AWS, Azure, and Google Cloud are supported.

Host Operating System

Operating systems that run your Java version.

Host Servers

AWS EC2, Azure VM, Bare metal servers, Hyper-V virtual machines, VMWare virtual machines

Databases

AWS Aurora PostgreSQL 13.3+

AWS RDS PostgreSQL 13.3+

Azure Database for PostgreSQL Flexible Server using PostgreSQL 13+

Google Cloud SQL for PostgreSQL 14.13+

Self-managed PostgreSQL 13+

Per-Node Local Storage

(sonatype-work directory)

AWS EBS, AWS EFS, Azure Storage, Google Cloud Filestore, NFS v4

Blob Stores

AWS S3, Azure Blob Storage, Google Cloud Storage, NFS v4

Orchestration Platforms

AWS EKS v1.23+

Azure AKS 1.25.5

Google Kubernetes Engine 1.30+

Kubernetes (on-prem deployments)

Load Balancers

AWS ALB

Azure Load Balancer

Nginx/HTTPD (latest version)

CloudFormation and Terraform Scripts

Not available

Feature Differences Between Databases

While we have made every effort to keep Nexus Repository's external behavior consistent while moving away from OrientDB, differences include some unsupported features and formats.