Load balancer configuration

This guide is for Dash Enterprise Single Server only. Dash Enterprise Kubernetes (DEK) does not support manually-configured load balancers. DEK manages its own load balancer service as part of installation and this is not configurable.

This guide works for any type of load balancer (LB). This includes Classic Load Balancers (CLB), Elastic Load Balancers (ELB), Application Load Balancers (ALB), and Network Load Balancers (NLB).

Configuring an external load balancer is not necessary to run Dash Enterprise. Dash Enterprise Single Server provides SSL termination and network load balancing of Dash apps using its built-in NGINX and HAProxy services. It is not possible to Load Balance between multiple instances of Dash Enterprise Single Server and so adding an external Load Balancer will not improve performance of your Dash apps. However you may consider using an external Load Balancer to enable features like Web Application Firewall (WAF).

Initial consideration

If using Dash Enterprise Single Server behind a load balancer, the LB will need to be configured to pass requests to the server.

These instructions assume you are using a Load Balancer (LB) on Amazon Web Services. To configure a different type of load balancer, please consult the documentation for your load balancer.

Port setup

The following ports must be opened on the LB and the LB target instance:

  • 443 (HTTPS)

  • 80 (HTTP)

    • This port is optional, as all requests are made over HTTPS

    • Enabling port 80 will allow Dash Enterprise to automatically redirect requests made on HTTP to HTTPS

  • 8800 (Server Manager)

  • 3022 (SSH connections to Dash Enterprise)

    • You cannot use standard SSH port 22 for this unless you disable SSH on the server, which we do not recommend

Listener setup

Configure listeners on ports 443, 80, and 3022 to point to instance ports 443, 80, and 3022, respectively.

Domain (DNS) setup

The Dash Enterprise domain name needs to point to the LB DNS name assigned by AWS.

For example, if:

  • The Dash Enterprise domain name is dash.your-company.com

  • The DNS name of your LB assigned by AWS is test.us-east-1.elb.amazonaws.com

Then, you need to set a CNAME as follows: