Enterprise Kernel Gateway on Hadoop - am i missing something?

Hi everyone :slight_smile:
I’m trying to install Jupyter Enterprise Gateway in Yarn Cluster Mode, but for some (still undetected) reason it doesn’t work.

jupyter[50265]: [E 2019-12-09 11:57:26.715 EnterpriseGatewayApp] KernelID: '5bd96182-a90e-4aa4-a338-819a18708f7a', ApplicationID: 'application_1575474511587_0

009’ unexpectedly found in state ‘FAILED’ during kernel startup!

Is there any article about it or is there anyone here who has tried to do that?
Maybe some difficulties arise from the fact that I’m connecting Jupyter Hub to EG, but in local mode it works perfectly.
Should I dump here my modified kernel.json?
Thanks for the support

Edit: Kerberos shouldn’t be an issue, we’ve already created another user and we’re sure spark works fine with that :confused:

Hi @lucasoato - welcome to the Jupyter Community Forums!

Getting kernels properly working in a YARN cluster can take a couple iterations. There is likely good information in the YARN application logs, typically stdout and stderr. I would suggest starting with the troubleshooting section of the docs. There you’ll find instructions for how to access the applications logs, enable DEBUG logging, etc., in addition to a specific use-case entry relative to kerberos (near the bottom). There is also some additional relative to user impersonation.

Once those avenues have been exhausted, please open an issue in EG so we can focus on this issue. In there, we can take a look at your kernel.json modifications. Given that an ApplicationID is obtained indicates the kernel launch has been recognized by YARN. We just need to figure out where things are getting held up.


1 Like

Hi Kevin,
thanks for the help :smiley:
I may found out why isn’t working, probably it’s a network issue.
May I ask you one thing about EG networking? Suppose that we have some computer: A with Jupyter notebook, B a gateway with EG installed in cluster mode and C1, C2, C3 Yarn compute node of the cluster. Should I open ports just between A<->B and B<->Ci or even between A<->C ?
I didn’t open ports directly between A and Ci because I’ve been told that there could have been some security problems on opening the Jupyter environment directly to the cluster… Maybe SSH tunneling could help securing the environment?
Thanks again for your support, if there’s anything we can do the help the project let me know!

Hi Luca. Yeah, you only need to open communication between B and Ci. This is why we recommend EG be installed on the master or an edge node of the cluster.

Please open an issue in the EG repo should you still have problems connecting to your kernel. When opening the issue, please provide the complete log from EG (including its startup and with DEBUG enabled) as this will provide useful information as well.

Thank you,

1 Like