Alteryx Server Discussions

Find answers, ask questions, and share expertise about Alteryx Server.

Install Python Module in Alteryx Server

paighowal
7 - Meteor

Hello,

I created a predictive module which refers to many python modules like spacy etc. But when I run the workflow on server it gives me error. but it runs fine on local machine so I created a workflow to install missing python modules to install them on alteryx server.

But I am getting errors when running to install modules in alteryx server using python tool

Any suggestions?

Thanks,

Nitin

 

Workflow Attached.

 

Error while workflow on Alteryx server:

clipboard_image_0.png

 

Workflow was still uploaded but when I ran it, i got this error:

 

clipboard_image_0.png

7 REPLIES 7
MichalM
Alteryx
Alteryx

@paighowal 

 

Could you please share the errors you're experiencing?

RishiK
Alteryx
Alteryx

Hi there

 

This is probably down to firewall or permission issues on the machine that the server is installed on. Can you post the errors you're getting so I can verify this?

paighowal
7 - Meteor

 

So this is the error I get while uploading the workflow on server. 

 

clipboard_image_0.png

On server, i saw this error. 

 

clipboard_image_1.png

 

MichalM
Alteryx
Alteryx

@paighowal 

 

If I read the errors correctly it seems like you're unable to access the endpoints to download and install the packages referenced in your code as suggested by @RishiK. This will most likely be blocked by the firewall on the server. 

deanthoms
6 - Meteoroid

I appear to be having the same issue. I have written custom Python scripts that I am using within the Python / Jupyter tool and these run successfully when I run them from Alteryx Designer (on the server). However, when I save the app to the Alteryx Gallery I receive the above error message. It seems like the Gallery cannot reference the Python modules that I downloaded.

 

Was this indeed a firewall issue? If so, can anyone provide more context on where to update these firewall settings (Alteryx Server Configuration, AWS EC2 instance, etc.)?

MichalM
Alteryx
Alteryx

@deanthoms 

 

When you execute workflows via the Gallery, do you know what user is used as Run as? Is it the local admin or do you use a Service Account dedicated to Alteryx?

How is this user different to the one used when you log in into the server and start Designer on the server?

 

Also, what is the code that you run? Do you trigger the package installation within the code?

deanthoms
6 - Meteoroid

Hi Michal - Thanks for your reply! This was exactly my issue. I have documented it in detail below in case this solution helps other users!

 

I was able to work with Matthew Paden from Alteryx to resolve the issue (thanks Matthew!). The primary issue was that the Alteryx Gallery was using different "Run As" settings than the server; therefore, the app would work correctly on the server, but when loaded to the gallery, the default user did not have the correct permissions to access the folders containing the Python Packages. 

 

Below is how we solved for this issue:

1) Updated Credentials settings in the Alteryx Gallery from "Use Default Credentials" to "Allow Users to Select Credential Options"

2) Utilized one of the Alteryx Server admin accounts from the machine running the Alteryx Server (let's call this 'AccountX')

3) Ensured that 'AccountX' had full permissions on all folders on the machine running the Alteryx Server (in my case this was the local drive and the shared drive that hosts our Alteryx environment). I leveraged the following community article to ensure I took the appropriate steps: https://help.alteryx.com/current/server/set-required-run-user-permissions

4) Added this account to the available "Credentials" and shared these new credentials with applicable Gallery accounts: https://help.alteryx.com/20194/server/credentials

 

Alternatively, this issue could have been resolved my changing the default "Run As..." settings from the Alteryx Server Configuration. However, this would have ran every app on the sever as the account specified by the settings, which would have limited other functionality we use.

 

Hope this explanation helps other users solve for their "permissioning" issues!