Skip to content
A lightweight, multi-tenant, scalable and secure gateway that enables Jupyter Notebooks to share resources across distributed clusters such as Apache Spark, Kubernetes and others.
Branch: master
Clone or download
kevin-bates Allow port overrides in Kubernetes deployments
Add ability to specify value for `EG_PORT` env variable
from its default value (`8888`) to another value. This
can be done via the eg yaml file or helm charts.

Also removed the port field from the ingress stanza in
the helm values and updated ingress to use `Values.port`
since that's the service port anyway.

Fixes #684
Latest commit a1b0f67 Jun 13, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github GitHub issue/pull request template (#675) Jun 9, 2019
docs Docs Enhancement (part 2) (#680) Jun 13, 2019
enterprise_gateway Fix interrupts on intensive operations Jun 13, 2019
etc Allow port overrides in Kubernetes deployments Jun 13, 2019
scripts
website Update platforms.html May 22, 2019
.gitattributes Add git attribute configuration Mar 29, 2018
.gitignore Initial version of Enterprise Gateway website Jan 16, 2019
.travis.yml Collect docker logs from successful itests at Travis Mar 15, 2019
LICENSE.md Update and rename LICENSE to LICENSE.md Sep 21, 2015
MANIFEST.in Split Elyra from Jupyter Kernel Gateway Aug 28, 2017
Makefile Update docker publish-related targets May 30, 2019
README.md Add website to README.md Mar 13, 2019
codecov.yml Remove codecov/github PR UI integration Oct 8, 2018
conftest.py Initial changes of itests to use pytest Feb 27, 2018
readthedocs.yml Update Sphinx version Mar 11, 2016
release.sh Add daemon to pull kernel images to each node (#641) May 7, 2019
requirements.txt Further refinement - still very raw May 31, 2018
requirements.yml Update requirements to yarn-api-client >= 0.3.5 Jun 13, 2019
setup.cfg Drop support for Python 2.x Mar 26, 2019
setup.py Update requirements to yarn-api-client >= 0.3.5 Jun 13, 2019

README.md

Website | Technical Overview | Features | Installation | System Architecture | Contributing |

Jupyter Enterprise Gateway

PyPI version Build Status Documentation Status Coverage Status Google Group Join the chat at https://gitter.im/jupyter/enterprise_gateway

Jupyter Enterprise Gateway enables Jupyter Notebook to launch remote kernels in a distributed cluster, including Apache Spark managed by YARN, IBM Spectrum Conductor, Kubernetes or Docker Swarm.

It provides out of the box support for the following kernels:

  • Python using IPython kernel
  • R using IRkernel
  • Scala using Apache Toree kernel

Full Documentation for Jupyter Enterprise Gateway can be found here

Jupyter Enterprise Gateway does not manage multiple Jupyter Notebook deployments, for that you should look for JupyterHub.

Technical Overview

Jupyter Enterprise Gateway is a web server that provides headless access to Jupyter kernels within an enterprise. Built directly upon Jupyter Kernel Gateway, Jupyter Enterprise Gateway leverages all of the Kernel Gateway functionality in addition to the following:

  • Adds support for remote kernels hosted throughout the enterprise where kernels can be launched in the following ways:
    • Local to the Enterprise Gateway server (today's Kernel Gateway behavior)
    • On specific nodes of the cluster utilizing a round-robin algorithm
    • On nodes identified by an associated resource manager
  • Provides support Apache Spark managed by YARN, IBM Spectrum Conductor, Kubernetes or Docker Swarm out of the box.
    Others can be configured via Enterprise Gateway's extensible framework.
  • Secure communication from the client, through the Enterprise Gateway server, to the kernels
  • Multi-tenant capabilities
  • Ability to associate profiles consisting of configuration settings to a kernel for a given user
  • Persistent kernel sessions

Deployment Diagram

Features

See Enterprise Gateway Features in the documentation for a list of Jupyter Enterprise Gateway features.

Installation

Detailed installation instructions are located in the Getting Started page of the project docs. Here's a quick start using pip:

# install from pypi
pip install --upgrade jupyter_enterprise_gateway

# show all config options
jupyter enterprisegateway --help-all

# run it with default options
jupyter enterprisegateway

Please check the Configuration Options page for information about the supported options.

System Architecture

The System Architecture page includes information about Enterprise Gateway's remote kernel, process proxy, and launcher frameworks.

Contributing

The Contribution page includes information about how to contribute to Enterprise Gateway along with our roadmap. While there, you'll want to set up a development environment and check out typical developer tasks.

You can’t perform that action at this time.