ELMA365 On-Premises > Other / Install ELMA365 to an air-gapped Kubernetes cluster

Install ELMA365 to an air-gapped Kubernetes cluster

ELMA365 Helm can be installed in a private environment that has no access to the public container image registry. To do that, you first need to install a private registry, for example, Harbor.

Install the Harbor private registry

  1. On a computer with internet access, go to the Harbor releases page and download the harbor-offline-installer-vX.Y.Z.tgz archive:

wget https://github.com/goharbor/harbor/releases/download/vX.Y.Z/harbor-offline-installer-vX.Y.Z.tgz

  1. You need to copy the archive to the server that will be used to run the installation. Unpack the archive and open the catalog:

tar xzvf harbor-offline-installer-vX.Y.Z.tgz && cd harbor

  1. Copy the configuration example to the harbor.yml file:

cp harbor.yml.sample harbor.yml

  1. Open the harbor.yml configuration file for editing and make the necessary changes: edit the hostname, the HTTP and HTTPS ports, the admin password, the data_volume (location where images will be stored), the DB, etc. If you have a certificate, make sure the keys are at the specified locations.

vim harbor.yml 

  1. Install docker and docker-compose if these packages are missing.
  2. Install Harbor using the following command:

sudo ./install.sh 

  1. To get access to Harbor, enter the domain specified in the configuration file in a web browser (https://registry.example.com:443). Sign in using the username admin and the password set in harbor.yml.
  2. Create a new project in Harbor. To do that, go to Projects and click +New project.

kubernetes-air-gap-1

  1. Enter the project’s name in lowercase letters (for example, images) and specify whether the project needs to be public. Click OK.

kubernetes-air-gap-2

Upload ELMA365 images to the private registry

  1. On a computer with internet access, download and run the script that downloads the images (the total size of the files is ~5 GB).

curl -fsSL -o charts-offline.sh \
https://dl.elma365.com/onPremise/chart/latest/charts-offline && \
chmod +x charts-offline.sh && \
./charts-offline.sh --pull

  1. After downloading all the files, you need to copy the elma365-X.Y.Z catalog to the server that will be used for installation.
  2. Open the elma365-X.Y.Z catalog and upload the ELMA365 images to the private registry using the following command:

./charts-offline.sh --push --uri registry.example.com:443/images/elma365 --creds admin:Harbor12345

Install the elma365-dbs package

  1. Open the elma365-X.Y.Z/elma-dbs catalog. In the values-dbs.yaml file, in the image section, specify the parameters of the private registry for each DB:

# Address and secret for the private registry.
image:
  registry: registry.example.com:443/images/elma365
# Secret with access to the private registry needs to be created manually and encrypted in Base64.
  pullSecrets:
    - myRegistryKeySecretName

  1. Install the elma365-dbs package. Read more about this in the Install ELMA365 to Kubernetes article.

Install the elma365 package

  1. Go to the elma365-X.Y.Z/elma365 catalog. In the values-dbs.yaml file, in the image section, specify the parameters of the private registry:

# Address and secret for the private registry.
image:
  registry: registry.example.com:443/images/elma365
  dockerRegistry: registry.example.com
# Secret with access to the private registry needs to be created manually and encrypted in Base64. 
  pullSecret:
    - myRegistryKeySecretName

  1. Install the elma365 package. Read more about this in the Install ELMA365 to Kubernetes article.

Found a typo? Highlight the text, press ctrl + enter and notify us