This document outlines how to prepare an air gapped environment for Elyra.
An Elyra installation requires access to Python and Javascript packages, which must be accessible in the environment when the installation is performed.
These dependencies are in addition to any dependencies you wish to include in the installation, such as JupyterLab extensions that are not distributed with Elyra.
When using Elyra's features to build, export, or run pipelines, additional runtime dependencies must be accessible in the environment where JupyterLab is installed and the Kubernetes cluster where the pipeline runtime environment (Kubeflow Pipelines or Apache Airflow) is installed.
In the chart above the arrows indicate whether read access, write access, or both is required.
Elyra requires access to the following dependencies when you build, export, or submit a pipeline:
During pipeline execution in the Kubeflow Pipelines or Apache Airflow environment access to the following dependencies is required:
Elyra runtime artifacts: When processing pipeline nodes that are implemented using generic components, Elyra downloads a few dependencies to the container. By default these dependencies are located in a release-specific branch in the Elyra GitHub repository:
https://raw.githubusercontent.com/elyra-ai/elyra/master/etc/kfp/pip.conf
https://raw.githubusercontent.com/elyra-ai/elyra/master/elyra/kfp/bootstrapper.py
https://raw.githubusercontent.com/elyra-ai/elyra/master/elyra/airflow/bootstrapper.py
https://raw.githubusercontent.com/elyra-ai/elyra/master/etc/generic/requirements-elyra-py37.txt
https://raw.githubusercontent.com/elyra-ai/elyra/master/etc/generic/requirements-elyra.txt
In air-gapped environments you must store a copy of these files in a location that is accessible via an anonymous HTTP GET
request and configure the following environment variables in the environment where JupyterLab is running:
ELYRA_PIP_CONFIG_URL
(URL of .../etc/kfp/pip.conf
)ELYRA_BOOTSTRAP_SCRIPT_URL
(URL of .../elyra/kfp/bootstrapper.py
)ELYRA_REQUIREMENTS_URL_PY37
(URL of .../etc/generic/requirements-elyra-py37.txt
)ELYRA_REQUIREMENTS_URL
(URL of .../etc/generic/requirements-elyra.txt
)ELYRA_BOOTSTRAP_SCRIPT_URL
(URL of .../elyra/airflow/bootstrapper.py
)ELYRA_REQUIREMENTS_URL_PY37
(URL of .../etc/generic/requirements-elyra-py37.txt
)ELYRA_REQUIREMENTS_URL
(URL of .../etc/generic/requirements-elyra.txt
)S3-compatible cloud storage for generic components: When processing pipeline nodes that are implemented using generic components, Elyra downloads the pipeline artifacts that were uploaded when the pipeline was exported or submitted.