Saving and Restoring Notebook State¶
It is only possible to save and restore notebook state on PEDL clusters that are configured with a shared filesystem available to all agents.
To ensure that your work is saved even if your notebook gets terminated, it is recommended to launch all notebooks with a shared filesystem directory bind-mounted into the notebook container and work on files inside of the bind mounted directory. For example, a user
jimmy with a shared filesystem home directory at
/shared/home/jimmy could use the following configuration to launch a notebook:
$ cat > config.yaml << EOL bind_mounts: - host_path: /shared/home/jimmy container_path: /shared/home/jimmy EOL $ pedl notebook start --config-file config.yaml
Working on a notebook file within the shared bind mounted directory will ensure that your code and Jupyter checkpoints are saved on the shared filesystem as opposed to on an ephemeral container filesystem. If your notebook gets terminated, launching another notebook and loading the previous notebook file will effectively restore the session of your previous notebook. To restore the full notebook state (in addition to code), you can use Jupyter's
Revert to Checkpoint functionality.
By default, Jupyter Lab will take a checkpoint every 120 seconds in an
.ipynb_checkpoints folder in the same directory as the notebook file. To modify this setting, click on
Advanced Settings Editor, and change the value of