Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
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.
Qlik Sense Enterprise on Windows on-premises Deployment Scenarios
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:
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:
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:
Qlik Sense Enterprise on Windows on-premises Deployment Scenarios
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
Installation of Multi Node site
Installing Qlik Sense in a multi node site - Qlik Sense
Installing Qlik Sense in a multi-node site
2. 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
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
Thanks,
One more question, 3 Consumer nodes are required along with load balancing.
How will i ensure that consumer node respond on user hits?
I mean, instead of central node, consumer node must be displaying Dashboard to users.
It depends on your network config, if your IT team is using network load balancer then ask our IT team to bring or divert user traffic to consumer nodes.
With the help of load balancing rule and virtual proxy setting balance the load among consumer nodes.
Its a simple concept where your traffic lands he can access that server now when he open any app which servers resource would be consumed depends on load balancing rule and virtual proxy setting.
Don't share the local path of central node to client.
Thanks,
Rohit
Thanks, I don't have external network balancer. I would be defining rules in QMC for bringing traffic to Consumer nodes.
Can you help with one example how to do that?
Take help from these links:
Load balancing is a vast concept, config virtual proxy and writing load balacing rules needs business requirement, apps, users traffic info etc.
Try to find out what exactly you need to do and let me know what problem you are facing.
Thanks,
Rohit
Thank Rohit, I've referred these links.
I want to create a round robin condition for load balancing in these 3 consumer nodes.
I am not getting how to create that rule so that all the traffic starts coming to these 3 consumer node based on round robin instead going to central node.
You can schedule reloads to your new engine load or you can sync your apps to this new node when your app opens it consumes resource from this new node(Need to configure virtual proxy and load balancing rule).
1. You can balance the reloads between central and this new node by setting this new node as slave scheduler(QMC=>Scheduler).
2. user computername() function in any KPI, and open the app to see where this app actually opened.
There was video which guide you to do these app sync , write rules but it is unavailable now on you tube.
Its in my machine but can't share here becuase i can share only online video here.
Thanks,
Rohit
Thanks Rohit.
I have an external SAN drive where we will be putting all the backups(QVF,QVD,DATA,PostgreSQL) created for current running server and Qlikshare folder will be created on that drive only.
Now i have one new server which will be central node and nw it will be connected through that SAN drive and all the files will be accessed through that drive only.
So my question is while installing the qliksense on central node, when it will ask for root folder, we'll put the SAN drive path ?
When you will run the setup it will ask you for share folder path.
Thanks,
Rohit
Hi Rohit
I am creating a cluster wherein a third node will be a scheduler node. I just wanted to know how to configure that third node as scheduler node i.e. how that node will activate only to reload tasks? What are the settings and services that i need to enable to get such configuration?
Hi Shivesh,
Few points for you
1. To make a node scheudler node, you need to activate scheduler and engine service.
2. If you set scheduler node's scheduler as slave then reloads will happen on this new node.
3. If you want to put all reloads on this new node then set central node schdueler as master only.
Thanks,
Rohit