Gateway Provisioners - a package containing kernel provisioners supporting the deployment of remote and resource-managed kernels.
Project description
Gateway Provisioners
NOTE: This repository is experimental and undergoing frequent changes!
Gateway Provisioners provides kernel provisioners that interact with kernels launched into resource-managed clusters or otherwise run remotely from the launching server. This functionality derives from Jupyter Enterprise Gateway's process proxy architecture. However, unlike [process proxies] (https://jupyter-enterprise-gateway.readthedocs.io/en/latest/contributors/system-architecture.html#process-proxy), you do not need to use a gateway server to use these provisioners - although, in certain cases, it is recommended (for example when the launching server does not reside within the same network as the launched kernel).
Here is the current set of provisioners provided by this package, many of which have their requirements conditionally installed:
KubernetesProvisioner
- Kernels (residing in images) are launched as pods within a Kubernetes clusterpip install gateway_provisioners[k8s]
DockerSwarmProvisioner
- Kernels (residing in images) are launched as containers within a DockerSwarm clusterDockerProvisioner
- Kernels (residing in images) are launched as containerspip install gateway_provisioners[docker]
YarnProvisioner
- Kernels are launched into a Hadoop YARN cluster (primarily Spark)pip install gateway_provisioners[yarn]
DistributedProvisioner
- Kernels are launched across a set of hosts using SSH, round-robinpip install gateway_provisioners
This package also includes command-line utilities that can be used to create kernel specifications or inject bootstrap files into docker images relative to the desired provisioner:
jupyter-k8s-spec
- for building kernel specifications relative to theKubernetesProvisioner
jupyter-docker-spec
- for building kernel specifications relative toDockerProvisioner
andDockerSwarmProvisioner
jupyter-yarn-spec
- for building kernel specifications relative to theYarnProvisioner
jupyter-ssh-spec
- for building kernel specifications relative to theDistributedProvisioner
jupyter-image-bootstrap
- for injecting bootstrap support when building kernel-based images
NOTE: The container-based provisioners (KubernetesProvisioner
, DockerSwarmProvisioner
, and DockerProvisioner
)
require that the hosting server also be running within the same environment/network. As a result, these
provisioners may be better suited for use by a Gateway Server (Kernel Gateway or Enterprise Gateway) so
as to not require the Notebook/Lab server to be in a container.
Installation
Detailed installation instructions are located in the
Operators Guide
of the project docs. Here's a quick start using pip
:
# install from pypi
pip install --upgrade gateway-provisioners
# options for the command-line utilities can be viewed using '--help-all'
jupyter k8s-spec install --help-all
# run it with default options
jupyter k8s-spec install
Contributing
The Contribution page includes information about how to contribute to Gateway Provisioners. We encourage you to explore the other topics in our [Contributor's Guide] (https://gateway-provisioners.readthedocs.io/en/latest/contributors/index.html) like how to set up a development environment, gaining an understanding of the system architecture, and taking a look at the [API documentation[(https://gateway-provisioners.readthedocs.io/en/latest/api/modules.html), among other thigns.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file gateway_provisioners-0.1.0.tar.gz
.
File metadata
- Download URL: gateway_provisioners-0.1.0.tar.gz
- Upload date:
- Size: 656.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f502f48fbbb24d42ce7929a50c539bdff2da73cf1a15c32a44da23433d877c98 |
|
MD5 | e87e506200a612ccfd588031cb373327 |
|
BLAKE2b-256 | b4d7778c6cbf08d1b86f6abbb2307d1466ef4f0e4264b62ee8f88497e467b8ee |
File details
Details for the file gateway_provisioners-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: gateway_provisioners-0.1.0-py3-none-any.whl
- Upload date:
- Size: 198.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.1 CPython/3.9.13
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b1e093c3a1f45f038b26b7d28a867843364c7cdebd2931e8c3d9c3db1cd2861e |
|
MD5 | 359756ccf3a4de7b968be80ecd433a19 |
|
BLAKE2b-256 | 05cfbf0c363daf8f2ba25fe9453e2bf7f9a3ea21b675674d9c6697163638a0d6 |