Installation
Prerequisites
| Requirement | Minimum version | Notes |
|---|---|---|
| Kubernetes | 1.28 | Tested on 1.28–1.30 |
| Velero | 1.12 | At least one BackupStorageLocation must be configured and accessible |
| Helm | 3.x | Required 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
- Quick Start — create your first
RestoreTestand trigger a run - Dashboard Access — open the web UI