Skip to main content

Overview

Cluster drivers are the provisioning engine behind K8SaaS. Each driver defines the orchestration templates and bootstrap scripts used to deploy and manage a specific type of cluster. Xloud K8SaaS ships with the kubernetes driver as the supported default. You can enable, disable, or configure driver behaviour through the K8SaaS service configuration file.
Changing driver configuration affects all future cluster deployments. Existing clusters continue to use the driver version they were provisioned with.

Available Drivers

DriverStatusDescription
kubernetesDefaultProvisions Kubernetes clusters using Xloud Orchestration (Heat) templates
The kubernetes driver is the only supported driver in standard Xloud K8SaaS deployments. Third-party drivers (e.g., swarm, mesos) are not enabled by default and are not supported in production configurations.

Verify the Driver is Active

List registered driver entry points
openstack coe cluster template list --public
The output shows public cluster templates. If templates exist and are usable, the driver is active.
Check driver configuration
grep -E "disabled_drivers|driver" \
  /etc/xavs/kubernetes/kubernetes.conf
If disabled_drivers is empty or not present, all built-in drivers are enabled.

Driver Configuration

Driver behaviour is configurable in the K8SaaS service configuration file.
etc
xavs
kubernetes
kubernetes.conf — K8SaaS service configuration

Open Advanced Configuration

Navigate to XDeploy → Advanced Configuration and select magnum in the Service Tree.

Edit kubernetes.conf

Select or create kubernetes.conf in the file list. Use the Code Editor to add or modify driver and conductor settings:
kubernetes.conf — Disable experimental drivers
[drivers]
disabled_drivers = swarm,mesos
kubernetes.conf — Increase conductor workers
[DEFAULT]
workers = 4
Click Save Current File after each change.

Deploy the changes

Navigate to XDeploy → Operations and run a Reconfigure for the Kubernetes service.
Driver restrictions and conductor worker count are applied.

Driver Template Location

The kubernetes driver ships Orchestration templates that define the full cluster resource stack. These templates are embedded in the K8SaaS container image.
List driver templates inside the container
docker exec magnum_conductor find \
  /usr/lib/python3/dist-packages/magnum/drivers \
  -name "*.yaml" -maxdepth 4
To inspect a specific template:
View base cluster template
docker exec magnum_conductor cat \
  /usr/lib/python3/dist-packages/magnum/drivers/k8s_fedora_coreos_v1/templates/cluster.yaml

Validate Driver Functionality

Navigate to Admin → Containers → Cluster Templates and create a test public template using the kubernetes driver. If the template is created successfully without errors, the driver is functioning correctly.

Next Steps

Template Management

Create and publish public cluster templates for project teams.

Container Runtime

Configure the container runtime for cluster templates.

Network Drivers

Select and configure CNI plugins for production clusters.

Architecture

Review the full K8SaaS component architecture.