Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi Community,
We're administrating a multinode Qlik Sense Client-Managed on a IAAS.
Sometimes in the week, we are experiencing some engine issues, for instance, every monday, we've got a peak of user and so engines deployed are not enough to handle the RAM peak.
As we're on a IAAS, we would like to add an engine node at specific time to handle the peak and stop machine when we're back in a normal traffic. We definitely can't have a new machine with 100% uptime to handle RAM peak for 1 morning in the week (cost issues). I Identified two solutions:
1st Solution
The first solution I identified is to just add a node in the cluster and start/stop virtual machine at the peak time. During my test, I saw that TTL ping pollute our Qlik Sense Logs and I would like to avoid it. Moreover, there's a warning in QMC and we would like to avoid it.
2nd Solution
So another solution I find is to add the node dynamically by calling API. Here's the process I developp:
Process at the start of the support Node
1. Start Virtual Machine
2. Call QRS Api : post /servernodeconfiguration/container => to create node (as we already propagate the certificate there's no need to do it again)
3. Call QRS Api : put /virtualproxyconfig/{id} => to adding load balancing
Process at the end of the support Node
1. Delete node via delete /servernodeconfiguration/{id} to delete node (it remove load balacing automatically from virtual proxy)
2. Stop the virtual Machine
I would like to know if there's a better way , if solution 2 is not a risky way in long term support strategy and I'm open to any other idea to handle this kind of problem. I already developped the program and will test it on test cluster, but if you have any feedbacks.
Thank
I can't say how reliable this will be as I have not seen it used in production. But I have been involved in discussions around this and the challenge you face is there is no graceful way to move users when load drops.
For example during the peak users start sessions on this node and they stay there even when load drops. you could try and wait till the sessions complete but this could take hours, and then other users might connect in this time. One thing you might want to consider is writing your own load balancing function where you can prevent users being sent to this node after a certain time. But i've not seen customers pursue this as far as you have, so I can't advise on the reliability of this.
Regards.
Hello,
Yes today, we tested the solution on our test env, and the problem that we have, it's handling the end of the session, all user on the support node has their session killed. It's not a big deal as we stop the node at noon and most of our user are off. But it would safer if I could redirect existing session to a stable node, it seems not possible.