Skip to main content
Skip table of contents

Install DKP in an Air-gapped Environment

How to run DKP using an Air-gapped installation

The following explains how to run DKP on top of an air-gapped DKP cluster installation.

Prerequisites

Before installing, ensure you have:

  • A Docker registry containing all the necessary Docker installation images, including the Kommander images. The kommander-image-bundle.tar tarball has the required artifacts.

  • A charts bundle file containing all Helm charts that Kommander installation needs.

  • Connectivity with clusters attaching to the management cluster:

    • Both management and attached clusters must be able to connect to the Docker registry.

    • The management cluster must be able to connect to all attached cluster’s API servers.

    • The management cluster must be able to connect to any load balancers created for platform services on the management cluster.

  • A configuration file that you can adapt to your needs using the steps outlined in this topic. Make sure to create that file using the following command:

CODE
dkp install kommander --init --airgapped > install.yaml

Kommander Charts Bundle

The charts bundle is a gzipped Tar archive containing Helm charts, which are required during Kommander installation. Create the charts bundle with the DKP CLI or downloaded along with the DKP CLI. Execute this command to create the charts bundle:

CODE
dkp create chart-bundle

Kommander creates charts-bundle.tar.gz. Optionally, specify the output using the -o parameter:

CODE
dkp create chart-bundle -o [name of the output file]

Kommander Internal Helm Repository

The Kommander charts bundle is pushed to Kommander’s internal Helm repository. To inspect the contents:

CODE
dkp get charts

Individual charts can be removed using:

CODE
dkp delete chart [chartName] [chartVersion]

It is possible to push new charts as well:

CODE
dkp push chart [chartTarball]

Or push a new bundle:

CODE
dkp push chart-bundle [chartsTarball]

Check the built-in help text for each command for more information.

Load the Docker images into your Docker registry

  1. See the NOTICES.txt file for 3rd party software attributions and place the kommander-image-bundle-v2.3.3.tar bundle within a location where you can load and push the images to your private Docker registry.

  2. Run the following command to load the air-gapped image bundle into your private Docker registry:

    CODE
    dkp push image-bundle --image-bundle kommander-image-bundle-v2.3.3.tar --to-registry <REGISTRY_URL>

It may take a while to push all the images to your image registry, depending on the performance of the network between the machine you are running the script on and the Docker registry.

Install on Konvoy

This docker image includes code from the MinIO Project (“MinIO”), which is © 2015-2021 MinIO, Inc. MinIO is made available subject to the terms and conditions of the GNU Affero General Public License 3.0.

Complete source code for MinIO is available here, here, and here

  1. Create the configuration file by running dkp install kommander --init --airgapped > install.yaml for the air-gapped deployment. Open the install.yaml file and review that it looks like the following:

    CODE
    apiVersion: config.kommander.mesosphere.io/v1alpha1
    kind: Installation
    airgapped:
      enabled: true
    
  2. In the same file, if you are installing Kommander in an AWS VPC, set the Traefik annotation to create an internal facing ELB by setting the following:

    CODE
    apps:
      traefik:
        values: |
          service:
            annotations:
              service.beta.kubernetes.io/aws-load-balancer-internal: "true"
  3. Download the Kommander application definitions:

    CODE
    wget "https://downloads.d2iq.com/dkp/v2.3.3/kommander-applications-v2.3.3.tar.gz"
  4. Download the Kommander charts bundle:

    CODE
    wget "https://downloads.d2iq.com/dkp/v2.3.3/dkp-kommander-charts-bundle-v2.3.3.tar.gz" && tar -xvf dkp-kommander-charts-bundle-v2.3.3.tar.gz
  5. To install Kommander in your air-gapped environment using the above configuration file, enter the following command:

    CODE
    dkp install kommander --installer-config ./install.yaml \
    --kommander-applications-repository kommander-applications-v2.3.3.tar.gz \
    --charts-bundle dkp-kommander-charts-bundle-v2.3.3.tar.gz
  6. When completed, you can verify your installation.

This Docker image includes code from the MinIO Project (“MinIO”), which is © 2015-2021 MinIO, Inc. MinIO is made available subject to the terms and conditions of the GNU Affero General Public License 3.0. The complete source code for the versions of MinIO packaged with DKP/Kommander/Konvoy 2.3.2 are available at these URLs:

https://github.com/minio/minio/tree/RELEASE.2022-01-08T03-11-54Z
https://github.com/minio/minio/tree/RELEASE.2021-02-14T04-01-33Z
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.