Open OnDemand: Access Clusters, Gateways and Interactive Apps

2018-09-10T18:09:32Z (GMT) by OH-TECH Consortium
Open OnDemand, an open source software project started in June 2015 with support from NSF, provides HPC access through a web portal as an alternative to the command line for accessing and utilizing HPC resources. Development of this interface was in response to an immediate need to help less compute savvy users leverage the power of HPC in their research. It was based on OSC’s in-house OSC OnDemand portal deployed in January 2013. Since 2015, OnDemand has evolved into a more flexible and extendable web portal installed at more than a dozen academic and commercial institutions.

The primary goal of OnDemand is to lower the barrier of entry and ease access to HPC resources for both new and existing users. OnDemand accomplishes this by providing a rich set of core web applications which leverage HTML5 standards and are securely hosted behind a web proxy providing federated authentication. All the user needs to access OnDemand is a modern web browser and their HPC credentials. OnDemand provides HPC centers a “zero-install” (i.e., no native SSH, SFTP, or VNC client necessary) and single sign-on (SSO) solution for their users.

A key feature of OnDemand over a traditional web service is the per-user web server model where all the web applications are run as the Linux user. This leverages the Linux kernel for security and accounting and greatly simplifies app development, making OnDemand a very attractive choice as an app platform. OnDemand currently supports web applications written in Ruby, Python, and Node.js and includes the OnDemand AppKit library which extends the capabilities of web applications by providing a unified interface to a variety of resource managers: Torque, Slurm, LSF, and PBS Pro. OnDemand also supports Interactive Apps, which consist of a batch job that launches a web application server on a compute node, pre-configured to allow the user to connect directly to it from within their browser. Due to the considerable demand for Interactive Apps (in particular Jupyter Notebook and RStudio Server) from users as well as from our project partners, the Dashboard comes with a plug-in style wrapper designed to streamline the Interactive App development process.

OSC’s OnDemand installation has seen remarkable growth since it was first released in September 2016, being used by more than 1,500 distinct OSC users executing over 100,000 app launches! In the last year, it has more than doubled its active monthly user count. Even more impressive is that less than a year after launch, a majority of OSC users used OnDemand instead of traditional mechanisms such as PuTTY (ssh) and FileZilla (sftp). This project has now been installed and put to use at more than a dozen different commercial and academic institutions including Pittsburgh Supercomputer Center, University at Buffalo, University of Utah, University of Arizona, Texas A&M, and NorTech.