# Container Storage Interface (CSI) configuration

The playbooks can configure CSI storage for the user cluster, by setting the user_cluster.csi variable to true. In this release, only the vSphere CSI driver is supported, but other drivers will be supported in future releases.

# User cluster configuration for CSI

The variables for configuring CSI in a user cluster are detailed in the following table.

Variable File Description
user_cluster.csi group_vars/all/vars.yml Boolean. Set to true to configure the CSI driver on the user cluster.
user_cluster.vm_template group_vars/all/vars.yml The VM template to use when creating the nodes in the suer cluster.
Defaults to the admin template if none specified.

Note: CSI storage drivers require that the VM template used to create the user cluster be configured with VM Hardware Compatibility version 15. The default admin_template that is generated by the playbooks from an Ubuntu OVA uses hardware compatibility version 10. The playbooks automatically upgrade the VM template created from the OVA to HW 15, making it compatible with the CSI storage driver.

If you choose to use a different template for the user cluster, make sure to set the user_cluster.vm_template variable to an appropriate VM template that uses hardware compatibility 15. The playbooks expect this template to exist in the admin_folder of the vCenter instance.

# CSI configuration

General configuation of the CSI driver is performed using the variables in the following table.

Variable File Description
csi_driver group_vars/all/vars.yml The only currently supported value is vsphere
csi_datastore_name group_vars/all/vars.yml The name of the vSphere datastore where CSI volumes will be created by the CSI driver.
If this datastore does not exist it will be created by the playbooks.

In order for the playbooks to create datastores, the simplivity_appliances variable needs to be populated with at least one valid entry. See the section HPE SimpliVity configuration.
csi_datastore_size group_vars/all/vars.yml The size of the datastore in GiB that will hold the CSI volumes
csi_storageclass_name group_vars/all/vars.yml The name of the Kubernetes storage class that will be created in the user cluster