Skip to main content

Qlik Sense Documents

Qlik Sense documentation and resources.

Best Practices of Qlik Sense Multi-Node Setup, Load Balancing & Maintenance(Let's Discuss Here)

cancel
Showing results for 
Search instead for 
Did you mean: 
rohitk1609
Master
Master

Best Practices of Qlik Sense Multi-Node Setup, Load Balancing & Maintenance(Let's Discuss Here)

Attachments

Hello Everyone,

First of all, thanks for reading! I found it is amazing to connect myself to people around the world and communicate with my writings.

This page is indented to discuss best practices for  Multi-Node Setup & Load Balancing primarily, You may drop your use case or problem in comment, we will provide you best possible solution instantly.

Below content guide you to set up Multi-Node Qlik Setup & Load Balancing. It will help you to know Qlik technical terms, ask question more precious way which will help usor anyoe to provide solution more accurately.

Business intelligence is an agile process, gradually BI solution changes and updates. Enterprise grows so are data and end users.

When data grows and business logic gets complex, we need more resources to calculate the result and serve to users. Afterwards, Single Node (small) site performance decreases with time which could lay down the credibility and quality of BI solution.

Multi node site is  Qlik site(could have multiple Qlik servers ) where load is getting managed between more than one system and could have more than one  Fai-lover Candidate which takes charge in absence of central node automatically.

Note: we can have multiple fail-over candidates in one site, we call it passive central.

There are certain parameter which help you to take decision whether we should move to multi node site or remain on single node.

https://help.qlik.com/en-US/sense/June2018/Subsystems/PlanningQlikSenseDeployments/Content/Deploymen...

So below content is for such users who have made mind to upgrade their Qlik site to multi node.

Few naming conventions we will follow in below content:

  1. Consumer node: which must has proxy service enable
  2. Scheduler node: which has scheduler and engine services are enabled
  3. Central: which is controlling whole Qlik site.
  4. Failover Candidate(Passive central)
  5. Resources: RAM and Cores(virtual cores)

Since June 2017 , installation setup has shared persistence way only where Apps and RepoDB data stay at persistence layer and both are shared with other nodes (rim or child).

Now why do we need to share Apps and Repository data with child or rim nodes?

Answer: to manage load in simple

Next Question: what exactly we share to balance the load practically?

Answer: Resources in Qlik site.

Next Question: what will be achieved if we share the resources?

Answer: Reduce the resource consumption while end users are accessing apps from one node i.e. central to consumer node (proxy service is must) and reduce the resource consumption and distribute it to scheduler node (scheduler and engine service is must) while any app reloads.

There could be many scenario how you would design your multi node site:

  1. You want one central and one consumer and one scheduler node.
  2. Two scheduler and two consumer and central
  3. Central and scheduler node.

 

Ideally: Two scheduler and two consumer and central node comes in best practice for extra large enterprise.

You can read about single node, small, medium , large and extra large Qlik shared site in detail:

https://help.qlik.com/en-US/sense/February2019/Subsystems/PlanningQlikSenseDeployments/Content/Sense...

Multi node site would increase your Qlik Sense site availability, how?

We have a concept fail-over candidate, which is one of the scheduler node or such node which has all services and take charge automatically while Central node is down. We can manipulate the sensing time of failover candidate to central node in latest version.

 

Solutions which will guide you to deply multi node side

  1. How to Install multi node site:

Installation of Multi Node site

Installing Qlik Sense in a multi node site - Qlik Sense

Qlik Sense September 2017 - Installing Qlik Sense in a multi-node site

 

  1. How to configure multi-node site:

         Configure a multinode installatio

       2.  Load balancing:

      Adding load balancing

       Load balancing

       Configuring load balancing to isolate development nodes

          3. Fail-over candidate

Fail- candidate or we can call it passive central node which is ping in a set time(you can customize it below 10 minutes) to central or master node and when it doesn't get response it will take charge and become active central or master node.

Note: Where you install your postgresDB during installation that server has one extra service Qlik Repository Database which is running the postgresDB. So in case you don't have a dedicated persistence layer and installed Repo DB on central node(any server which has Qlik Sense too) then if your central node get down due to power failure or blue screen then fail-over node won't take charge. 

Primary condition of fail over concept needs QlikSenseRepositoryDatabase to be run all time. if QlikSenseRepositoryDatabase is down then whole site is down. 

One important application is attached to article which helps you to review your Qlik site. If you  have any concern over Qlik repository size, QLogs DB size or any component which is accessing excess size than expected, then download the app, import to your Qlik Sense, open it on HUB, there will be three connection which come along with application i.e. PostgreSQL_postgres, PostgreSQL_QLogs and PostgreSQL_QSR. Update password with your super user password of postgresDB which you entered during installation and save it. 

If your user name added as postfix after updatation of connections , go to QMC and make it as they were earlier.

Please do above activities by RDP not from end user side. Reload the app and share it with me so I can review it.

 

After utilizing above solutions, please post your queries in comment section what is your use case i.e. how many servers are available, how your user comes to site, network load balancer is available or not, reloads are executing on scheduler nodes etc.

In general, multi node or load balancing concept is vast and vary with client to client, so I do believe you may ask question much better when you understand the right terms of Qlik, went through above articles and requirements are clear.

Consider this resource as a open form where we all can post our queries on load balancing and multi node site.

There are few other documents which would help you in Qlik administration

1.Dynamic Sheet Exception With Stream and App Level Security

2.Sheet or App Object Level Security Qlik Sense

 

Reach to me if there is need of any clarification or need assistance with kumar.rohit1609@gmail.com

Follow my profile on LinkedInhttps://in.linkedin.com/pub/rohit-kumar/2b/a15/67b,

Add yourself to a great community of Qlik People on Facbook 

Add yourself to Qlik intellectual people group on Facebook:

 

When applicable please mark the appropriate replies as ACCEPT AS SOLUTION and LIKE it. This will help community members and Qlik Employees know which discussions have already been addressed and have a possible known solution. Please mark threads as LIKE if the provided solution is helpful to the problem, but does not necessarily solve the indicated problem. You can mark multiple threads as LIKE if you feel additional info is useful to others.

 

Thanks,
Rohit Kumar

 

 

Comments
gayathridevi24
Contributor III
Contributor III

Hi Rohit,

Thanks for sharing this info. It was very useful to me.

 PostgresDB is installed on the central node where failover candidate also the same.

If central node fails (where QRD present and also failover candidate), whether it works as failover candidateor it will be down.

Could you please let me know.

Thanks and Regards,

Gayathri

 

 

0 Likes
mgranillo
Specialist
Specialist

Hello Rohit,

I have a question about your original post. You say: Consumer node: which must has proxy service enable.

Why must the proxy service be enable on a consumer node? Does it need to be running on all consumer nodes or just some of them? If that's the, case, what are the considerations for turning it on?

0 Likes
rohitk1609
Master
Master

We need proxy service to be enabled on consumer node because this node or server is being consumed by client or in other words, consumer node servers the content. To serve the content, user has to be authenticated. Proxy service sends user info to authentication module and if authentication module approve the  user, content will be severed to user.

 

Thanks,

Rohit

0 Likes
mgranillo
Specialist
Specialist

Your comment to me addresses why we need the proxy service on a consumer node but does it need to be on all consumer nodes? Lets say one has 4 consumer nodes but the proxy service is only running on one node. If the virtual proxy is set to round-robin to all the consumer nodes, I think traffic will still route as intended. Is that right?  So why run the service on all 4 nodes.  Maybe it doesn't really matter. The proxy service seems light on resource consumption so doesn't matter if it's running on all nodes or one.

0 Likes
mgranillo
Specialist
Specialist

Rohit, 

I confirmed with another community member that proxy service can run on one or multiple nodes. In fact, one user I found prefers running the proxy service on a standalone node, with no other services, to control where authentication occurs in the network.

Mike 

0 Likes
rohitk1609
Master
Master

@mgranillo You are right. When there is demilitarised zone concept, People keep one proxy server in  demilitarised zone with proxy service and content keep serving from other proxy servers which are load balanced with main proxy server. 

If you want to understand it technically, what proxy server does, it sends user to authentication module for authentication. here, one server is enough to send user to authentication.

 

Thanks,

Rohit

 

0 Likes
dirk_fischer
Creator
Creator

Hello Rohit,

 

we have moved to a multi-node installation (one central node, two nodes for application consumption and two nodes as schedulers). For some reason, the reload does not seem to be balanced properly between the 2 reload nodes and now we would like to define that certain apps are reloaded only by one of the two nodes.

What do we have to do to get this working? I tried to add a custom property to the nodes as well as to the apps, but still a reload initiated in the QMC will run on the server, it is not supposed to run on.

 

Many thanks

 

Dirk

0 Likes
rohitk1609
Master
Master

You need to disable default ResoucresOnNonCentral load balancing rule. Create a new rule for non central, which says lets say , tasks group A will load on server A and same for task group B 

drop an email on kumar.rohit1609@gmail.com

0 Likes
Version history
Last update:
‎2019-06-07 08:30 AM
Updated by:
Contributors