The easiest way to get started with Volcano is to download the release package from GitHub and follow the following steps:
Prerequisites
- Kubernetes 1.12+ with CRD support.
Installation Modes
- Install with YAML files
- Install from code
- Install with Helm
Install with YAML files
Install Volcano on an existing Kubernetes cluster. This way is both available for x86_64 and arm64 architecture.
kubectl apply -f https://raw.githubusercontent.com/volcano-sh/volcano/master/installer/volcano-development.yaml
You can also replace master of above url with specific tag/branch (such as release-1.10 branch for latest v1.10.x version, v1.10.0 tag for v1.10.0 version) to install Volcano with specific version.
Install from code
If you don’t have a Kubernetes cluster, try one-click install from code base.This way is only available for x86_64 temporarily.
git clone https://github.com/volcano-sh/volcano.git
cd volcano
./hack/local-up-volcano.sh
Install with Helm
This document guides how to install the latest version of volcano.
Use Helm charts to install Volcano with the following command.
helm repo add volcano-sh https://volcano-sh.github.io/helm-charts
helm repo update
helm install volcano volcano-sh/volcano -n volcano-system --create-namespace
The output is as follows after executing the above command.
NAME: volcano
LAST DEPLOYED: Tue Sep 29 10:18:44 2024
NAMESPACE: volcano-system
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
Thank you for installing volcano.
Your release is named volcano.
For more information on volcano, visit:
https://volcano.sh/
Verify status of Volcano components.
# kubectl get all -n volcano-system
NAME                                       READY   STATUS      RESTARTS   AGE
pod/volcano-admission-5bd5756f79-p89tx     1/1     Running     0          6m10s
pod/volcano-admission-init-d4dns           0/1     Completed   0          6m10s
pod/volcano-controllers-687948d9c8-bd28m   1/1     Running     0          6m10s
pod/volcano-scheduler-94998fc64-9df5g      1/1     Running     0          6m10s
NAME                                TYPE        CLUSTER-IP     EXTERNAL-IP   PORT(S)   AGE
service/volcano-admission-service   ClusterIP   10.96.140.22   <none>        443/TCP   6m10s
NAME                                  READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/volcano-admission     1/1     1            1           6m10s
deployment.apps/volcano-controllers   1/1     1            1           6m10s
deployment.apps/volcano-scheduler     1/1     1            1           6m10s
NAME                                             DESIRED   CURRENT   READY   AGE
replicaset.apps/volcano-admission-5bd5756f79     1         1         1       6m10s
replicaset.apps/volcano-controllers-687948d9c8   1         1         1       6m10s
replicaset.apps/volcano-scheduler-94998fc64      1         1         1       6m10s
NAME                               COMPLETIONS   DURATION   AGE
job.batch/volcano-admission-init   1/1           28s        6m10s
After the configuration is complete, you can use Volcano to deploy the AI/ML and big data workloads.