Skip to main content

Official Support Articles

Search or browse our knowledge base to find answers to your questions ranging from account questions to troubleshooting error messages. The content is curated and updated by our global Support team

Announcements
Qlik Cloud Maintenance is scheduled between March 27-30. Visit Qlik Cloud Status page for more details.

Network Load Balancer (NLB) Requirements for Qlik Sense Enterprise April 2018 and later

cancel
Showing results for 
Search instead for 
Did you mean: 
Damien_Villaret
Support
Support

Network Load Balancer (NLB) Requirements for Qlik Sense Enterprise April 2018 and later

Qlik Sense Enterprise does not include load balancing support for the web (presentation tier). Network Load Balancer (NLB) device must be acquired and implemented if resilience is needed at this layer. This article details the basic requirements for the NLB to successfully work with Qlik Sense Enterprise.


This is not a configuration guide. 


Environments:

  • Qlik Sense April 2018 and later

Qlik Sense Hub (Hub) and Qlik Sense Management Console (QMC) are accessed through a web browser on the client-side towards a Qlik Sense Proxy (QPS). In a multi-node environment, this means that each node is addressed with its unique address (URL). This potentially introduces a need to do DNS redirects or share new URLs to users, when nodes are taken down for maintenance or when new nodes are introduced.

A network load balancer (NLB) can be introduced in the Qlik Sense deployment to enable a single point of contact for the user client and to ensure High-Availability to end-users. The NLB also adds a single point of administration of where users should currently be routed.

qlik sense with nlb chart.png

The NLB can be can either be software or hardware-based and must fulfill Qlik Sense load balancing requirements as listed below.

Ports
All client-side communication to Qlik Sense Enterprise is done towards the Qlik Sense Proxy Service (QPS). NLB must have the ports required by QPS open to all communications with the QPS instances that are included in the load balancing. Default ports are as described in the "Ports used between user web browsers and proxies" section of Qlik Help - Ports Overview

WebSocket protocol 

Qlik Sense requires WebSocket (WSS) communication for data transfer. Once HTTP/HTTPS communication has been initiated by the client, a WebSocket upgrade request is performed and maintained for the duration of the session. All networking solutions such as NLB, proxy, reverse proxies, and Enterprise Mobility Management (EMM) solutions between the client and Qlik Sense server must support and allow WebSocket traffic.

Qlik Sense client utilizes one or more concurrent WSS connections when user is accessing a Qlik Sense app. The NLB must allow multiple persistent WSS connections between the client browser and Qlik Sense server. 

Sticky/Persistent Session

Qlik Sense requires that an ongoing user session is routed and maintained consistently to the same QPS. Methods for doing this vary between NLB solutions – refer to the NLB documentation for information on the options available. Commonly this feature is referred to as "Sticky Sessions" or "Session Persistence".

Session Timeout

The web (HTTP) session timeout (e.g. QPS or AccessPoint) should be configured the same or longer in NLB than in Qlik Sense. Note, this is for the web session not for the Qlik Sense Engine session.

It is important that both HTTP and WebSocket (WSS) sessions timeouts are the same in network devices, to enable Qlik Sense to maintain a persistent WSS session throughout the HTTP session life. If WSS timeout can not be extended to the same length as HTTP timeout, please consider Enabling TCP Keep Alive Functionality In Qlik Sense in Qlik Sense. 

Troubleshooting

For validation and troubleshooting of NLB configuration, consider the following configuration order:

- Define Qlik Sense virtual proxy that allows anonymous access only
- Confirm WebSocket connectivity:

- Configure NLB to only utilize one Qlik Sense node
- Configure NLB to access anonymous virtual proxy
- Validate connection and access by opening Qlik Sense Websocket Connectivity Tester through NLB 
- Reconfigure NLB to access desired virtual proxy
- Validate authentication working by access Qlik Sense Hub through NLB
- Reconfigure NLB to include multiple Qlik Sense nodes in load balancing
- Validate load balancing by opening multiple concurrent user session

Comments
peter_galimutti
Contributor
Contributor

Hi, Do we need NLB for Engine, for example, I just want proxy on the central node and and and extra engine on a dedicated node. How should I configure in this case?

Sonja_Bauernfeind
Digital Support
Digital Support

Hello @peter_galimutti 

This article shows examples of a Network Load Balancer. These do not interact with the engines, but your Qlik Sense proxies.

The Qlik Sense Proxies will load balance to their engines (depending on how many you have connected) without the need of any third-party load balancers.

See Adding load balancing.

All the best,
Sonja 

Version history
Last update:
‎2022-03-29 08:05 PM
Updated by: