diff --git a/inventory/sample/group_vars/all/openstack.yml b/inventory/sample/group_vars/all/openstack.yml
index 0fec79ad5b0f7091c9eba23488f72a4b66e3d3fc..cac548f84c08e92d5c48e6457ab7c280944854a7 100644
--- a/inventory/sample/group_vars/all/openstack.yml
+++ b/inventory/sample/group_vars/all/openstack.yml
@@ -48,3 +48,13 @@
 ## Make sure to source in the openstack credentials
 # cinder_csi_enabled: true
 # cinder_csi_controller_replicas: 1
+# storage_classes:
+#   - name: "cinder-csi"
+#     provisioner: "kubernetes.io/cinder"
+#     mount_options:
+#       - "discard"
+#     parameters:
+#       type: "thin"
+#       availability: "nova"
+#     reclaim_policy: "Delete"
+#     volume_binding_mode: "WaitForFirstConsumer"
diff --git a/roles/kubernetes-apps/persistent_volumes/openstack/templates/openstack-storage-class.yml.j2 b/roles/kubernetes-apps/persistent_volumes/openstack/templates/openstack-storage-class.yml.j2
index 0551e153569380c2739797e84f9c2a1cfc4943a5..973353c4ce6cf4670096d2f719d7d8c129b9df54 100644
--- a/roles/kubernetes-apps/persistent_volumes/openstack/templates/openstack-storage-class.yml.j2
+++ b/roles/kubernetes-apps/persistent_volumes/openstack/templates/openstack-storage-class.yml.j2
@@ -7,9 +7,21 @@ metadata:
   annotations:
     storageclass.kubernetes.io/is-default-class: "{{ class.is_default | default(false) | ternary("true","false") }}"
 provisioner: kubernetes.io/cinder
+{% if class.mount_options is defined %}
+mountOptions:
+{% for option in class.mount_options | default([]) %}
+  - "{{ option }}"
+{% endfor %}
+{% endif %}
 parameters:
 {% for key, value in (class.parameters | default({})).items() %}
   "{{ key }}": "{{ value }}"
 {% endfor %}
+{% if class.reclaim_policy is defined %}
+reclaimPolicy: "{{ class.reclaim_policy }}"
+{% endif %}
+{% if class.volume_binding_mode is defined %}
+volumeBindingMode: "{{ class.volume_binding_mode }}"
+{% endif %}
 allowVolumeExpansion: {{ expand_persistent_volumes }}
 {% endfor %}