We have the Jupyter App running using OOD, and I’m trying to setup our first “Interactive Desktop” for the same compute node, but I’m getting the “undefined method ‘desktop’” error on my browser when I try to reserve a session through the interactive desktop.
The OOD portal is on a RHEL 8 machine with SELinux in permissive mode
The Slurm Ctrl and compute node is an Ubuntu machine with 8 gpus
And I disabled the firewalls on both machines just in case, but error persists.
Attached are the form and submit form, respectively located at
/etc/ood/config/apps/bc_desktop/godel.yml and /etc/ood/config/apps/bc_desktop/submit/godel.yml.erb on the OOD node, and both files permissions are 644 (world readable).
When I run the command
ls /usr/share/xsessions/ on the compute node, I get
mate.desktop ubuntu.desktop, so I assume that the mate desktop requirement is fullfilled.
The nginx error logs aren’t providing me with any additional information:
ERROR "ERROR: NoMethodError - undefined methoddesktop’ for #<BatchConnect::SessionContext:0x0000556ae2edebd8>"`
Not sure where to go from here.
godel.yml (1.5 KB)
godel.yml.erb.txt (378 Bytes)
Welcome! Also, love the cluster name! Kurt would be proud.
Now, for the actual question, could you also post your
submit file as well as this is likely what is causing the problem is a disconnect between something you are doing in the
form and the
Edit: Whoops! Just saw the
.erb file and the
submit attribute. Let me look this over for a bit and see what I can find.
One thing that jumps out is I don’t see the
desktop listed in the
form: section of the
godel.yml file, which you are going to need. What happens with that added under the
Adding the desktop in the form section definitely made progress. A session now starts and completes without opening a terminal on Godel. I tried turning X11Forwarding on and restarted sshd, but the problem remains. Here is the output log from that session:
Generating connection YAML file…
ERROR: Collection default cannot be found
Launching desktop ‘mate’…
cat: /etc/xdg/autostart/gnome-keyring-gpg.desktop: No such file or directory
cat: /etc/xdg/autostart/mate-volume-control-applet.desktop: No such file or directory
cat: /etc/xdg/autostart/pulseaudio.desktop: No such file or directory
cat: /etc/xdg/autostart/rhsm-icon.desktop: No such file or directory
cat: /etc/xdg/autostart/xfce4-power-manager.desktop: No such file or directory
Unable to init server: Could not connect: Connection refused
** (mate-session:2489768): WARNING **: 14:01:41.660: Cannot open display:
Desktop ‘mate’ ended…
Yeah, looks like the VNC server never even boots up.
I think I see, you need to change the
godel.yml.erb to have a
vnc template, so:
What happens from there?
That worked, thank you so much. I also needed to add
to the form section. Also, X11Forwarding doesn’t need to be enabled. One thing that bothers me is when I run a command like nvidia-smi, I can see all 8 gpus from the Desktop app, even though I only requested 1 gpu in that form. That’s not the case with our Jupyter Notbeook instance, where the command !nvidia-smi from inside a notebook cell shows only 1 gpu.