Installation Guide
- Set up a Kubernetes cluster following the official documentation.
- Complete the base installation.
- Proceed with module installation.
Operator Installation
To deploy the Operator, follow the instructions available here.
Install CSI Driver
-
Create namespace:
kubectl create namespace isilonThis command creates a namespace called
isilon. You can replaceisilonwith any name you prefer. -
Create
secretfile:.a. Create a file called
secret.yamlor pick a sample that has PowerScale array connection details:isilonClusters: - clusterName: "cluster2" username: "user" password: "password" endpoint: "1.2.3.4" isDefault: true endpointPort: "8080"- Update Parameters: Replace placeholders with actual values for your PowerScale array.
- Add Blocks: If you have multiple PowerScale arrays, add similar blocks for each one.
- Replication: If replication is enabled, make sure the
secret.yamlincludes all involved PowerScale arrays.
kubectl create secret generic isilon-creds -n isilon --from-file=config=secret.yamlUse the following command to replace or update the secret
kubectl create secret generic isilon-creds -n isilon --from-file=config=secret.yaml -o yaml --dry-run | kubectl replace -f -Note: The user needs to validate the YAML syntax and array related key/values while replacing the isilon-creds secret. The driver will continue to use previous values in case of an error found in the YAML file.
-
Create isilon-certs-n secret.
Please refer this section for creating cert-secrets.
If certificate validation is skipped, empty secret must be created. To create an empty secret. Ex: empty-secret.yaml
apiVersion: v1 kind: Secret metadata: name: isilon-certs-0 namespace: isilon type: Opaque data: cert-0: ""kubectl create -f empty-secret.yaml -
Install Driver
i. Create a CR (Custom Resource) for PowerScale using the sample files provided
Starting from CSM version 1.16, users can utilize the
spec.versionparameter for automatic image management. No ConfigMap or custom registry configuration needed. For more details click on Advanced Image Configuration Options section.a. Minimal Configuration:
apiVersion: storage.dell.com/v1 kind: ContainerStorageModule metadata: name: isilon namespace: isilon spec: version: v1.16.1 driver: csiDriverType: "isilon" forceRemoveDriver: trueRefer the minimal sample files provided in respective CSM versions folder under samples here. Modify if needed.
[OR]
b. Detailed Configuration: Use the sample file for detailed settings or use Wizard to generate the sample file.
- Users should configure the parameters in CR. The following table lists the primary configurable parameters of the PowerScale driver and their default values:
ii. Create PowerScale custom resource:
kubectl create -f <input_sample_file.yaml>
This command will deploy the PowerScale driver in the namespace specified in the input YAML file.
-
Verify the installation as mentioned below
- Check if ContainerStorageModule CR is created successfully using the command below:
kubectl get csm/isilon -n isilon
Check the status of the CR to verify if the driver installation is in the
Succeededstate. If the status is notSucceeded, see the Troubleshooting guide for more information. - Check if ContainerStorageModule CR is created successfully using the command below:
-
Create Storage Class
apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: isilon provisioner: csi-isilon.dellemc.com reclaimPolicy: Delete allowVolumeExpansion: true parameters: AccessZone: System IsiPath: /ifs/data/csi RootClientEnabled: "false" volumeBindingMode: ImmediateRefer Storage Class for different sample files.
Run this command to create a storage class
kubectl create -f < storage-class.yaml > -
Create Volume Snapshot Class
apiVersion: snapshot.storage.k8s.io/v1 kind: VolumeSnapshotClass metadata: name: isilon-snapclass driver: csi-isilon.dellemc.com deletionPolicy: Delete parameters: IsiPath: /ifs/data/csiRefer Volume Snapshot Class for the sample files.
Run this command to create a volume snapshot class
kubectl create -f < volume-snapshot-class.yaml >
Note :
- “Kubelet config dir path” is not yet configurable in case of Operator based driver installation.
- Also, snapshotter and resizer sidecars are not optional to choose, it comes default with Driver installation.