Executor does not start

I followed the installation guide KNIME Server Installation Guide on Ubuntu Live Server 20.04 closely but got problem in the step 18 of the executor when I run /start-executor.sh:

I get these errors

Executor> ERROR main RabbitMQHandler Could not acquire enough core tokens from server, quitting
Sep. 02, 2021 1:22:41 NACHM. org.apache.cxf.bus.osgi.CXFExtensionBundleListener unregister
INFORMATION: Removing the extensions for bundle 610
Sep. 02, 2021 1:22:41 NACHM. org.apache.cxf.bus.osgi.CXFExtensionBundleListener unregister
INFORMATION: Removing the extensions for bundle 611
Sep. 02, 2021 1:22:41 NACHM. org.apache.cxf.bus.osgi.CXFExtensionBundleListener unregister
INFORMATION: Removing the extensions for bundle 607
Unable to init server: Could not connect: Connection refused
Knime: Cannot open display:

My questions are:

  • Do I have to install RabbitMQ? I thought it is included.
  • Do I have to install X(-Server) for KNIME-(exector)?

I installed xorg and can you stark “normal” KNIME with X-Forwarding. But the problem still exists.

I have no knime server licence yet (step 17). Is this the cause for my RabbitMQ error in step 18?

Hello spider,

no, you don’t have to if you use just one executor. if you like to use distributed (more then one executor), then yes.

yes, as you wrote, you have no license, so the server should not be able to reserve the needed cores. (if I’m wrong, maybe someone of the knime team can correct me)

br,
sven

2 Likes

Hello,

  1. You don’t have to install RabbitMQ. RabbitMQ would only be required if you were using a Distributed Executors configuration. For a 1 KS + 1 KE setup on the same host (which is standard/default deployment) it uses QPID, but the logging messages show RabbitMQHandler handling the core token requests. So this is normal/expected.
  2. You do not need X or xorg to start the Executor. The KNIME Executor is basically a headless version of the AP client that listens for jobs to be handed off to it from the Server. You can (and usually do like 99.999% of the time) start it headless from the command line.
  3. I just took my KS 4.12.2 instance and stopped KS/KE, removed the license, cleared out the log files, and then started it up again.

In my executor log, I see:
knime@redactedhost:~/knime_server/knime_executor/workspace/.metadata/knime$ grep token *
knime.log:2021-09-03 19:11:15,196 : ERROR : main : : RabbitMQHandler : : : Could not acquire enough core tokens from server, quitting
knime.log:2021-09-03 19:11:48,166 : ERROR : main : : RabbitMQHandler : : : Could not acquire enough core tokens from server, quitting

So yes, this error message is because you have started KS and KE, but when KE starts, it reaches out to the KS to request some core tokens for execution. KS has no license file in $workflow_repository/licenses, so it doesn’t know how many core tokens it has (0 I guess, without a license). So the number of core tokens that KE can get is 0, which is not enough to do any execution (absolute minimum required is 1), so it quits.

Once you obtain a license file and put it in the proper location, KS will automatically detect it and KE will be able to acquire core tokens on its next token request (which happens about every 4min, IIRC).

Regards,
Nickolaus

1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.