Install Requirements
K10 can be installed in a variety of different environments and on a number of Kubernetes distributions today. To ensure a smooth install experience, running the pre-flight checks and ensuring that the prerequisites are met is highly recommended.
Pre-Flight Checks
Assuming that your default kubectl
context is pointed to the
cluster you want to install K10 on, you can run pre-flight checks by
deploying the primer
tool. This tool runs in a pod in the
cluster and does the following:
Validates if the Kubernetes settings meet the K10 requirements.
Catalogs the available StorageClasses.
If a CSI provisioner exists, it will also perform a basic validation of the cluster's CSI capabilities and any relevant objects that may be required. It is strongly recommended that the same tool be used to also perform a more complete CSI validation using the documentation here.
Note that this will create, and clean up, a ServiceAccount and ClusterRoleBinding to perform sanity checks on your Kubernetes cluster.
Run the following command to deploy the the pre-check tool:
$ curl https://docs.kasten.io/tools/k10_primer.sh | bash
To run the pre-flight checks in an air-gapped environment, use the following command:
$ curl https://docs.kasten.io/tools/k10_primer.sh | bash /dev/stdin -i repo.example.com/k10tools:|version|
Note
Follow this guide to prepare K10 container images for air-gapped use.
Prerequisites
The Helm package manager (v3.0.0+) and the Kasten Helm charts repository is required. Installing K10 via
helm
will also automatically create a new Service Account to grant K10 the required access to Kubernetes resources. If a pre-existing Service Account needs to be used, please follow these instructions.Add the Kasten Helm charts repository using:
$ helm repo add kasten https://charts.kasten.io/
You need to create the namespace where Kasten will be installed. By default, the documentation uses
kasten-io
.$ kubectl create namespace kasten-io
K10 assumes that the default storage class for is backed by SSDs or similarly fast storage media. If that is not true, please add the following option to the K10 Helm install commands to specify a performance-oriented storage class.
--set global.persistence.storageClass=<storage-class-name>
K10 Image Source Repositories
Here is the list of all the repositories that are used to deploy K10.
docker.io/grafana
docker.io/jimmidyson
gcr.io/kasten-images
ghcr.io/kanisterio
quay.io/prometheus
registry.access.redhat.com/ubi9