Home > Workload Solutions > Container Platforms > Red Hat OpenShift Container Platform > Archive > Implementation Guide—Red Hat OpenShift Container Platform 4.6 on Dell Infrastructure > Provisioning Unity XT storage
Dell Unity is a midrange storage platform that is designed for performance and efficiency. For more information, see Dell EMC Unity XT Unified Storage.
Ensure that:
To provision Unity storage:
[core@csah-pri ~]$ base64 secret.json
Note: Add the base64 contents of secret.json in the unity.secrets.yaml file.
[core@csah-pri ~]$ oc create -f unity.secrets.yaml
You can use the Unity CSI driver to create volumes using either the iSCSI, FC, or NFS protocols.
Obtain the arrayID, storagePool, and nasServer information from the Unisphere UI.
[core@csah-pri unity]$ oc create -f <YAML file>
[core@csah-pri unity]$ oc get pods -n unity -o wide
Note: There are two Unity controller pods and one Unity node pod for every compute node that is running. The Unity pod in each compute node automatically adds any FC or iSCSI Qualified Name into the Unisphere Unity pod.
[core@csah-pri unity]$ oc get sc
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE
unity-fc csi-unity.dellemc.com Delete Immediate true 2m30s
unity-iscsi csi-unity.dellemc.com Delete Immediate true 2m30s
unity-nfs csi-unity.dellemc.com Delete Immediate true 2m30s
Note: Verify that all compute nodes are visible in the Unisphere Unity UI under Hosts.
Notes:
For compute nodes running RHCOS, the /etc/iscsi/initiatorname.iscsi file is missing in OpenShift Container Platform version 4.6.8 or earlier. For more information, see Red Hat Bug908847 - RHCOS 4.6 - Missing Initiatorname.
In RHCOS compute nodes, iscsid service is not started or enabled by default. Ensure that the service is enabled and started before proceeding further.
The YAML file used for iSCSI/FC/NFS volumes, and does the following:
To create an iSCSI volume and a POD attached to the volume:
[core@csah-pri ~]$ oc create -f iscsi.pvc.pod.yaml
[core@csah-pri ~]$ oc exec -it unity-iscsi-pod -n unityiscsi -- df -h /mnt/keys
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/mpathc 976M 2.6M 907M 1% /mnt
[core@csah-pri ~]$ oc exec -it unity-iscsi-pod -n unityiscsi -- cat /mnt/keys
unity iscsi
test content
[core@csah-pri ~]$ oc get pvc -n unityiscsi
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
dynamic-iscsi-unity-pvc Bound csiunity-5bd139d41b 1Gi RWO unity-iscsi 5m12s
To create an FC volume and a pod attached to the volume:
[core@csah-pri ~]$ oc create -f fc.pvc.pod.yaml
[core@csah-pri ~]$ oc exec -it unity-fc-pod -n unityfc -- df -h /mnt/keys
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/mpathb 976M 2.6M 907M 1% /mnt
[core@csah-pri ~]$ oc exec -it unity-fc-pod -n unityfc -- cat /mnt/keys
unity fc
test content
[core@ csah-pri ~]$ oc get pvc -n unityfc
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
dynamic-fc-unity-pvc Bound csiunity-636d940742 1Gi RWO unity-fc 24m
Note: For NFS share volumes, ensure that the size is a minimum of 2Gi. PVC fails with errors when the size is 1 Gi; the defined size is too small.
To create an NFS volume and a pod attached to the volume:
[core@csah-pri ~]$ oc create -f nfs.pvc.pod.yaml
[core@csah-pri ~]$ oc exec -it dynamic-nfs-unity-pod -n unity -- df -h /bitnami/nginx
Filesystem Size Used Avail Use% Mounted on
192.168.46.8:/csishare-csiunity-a5a3146d4d 3.5G 1.6G 2.0G 44% /bitnami/nginx
[core@ csah-pri ~]$ oc get pvc -n unity
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
dynamic-nfs-unity-pvc Bound csiunity-a5a3146d4d 2Gi RWX unity-nfs 4m28s
[core@ csah-pri ~]$ oc exec -it unity-nfs-pod -- cat /mnt/keys
unity nfs
test content
Dell Unity CSI drivers support snapshots of volumes. Create snapshots to back up either the iSCSI, FC, or NFS volume that you created, and then use the snapshots to create a volume and attach it to the pod.
Note: You can take Unity volume snapshots for all the volumes that are created using FC, iSCSI, or NFS protocols. The following example uses snapshots that were taken using Unity snapshot volume class unity-snap and the iSCSI volume.
[core@csah-pri unity]$ oc get volumesnapshotclass
NAME DRIVER DELETIONPOLICY AGE
unity-snap csi-unity.dellemc.com Delete 2m53s
[core@csah-pri ~]$ oc create -f <yaml file>
Note: If the procedure runs successfully, the contents of the source PVC that was used for the snapshot are transferred to the newly created pod.
[core@csah-pri unity]$ oc exec -it unity-iscsi-snapshot-pod -n unityiscsi -- df -h /mnt/keys
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/mpathd 976M 2.6M 907M 1% /mnt
[core@csah-pri unity]$ oc exec -it unity-iscsi-snapshot-pod -n unityiscsi -- cat /mnt/keys
unity iscsi
test content