Knime Server with Python

Hi everyone,

I have created several Knime workflows using the python (version 3.6) integration ( using this link ). We have deployed those workflows to our Knime server (version 4.8.2) but they fail whenever we run them. Our guess is that we are missing some configuration on the server but so far we have not found any documentation on how to do so.

Also, we created a Conda environment with all the libraries that we will need but we dont see to know how to indicate Knime to use that environment.

We have our knime server on AWS.

This is the error we get:
Execute failed: Traceback (most recent call last): File “/opt/knime-full_3.6.2/plugins/org.knime.python2_3.7.2.v201904170931/py/PythonKernelBase.py”, line 278, in execute exec(source_code, self._exec_env, self._exec_env) File “<string>”, line 2, in <module> ImportError: No module named ‘simple_salesforce’

Greetings,
Rulo

Dear @RaulPerez,

The default settings for an executor are to use the system’s Python installation (which I assume doesn’t have simple_salesforce installed). You will have to configure a local KNIME Analytics Platform to use a specific conda environment first. To do so, please follow the Python Integration Quickstart, in particular step 3. Once you have done this, you can export the settings from your local KNIME Analytics Platform and follow KNIME Server Administration Guide to distribute those settings to connected executors.

Best,
Stefan

4 Likes

Hi Stefan,

Thank you for your answer and time.

Currently we are at a point where we have successfully integrated my Knime Analytics Platform (running on my laptop) with python and my custom conda environment(py36_knime). On my laptop we can perfectly run the workflows using the custom conda environment.

On our Knime server we have conda installed and even created the same custom environment (py36_knime) which has the python library (simple_salesforce) we need to run our workflows. We have read the documentation (https://docs.knime.com/2019-06/python_installation_guide/index.html) and the last part of the integration is to configure the Knime Server to use the conda environment we created on the server but we cant figure out where to do so. Could you give us more information on how to configure our Knime server so that we can run our python scripts using a specific conda environment?

Greetings,

Rulo

Hi @RaulPerez ,

do I read correct, that you use 4.8.2 Server together with Analytics Platform P 3.7.2 as executor? What is the Analytics Platform on your laptop? Do you plan to upgrade the server to the newest release (which is 4.9.2 server + 4.0.2 executor)? I ask these questions, because the way how python in configured has changed between 3.7 and 4.0 releases and it is much easier in 4.0 than in 3.7. Depending on the version we will craft the set of steps that need to be taken.

Cheers,
Mischa.

2 Likes

Hi @RaulPerez

did you manage to set up python on the Server? If you experience problems- please let us know about your knime version on the Server side and we will help you to set up the configuration accordingly.

Best,
Mischa