Ceph CSI
Channel | Revision | Published | Runs on |
---|---|---|---|
latest/stable | 88 | 24 Sep 2025 | |
latest/stable | 70 | 11 Feb 2025 | |
latest/candidate | 60 | 13 Dec 2024 | |
latest/beta | 88 | 26 Aug 2025 | |
latest/beta | 70 | 11 Feb 2025 | |
latest/edge | 86 | 27 Jun 2025 | |
latest/edge | 76 | 06 Mar 2025 | |
1.34/stable | 88 | 24 Sep 2025 | |
1.34/beta | 88 | 25 Aug 2025 | |
1.34/edge | 87 | 04 Aug 2025 | |
1.33/stable | 85 | 27 Jun 2025 | |
1.33/beta | 85 | 26 Jun 2025 | |
1.33/edge | 86 | 27 Jun 2025 | |
1.33/edge | 76 | 06 Mar 2025 | |
1.32/stable | 70 | 11 Feb 2025 | |
1.32/beta | 70 | 11 Feb 2025 | |
1.32/edge | 75 | 25 Feb 2025 | |
1.31/stable | 60 | 16 Dec 2024 | |
1.31/candidate | 60 | 13 Dec 2024 | |
1.31/edge | 57 | 04 Sep 2024 | |
1.30/stable | 50 | 31 Jul 2024 | |
1.30/candidate | 50 | 17 Jul 2024 | |
1.30/beta | 47 | 15 Jun 2024 | |
1.30/edge | 52 | 18 Jul 2024 | |
1.29/stable | 51 | 31 Jul 2024 | |
1.29/candidate | 51 | 17 Jul 2024 | |
1.29/beta | 43 | 17 Apr 2024 | |
1.29/edge | 41 | 28 Feb 2024 | |
1.28/stable | 37 | 07 Nov 2023 | |
1.28/candidate | 37 | 01 Nov 2023 | |
1.28/beta | 32 | 07 Aug 2023 | |
1.28/edge | 33 | 09 Aug 2023 | |
1.27/stable | 29 | 12 Jun 2023 | |
1.27/candidate | 29 | 12 Jun 2023 | |
1.27/beta | 24 | 10 Apr 2023 | |
1.27/edge | 22 | 08 Apr 2023 | |
1.26/stable | 19 | 27 Feb 2023 | |
1.26/candidate | 19 | 25 Feb 2023 | |
1.26/beta | 14 | 09 Apr 2023 | |
1.26/edge | 14 | 19 Nov 2022 | |
1.25/stable | 12 | 30 Sep 2022 | |
1.25/candidate | 12 | 28 Sep 2022 | |
1.25/beta | 15 | 01 Dec 2022 | |
1.25/edge | 3 | 16 Aug 2022 |
juju deploy ceph-csi
Deploy universal operators easily with Juju, the Universal Operator Lifecycle Manager.
Platform:
-
ceph-ext4-storage-class-name-formatter | string
Default: ceph-ext4
Formatter for the ceph ext4 storage class name
The formatter is a string that can contain the following placeholders:
- {app} - the name of the juju application
- {namespace} - the charm configured namespace
Example: juju config ceph-csi ceph-ext4-storage-class-name-formatter="ceph-ext4-{app}"
The default is to use the storage class name
-
ceph-ext4-storage-class-parameters | string
Default: imageFeatures=layering
Parameters to be used when creating the the ceph-ext4 storage class. Changes are only applied to the storage class if it does not exist.
Declare additional/replacement parameters in key=value format, separated by spaces. Declare removed parameters in the key- format, separated by spaces.
Optional parameters can be found in the ceph-csi documentation: https://github.com/ceph/ceph-csi/blob/devel/examples/rbd/storageclass.yaml
-
ceph-rbac-name-formatter | string
Default: {name}
Formatter for colliding kubernetes rbac resources
The formatter is used to create a unique name for the resource when the name collides with an existing resource. This is useful when deploying multiple ceph-csi charms.
This is a list of non-namespaced resources affected by this formatter:
- ClusterRole/cephfs-csi-nodeplugin
- ClusterRoleBinding/cephfs-csi-nodeplugin
- ClusterRole/cephfs-external-provisioner-runner
- ClusterRoleBinding/cephfs-external-provisioner-runner
- ClusterRole/rbd-csi-nodeplugin
- ClusterRoleBinding/rbd-csi-nodeplugin
- ClusterRole/rbd-external-provisioner-runner
- ClusterRoleBinding/rbd-csi-provisioner-role
The formatter is a string that can contain the following placeholders:
- {app} - the name of the juju application
- {name} - the name of the kubernetes resource
- {namespace} - the charm configured namespace
Example: juju config ceph-csi ceph-rbac-name-formatter="{name}-{app}"
The default is to use the {name} of the resource
-
ceph-rbd-enable | boolean
Default: True
Whether or not ceph-rbd manifests should be installed. This controls both storage classes xfs and ext4
-
ceph-rbd-tolerations | string
Tolerations to be used when creating the rbd pods for Daemonsets and Deployments.
Declare tolerations in key=value,operator,effect format, separating each by spaces.
Optional tolerations can be found in the kubernetes documentation: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/
-
ceph-xfs-storage-class-name-formatter | string
Default: ceph-xfs
Formatter for the ceph xfs storage class name
The formatter is a string that can contain the following placeholders:
- {app} - the name of the juju application
- {namespace} - the charm configured namespace
Example: juju config ceph-csi ceph-xfs-storage-class-name-formatter="ceph-xfs-{app}"
The default is to use the storage class name
-
ceph-xfs-storage-class-parameters | string
Default: imageFeatures=layering
Parameters to be used when creating the ceph-xfs storage class. Changes are only applied to the storage class if it does not exist.
Declare additional/replacement parameters in key=value format, separated by spaces. Declare removed parameters in the key- format, separated by spaces.
Optional parameters can be found in the ceph-csi documentation: https://github.com/ceph/ceph-csi/blob/devel/examples/rbd/storageclass.yaml
-
cephfs-enable | boolean
Whether or not cephfs manifests should be installed
Only enable if ceph-fs is deployed and related to ceph-mon
-
cephfs-mounter | string
The driver can use either ceph-fuse (fuse) or ceph kernelclient (kernel). If omitted, default volume mounter will be used - this is determined by probing for ceph-fuse and mount.ceph
-
cephfs-storage-class-name-formatter | string
Default: cephfs
Formatter for the cephfs storage class name
The formatter is a string that can contain the following placeholders:
- {app} - the name of the juju application
- {namespace} - the charm configured namespace
- {name} - the name of the filesystem
- {pool} - the name of the data-pool
- {pool-id} - the id of the data-pool
Example: juju config ceph-csi cephfs-storage-class-name-formatter="cephfs-{namespace}-{pool}"
The default is to use the storage class name
-
cephfs-storage-class-parameters | string
Parameters to be used when creating the cephfs storage classes. Changes are only applied to the storage classes if they do not exist.
Declare additional/replacement parameters in key=value format, separated by spaces. Declare removed parameters in the key- format, separated by spaces.
Optional parameters can be found in the ceph-csi documentation: https://github.com/ceph/ceph-csi/blob/devel/examples/rbd/storageclass.yaml
-
cephfs-tolerations | string
Default: $csi-cephfsplugin-legacy$
Tolerations to be used when creating the cephfs pods for Daemonsets and Deployments.
Declare tolerations in key=value,operator,effect format, separating each by spaces.
Optional tolerations can be found in the kubernetes documentation: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/
Note: The default value "$csi-cephfsplugin-legacy$" is a special token which applies a "=,Exists" toleration only to pods associated with csi-cephfsplugin.
-
create-namespace | boolean
Whether or not the charm should create the namespace specified in the
namespace
configuration option.If set to true, the charm will create the namespace if it does not exist. If set to false, the charm will not create the namespace and will expect it to be created by the user.
NOTE: Can only be specified on deployment since some attributes of kubernetes resources are non-modifiable.
-
csidriver-name-formatter | string
Default: {name}
Formatter for the 2 CSIDrivers managed by this charm:
- rbd.csi.ceph.com
- cephfs.csi.ceph.com
The formatter is a string that can contain the following placeholders:
- {name} - original name from the manifest
- {app} - the name of the juju application
- {namespace} - the charm configured namespace
Example: juju config ceph-csi csidriver-name-formatter="{app}.{name}"
The default is to use the built-in storage classname
NOTE: Can only be specified on deployment since some attributes of kubernetes resources cannot be modified once installed.
-
default-storage | string
Default: ceph-xfs
Default storage class to use. Allowed values: 'ceph-ext4', 'ceph-xfs', 'cephfs'
-
enable-host-networking | boolean
Whether or not csi-*plugin-provisioner deployments use host-networking
-
image-registry | string
Default: rocks.canonical.com/cdk
Image registry for all Ceph CSI container images.
This value replaces the image registry in image URLs from the release manifests. For example, an image URL like
quay.io/cephcsi/cephcsi:v3.8.0
becomesrocks.canonical.com/cdk/cephcsi/cephcsi:v3.8.0
if set torocks.canonical.com/cdk
.Example: juju config ceph-csi image-registry="rocks.canonical.com/cdk"
-
metrics-port-cephfsplugin | int
Default: -1
Port for csi-cephfsplugin liveness-prometheus metrics
If set to -1, the metrics service will not be created
-
metrics-port-cephfsplugin-provisioner | int
Default: -1
Port for csi-cephfsplugin-provisioner liveness-prometheus metrics
If set to -1, the metrics service will not be created
-
metrics-port-rbdplugin | int
Default: -1
Port for csi-rbdplugin liveness-prometheus metrics
If set to -1, the metrics service will not be created
-
metrics-port-rbdplugin-provisioner | int
Default: -1
Port for csi-rbdplugin-provisioner liveness-prometheus metrics
If set to -1, the metrics service will not be created
-
namespace | string
Kubernetes namespace in which to install the rbd and cephfs components including deployments, daemonsets, secrets, configmaps.
if unspecified, "default" is assumed
NOTE: Can only be specified on deployment since some attributes of kubernetes resources are non-modifiable. The admin is responsible for creating the namespace.
-
provisioner-replicas | int
Default: 3
Number of replicas of any csi-*plugin-provisioner deployment
-
release | string
Default: v3.9.0
Specify the version of ceph-csi as defined by the
release
tags of https://github.com/ceph/ceph-csiexample) juju config ceph-csi release='v3.7.2'
A list of supported versions is available through the action: juju run ceph-csi/leader list-versions
To reset by to the latest supported by the charm use: juju config ceph-csi --reset release
The current release deployed is available by viewing juju status ceph-csi