jupyterhub/jupyterhub

Multi-user server for Jupyter notebooks

해결하는 문제

JupyterHub는 여러 사용자가 각자의 개별 Jupyter notebook 서버를 가질 수 있도록 하는 멀티 사용자 서버입니다. 각 사용자가 수동으로 서버를 설정할 필요 없이 학생 그룹, 기업 데이터 과학 팀 또는 연구 프로젝트가 대화형 컴퓨팅 환경에 액세스할 수 있도록 중앙 집중식 관리 환경을 제공하는 문제를 해결합니다.

작동 방식

JupyterHub는 세 가지 주요 구성 요소로 구성됩니다:

  1. The Hub: 인증을 처리하고 요청 시 단일 사용자 서버를 생성하는 중앙 Tornado 프로세스.
  2. The Proxy: 요청을 Hub 또는 적절한 단일 사용자 서버로 전달하는 구성 가능한 HTTP 프록시(node-http-proxy).
  3. Single-user Servers: 각 사용자를 위한 개별 Python/Jupyter/Tornado 인스턴스의 Jupyter notebook 서버.

사용자가 로그인하면 Hub가 프록시를 구성하여 해당 사용자의 특정 노트북 서버로 트래픽을 라우팅합니다.

대상

공유 인프라에서 대규모 사용자에게 대화형 컴퓨팅 환경을 제공해야 하는 조직, 교육자 및 연구 그룹을 위해 설계되었습니다.

주요 특징

  • 유연한 인증: PAM, OAuth, LDAP 및 Kerberos를 포함한 다양한 인증자를 지원합니다.
  • 확장 가능한 스포닝: Docker, Kubernetes, systemd 및 Hadoop 클러스터(YARN)와 같은 spawner를 통해 다양한 환경에서 서버를 시작할 수 있습니다.
  • 관리 제어: Hub 및 사용자를 관리하기 위한 REST API를 제공합니다.
  • Docker 지원: 간소화된 배포를 위한 기본 Docker 이미지를 제공합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • Dispatch