Skip to main content

Size M - Sonatype Nexus Repository - AWS Cloud-Native Reference Architecture

This Sonatype Nexus Repository size medium reference architecture describes the minimum requirements for deploying a high-availability Nexus Repository cluster in AWS using cloud-native services. It has been validated to support a baseline request load of 4,000 requests per second (240,000 requests per minute) with spikes of 6,000–8,000 requests per second without failing.

This architecture represents the entry-level high-availability deployment footprint for Nexus Repository and is suitable for medium teams operating CI/CD pipelines and mid-sized development workflows. It introduces a clustered repository architecture with multiple repository nodes, a highly available PostgreSQL database, and shared object storage to provide improved scalability, reliability, and operational resilience.

The architecture distributes repository traffic across multiple nodes and removes single points of failure at both the application and database layers.

Infrastructure Specifications

This Nexus Repository reference architecture defines a clustered Nexus Repository deployment with shared infrastructure services. The architecture includes the following layers:

  • Compute Layer – Nexus Repository clustered application runtime

  • Database Layer – Highly available PostgreSQL database

  • Storage Layer – Shared object storage for blob data

  • Network Layer – Load balancing and cluster connectivity

Diagram of a Sonatype Nexus Repository AWS reference architecture for a size M deployment supporting 4,000 requests per second. Dev and CI/CD tools connect through an Application Load Balancer to a Nexus Repository cluster running on three EC2 instances (

Compute Layer (Nexus Repository)

The compute layer comprises the Nexus Repository application cluster and processes repository requests across multiple nodes.

This layer meets the following specifications:

Three Nexus Repository nodes:

  • 8 vCPU per node

  • 32 GiB RAM per node

Cluster capacity:

  • 24 total vCPU

  • 96 GiB total RAM across the cluster

JVM configuration (per node):

  • Xms=16G

  • Xmx=16G

  • MaxDirectMemorySize=8G

Example AWS instance types:

  • m8g.2xlarge

  • m7g.2xlarge

Network throughput:

  • ≥15 Gbps per node

Each node participates in the Nexus Repository cluster and connects to the shared database and blob storage services. Local storage is used only for operational data and temporary files.

Recommended local storage configuration per node:

  • Local NVMe SSD

  • Approximately 500 GB

  • Minimum 3000 IOPS

Database Layer (PostgreSQL HA)

This architecture uses a highly available PostgreSQL database cluster. This configuration removes the database as a single point of failure and provides automatic failover capability.

This layer meets the following specifications:

PostgreSQL high-availability deployment

  • One primary writer node

  • One reader node for failover

Example AWS deployment:

  • AWS Aurora PostgreSQL

  • Size: db.r8g.2xlarge

  • 8 vCPU

  • 64 GiB RAM

Storage Layer (Shared Blob Storage)

The storage layer for this architecture must meet the following requirements:

  • Object storage must be accessible to all repository instances

  • Shared storage is required to ensure all instances can access the same artifact data

As a best practice, you should also leverage the pre-signed URL feature so that artifact downloads are served directly from S3 rather than passing through the Nexus Repository node.

Network and Security

This architecture requires an Application Load Balancer (ALB) to distribute repository traffic across the cluster nodes.

Apply standard network security practices, including the following:

  • Restrict inbound access to the repository service ports

  • Secure administrative access to the host instance

  • Isolate repository infrastructure within a controlled network environment

Limitations

  • This architecture is designed for a single-region deployment and does not provide multi-region failover.

  • You must enable rolling upgrades on each Nexus Repository node in order to upgrade your Nexus Repository version without downtime.

Deploying this Architecture

You can quickly deploy this reference architecture using Sonatype's Nexus Repository Terraform configuration for an AWS deployments. This automates the creation and configuration of all required AWS resources, including networking, compute, storage, and security components.

For full deployment details, see the README that accompanies the provided Terraform.