Login to PFE (Pleiades Front End).
ssh pfe
If already setup ssh tunnel etc.
Download this image in your scratch, as it might be large in size. This download needs to be done on the login node, as the interactive nodes can't seem to access the internet.
module load singularity singularity pull notebook_pangeo.sif docker://pangeo/pangeo-notebook~~ ~~
Update 05/29/2025: squashfs is banned on Pleiades, so I suggest trying this instead:
singularity build --sandbox notebook_pang/ docker://pangeo/pangeo-notebook
(or something like that)
Run script request_interactive_node.sh
, which has following content.
#!/bin/bash
qsub -I -lselect=1:ncpus=2:model=ivy,walltime=02:00:00 -q devel
Note: we needed to add all the above bindings to be able to see where the data is
Run the following command or run a script with the following lines:
#!/bin/bash
module load singularity
singularity shell --bind /nobackup:/nobackup --bind /nobackupp1:/nobackupp1 --bind /nobackupp17:/nobackupp17 --bind /nobackupp1
9:/nobackupp19 --bind /home6/dmenemen:/home6/dmenemen /nobackup/dbalwada/notebook_pangeo.sif
NB New users need to use ls -l /nobackup/your_username
to identify which volume their nobackup direct is actually located in and bind to that directory.
At this point you should be able to run any python script at the command l
From: https://github.com/rabernat/pleiades_llc_recipes/blob/master/notebooks/pleiades_llc_examples.ipynb
from xmitgcm import llcreader
model = llcreader.PleiadesLLC4320Model()
Following steps describe accessing a Jupyter lab session running in a singularity container via a browser running on your local machine (Mac, Linux, etc).
Secure Setup of Jupyter Notebook:
SSH into pfe
and follow the steps in the article Secure Setup for Using Jupyter Notebook on NAS Systems to setup your password for Jupyter Lab.
From pfe
, SSH into an interactive node and run Singularity
Start Jupyter Lab in the Singularity container. In the output below, r403i7n4
is the interactive node we had gotten and sraza2
is a username. You would need to replace both of these in the next step. The output is attached here for reference purposes.
> sraza2 @ r403i7n4
$ jupyter lab --no-browser
[I 2022-12-15 14:27:28.040 ServerApp] dask_labextension | extension was successfully linked.
[I 2022-12-15 14:27:28.041 ServerApp] jupyter_resource_usage | extension was successfully linked.
[W 2022-12-15 14:27:28.043 MathJaxExtension] Config option `kernel_spec_manager_class` not recognized by `MathJaxExtension`.
[W 2022-12-15 14:27:28.045 MathJaxExtension] Config option `kernel_spec_manager_class` not recognized by `MathJaxExtension`.
[W 2022-12-15 14:27:28.049 MathJaxExtension] Config option `kernel_spec_manager_class` not recognized by `MathJaxExtension`.
[I 2022-12-15 14:27:28.051 ServerApp] jupyter_server_mathjax | extension was successfully linked.
[I 2022-12-15 14:27:28.051 ServerApp] jupyter_server_proxy | extension was successfully linked.
[W 2022-12-15 14:27:28.055 LabApp] Config option `kernel_spec_manager_class` not recognized by `LabApp`.
[W 2022-12-15 14:27:28.059 LabApp] Config option `kernel_spec_manager_class` not recognized by `LabApp`.
[W 2022-12-15 14:27:28.066 LabApp] Config option `kernel_spec_manager_class` not recognized by `LabApp`.
[I 2022-12-15 14:27:28.068 ServerApp] jupyterlab | extension was successfully linked.
[I 2022-12-15 14:27:28.068 ServerApp] jupyterlab_git | extension was successfully linked.
[I 2022-12-15 14:27:28.068 ServerApp] jupyterlab_s3_browser | extension was successfully linked.
[W 2022-12-15 14:27:28.071 NotebookApp] Config option `kernel_spec_manager_class` not recognized by `NotebookApp`.
[W 2022-12-15 14:27:28.075 NotebookApp] 'cookie_secret_file' has moved from NotebookApp to ServerApp. This config will be passed to ServerApp. Be sure to update your config before our next release.
[W 2022-12-15 14:27:28.075 NotebookApp] 'ip' has moved from NotebookApp to ServerApp. This config will be passed to ServerApp. Be sure to update your config before our next release.
[W 2022-12-15 14:27:28.075 NotebookApp] 'certfile' has moved from NotebookApp to ServerApp. This config will be passed to ServerApp. Be sure to update your config before our next release.
[W 2022-12-15 14:27:28.075 NotebookApp] 'keyfile' has moved from NotebookApp to ServerApp. This config will be passed to ServerApp. Be sure to update your config before our next release.
[W 2022-12-15 14:27:28.075 NotebookApp] 'password' has moved from NotebookApp to ServerApp. This config will be passed to ServerApp. Be sure to update your config before our next release.
[W 2022-12-15 14:27:28.077 NotebookApp] Config option `kernel_spec_manager_class` not recognized by `NotebookApp`.
[W 2022-12-15 14:27:28.082 NotebookApp] Config option `kernel_spec_manager_class` not recognized by `NotebookApp`.
[I 2022-12-15 14:27:28.083 ServerApp] nbclassic | extension was successfully linked.
[I 2022-12-15 14:27:28.083 ServerApp] nbdime | extension was successfully linked.
[I 2022-12-15 14:27:28.083 ServerApp] nbgitpuller | extension was successfully linked.
[I 2022-12-15 14:27:28.085 ServerApp] Writing Jupyter server cookie secret to /home3/sraza2/.jupyter/cookie_file
[I 2022-12-15 14:27:28.093 ServerApp] notebook_shim | extension was successfully linked.
[I 2022-12-15 14:27:28.093 ServerApp] panel.io.jupyter_server_extension | extension was successfully linked.
[I 2022-12-15 14:27:28.093 ServerApp] xarray_leaflet | extension was successfully linked.
[I 2022-12-15 14:27:29.979 ServerApp] [nb_conda_kernels] enabled, 0 kernels found
[I 2022-12-15 14:27:30.019 ServerApp] notebook_shim | extension was successfully loaded.
[I 2022-12-15 14:27:30.019 ServerApp] dask_labextension | extension was successfully loaded.
[I 2022-12-15 14:27:30.020 ServerApp] jupyter_resource_usage | extension was successfully loaded.
[I 2022-12-15 14:27:30.021 ServerApp] jupyter_server_mathjax | extension was successfully loaded.
[I 2022-12-15 14:27:30.668 ServerApp] jupyter_server_proxy | extension was successfully loaded.
[I 2022-12-15 14:27:30.669 LabApp] JupyterLab extension loaded from /srv/conda/envs/notebook/lib/python3.10/site-packages/jupyterlab
[I 2022-12-15 14:27:30.669 LabApp] JupyterLab application directory is /srv/conda/envs/notebook/share/jupyter/lab
[I 2022-12-15 14:27:30.673 ServerApp] jupyterlab | extension was successfully loaded.
[I 2022-12-15 14:27:30.679 ServerApp] jupyterlab_git | extension was successfully loaded.
[I 2022-12-15 14:27:30.680 ServerApp] jupyterlab_s3_browser | extension was successfully loaded.
[I 2022-12-15 14:27:30.688 ServerApp] nbclassic | extension was successfully loaded.
[I 2022-12-15 14:27:30.862 ServerApp] nbdime | extension was successfully loaded.
[I 2022-12-15 14:27:30.863 ServerApp] nbgitpuller | extension was successfully loaded.
[I 2022-12-15 14:27:30.863 ServerApp] panel.io.jupyter_server_extension | extension was successfully loaded.
[I 2022-12-15 14:27:30.864 ServerApp] xarray_leaflet | extension was successfully loaded.
[I 2022-12-15 14:27:30.864 ServerApp] Serving notebooks from local directory: /home3/sraza2
[I 2022-12-15 14:27:30.864 ServerApp] Jupyter Server 1.23.3 is running at:
[I 2022-12-15 14:27:30.864 ServerApp] https://127.0.0.1:8888/lab
[I 2022-12-15 14:27:30.864 ServerApp] or https://127.0.0.1:8888/lab
[I 2022-12-15 14:27:30.864 ServerApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[I 2022-12-15 14:41:35.068 LabApp] 302 GET /lab? (127.0.0.1) 1.26ms
[I 2022-12-15 14:41:43.316 ServerApp] 302 POST /login?next=%2Flab%3F (127.0.0.1) 28.18ms
[W 2022-12-15 14:41:59.079 LabApp] Could not determine jupyterlab build status without nodejs
ERROR:root:Exception encountered during GET : Could not connect to the endpoint URL: "http://169.254.169.254/latest/api/token"
[I 2022-12-15 14:42:05.829 ServerApp] Creating new notebook in
[I 2022-12-15 14:42:06.781 ServerApp] Kernel started: 4911b680-76db-48d8-9d6d-a3e846f206d4
[IPKernelApp] ERROR | No such comm target registered: jupyter.widget.control
[IPKernelApp] WARNING | No such comm: f63c9676-f5c4-49a2-b7dd-86d71caa23b6
[W 2022-12-15 14:42:34.454 ServerApp] Notebook nasa/nasa.ipynb is not trusted
[I 2022-12-15 14:42:34.958 ServerApp] Kernel started: b3b74c13-74c9-4311-9b07-fa1709623753
[W 2022-12-15 14:42:36.718 ServerApp] Notebook nasa/scratch.ipynb is not trusted
[IPKernelApp] ERROR | No such comm target registered: jupyter.widget.control
[IPKernelApp] WARNING | No such comm: 736f163e-9ed0-426b-ac41-21214f683e7c
[I 2022-12-15 14:42:37.852 ServerApp] Kernel started: 9bea8645-2f85-4a99-b559-37970dd48502
[IPKernelApp] ERROR | No such comm target registered: jupyter.widget.control
[IPKernelApp] WARNING | No such comm: 15fad6fe-88b0-4d7e-8e4e-30a5d1b9052a
[I 2022-12-15 14:44:06.619 ServerApp] Saving file at /Untitled.ipynb
[I 2022-12-15 14:44:34.841 ServerApp] Saving file at /nasa/nasa.ipynb
[I 2022-12-15 14:44:38.980 ServerApp] Saving file at /nasa/scratch.ipynb
[W 2022-12-15 14:44:38.980 ServerApp] Notebook nasa/scratch.ipynb is not trusted
Update the following items in the command below and run it in the terminal of your local machine (e.g., iTerm in Mac).
r403i7n4
with the name of the interactive node you getsraza2
with your NAS usernamepfe21
with the pfe node you log intossh -l sraza2 -o "StrictHostKeyChecking=ask" -o "ProxyJump=sfe,pfe21" -L 8080:localhost:8888 r403i7n4
This will create a SSH tunnel from your local machine port 8080 to port 8888 on r403i7n4
Visit https://localhost:8080 in the browser on your local machine and enter Jupyter password you created in Step 1, when prompted.