Skip to main content

Installation

Prerequisites

RequirementMinimum versionNotes
Kubernetes1.28Tested on 1.28–1.30
Velero1.12At least one BackupStorageLocation must be configured and accessible
Helm3.xRequired for the standard install path

Kymaros uses Velero as its backup provider. Velero must be installed and have access to a populated backup store before you create any RestoreTest resources.


Install with Helm

Add the Kymaros chart repository and install the operator into a dedicated namespace:

helm repo add kymaros https://charts.kymaros.io
helm repo update
helm install kymaros kymaros/kymaros \
--namespace kymaros-system \
--create-namespace

This installs three components:

  • kymaros-controller — the operator reconciliation loop
  • kymaros-api — REST API consumed by the dashboard and CLI
  • kymaros-frontend — the built-in web dashboard

Verify pods are running

kubectl get pods -n kymaros-system

Expected output (all pods Running):

NAME                                    READY   STATUS    RESTARTS   AGE
kymaros-controller-7d9f8b6c4d-xk2lp 1/1 Running 0 45s
kymaros-api-6c8b9d5f7-p9wqr 1/1 Running 0 45s
kymaros-frontend-5f7d4c8b9-m3ntz 1/1 Running 0 45s

Verify CRDs are registered

kubectl get crd | grep kymaros

Expected output (three CRDs):

healthcheckpolicies.restore.kymaros.io    2024-01-15T03:00:00Z
restorereports.restore.kymaros.io 2024-01-15T03:00:00Z
restoretests.restore.kymaros.io 2024-01-15T03:00:00Z

If any CRD is missing, check the controller logs:

kubectl logs -n kymaros-system deploy/kymaros-controller

Install from Source

Use this path if you need to build from a local checkout or a development branch.

git clone https://github.com/kymorahq/kymora.git
cd kymora

Install CRDs into the cluster:

make install

Build the controller image and push it to your registry, then deploy:

make docker-build IMG=your-registry/kymaros-controller:dev
make docker-push IMG=your-registry/kymaros-controller:dev
make deploy IMG=your-registry/kymaros-controller:dev

The make deploy target uses kustomize to apply the manifests under config/.


Uninstall

Helm

helm uninstall kymaros -n kymaros-system
kubectl delete namespace kymaros-system

To also remove the CRDs (this deletes all RestoreTest and RestoreReport resources):

kubectl delete crd \
restoretests.restore.kymaros.io \
restorereports.restore.kymaros.io \
healthcheckpolicies.restore.kymaros.io

From Source

make undeploy
make uninstall
kubectl delete namespace kymaros-system

Next Steps