- Ubuntu 18.04 and later
- RHEL 7, 8
- CentOS 7, 8
- Amazon Linux
If you plan to use CSI Driver with only NAS Volumes, you may skip this section.
Click to see requirements
-
iSCSI initiator tools must be installed and running on all K8s nodes. This must be done before installing CSI driver.
On Ubuntu and other Debian-based:
sudo apt-get install open-iscsi sudo systemctl enable iscsid sudo systemctl start iscsidOn RedHat-based distribution:
sudo yum install iscsi-initiator-utils sudo systemctl enable iscsid sudo systemctl start iscsid sudo systemctl enable iscsi sudo systemctl start iscsi -
IQN (iSCSI qualified name, defined in
/etc/iscsi/initiatorname.iscsi) must be unique for each Node (you may have duplicate IQNs if you install iSCSI packages and then clone VM image for each K8s Node). Check out our troubleshooting tips to see how this can be fixed.
The plugin requires to be able to manage iSCSI connections on host for block volumes support.
Node container will run with bind-mounted host root filesystem. This is done automatically, and does not require any preparations.
- VPSA 20.12-sp2 and later
- Exactly one Storage Pool.
- Make sure you have connectivity between your cluster and the VPSA (using
pingor REST API).
Minimal supported K8s version: 1.20
CSI driver, Snapshot controller and usage examples are provided as Helm Charts. Helm 3 is required.
CSI Snapshots support requires installing Snapshot Controller and snapshots CRDs. If you do not intend to use CSI snapshots, you may skip this step.
Click to see instructions
🛈 To proceed with this guide you will need to get the repository, if you have not already done so.
Both Snapshot Controller and CRDs are cluster-global and should be installed once for any number of CSI drivers. In managed K8s clusters Snapshot Controller may be already present.
You can read more about new Volume Snapshot API and Snapshot Controller in K8s docs.
-
Check whether you already have snapshots CRDs:
$ kubectl api-resources --api-group=snapshot.storage.k8s.io NAME SHORTNAMES APIVERSION NAMESPACED KIND volumesnapshotclasses snapshot.storage.k8s.io/v1 false VolumeSnapshotClass volumesnapshotcontents snapshot.storage.k8s.io/v1 false VolumeSnapshotContent volumesnapshots snapshot.storage.k8s.io/v1 true VolumeSnapshotIn this example the CRDs are installed. API Version can be
v1,v1beta1or both.There's no universal way to check whether Snapshot Controller is running on your cluster. Yet typically, if the CRDs are present, then the controller is running as well.
-
If CRDs are not installed, proceed to the following steps.
-
Optional step: use custom image registry
See instructions for configuring Helm Chart to use local image registry
-
Install Snapshot Controller and CRDs.
For your convenience, we provide Helm Charts, based on official K8s-CSI YAMLs
-
snapshots-v1 chart for K8s 1.20+
-
snapshots-v1beta1 chart for older versions
We strongly advise not to use
v1beta1with K8s 1.20+.Example for
v1:$ helm install csi-snapshots-v1 zadara-csi-helm/snapshots-v1 NAME: csi-snapshots-v1 LAST DEPLOYED: Mon Jul 5 16:45:23 2021 NAMESPACE: default STATUS: deployed REVISION: 1 TEST SUITE: None NOTES: Thank you for installing snapshots-v1-4.1.1+zadara.1! ############################################################################## #### Verify CRDs installation: #### ############################################################################## $ kubectl api-resources --api-group=snapshot.storage.k8s.io NAME SHORTNAMES APIVERSION NAMESPACED KIND volumesnapshotclasses snapshot.storage.k8s.io/v1 false VolumeSnapshotClass volumesnapshotcontents snapshot.storage.k8s.io/v1 false VolumeSnapshotContent volumesnapshots snapshot.storage.k8s.io/v1 true VolumeSnapshot ############################################################################## #### Verify Snapshot Controller: #### ############################################################################## $ kubectl get pods -n kube-system -l app=snapshot-controller NAME READY STATUS RESTARTS AGE snapshot-controller-7485bfc5f-mqf79 1/1 Running 0 69s -
-
Optionally, you can install Snapshot validation webhook (not included in helm charts).
Installation instructions and YAMLs (OCI image is available at
k8s.gcr.io/sig-storage/snapshot-validation-webhook)
Deploy Zadara CSI Helm Chart. Looking for helm install?