Skip to content

NGINX load balancer

Deploying and configuring NGINX as an environment-level load balancer on Stack Harbor PaaS — features, default behaviours, HTTP/3 support, and how to add it to a topology.

NGINX is the default environment-level load balancer on Stack Harbor PaaS. It is an open-source TCP/UDP, HTTP, and reverse proxy server, and it covers most balancing needs out of the box: Layer 7 distribution, caching, reverse proxying, and TLS termination.

The NGINX balancer stack on the platform is HTTP/3-ready by default. To take a request over HTTP/3 end-to-end, you also need to attach a public IP to the balancer so the request bypasses the Shared Load Balancer.

What NGINX gives you on the platform

  • generic TCP and UDP proxying
  • static file serving and directory auto-indexing
  • accelerated reverse proxying with caching
  • 3xx-5xx redirection rules
  • TLS termination with SNI support
  • access control (auth, IP rules), fault tolerance over an upstream pool
  • HTTP/3 support (since 1.16.1) when paired with a public IP

For most applications the cost/benefit of NGINX as the balancer is the simplest call to make — it is scalable, secure, well documented, and resource-efficient.

Adding NGINX to an environment

You can add NGINX as part of the topology when creating an environment, or layer it onto an existing topology:

  1. In the dashboard, open the topology wizard for a new environment (New Environment) or open the topology view of an existing one.
  2. Under the Balancing section, pick NGINX.
  3. Set the balancer’s resources: cloudlets / scaling limits, disk space, public IP if you want one.
  4. Add the rest of the environment — application servers, databases, caches.
  5. Click Create (or Apply when editing an existing environment).

When the balancer is created alongside one or more application servers, the platform wires the upstream block for you. Requests to the balancer are distributed across the application tier with no manual configuration.

Adding NGINX in front of a single application server

You do not need a multi-node application tier to benefit from NGINX. Add a single NGINX balancer in front of a single application server when you want:

  • TLS termination on a dedicated node (clean certificate handling)
  • IP-based access control or HTTP-level authentication at the edge
  • caching of static or cacheable dynamic responses
  • a single endpoint you can later scale behind without changing the URL clients use

Pick the application server’s Balancing block in the topology wizard and select NGINX. The platform sets up the upstream pointing at the single backend; when you scale the tier later, the new replicas join the pool automatically.

What you do next

Once the balancer is up, the operational reference for it is the NGINX balancer configuration doc — file layout, where to edit, what gets overwritten on platform updates.

For locking the balancer down with authentication, IP rules, or both, see Basic security with the NGINX balancer.

See also