Using the Installer in an Air-Gapped Environment
Defining Air-Gapped Environments
An air-gapped environment is any environment in which the running hosts will not have access to the greater internet. This proposes a situation in which these hosts are unable to get access to various needed bits of software from Element and also are unable to share telemetry data back with Element.
For some of these environments, they can be connected to the internet from time to time and updated during those connection periods. In other environments, the hosts are never connected to the internet and everything must be moved over sneaker net.
This guide will cover running the microk8s installer when only sneaker net is available as that is the most restrictive of these environments.
Preparing the media to sneaker net into the air gapped environment
You will need our airgapped dependencies .tar.gz file which you can get from Element:
- element-enterprise-installer-airgapped-<version>.tar.gz
Running the installer in the air gapped environment
Extract the airgapped dependencies to the airgapped
directory at the root of the installer folder. You obtain the following directories :
-
airgapped/pip
-
airgapped/galaxy
-
airgapped/snaps
-
airgapped/containerd
-
airgapped/images
Your airgapped machine will still require access to airgapped linux repositories depending on your OS.
Add the following parameters in your parameters.yml :
-
local_registry: localhost:32000
-
images_dir: <absolute path to the airgapped/images directory>
The installer will upload the images automatically to your local registry, and use these references to start the workloads.
When running the install script, add the parameter --airgapped
so that it installs its pip and galaxy dependencies from the airgapped folder.
If you are using the kubernetes installer (instead of the single node installer), please note that once the image upload has been done, you will need to copy the airgapped/images/images_digests.yml
file to the same path on the machine which will be used to render or deploy element services. Doing this, the new image digests will be used correctly in the kubernetes manifests used for deployment.