Skip to main content
A self-service SUNK cluster provisions shared storage for you from the spec.storage field of the SunkCluster resource. You define a home directory and any additional mounts by path and size, and the operator creates the underlying storage and mounts it on every login and compute node. This page shows how to size the home directory, add extra mounts, and change storage after the cluster is running. This is the SUNK-managed storage path. To mount PVCs that you manage yourself, see Share storage across Slurm nodes. For the full storage configuration reference, including field definitions, see the SunkCluster reference.

How managed storage works

Each entry in spec.storage becomes one shared volume that the operator provisions as a ReadWriteMany PVC and mounts at the path you specify. Because the volumes are ReadWriteMany, every login and compute node in the cluster mounts the same storage at the same path, so a file written from one node is visible on all of them. The managed volumes belong to the cluster: each PVC is owned by the SunkCluster resource. Data persists across pod restarts and node replacement, but deleting the SunkCluster also deletes its managed storage. Persist anything you need to keep outside the cluster before you delete it.

Size the home directory

The spec.storage.homeDir field sets the shared home directory. If you omit it, the cluster provisions a 2Ti volume mounted at /mnt/home. To use a different size or path, set the field explicitly:
When you set homeDir, both path and size are required. The size is a Kubernetes quantity, such as 2Ti or 500Gi.

Add additional mounts

Use spec.storage.additionalMounts to provision shared storage beyond the home directory, such as a volume for datasets or job output. Each entry is a path and a size:
Each mount becomes its own ReadWriteMany volume available at its path on every node. Mount paths must be unique within the cluster.

Change storage after creation

To change storage on a running cluster, edit spec.storage and reapply the SunkCluster. The operator reconciles the difference, but the safe changes are limited, and some changes delete data. The following table summarizes what each kind of change does.
Because the operator identifies a managed volume by its path, a path that is no longer in spec.storage is removed. If you change a mount path or remove a mount, the underlying volume and its data are destroyed. Treat paths as fixed after creation, and back up any data you need before removing a mount.
In practice, treat additionalMounts as additive and treat size as growable but not shrinkable. To reorganize storage without losing data, add the new mount, copy the data across from a login node, and only then remove the old mount.

Next steps

Last modified on August 12, 2026