Installation
This guide will help you install Kthena on your Kubernetes cluster.
Prerequisites
Before installing Kthena, ensure you have the following:
Required Prerequisites
- Kubernetes cluster (version 1.20 or later)
- kubectl configured to access your cluster
- Helm (version 3.0 or later)
- Cluster admin permissions
Optional Prerequisites
- cert-manager - Required only if using the
cert-managercertificate management mode (see Certificate Management for details)
Installation Methods
Method 1: Helm Installation (Recommended)
Kthena Helm charts are published to the GitHub Container Registry (GHCR).
-
Install Kthena directly from GHCR:
helm install kthena oci://ghcr.io/volcano-sh/charts/kthena --version v0.2.0 --namespace kthena-system --create-namespace
Method 2: Manual Installation with GitHub Release Manifests
Kthena provides all necessary components in a single manifest file for easy installation from GitHub Releases.
-
Apply the Kthena manifest:
kubectl apply -f https://github.com/volcano-sh/kthena/releases/latest/download/kthena-install.yamlTo install a specific version, replace
latestwith the desired release tag (e.g.,v1.2.3):kubectl apply -f https://github.com/volcano-sh/kthena/releases/download/vX.Y.Z/kthena-install.yaml
Method 3: Helm Installation from GitHub Release Package
You can also download the Helm chart package from GitHub releases and install it locally.
-
Download the Helm chart package:
For the latest version:
curl -L -o kthena.tgz https://github.com/volcano-sh/kthena/releases/latest/download/kthena.tgzFor a specific version (replace
vX.Y.Zwith the desired release tag):curl -L -o kthena.tgz https://github.com/volcano-sh/kthena/releases/download/vX.Y.Z/kthena.tgz -
Install from the downloaded package:
helm install kthena kthena.tgz --namespace kthena-system --create-namespace
Configuration Options
Helm Values
You can customize the installation by providing values:
helm install kthena oci://ghcr.io/volcano-sh/charts/kthena \
--namespace kthena-system \
--create-namespace \
--set workload.controllerManager.replicas=2 \
--set networking.kthenaRouter.tls.enabled=true
Common Configuration Parameters
| Parameter | Description | Default |
|---|---|---|
workload.controllerManager.replicas | Number of controller manager replicas | 1 |
networking.kthenaRouter.replicas | Number of router replicas | 1 |
networking.kthenaRouter.tls.enabled | Enable TLS for the router | false |
global.certManagementMode | Certificate management mode (auto, cert-manager, manual) | auto |
Full Values Reference
For a complete list of all configurable Helm values, see the Helm Chart Values Reference.
Verification
After installation, verify that all components are running:
# Check all pods are running
kubectl get pods -n kthena-system
# Check CRDs are installed (CRDs are included in the main manifest/chart)
kubectl get crd | grep kthena
# Check services
kubectl get svc -n kthena-system
Optional Components
Gang Scheduling
Kthena leverages Volcano (a high-performance batch system for Kubernetes) to provide gang scheduling capabilities.
If you need gang scheduling capabilities, you can install Volcano by following the official installation guide of Volcano.
Kthena CLI
The Kthena CLI provides kubectl‑style commands for managing AI inference workloads on Kubernetes, featuring quick deployment via curated templates and optional integration with kubectl‑ai for natural‑language command generation.
Installation
Download the latest binary from the releases page or build from source:
go install github.com/volcano-sh/kthena/cli/kthena@latest
Please see Kthena CLI Documentation for more details.