Recommended vCPUs = (Maximum Concurrent Users x Maximum CPU Usage per User) + 20%.
Recommended Memory = (Maximum Concurrent Users x Maximum Memory per User) + 128 MB.The following formulas for each of these three dimensions are widely applicable across different scenarios for The Littlest JupyterHub (TLJH): Four major options are outlined in the following chart to determine the allocation of resources across those three types: small classes (~30-50 students), average-sized classes (~80-100 students), and large classes (~100-400+). In that way, varying class sizes and needs differentiate the amount of resources given to each cost dimension. In order to describe the costs of each option accurately, there are three dimensions of the set-up that must be considered: the allotment of memory/RAM, CPU usage, and disk space that each user would need. Small number of concurrent users (20-25), small classes, low maintenanceĪny number of users (20 environments per plan x 20 plans per subscription) Large group of concurrent users (50-400+), computational resources dependent on cloud provider Sign-up for service online - fast deploymentĬloud provider, Kubernetes, Helm, JupyterHub (optionally Docker) - slower deploymentĬloud provider, server (at least Ubuntu 18.04) - relatively fast deploymentīrowser-based version and also downloadable application for Visual Studio - relatively fast deploymentġ GB data limit, 4 GB memory limit, single user
NET Core, etc.)Ĭan customize everything: gives full control and understanding of technical layout during setup - graphics, user interface, configuration, networking, security, etc. Has marketplace for extensions to add to individual user environments Can run most languages and frameworks (Node.js, Python. Pre-installed packages + conda, pip, plugins that provide additional features Pre-installed packages + conda, pip, multiple language support (Python, R, F#), no hardware scalabilityĮxisting Docker images, user resource guarantees and limits (CPUs, RAM, storage), Kubernetes cluster(s) size, environment features, hardware components Links to resources can be found at the bottom of the page for the most up-to-date information.Īnywhere from $0.511-0.73 (2 vCPUs, 4 GB RAM) to $2.19-2.56 (8 vCPUs, 16 GB RAM) per user/month for 100 usersĪnywhere from $2.61-3.42(4 vCPUs, 16 GB RAM) to $26.08-54.66 (64 vCPUs, 256 GB RAM) per user/month for 50 users.Īnywhere from $2.63 (4 vCPUs, 8 GB RAM, 64 GB HDD) to $3.42 (8 vCPUs, 16 GB RAM, 64 GB HDD) per user/month for 1 user. Two different types of JupyterHub implementations intended for smaller class sizes (The Littlest JupyterHub) and larger class sizes (JupyterHub for Kubernetes) are outlined below.
This page goes over a few options and lays out the costs associated with each option. Compared to local environments that run Jupyter, a cloud-based JupyterHub provides many conveniences, including pre-installed software, quicker access to course content, and computing flexibility that enables even users on Chromebooks or iPads to run Jupyter notebooks.Ĭhoosing the right Jupyter environment infrastructure is often a challenging task. It enables users to interact remotely with a standardized and common computing environment through any web browser. The project has allowed Berkeley’s data science program to deploy scalable Jupyter infrastructure utilizing cloud computing resources. JupyterHub is an open source service that creates on-demand cloud-based Jupyter notebook servers.