Requirements
For reference values of the required number of worker nodes, CPU, RAM, and storage resources, refer to the requirements section.
DKP 2.2 air-gapped installation
Refer to DKP install instructions, if you want to deploy Kaptain in a networked environment or to DKP 2.1 air-gapped instructions if you are deploying with DKP 2.1.
Kaptain supports installation on an air-gapped (a.k.a. offline or private) DKP managed cluster. Before installing Kaptain, please follow the air-gapped installation guide to set up the air-gapped DKP managed cluster. The cluster admin is responsible for configuring the DKP cluster correctly and ensuring container images have been pre-loaded to the private registry before installing Kaptain.
Prerequisites
-
A DKP cluster with the following Platform applications enabled:
- Istio
- Knative (optional, if KServe is configured to work in
RawDeployment
mode)
-
kubectl
on your installation machine -
For customers deploying in a multi-cluster environment (Enterprise): Ensure you have configured Kaptain to authenticate with a Management Cluster.
-
Ensure the following applications are enabled in Kommander.
Review the Kommander installation documentation for more information.
```yaml apiVersion: config.kommander.mesosphere.io/v1alpha1 kind: Installation apps: ... dex: dex-k8s-authenticator: kube-prometheus-stack: istio: knative: minio-operator: traefik: nvidia: # to enable GPU support ... ```
If you need to run Spark jobs on Kubernetes using Spark Operator, you must install it separately. Use the following instructions to install Spark Operator from Kommander Catalog for DKP 2.x.
Add Kaptain to your Kommander Install
Add the Kaptain catalog to the Kommander install configuration file along with the DKP applications catalog:
catalog:
---
repositories:
- name: dkp-catalog-applications
labels:
kommander.d2iq.io/gitapps-gitrepository-type: dkp
kommander.d2iq.io/workspace-default-catalog-repository: "true"
path: ./dkp-catalog-applications
- name: kaptain-catalog-applications
labels:
kommander.d2iq.io/gitapps-gitrepository-type: dkp
kommander.d2iq.io/workspace-default-catalog-repository: "true"
path: ./kaptain-catalog-applications
If you added Kaptain after installing DKP, you must make it available by rerunning the Kommander installation with the updated configuration file.
Load the Docker images into your Docker registry
-
Download the image bundle file:
- Download
kaptain-air-gapped-2.1.0.tar.gz
that will contain the required artifacts to perform an air-gapped installation. - (Optional) Download the custom image artifacts
kaptain-air-gapped-2.1.0_cpu.tar.gz
orkaptain-air-gapped-2.1.0_gpu.tar.gz
based on whether you need CPU or GPU for your workloads.
- Download
-
Extract the image bundle archive and other files within a location where you can load and push the images to your private Docker registry.
-
Ensure you set the
REGISTRY_URL
andAIRGAPPED_TAR_FILE
variable appropriately, then use the following script to load the air-gapped image bundle and the cpu or gpu bundle:dkp push image-bundle --image-bundle ${AIRGAPPED_TAR_FILE} --to-registry ${REGISTRY_URL}
Note: this command is new in DKP 2.2.
Based on the network latency between the environment of script execution, the Docker registry, and the disk speed, this can take a while to upload all the images to your image registry.
-
Download the application bundles and chart archive (get links from support)
-
Extract the application bundle to the location referenced in the Kommander configuration file above.
mkdir kaptain-catalog-applications tar -xvf kaptain-catalog-applications.tar.gz --strip-components 1 -C kaptain-catalog-applications
-
Load the Kaptain chart archive after the Kommander installation:
dkp push chart kaptain-2.1.0.tgz
Deploy Kaptain on selected workspaces
You have installed Kaptain by adding it to the DKP Catalog applications. The next step is to enable and deploy Kaptain on all clusters in a selected workspace. For this, refer to Deploy Kaptain instructions.