Installation
This guide will help you install Kthena on your Kubernetes cluster.
Prerequisites
Before installing Kthena, ensure you have the following:
- Kubernetes cluster (version 1.20 or later)
- kubectl configured to access your cluster
- Helm (version 3.0 or later)
- cert-manager (see the Certificate Management section for more details.)
- Cluster admin permissions
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.1.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 controller.replicas=2 \
--set router.service.type=LoadBalancer
Common Configuration Parameters
| Parameter | Description | Default |
|---|---|---|
controller.replicas | Number of controller replicas | 1 |
router.service.type | Router service type | ClusterIP |
registry.enabled | Enable model registry | true |
autoscaler.enabled | Enable auto-scaling | true |
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
Certificate Management
Kthena components such as webhooks and the router require certificates for secure communication.
Default Configuration (Requires cert-manager)
When installing Kthena using the default configuration, cert-manager is required to automatically handle certificate provisioning and management for webhooks and other secure components.
To install cert-manager, follow the official installation guide: Cert Manager Installation
Manual Certificate Management (Fallback Option)
If you cannot use cert-manager in your environment, you can disable it and manually configure certificate management using your own CA bundle.
helm install kthena oci://ghcr.io/volcano-sh/charts/kthena \
--namespace kthena-system \
--create-namespace \
--set global.certManager.enabled=false
--set global.webhook.caBundle="LS0tLS1CRUdJTi..."
For more details, please refer to the Manual Certificate Management documentation.
Note: Manual certificate management requires additional configuration and maintenance. We recommend using cert-manager for production environments.
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
Kthena provides a CLI tool called kthena to manage your Kthena deployments. You can download CLI from the GitHub release page. Please refer to the CLI documentation for more information.