I’d like the ability to execute a pipeline on a specific snaplex node. When I’m troubleshooting an issue that may be node specific, the only means I have today of troubleshooting the issue on that node is to put all of the other nodes in the snaplex into maintenance mode. I’d rather leave the the other snaplex nodes up and running as part of the snaplex and be able to specify which node I want to execute my pipeline on for troubleshooting purposes.
The load balancing of pipeline executions across nodes in a Snaplex is done automatically. Allowing manual override of the automatic load balancing could interfere with the metrics used for the automatic load balancing.
The workaround you use currently off placing the other nodes offline is one approach. Another approach would be to move the node to a new Snaplex created for troubleshooting (place the node in maintenance and then shut it down and restart with an updated config file pointing to new Snaplex). That way the original Snaplex workload would not be impacted, other than having one lesser node.
Thanks @akidave. Unfortunately, that requires that the JCC be stopped and restarted. In the scenario I was troubleshooting today I was able to reproduce the issue when I put all of the other nodes into maintenance mode. However, the issue was resolved after the JCC was stopped and restarted. I knew that the issue that we encountered wasn’t occurring on the other nodes in the snaplex, but I wanted to confirm that we could recreate the issue on the one node in question. In hindsight, in addition to confirming that we could recreate the issue we’d want to further identify whether the issue was due to an issue with the host and underlying software or whether the issue was due to the SnapLogic JCC being in an unexpected state.
Hi Akidave. One issue with the auto-loadbalancing is that its extremely slow. In our tests, we have to start pipelines 2-3 minutes appart for the system to recognize that a node is already loaded… this should be sped up so that within seconds a node is recognized as loaded. This would greatly improve the load balancing
Can the pipeline execute snap help in this situation? Would make the main pipeline the child but it should let you chose the node.
Hi @winosky - With pipeline execute you can specify local node to have the child execute on the same node as the parent, or you can specify a specific snaplex, but there’s no way to specify a specific node on a snaplex.
Ah I follow now @PSAmmirata, yes that would be a nice have.
Not sure if this would help but maybe using the Snaplogic read snap and then setting the asset type to snaplex and the path to pipe.plexpath to return the current node it’s running under and doing something there? I can see it maybe helping for tasks but not sure for troubleshooting.