Volcano docs - index

Charms for Volcano

Description

Volcano is a batch system built on Kubernetes.

It provides a suite of mechanisms that are commonly required by many

classes of batch & elastic workload including: machine learning/deep learning,

bioinformatics/genomics and other “big data” applications.

These types of applications typically run on generalized domain frameworks

like TensorFlow, Spark, Ray, PyTorch, MPI, etc, which Volcano integrates with.

Charmhub package name: operator-template

More information:

Deployment

Quickstart

The suite of Volcano charms can be deployed within any kubernetes cluster so long as one has a valid admin token in a kubeconfig.

If deploying to an existing machine based juju controller, you’ll first need to add a kubernetes-cloud with add-k8s


KUBECONFIG=path/to/my/kubeconfig juju add-k8s k8s-cloud

Next, create a kubernetes namespace for volcano with a juju model


juju add-model volcano-system

Then deploy the bundle from charmhub


juju deploy volcano --trust

The full process


juju add-model volcano-system

juju deploy volcano-admission --trust

juju deploy volcano-controllers --trust

juju deploy volcano-scheduler --trust

Integrations

Certificates

The volcano admission service is exposed as a service on port 443 for internal communication and comes

by default with self-signed certificates for this service. Its possible to relate to a certificate

provider and have its certs generated by a trusted third-party like vault or easyrsa.


CERT_MODEL=<name of certificate model>

juju switch $CERT_MODEL

juju offer <certificate-application>:client certificates

juju switch volcano-system

juju consume admin/${CERT_MODEL}.certificates

juju relate volcano-admission:certificates certificates

Other resources