JupyterHub

From CSDMS
Revision as of 14:36, 4 November 2022 by Mpiper (talk | contribs) (Direct link to Help Desk template)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
The OpenEarthscape JupyterHub
What is JupyterHub?

Through the NSF-funded OpenEarthscape project, CSDMS operates three JupyterHubs:

  1. jupyter.openearthscape.org
  2. lab.openearthscape.org
  3. frontier.openearthscape.org

Each Hub is hosted on the commercial cloud through the NSF CloudBank program. Each is free and available for use by all CSDMS members, whether you're an undergraduate, grad student, postdoc, researcher, or faculty.

What can you do with these JupyterHubs? Here are a few ideas:

  • Prototype and test Python code for a model
  • Run a model through Landlab or pymt
  • Create a notebook for a journal article
  • Teach a class at a university
  • Lead an interactive workshop at a conference
  • Work on a course assignment
  • Run a lab from the CSDMS EKT repository
  • Highlight your research in a notebook and share it with others in the community
  • Explore a parameter space with multiple simultaneous model runs
  • Access a Linux OS and shell in the cloud

The roles of these JupyterHubs---jupyter, lab, and frontier---as well as sign up and sign in instructions for each, are given in the sections below.

jupyter

This is the primary JupyterHub for use by all CSDMS members. It's a place to work, experiment, and learn. It includes CSDMS Workbench elements such as Landlab and pymt. Labs from the CSDMS EKT repository can be run on this Hub.

This Hub uses GitHub as a login service. Please see these instructions to sign up and sign in.

Note that the login for this Hub is separate from the login for the lab Hub. There is no expiration date for a login on this Hub.

lab

This JupyterHub is used for teaching; e.g., university classes or interactive workshops at a conference. Like jupyter, it's a place to work, experiment, and learn. It includes CSDMS Workbench elements such as Landlab and pymt. Labs from the CSDMS EKT repository can also be run on this Hub.

A username and password are required to login to this Hub. If you'd like to teach a class or lead a workshop using lab, please contact us through the CSDMS Help Desk, or email us at csdms@colorado.edu. We can help install software and create logins for the participants in your class or workshop.

Note that the login for this Hub is separate from the login for the jupyter Hub. Non-instructor logins that are inactive for more than a year will be removed.

frontier

On frontier, work with a CSDMS RSE to set up a powerful computational resource in the cloud, occupying a middle ground between a personal computer and an HPC. This Hub is ideal, for example, for exploring a parameter space with multiple simultaneous model runs. Access to frontier is limited to a single user at a time, allowing you to take full advantage of its compute power.

If you have an idea for a project that you'd like to run on frontier, please contact us through the CSDMS Help Desk. We can help you get set up.

common features

The jupyter, lab, and frontier Hubs share some common features described below.

user interface

The default user interface on all Hubs is the flexible and configurable JupyterLab. If you haven't used JupyterLab before, there's ample documentation.

default files

On each Hub, a welcome notebook and pair of directories are included by default in your home directory. The directories are:

  • data: A read-only directory for storing and sharing data
  • scratch: A read-write directory for sharing code, notebooks, or other files with other users

Files that remain in scratch longer than 90 days may be deleted. If you'd like to add files to the data directory, please contact us through the CSDMS Help Desk. We've also created a brief tutorial on uploading and downloading files to/from a JupyterHub.

software

These Hubs use Jupyter kernels mapped to conda environments to group software. The default kernel is called Python 3. It contains a minimal set of software packages. To explore with CSDMS models and tools, including Landlab and pymt, select the CSDMS kernel.

On the jupyter and frontier Hub instances, there's also a kernel called Develop that contains a host of development tools for writing software, including the GNU toolchain, CMake, conda compilers, and all the dependencies needed to build a Landlab component. It's like having your own Linux development machine in the cloud!

If you'd like new software installed on a Hub (e.g., for a class or a workshop), please contact us through the CSDMS Help Desk.

system maintenance

The lab, jupyter, and frontier Hubs will be offline for maintenance and software updates a few days per year, usually at the beginning of June and the end of December. The Hubs *may* also be offline for maintenance on Sundays between 9:30 and 10:00 AM Mountain Time. If people are using the Hubs around these times, we'll work with them to minimize disruption.