
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Architecture: Is it possible to have one node handle reloads and another node handle user sessions?
Hello all,
This is an architecture question for a two-node Qlik Sense environment.
Is it possible to dedicate one node to do task reloads and another node to handle user sessions?
If so, can anybody show how that would be configured? @Levi_Turner what do you think 🙂
- Tags:
- architecture
- nodes
- « Previous Replies
-
- 1
- 2
- Next Replies »


- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi @mwallman ,
I believe this should be possible , may be this article will help
Br,
KC
KC

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks Jyoti, however I am looking for a very specific example of how to configure this.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We have three nodes (1 central node 2 rim nodes). We only run the scheduler service on the central node and turned it off on both rim nodes. Additionally, our default proxy load balances on the rim nodes. In this way, our centralized node handles task reloads and users are using rim nodes only. We came up with this based on the below from Qlik help - we basically only have a "master". This works for us given our ram/cpu configuration and # of task reloads.
Schedulers
The Qlik Sense Scheduler Service (QSS) manages the scheduled tasks (reload of Qlik Sense apps or user synchronization) and task chaining. Depending on the type of Qlik Sense deployment, the QSS runs as master, slave, or both on a node.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi @jlongoria , thanks for sharing the info! Did you have to change any setting or a create/modify a security rule in order to achieve this?

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
No, we did not change/add any security/load balancing rules to achieve this.
Hopefully we haven't fooled ourselves into thinking we're doing what we think we're doing. :S However, we tested by installing a specific driver on the central node only. The task that relies on that specific driver reloads on a regular basis and has not failed. We figured if the task reloaded on a rim node the reload would fail because the driver would not be installed on the rim node.


- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
With 2 nodes in a cluster there are two logical possible ways to achieve this:
Option 1: User Access RIM, Reload Central
In this configuration, user sessions will be handled by the RIM node (for short-hand it is common to call this a Consume node or Engine/Proxy node).
Services needed: Engine, Proxy, Repository
Brief config steps:
- Install RIM
- Activate RIM, toggle Engine + Proxy
- Configure Virtual Proxy for this RIM Proxy to load balance to this RIM's Engine
- (Optional, but encouraged): Disable default load balancing rule named ResourcesOnNonCentralNodes, create new one:
- Name: Up to you
- Description: Load balance all applications to all RIMs, including apps in the Monitoring Apps Stream which are excluded by the default ResourcesOnNonCentralNodes rule
- Filter: App_*
- Actions: Load balancing
- Conditions: ((node.iscentral="false"))
- Context: Both
- (Optional, but encouraged): Request a DNS alias for this host (i.e. analytics.company.com)
- (Optional, but encouraged): Request, install, configure valid third party SSL certificate. If using DNS alias, this is the primary subject + Subject Alternative Name
Option 2: User Access Central, Reload RIM
In this configuration, user sessions will be handled by the Central node and the RIM node will perform application reloads.
Services needed: Engine, Scheduler, Repository
Brief config steps:
- Install RIM
- Activate RIM, toggle Scheduler + Engine
- Set Central's Scheduler to Master + ensure RIM's scheduler is set to slave
- (Required): Disable default load balancing rule named ResourcesOnNonCentralNodes, create new one:
- Name: Up to you
- Description: Load balance all applications to all RIMs, including apps in the Monitoring Apps Stream which are excluded by the default ResourcesOnNonCentralNodes rule
- Filter: App_*
- Actions: Load balancing
- Conditions: ((node.iscentral="false"))
- Context: Both
- (Optional, but encouraged): Request a DNS alias for this host (i.e. analytics.company.com)
- (Optional, but encouraged): Request, install, configure valid third party SSL certificate. If using DNS alias, this is the primary subject + Subject Alternative Name

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
In option 2 is it possible to include a Proxy on Reload RIM for development and debugging?
Manual testing of a failed load would otherwise be performed on the Central node.


- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
@anderseriksson : Sure, that is possible. You can also create a new virtual proxy which attaches to the RIM's Engine for debugging. They both net the same result from that perspective.


- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi all,
Thanks @Levi_Turner for explaining this.
Can I just check what happens when we throw NPrinting into this mix also. NPrinting would sit on a separate server again and essentially be another Client accessing the cluster.
Would the access from NPrinting be treated the same as a user with a browser accessing the app, in that NPrinting would be directed to the Consume node rather than the Reload one?
Many thanks,
Steve

- « Previous Replies
-
- 1
- 2
- Next Replies »