CSI Openstack module (shturval-capos-csi)

About the service

ParameterDescription
GUI nameCSI Openstack Module
System name (identifier)shturval-capos-csi
Cluster AssignmentDynamic provisioning of volumes in OpenStack Cinder; connecting OpenStack block volumes as PersistentVolume upon request.
CriticalNo
Public repositoryCSI Cinder (OpenStack)
Dependenciesshturval-networking
Namespaceshturval-capos-csi

Purpose

shturval-capos-csi — CSI OpenStack module (Cinder driver). Allows you to mount volumes from OpenStack Cinder as PersistentVolume on demand via StorageClass when using OpenStack-based clusters.

Where to configure

Services and repositories → Installed services → shturval-capos-csi → Manage.

Setting up storage classes: StorageClasses. For clusters on OpenStack, after installing the shturval-capos provider, when creating a cluster with CSI integration, the module can be installed automatically.

Installation in a cluster

If CSI integration was enabled when creating a cluster with the OpenStack provider, the module is installed automatically. To manually install, go to Services and Repositories → Available Charts, find shturval-capos-csi and click Install. Select the namespace shturval-capos-csi (create it if necessary).

During installation, StorageClasses csi-cinder-sc-delete and csi-cinder-sc-retain are added to the cluster. If you need to redefine chart parameters, apply the changes via ShturvalServicePatch.

Customvalues example
storageClass:
  delete:
    isDefault: true
ParameterDescriptionTypeExample
storageClass.delete.isDefaultSet StorageClass with delete policy as defaultbooleantrue

Setting up Secret cloud-config

After installing the module, create a Secret in the namespace shturval-capos-csi with the connection data to the provider.

  1. Create the connection configuration:
Configuration example
[Global]
auth-url=<your value>
username=<your value>
password=<your value>
region=<your value>
tenant-id=<your value>
domain-name=<your value>
[BlockStorage]
ignore-volume-microversion=true
ParameterDescriptionExample
auth-urlAuthentication Server URLhttps://example.ru:35357/v3/
usernameUsernameusername
passwordUser Passwordmy-password
regionRegion nameRegionOne
tenant-idProject ID (project_id)projectid
domain-nameUser domain nameusers
  1. In the GUI, go to namespace shturval-capos-csi → Storage → Secrets and create a Secret:
    • Name: cloud-config
    • Type: Opaque
    • Key: cloud.conf, value - prepared configuration.

Important notes

  • For the module to work in the cluster, shturval-networking must be running.
  • When deleting a cluster with an OpenStack PVC provider in the virtualization platform, you will need to delete it manually.
  • StorageClass by default only applies to new PersistentVolumeClaim. To change the default StorageClass, remove the storageclass.kubernetes.io/is-default-class: "true" annotation from StorageClass local-path.

How to deploy this service - How to deploy a new service.