Slide 1

Slide 1 text

A “THING EXPLAINER” OVERVIEW Twitter: @willingcarol GitHub: @willingc 1 Carol Willing Project Jupyter at Cal Poly SLO JupyterDay Atlanta August 13, 2016 http://bit.ly/jupyterhub-atl

Slide 2

Slide 2 text

2

Slide 3

Slide 3 text

UNDERSTANDING JUPYTERHUB IN 1,000 (AND MAYBE A FEW MORE) COMMON WORDS https://xkcd.com/simplewriter/ 3

Slide 4

Slide 4 text

— Leonardo da Vinci THE NOBLEST PLEASURE IS THE JOY OF UNDERSTANDING. ” “ 4

Slide 5

Slide 5 text

LEONARDO MEETS THING EXPLAINER 5 • what this talk is A user friendly JupyterHub introduction • what it is not A deep dive architecture talk or a “hands on” workshop..though I will give you resources to these things along the way • Who Scientists, researchers, engineers, managers, teachers, you • why Understanding the major parts that make up JupyterHub to help with planning, trial, and deployment UNDERSTANDING JUPYTERHUB

Slide 6

Slide 6 text

BASICS 6

Slide 7

Slide 7 text

7 HUB A WAY TO GIVE A JUPYTER NOTEBOOK SERVER TO EACH PERSON IN A GROUP OF PEOPLE.

Slide 8

Slide 8 text

WHAT IS A NOTEBOOK? • Document • Environment • Web app https://github.com/CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers 8

Slide 9

Slide 9 text

9 JUPYTER NOTEBOOK Python R Julia View and Enter Stuff Part Language Expert Thing Important Stuff Organizer and Doing Thing

Slide 10

Slide 10 text

10 A SINGLE USER JUPYTER NOTEBOOK SERVER Python R Julia

Slide 11

Slide 11 text

11 A THING TO GIVE A JUPYTER NOTEBOOK SERVER TO EACH PERSON IN A GROUP OF PEOPLE. HUB

Slide 12

Slide 12 text

HOW IT WORKS 12

Slide 13

Slide 13 text

• Manages authentication • Spawns single-user notebook servers on-demand • Gives each user a complete notebook server 13 WHAT DOES THE HUB DO?

Slide 14

Slide 14 text

• Hub (User Database, Authenticator, Spawner) • Users and their individual notebook servers • Configurable HTTP Proxy 14 THE PARTS OF JUPYTERHUB

Slide 15

Slide 15 text

15 USER DATABASE A PLACE TO KEEP INFORMATION ABOUT PEOPLE USING JUPYTERHUB WHAT THE HUB CONTAINS

Slide 16

Slide 16 text

16 AUTHENTICATOR A THING THAT CHECKS: • IF A PERSON IS WHO THEY CLAIM TO BE • IF THEY CAN USE THEIR JUPYTERHUB NOTEBOOK SERVER WHAT THE HUB CONTAINS

Slide 17

Slide 17 text

17 SPAWNER A WORKER BEE THAT MAKES JUPYTER NOTEBOOK SERVERS FOR PEOPLE WHAT THE HUB CONTAINS

Slide 18

Slide 18 text

18 HUB UNDERSTANDING Human 2 Human 4 Human 1 Human 3 Human 5 Human 6 Human 1’s Notebook Server Human 2 Human 3 Human 4 Human 5 Human 6 CONFIGURABLE HTTP PROXY /hub/ /api/auth /user/human4/

Slide 19

Slide 19 text

WHEN SHOULD I USE IT? 19

Slide 20

Slide 20 text

When to use JupyterHub • A class where students can do homework (nbgrader) • A short-lived workshop, especially if installation is hard • A research group with a shared workstation or small cluster • On-site computing resources for researchers and analysts at an institution 20

Slide 21

Slide 21 text

When not to use JupyterHub • tmpnb: anonymous, ephemeral notebooks • binder: tmpnb + GitHub repos • SageMathCloud is hosted and provides realtime-collaboration 21 Remember: JupyterHub is Authenticated and Persistent.

Slide 22

Slide 22 text

RESOURCES AND HELP 22

Slide 23

Slide 23 text

23 https://github.com/jupyterhub/jupyterhub-deploy-docker docker-compose, DockerSpawner, Hub in Docker https://github.com/jupyterhub/jupyterhub-deploy-teaching ansible, no docker, nbgrader Reference Deployments

Slide 24

Slide 24 text

24 JupyterHub mini-workshop July 2016 https://github.com/jupyterhub/jupyterhub-2016-workshop Tutorial and Workshop JupyterHub tutorial based on PyData London talk by Min Ragan-Kelley https://github.com/jupyterhub/jupyterhub-tutorial

Slide 25

Slide 25 text

25 All repos in jupyterhub organization on GitHub https://github.com/jupyterhub Help JupyterHub Documentation http://jupyterhub.readthedocs.io/en/latest/index.html

Slide 26

Slide 26 text

THANKS! 26 HUB Carol Willing Project Jupyter at Cal Poly SLO Twitter: @willingcarol GitHub: @willingc A THING TO GIVE EACH PERSON THEIR OWN SHINY JUPYTER NOTEBOOK SERVER http://bit.ly/jupyterhub-atl

Slide 27

Slide 27 text

Attribution • xkcd https://xkcd.com/license.html • Leonardo da Vinci. BrainyQuote.com, Xplore Inc, 2016. http://www.brainyquote.com/ quotes/quotes/l/leonardoda154285.html, accessed August 12, 2016. • https://xkcd.com/simplewriter/ • https://xkcd.com/386/ • PyData London Talk by Min Ragan-Kelley, Thomas Kluyver, and Kyle Kelly 27