Update Starlingx Dell PowerStore CSM/CSI support documentation

Story: 2011308
Task: 52533

Change-Id: Icb6a2ec38c0ff7d1b1a2f48780895a415f6b2087
Signed-off-by: Suzana Fernandes <Suzana.Fernandes@windriver.com>
This commit is contained in:
Suzana Fernandes
2025-09-02 12:39:10 +00:00
committed by Juanita-Balaraj
parent cca92eec9b
commit 3fec5e77a0
9 changed files with 284 additions and 214 deletions

View File

@@ -36,7 +36,7 @@ commonly used in the |org| community and in this documentation.
functions either active/active or active/standby. functions either active/active or active/standby.
|CSM| Observability |CSM| Observability
An OpenTelemetry agent that collects array-level metrics for Dell storage. An OpenTelemetry agent that collects array-level metrics for Dell Storage.
|CRUSH| |CRUSH|
The |CRUSH| algorithm computes storage locations in order to determine how The |CRUSH| algorithm computes storage locations in order to determine how

View File

@@ -16,7 +16,7 @@ CSM Observability
----------------- -----------------
|CSM| Observability is an OpenTelemetry agent that collects array-level metrics |CSM| Observability is an OpenTelemetry agent that collects array-level metrics
for Dell storage so they can be exported into a Prometheus database. With |CSM| for Dell Storage so they can be exported into a Prometheus database. With |CSM|
for Observability, you will gain visibility not only on the capacity of the for Observability, you will gain visibility not only on the capacity of the
volumes/file shares you manage with Dell |CSM| |CSI| drivers but also on their volumes/file shares you manage with Dell |CSM| |CSI| drivers but also on their
performance in terms of bandwidth, |IOPS|, and response time. performance in terms of bandwidth, |IOPS|, and response time.
@@ -25,11 +25,11 @@ performance in terms of bandwidth, |IOPS|, and response time.
The |CSM| Observability is not available for Unity XT and is not fully The |CSM| Observability is not available for Unity XT and is not fully
available for all storages. You can check the compatibility/capabilities on available for all storages. You can check the compatibility/capabilities on
`Dell Documentation <https://dell.github.io/csm-docs/docs/observability/>`__. `Dell Documentation <https://dell.github.io/csm-docs/v1/observability/>`__.
****************** ******************************
Enable Helm Charts Enable CSM Observability Chart
****************** ******************************
.. note:: .. note::
@@ -38,13 +38,13 @@ Enable Helm Charts
.. code-block:: none .. code-block:: none
(keystone_admin)$ system helm-chart-attribute-modify --enabled false dell-storage <chart_name> dell-storage ~(keystone_admin)$ system helm-chart-attribute-modify --enabled false dell-storage <chart_name> dell-storage
Enable |CSM| Observability using the following command: Enable |CSM| Observability using the following command:
.. code-block:: none .. code-block:: none
(keystone_admin)$ system helm-chart-attribute-modify --enabled true dell-storage csm-observability dell-storage ~(keystone_admin)$ system helm-chart-attribute-modify --enabled true dell-storage csm-observability dell-storage
********************* *********************
Update User Overrides Update User Overrides
@@ -61,30 +61,31 @@ Update User Overrides
.. code-block:: none .. code-block:: none
:name: observabilityOverrides.yaml ~(keystone_admin)$ cat << EOF > /home/sysadmin/observabilityOverrides.yaml
karaviMetricsPowerstore: karaviMetricsPowerstore:
enabled: true enabled: true
karaviMetricsPowerflex: karaviMetricsPowerflex:
enabled: false enabled: false
karaviMetricsPowerscale: karaviMetricsPowerscale:
enabled: false enabled: false
karaviMetricsPowermax: karaviMetricsPowermax:
enabled: false enabled: false
EOF
#. Apply the overrides. #. Apply the overrides.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system helm-override-update dell-storage csm-observability dell-storage --values=observabilityOverrides.yml ~(keystone_admin)$ system helm-override-update dell-storage csm-observability dell-storage --values=/home/sysadmin/observabilityOverrides.yaml
#. Apply the application. #. Apply the application.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system application-apply dell-storage ~(keystone_admin)$ system application-apply dell-storage
#. Check that the metrics are being generated by accessing the otel-collector pod API. #. Check that the metrics are being generated by accessing the otel-collector pod API.
@@ -102,7 +103,7 @@ CSM Observability Parameters
:widths: auto :widths: auto
+---------------------------------+---------------------------------------------+----------+---------+ +---------------------------------+---------------------------------------------+----------+---------+
| Parameter | Description | Required | default | | Parameter | Description | Required | Default |
+=================================+=============================================+==========+=========+ +=================================+=============================================+==========+=========+
| karaviMetricsPowerstore.enabled | If true, enable metrics for CSI-Powerstore. | No | True | | karaviMetricsPowerstore.enabled | If true, enable metrics for CSI-Powerstore. | No | True |
+---------------------------------+---------------------------------------------+----------+---------+ +---------------------------------+---------------------------------------------+----------+---------+
@@ -125,7 +126,7 @@ storage volumes. Therefore, it does not clean up StatefulSet pods if the node ex
them fails. them fails.
********************* *********************
Enable csm-resiliency Enable CSM Resiliency
********************* *********************
.. rubric:: |proc| .. rubric:: |proc|
@@ -135,34 +136,48 @@ Enable csm-resiliency
.. code-block:: none .. code-block:: none
:name: powerstoreOverrides.yaml ~(keystone_admin)$ cat << EOF > /home/sysadmin/powerstoreOverrides.yaml
csm: csm:
resiliency: true resiliency: true
storageClasses: storageClasses:
- name: csi-powerstore-iscsi - name: csi-powerstore-iscsi
arrayID: <ARRAY_ID> arrayID: <ARRAY_ID>
fstype: ext4 fstype: ext4
secret: secret:
arrays: arrays:
- globalID: <GLOBAL_ID> - globalID: <GLOBAL_ID>
username: <powerstore_user> username: <powerstore_user>
password: <powerstore_password> password: <powerstore_password>
endpoint: https://<powerstore_address>/api/rest endpoint: https://<powerstore_address>/api/rest
isDefault: true isDefault: true
blockProtocol: "ISCSI" blockProtocol: "ISCSI"
EOF
#. Apply the user overrides. #. Apply the user overrides.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system helm-override-update dell-storage csi-powerstore dell-storage --values=powerstoreOverrides.yaml ~(keystone_admin)$ system helm-override-update dell-storage csi-powerstore dell-storage --values=/home/sysadmin/powerstoreOverrides.yaml
#. Apply the application. #. Apply the application.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system application-apply dell-storage ~(keystone_admin)$ system application-apply dell-storage
************************
CSM Resiliency Parameter
************************
.. table::
:widths: auto
+---------------------------------+---------------------------------------------+----------+---------+
| Parameter | Description | Required | Default |
+=================================+=============================================+==========+=========+
| csm.resiliency | Enables/Disables sidecar container. | No | false |
+---------------------------------+---------------------------------------------+----------+---------+
--------------- ---------------
CSM Replication CSM Replication
@@ -174,9 +189,9 @@ replicate groups of volumes using the native replication technology available
on the storage array and can provide you a way to restart applications in case on the storage array and can provide you a way to restart applications in case
of both planned and unplanned migration. of both planned and unplanned migration.
***************************** ****************************
Enable CSM Replication Charts Enable CSM Replication Chart
***************************** ****************************
.. rubric:: |prereq| .. rubric:: |prereq|
@@ -186,37 +201,42 @@ Ensure that the csm-replication chart is enabled.
(keystone_admin)$ system helm-chart-attribute-modify --enabled true dell-storage csm-replication dell-storage (keystone_admin)$ system helm-chart-attribute-modify --enabled true dell-storage csm-replication dell-storage
*********************
Update User Overrides
*********************
.. rubric:: |proc| .. rubric:: |proc|
#. Add the ``csm.replication: true`` parameter to the user overrides. Below is #. Create user overrides to configure replication. Below is an example using Powerstore:
an example using Powerstore:
.. code-block:: none .. code-block:: none
:name: powerstoreOverrides.yaml ~(keystone_admin)$ cat << EOF > /home/sysadmin/powerstoreOverrides.yaml
csm: labels:
replication: true isApplication: false
app.starlingx.io/component: platform csm:
storageClasses: replication: true
- name: csi-powerstore-iscsi storageClasses:
arrayID: <ARRAY_ID> - name: csi-powerstore-iscsi
fstype: ext4 arrayID: <ARRAY_ID>
replication: fstype: ext4
remoteStorageClassName: remote_storageclass replication:
remoteClusterID: remote_clusterid remoteStorageClassName: remote_storageclass
remoteSystem: remote_system remoteClusterID: remote_clusterid
rpo: "Five_Minutes" remoteSystem: remote_system
ignoreNamespaces: false rpo: "Five_Minutes"
volumeGroupPrefix: <VOLUME_GROUP_PREFIX> ignoreNamespaces: false
volumeGroupPrefix: <VOLUME_GROUP_PREFIX>
secret: secret:
arrays: arrays:
- globalID: <GLOBAL_ID> - globalID: <GLOBAL_ID>
username: <USERNAME> username: <USERNAME>
password: <PASSWORD> password: <PASSWORD>
endpoint: https://<powerstore_address>/api/rest endpoint: https://<POWERSTORE_ADDRESS>/api/rest
isDefault: true isDefault: true
blockProtocol: "ISCSI" blockProtocol: "ISCSI"
EOF
.. note:: .. note::
@@ -228,12 +248,39 @@ Ensure that the csm-replication chart is enabled.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system helm-override-update dell-storage csi-powerstore dell-storage --values=powerstoreOverrides.yaml ~(keystone_admin)$ system helm-override-update dell-storage csi-powerstore dell-storage --values=/home/sysadmin/powerstoreOverrides.yaml
#. Apply the application. #. Apply the application.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system application-apply dell-storage ~(keystone_admin)$ system application-apply dell-storage
*************************
CSM Replication Parameter
*************************
.. table::
:widths: auto
+------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+----------+------------------------------+
| Parameter | Description | Required | Default |
+======================================================+===========================================================================================================+==========+==============================+
| csm.replication | Enables/Disables replication sidecar container. | No | false |
+------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+----------+------------------------------+
| controller.replication.replicationPrefix | Change replication prefix. | No | replication.storage.dell.com |
+------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+----------+------------------------------+
| storageClasses[0].replication | Used to configure replication sidecar container. | No | Not Applicable |
+------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+----------+------------------------------+
| storageClasses[0].replication.remoteStorageClassName | Remote StorageClass name. | No | csi-powerstore-replication |
+------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+----------+------------------------------+
| storageClasses[0].replication.remoteClusterID | Remote ClusterID. | No | Not Applicable |
+------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+----------+------------------------------+
| storageClasses[0].replication.remoteSystem | Remote PowerStore system. | No | Not Applicable |
+------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+----------+------------------------------+
| storageClasses[0].replication.rpo | Change to any other |RPOs| supported by PowerStore. | No | Five_Minutes |
+------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+----------+------------------------------+
| storageClasses[0].replication.ignoreNamespaces | Set to true if you want to ignore namespaces and if false creates separate volume group per namespace. | No | false |
+------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+----------+------------------------------+
| storageClasses[0].replication.volumeGroupPrefix | Volume group prefix. | No | csi-powerstore |
+------------------------------------------------------+-----------------------------------------------------------------------------------------------------------+----------+------------------------------+

View File

@@ -44,56 +44,52 @@ Enable CSI PowerFlex Chart
.. code-block:: none .. code-block:: none
(keystone_admin)$ system helm-chart-attribute-modify --enabled true dell-storage csi-powerflex dell-storage ~(keystone_admin)$ system helm-chart-attribute-modify --enabled true dell-storage csi-powerflex dell-storage
#. Create overrides to configure the storage connection. #. Create overrides to configure the storage connection.
.. code-block:: none .. code-block:: none
:name: powerflexOverrides.yaml ~(keystone_admin)$ cat << EOF > /home/sysadmin/powerflexOverrides.yaml
app.starlingx.io/component: platform csm:
resiliency: true
storageClasses: interfaceNames:
- name: csi-powerflex-nfs controller-0: enp0s9
arrayId: <ARRAY_ID>
nasServer: nas_2
provisioner: csi-vxflexos.dellemc.com
fstype: nfs
path: /target
reclaimPolicy: Delete
allowVolumeExpansion: true
volumeBindingMode: Immediate
mountOptions: ["hard"]
hostIoSize: 8192
tieringPolicy: 0
isDataReductionEnabled: "false"
thinProvisioned: "true"
storagePool: pool_2
protocol: NFS
secret: storageClasses:
arrays: - name: csi-powerflex-nfs
- arrayId: <ARRAYID> arrayId: <ARRAY_ID>
username: <USERNAME> nasServer: nas_1
password: <PASSWORD> fstype: nfs
systemID: <SYSTEM_ID> storagepool: pool_1
allSystemNames: "pflex-1" systemID: <SYSTEM_ID>
endpoint: https://<POWERFLEX_ADDRESS>/api/rest
isDefault: true secret:
skipCertificateValidation: true mdm: "10.0.0.1,10.0.0.2"
nasName: nas_2 arrays:
- arrayId: <ARRAYID>
username: <USERNAME>
password: <PASSWORD>
systemID: <SYSTEM_ID>
allSystemNames: "pflex-1"
endpoint: https://<POWERFLEX_ADDRESS>/api/rest
isDefault: true
skipCertificateValidation: true
nasName: nas_1
EOF
#. Apply overrides using the following command: #. Apply overrides using the following command:
.. code-block:: .. code-block::
(keystone_admin)$ system helm-override-update dell-storage csi-powerflex dell-storage --values=powerflexOverrides.yaml ~(keystone_admin)$ system helm-override-update dell-storage csi-powerflex dell-storage --values=/home/sysadmin/powerflexOverrides.yaml
#. Apply the chart using the following command: #. Apply the chart using the following command:
.. code-block:: .. code-block::
(keystone_admin)$ system application-apply dell-storage ~(keystone_admin)$ system application-apply dell-storage
------------------------ ------------------------
UserOverrides Parameters UserOverrides Parameters
@@ -106,17 +102,19 @@ General Parameters
.. table:: .. table::
:widths: auto :widths: auto
+------------------------------------+-----------------------------------------------------------+----------+----------+ +------------------------------------+-----------------------------------------------------------------------------------------------+----------+------------------+
| Parameter | Description | Required | Default | | Parameter | Description | Required | Default |
+====================================+===========================================================+==========+==========+ +====================================+===============================================================================================+==========+==================+
| csm.replication | Enables/disables replication sidecar container. | No | false | | csm.replication | Enables/Disables dell-csi-replicator sidecar container. | No | false |
+------------------------------------+-----------------------------------------------------------+----------+----------+ +------------------------------------+-----------------------------------------------------------------------------------------------+----------+------------------+
| csm.resiliency | Enables/disables dell-csi-replicator sidecar container. | No | false | | csm.resiliency | Enables/Disables podmon sidecar container. | No | false |
+------------------------------------+-----------------------------------------------------------+----------+----------+ +------------------------------------+-----------------------------------------------------------------------------------------------+----------+------------------+
| app.starlingx.io/component | Core affinity. | No | platform | | labels.isApplication | If set to true is can run with application core affinity, otherwise it runs as platform. | No | platform |
+------------------------------------+-----------------------------------------------------------+----------+----------+ +------------------------------------+-----------------------------------------------------------------------------------------------+----------+------------------+
| controller.snapshot.deletionPolicy | Specifies what happens when VolumeSnapshot is deleted. | No | Delete | | controller.snapshot.deletionPolicy | Specifies what happens when VolumeSnapshot is deleted. | No | Delete |
+------------------------------------+-----------------------------------------------------------+----------+----------+ +------------------------------------+-----------------------------------------------------------------------------------------------+----------+------------------+
| interfaceNames.<node-name> | Node name and port name for each data network. Make sure the interfaces can reach the MDMs. | Yes | Not Applicable |
+------------------------------------+-----------------------------------------------------------------------------------------------+----------+------------------+
************************* *************************
StorageClasses Parameters StorageClasses Parameters
@@ -209,7 +207,9 @@ Secret Parameters
+--------------------------------------------+-----------------------------------------------------------------------------------------+----------+----------------+ +--------------------------------------------+-----------------------------------------------------------------------------------------+----------+----------------+
| secret.arrays[0].skipCertificateValidation | Indicates if client-side validation of server's certificate can be skipped. | No | true | | secret.arrays[0].skipCertificateValidation | Indicates if client-side validation of server's certificate can be skipped. | No | true |
+--------------------------------------------+-----------------------------------------------------------------------------------------+----------+----------------+ +--------------------------------------------+-----------------------------------------------------------------------------------------+----------+----------------+
| secret.arrays[0].AllSystemNames | Previous names used in secret of Powerflex system. | Yes | Not Applicable | | secret.arrays[0].allSystemNames | Previous names used in secret of Powerflex system. | Yes | Not Applicable |
+--------------------------------------------+-----------------------------------------------------------------------------------------+----------+----------------+ +--------------------------------------------+-----------------------------------------------------------------------------------------+----------+----------------+
| secret.arrays[0].nasName | What |NAS| should be used for |NFS| volumes. Required for |NFS| protocol. | No | Not Applicable | | secret.arrays[0].nasName | What |NAS| should be used for |NFS| volumes. Required for |NFS| protocol. | No | Not Applicable |
+--------------------------------------------+-----------------------------------------------------------------------------------------+----------+----------------+ +--------------------------------------------+-----------------------------------------------------------------------------------------+----------+----------------+
| secret.mdm | MDM IPv4 addresses or hostnames, separated by comma. | Yes | Not Applicable |
+--------------------------------------------+-----------------------------------------------------------------------------------------+----------+----------------+

View File

@@ -33,19 +33,23 @@ Enable CSI PowerMax Chart
.. code-block:: none .. code-block:: none
(keystone_admin)$ system helm-chart-attribute-modify --enabled false dell-storage <chart_name> dell-storage ~(keystone_admin)$ system helm-chart-attribute-modify --enabled false dell-storage <chart_name> dell-storage
#. Enable the chart. #. Enable the chart.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system helm-chart-attribute-modify --enabled true dell-storage csi-powermax dell-storage ~(keystone_admin)$ system helm-chart-attribute-modify --enabled true dell-storage csi-powermax dell-storage
#. Create overrides to configure the storage connection. #. Create overrides to configure the storage connection.
.. code-block:: none .. code-block:: none
:name: powermaxOverrides.yaml ~(keystone_admin)$ cat << EOF > /home/sysadmin/powermaxOverrides.yaml
csm:
replication: true
authorization: true
secret: secret:
username: <USERNAME> username: <USERNAME>
password: <PASSWORD> password: <PASSWORD>
@@ -66,6 +70,10 @@ Enable CSI PowerMax Chart
password: <PASSWORD> password: <PASSWORD>
skipCertificateValidation: true skipCertificateValidation: true
proxyAuthzTokens:
access:
refresh:
storageClasses: storageClasses:
- name: "sc-0" - name: "sc-0"
SRP: "TEST" SRP: "TEST"
@@ -73,18 +81,19 @@ Enable CSI PowerMax Chart
ApplicationPrefix: "prefix1" ApplicationPrefix: "prefix1"
HostLimitName: "1000" HostLimitName: "1000"
DynamicDistribution: "Optimized DynamicDistribution: "Optimized
EOF
#. Apply overrides. #. Apply overrides.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system helm-override-update dell-storage csi-powermax dell-storage --values=powermaxOverrides.yaml ~(keystone_admin)$ system helm-override-update dell-storage csi-powermax dell-storage --values=/home/sysadmin/powermaxOverrides.yaml
#. Apply the chart. #. Apply the chart.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system application-apply dell-storage ~(keystone_admin)$ system application-apply dell-storage
------------------------ ------------------------
UserOverrides Parameters UserOverrides Parameters
@@ -104,7 +113,7 @@ General Parameters
+----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------+----------+------------------------------+ +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------+----------+------------------------------+
| csm.authorization | Enables/disables |CSM| authorization and sidecar container. | No | false | | csm.authorization | Enables/disables |CSM| authorization and sidecar container. | No | false |
+----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------+----------+------------------------------+ +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------+----------+------------------------------+
| app.starlingx.io/component | Core affinity. | No | platform | | labels.isApplication | If set to true it can run with application core affinity, otherwise it runs as platform. | No | false |
+----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------+----------+------------------------------+ +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------+----------+------------------------------+
| replication.replicationPrefix | Change replication prefix. | No | replication.storage.dell.com | | replication.replicationPrefix | Change replication prefix. | No | replication.storage.dell.com |
+----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------+----------+------------------------------+ +----------------------------------------+----------------------------------------------------------------------------------------------------------------------------------+----------+------------------------------+

View File

@@ -36,7 +36,7 @@ Enable CSI PowerScale Chart
.. code-block:: .. code-block::
(keystone_admin)$ system helm-chart-attribute-modify --enabled false dell-storage <chart_name> dell-storage ~(keystone_admin)$ system helm-chart-attribute-modify --enabled false dell-storage <chart_name> dell-storage
#. Enable the chart. #. Enable the chart.
@@ -48,12 +48,17 @@ Enable CSI PowerScale Chart
.. code-block:: none .. code-block:: none
:name: powerscaleOverrides.yaml ~(keystone_admin)$ cat << EOF > /home/sysadmin/powerscaleOverrides.yaml
csm:
replication: false
resiliency: false
authorization: false
isiPath: "/my/isi/path" isiPath: "/my/isi/path"
controller: controller:
replication: replication:
enabled: true
replicationPrefix: "myCustomReplicationPrefix" replicationPrefix: "myCustomReplicationPrefix"
secret: secret:
@@ -83,18 +88,19 @@ Enable CSI PowerScale Chart
proxyAuthzTokens: proxyAuthzTokens:
access: "YWJjZGVmCg==" access: "YWJjZGVmCg=="
refresh: "YWJjZGVmCg==" refresh: "YWJjZGVmCg=="
EOF
#. Apply override. #. Apply override.
.. code-block:: .. code-block::
(keystone_admin)$ system helm-override-update dell-storage csi-powerscale dell-storage --values=powerscaleOverrides.yaml ~(keystone_admin)$ system helm-override-update dell-storage csi-powerscale dell-storage --values=/home/sysadmin/powerscaleOverrides.yaml
#. Apply chart. #. Apply chart.
.. code-block:: .. code-block::
(keystone_admin)$ system application-apply dell-storage ~(keystone_admin)$ system application-apply dell-storage
------------------------ ------------------------
UserOverrides Parameters UserOverrides Parameters
@@ -107,33 +113,33 @@ General Parameters
.. table:: .. table::
:widths: auto :widths: auto
+------------------------------------------+--------------------------------------------------------------------+----------------------------------+------------------------------+ +------------------------------------------+-------------------------------------------------------------------------------------------+----------------------------------+------------------------------+
| Parameter | Description | Required | Default | | Parameter | Description | Required | Default |
+==========================================+====================================================================+==================================+==============================+ +==========================================+===========================================================================================+==================================+==============================+
| app.starlingx.io/component | Code affinity. | No | platform | | labels.isApplication | If set to true it can run with application core affinity, otherwise it runs as platform. | No | false |
+------------------------------------------+--------------------------------------------------------------------+----------------------------------+------------------------------+ +------------------------------------------+-------------------------------------------------------------------------------------------+----------------------------------+------------------------------+
| authorization.rootCertificate | Authorization proxy server root certificate. | Only if authorization is enabled | Not Applicable | | authorization.rootCertificate | Authorization proxy server root certificate. | Only if authorization is enabled | Not Applicable |
+------------------------------------------+--------------------------------------------------------------------+----------------------------------+------------------------------+ +------------------------------------------+-------------------------------------------------------------------------------------------+----------------------------------+------------------------------+
| certSecret | Secret containing the certificate. | No | Not Applicable | | certSecret | Secret containing the certificate. | No | Not Applicable |
+------------------------------------------+--------------------------------------------------------------------+----------------------------------+------------------------------+ +------------------------------------------+-------------------------------------------------------------------------------------------+----------------------------------+------------------------------+
| controller.replication.replicationPrefix | Change replication prefix. | No | replication.storage.dell.com | | controller.replication.replicationPrefix | Change replication prefix. | No | replication.storage.dell.com |
+------------------------------------------+--------------------------------------------------------------------+----------------------------------+------------------------------+ +------------------------------------------+-------------------------------------------------------------------------------------------+----------------------------------+------------------------------+
| controller.snapshot.deletionPolicy | Specifies what happens when VolumeSnapshot is deleted. | No | Delete | | controller.snapshot.deletionPolicy | Specifies what happens when VolumeSnapshot is deleted. | No | Delete |
+------------------------------------------+--------------------------------------------------------------------+----------------------------------+------------------------------+ +------------------------------------------+-------------------------------------------------------------------------------------------+----------------------------------+------------------------------+
| csm.authorization | Enables/disables authorization sidecar container. | No | false | | csm.authorization | Enables/disables authorization sidecar container. | No | false |
+------------------------------------------+--------------------------------------------------------------------+----------------------------------+------------------------------+ +------------------------------------------+-------------------------------------------------------------------------------------------+----------------------------------+------------------------------+
| csm.replication | Enables/disables dell-csi-replicator sidecar container. | No | false | | csm.replication | Enables/disables dell-csi-replicator sidecar container. | No | false |
+------------------------------------------+--------------------------------------------------------------------+----------------------------------+------------------------------+ +------------------------------------------+-------------------------------------------------------------------------------------------+----------------------------------+------------------------------+
| csm.resiliency | Enables/disables podmon sidecar container. | No | false | | csm.resiliency | Enables/disables podmon sidecar container. | No | false |
+------------------------------------------+--------------------------------------------------------------------+----------------------------------+------------------------------+ +------------------------------------------+-------------------------------------------------------------------------------------------+----------------------------------+------------------------------+
| driverName | Driver name. | No | csi-isilon.dellemc.com | | driverName | Driver name. | No | csi-isilon.dellemc.com |
+------------------------------------------+--------------------------------------------------------------------+----------------------------------+------------------------------+ +------------------------------------------+-------------------------------------------------------------------------------------------+----------------------------------+------------------------------+
| isiPath | The base path for the volumes to be created on PowerScale cluster. | No | /ifs/data/csi | | isiPath | The base path for the volumes to be created on PowerScale cluster. | No | /ifs/data/csi |
+------------------------------------------+--------------------------------------------------------------------+----------------------------------+------------------------------+ +------------------------------------------+-------------------------------------------------------------------------------------------+----------------------------------+------------------------------+
| proxyAuthzTokens.access | Access token for authorization sidecar container access. | Only if authorization is enabled | Not Applicable | | proxyAuthzTokens.access | Access token for authorization sidecar container access. | Only if authorization is enabled | Not Applicable |
+------------------------------------------+--------------------------------------------------------------------+----------------------------------+------------------------------+ +------------------------------------------+-------------------------------------------------------------------------------------------+----------------------------------+------------------------------+
| proxyAuthzTokens.refresh | Refresh token for authorization sidecar container access. | Only if authorization is enabled | Not Applicable | | proxyAuthzTokens.refresh | Refresh token for authorization sidecar container access. | Only if authorization is enabled | Not Applicable |
+------------------------------------------+--------------------------------------------------------------------+----------------------------------+------------------------------+ +------------------------------------------+-------------------------------------------------------------------------------------------+----------------------------------+------------------------------+
************************* *************************
StorageClasses Parameters StorageClasses Parameters

View File

@@ -28,13 +28,13 @@ Enable CSI PowerStore Chart
.. code-block:: .. code-block::
(keystone_admin)$ system helm-chart-attribute-modify --enabled false dell-storage <chart_name> dell-storage ~(keystone_admin)$ system helm-chart-attribute-modify --enabled false dell-storage <chart_name> dell-storage
#. Enable the chart. #. Enable the chart.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system helm-chart-attribute-modify --enabled true dell-storage csi-powerstore dell-storage ~(keystone_admin)$ system helm-chart-attribute-modify --enabled true dell-storage csi-powerstore dell-storage
#. Create overrides to configure the storage connection. #. Create overrides to configure the storage connection.
@@ -42,7 +42,7 @@ Enable CSI PowerStore Chart
.. code-block:: none .. code-block:: none
:name: powerstoreOverrides.yaml ~(keystone_admin)$ cat << EOF > /home/sysadmin/powerstoreOverrides.yaml
storageClasses: storageClasses:
- name: csi-powerstore-iscsi - name: csi-powerstore-iscsi
arrayID: <ARRAY_ID> arrayID: <ARRAY_ID>
@@ -50,19 +50,19 @@ Enable CSI PowerStore Chart
secret: secret:
arrays: arrays:
- globalID: <GLOBAL_ID> - globalID: <GLOBAL_ID>
username: <USERNAME> username: <USERNAME>
password: <PASSWORD> password: <PASSWORD>
endpoint: https://<POWERSTORE_ADDRESS>/api/rest endpoint: https://<POWERSTORE_ADDRESS>/api/rest
isDefault: true isDefault: true
blockProtocol: "ISCSI" blockProtocol: "ISCSI"
EOF
**NFS Protocol** **NFS Protocol**
.. code-block:: none .. code-block:: none
:name: powerstoreOverrides.yaml ~(keystone_admin)$ cat << EOF > /home/sysadmin/powerstoreOverrides.yaml
storageClasses: storageClasses:
- name: csi-powerstore-nfs - name: csi-powerstore-nfs
arrayID: <ARRAY_ID> arrayID: <ARRAY_ID>
@@ -71,7 +71,6 @@ Enable CSI PowerStore Chart
secret: secret:
arrays: arrays:
- globalID: <GLOBAL_ID> - globalID: <GLOBAL_ID>
username: <USERNAME> username: <USERNAME>
password: <PASSWORD> password: <PASSWORD>
@@ -79,18 +78,19 @@ Enable CSI PowerStore Chart
isDefault: true isDefault: true
blockProtocol: None blockProtocol: None
nasName: NAS1 nasName: NAS1
EOF
#. Apply overrides. #. Apply overrides.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system helm-override-update dell-storage csi-powerstore dell-storage --values=powerstoreOverrides.yaml ~(keystone_admin)$ system helm-override-update dell-storage csi-powerstore dell-storage --values=/home/sysadmin/powerstoreOverrides.yaml
#. Apply the chart. #. Apply the chart.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system application-apply dell-storage ~(keystone_admin)$ system application-apply dell-storage
------------------------ ------------------------
UserOverrides Parameters UserOverrides Parameters
@@ -103,19 +103,19 @@ General Parameters
.. table:: .. table::
:widths: auto :widths: auto
+------------------------------------------+-------------------------------------------------------+----------+------------------------------+ +------------------------------------------+--------------------------------------------------------------------------------------------+---------+------------------------------+
| Parameter | Description | Required | Default | | Parameter | Description | Required | Default |
+==========================================+=======================================================+==========+==============================+ +==========================================+===========================================================================================+==========+==============================+
| csm.replication | Enables/disables replication sidecar container. | No | false | | csm.replication | Enables/disables replication sidecar container. | No | false |
+------------------------------------------+-------------------------------------------------------+----------+------------------------------+ +------------------------------------------+-------------------------------------------------------------------------------------------+----------+------------------------------+
| csm.resiliency | Enables/disables podmon sidecar container. | No | false | | csm.resiliency | Enables/disables podmon sidecar container. | No | false |
+------------------------------------------+-------------------------------------------------------+----------+------------------------------+ +------------------------------------------+-------------------------------------------------------------------------------------------+----------+------------------------------+
| app.starlingx.io/component | Core Affinity. | No | platform | | labels.isApplication | If set to true it can run with application core affinity, otherwise it runs as platform. | No | false |
+------------------------------------------+-------------------------------------------------------+----------+------------------------------+ +------------------------------------------+-------------------------------------------------------------------------------------------+----------+------------------------------+
| controller.replication.replicationPrefix | Change replication prefix. | No | replication.storage.dell.com | | controller.replication.replicationPrefix | Change replication prefix. | No | replication.storage.dell.com |
+------------------------------------------+-------------------------------------------------------+----------+------------------------------+ +------------------------------------------+-------------------------------------------------------------------------------------------+----------+------------------------------+
| controller.snapshot.deletionPolicy | Specifies what happens when VolumeSnapshot is deleted.| No | Delete | | controller.snapshot.deletionPolicy | Specifies what happens when VolumeSnapshot is deleted. | No | Delete |
+------------------------------------------+-------------------------------------------------------+----------+------------------------------+ +------------------------------------------+-------------------------------------------------------------------------------------------+----------+------------------------------+
************************* *************************
StorageClasses Parameters StorageClasses Parameters

View File

@@ -31,24 +31,23 @@ Enable CSI Unity Chart
.. code-block:: .. code-block::
(keystone_admin)$ system helm-chart-attribute-modify --enabled false dell-storage <chart_name> dell-storage ~(keystone_admin)$ system helm-chart-attribute-modify --enabled false dell-storage <chart_name> dell-storage
#. Enable the chart. #. Enable the chart.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system helm-chart-attribute-modify --enabled true dell-storage csi-unity dell-storage ~(keystone_admin)$ system helm-chart-attribute-modify --enabled true dell-storage csi-unity dell-storage
#. Create overrides to configure the storage connection. #. Create overrides to configure the storage connection.
.. code-block:: none .. code-block:: none
:name: unityOverrides.yaml ~(keystone_admin)$ cat << EOF > /home/sysadmin/unityOverrides.yaml
csm: csm:
resiliency: false resiliency: true
app.starlingx.io/component: platform labels:
isApplication: false
storageClasses: storageClasses:
- name: unity-virt2307pjxdbt-nfs - name: unity-virt2307pjxdbt-nfs
arrayId: <ARRAY_ID> arrayId: <ARRAY_ID>
@@ -79,18 +78,19 @@ Enable CSI Unity Chart
endpoint: https://<UNITY_ADDRESS> endpoint: https://<UNITY_ADDRESS>
isDefault: true isDefault: true
skipCertificateValidation: true skipCertificateValidation: true
EOF
#. Apply overrides. #. Apply overrides.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system helm-override-update dell-storage csi-unity dell-storage --values=unityOverrides.yaml ~(keystone_admin)$ system helm-override-update dell-storage csi-unity dell-storage --values=/home/sysadmin/unityOverrides.yaml
#. Apply the chart. #. Apply the chart.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system application-apply dell-storage ~(keystone_admin)$ system application-apply dell-storage
------------------------ ------------------------
UserOverrides Parameters UserOverrides Parameters
@@ -103,13 +103,13 @@ General Parameters
.. table:: .. table::
:widths: auto :widths: auto
+----------------------------+--------------------------------------------+----------+----------+ +----------------------------+------------------------------------------------------------------------------------------+----------+----------+
| Parameter | Description | Required | Default | | Parameter | Description | Required | Default |
+============================+============================================+==========+==========+ +============================+==========================================================================================+==========+==========+
| csm.resiliency | Enables/disables podmon sidecar container. | No | false | | csm.resiliency | Enables/disables podmon sidecar container. | No | false |
+----------------------------+--------------------------------------------+----------+----------+ +----------------------------+------------------------------------------------------------------------------------------+----------+----------+
| app.starlingx.io/component | Core Affinity. | No | platform | | labels.isApplication | If set to true it can run with application core affinity, otherwise it runs as platform. | No | false |
+----------------------------+--------------------------------------------+----------+----------+ +----------------------------+------------------------------------------------------------------------------------------+----------+----------+
************************* *************************

View File

@@ -9,28 +9,28 @@ Dell Storage Backend
The |CSI| drivers by Dell implement an interface between |CSI| (|CSI| spec The |CSI| drivers by Dell implement an interface between |CSI| (|CSI| spec
v1.6) enabled |CO| and Dell Storage Arrays. It is a plug-in that is installed v1.6) enabled |CO| and Dell Storage Arrays. It is a plug-in that is installed
in Kubernetes to provide persistent storage using the Dell storage system. in Kubernetes to provide persistent storage using the Dell Storage system.
For details about Dell |CSIs|, see `<https://dell.github.io/csm-docs/docs/csidriver/>`__. For details about Dell |CSIs|, see `<https://dell.github.io/csm-docs/v1/csidriver/>`__.
The Dell Technologies (Dell) |CSM| enables simple and consistent integration, The Dell Technologies (Dell) |CSM| enables simple and consistent integration,
and automation experiences, extending enterprise storage capabilities to and automation experiences, extending enterprise storage capabilities to
Kubernetes for cloud-native stateful applications. Kubernetes for cloud-native stateful applications.
For details about Dell |CSMs|, see `<https://dell.github.io/csm-docs/docs/>`__. For details about Dell |CSMs|, see `<https://dell.github.io/csm-docs/v1>`__.
.. rubric:: |prereq| .. rubric:: |prereq|
- Check if your Dell storage platform is supported. To check, see `<https://dell.github.io/csm-docs/docs/prerequisites/>`__. - Check if your Dell storage platform is supported. To check, see `<https://dell.github.io/csm-docs/v1/prerequisites/>`__.
- If using any |CSM|, check if it is supported for your platform. To check, see `<https://dell.github.io/csm-docs/docs/prerequisites/#supported-csm-modules>`__. - If using any |CSM|, check if it is supported for your platform. To check, see `<https://dell.github.io/csm-docs/v1/prerequisites/#supported-csm-modules>`__.
- Controller is unlocked. - Controller is unlocked.
- The Dell-storage application is on the uploaded state. - The dell-storage application is in the uploaded state.
- All commands are executed on the active controller. - All commands are executed on the active controller.
.. note:: .. note::
For every change on user-overrides to be updated on the application, you For every change on user-overrides to be updated on the application, you
need to reapply the override before applying the Dell-storage application. need to reapply the override before applying the dell-storage application.
.. note:: .. note::
@@ -39,47 +39,51 @@ For details about Dell |CSMs|, see `<https://dell.github.io/csm-docs/docs/>`__.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system helm-chart-attribute-modify --enabled false dell-storage <chart_name> dell-storage ~(keystone_admin)$ system helm-chart-attribute-modify --enabled false dell-storage <chart_name> dell-storage
--------------- ---------------
Common Commands Common Commands
--------------- ---------------
- Get list of enabled/disabled Dell-storage application charts. - Get list of enabled/disabled dell-storage application charts.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system helm-override-list dell-storage --long ~(keystone_admin)$ system helm-override-list dell-storage --long
- Check |CSM|/|CSI| overrides. - Check |CSM|/|CSI| overrides.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system helm-override-show dell-storage <chart_name> dell-storage ~(keystone_admin)$ system helm-override-show dell-storage <chart_name> dell-storage
- Enable/disable the chart. - Enable/disable the chart.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system helm-chart-attribute-modify --enabled <true/false> dell-storage <chart_name> dell-storage ~(keystone_admin)$ system helm-chart-attribute-modify --enabled <true/false> dell-storage <chart_name> dell-storage
- Apply overrides. - Apply overrides.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system helm-override-update dell-storage <chart_name> dell-storage --values=<override_file> ~(keystone_admin)$ system helm-override-update dell-storage <chart_name> dell-storage --values=<override_file>
- Get the Dell-storage pods list. - Get the dell-storage pods list.
.. code-block:: none .. code-block:: none
(keystone_admin)$ kubectl get pods -n dell-storage ~(keystone_admin)$ kubectl get pods -n dell-storage
- Apply/abort/remove the Dell-storage application. - Apply/abort/remove the dell-storage application.
.. code-block:: none .. code-block:: none
(keystone_admin)$ system application-<apply/abort/remove> dell-storage ~(keystone_admin)$ system application-<apply/abort/remove> dell-storage
.. note::
Before removing the application, |PVCs| associated with the Dell Storage backend must be deleted.
-------------- --------------
Related Topics Related Topics

View File

@@ -24,7 +24,7 @@ Volume Snapshot for the Dell |CSI| provisioner.
.. note:: .. note::
The Dell-storage |CSIs| charts already create default snapshotclasses. You The dell-storage |CSIs| charts already create default snapshotclasses. You
can list them by using the following command: can list them by using the following command:
.. code-block:: none .. code-block:: none
@@ -35,7 +35,7 @@ Volume Snapshot for the Dell |CSI| provisioner.
|CSI|-Powerstore is used in this example. |CSI|-Powerstore is used in this example.
#. Check if the Dell-storage application is successfully applied. #. Check if the dell-storage application is successfully applied.
.. code-block:: none .. code-block:: none
@@ -50,7 +50,7 @@ Volume Snapshot for the Dell |CSI| provisioner.
.. code-block:: none .. code-block:: none
~(keystone_admin)$ kubectl get -n dell-storage pvc ~(keystone_admin)$ kubectl -n dell-storage get pvc
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
pvol0 Bound csi-powerstore-vol-0fca78f7dd 8Gi RWO csi-powerstore-nfs 5m pvol0 Bound csi-powerstore-vol-0fca78f7dd 8Gi RWO csi-powerstore-nfs 5m
@@ -62,7 +62,7 @@ Volume Snapshot for the Dell |CSI| provisioner.
NAME DRIVER DELETIONPOLICY AGE NAME DRIVER DELETIONPOLICY AGE
csi-powerstore-snapshot csi-powerstore.dellemc.com Delete 5m csi-powerstore-snapshot csi-powerstore.dellemc.com Delete 5m
#. Create the |PVC| snapshot file and apply it. #. Create the |PVC| snapshot file.
.. code-block:: none .. code-block:: none
@@ -70,16 +70,20 @@ Volume Snapshot for the Dell |CSI| provisioner.
apiVersion: snapshot.storage.k8s.io/v1 apiVersion: snapshot.storage.k8s.io/v1
kind: VolumeSnapshot kind: VolumeSnapshot
metadata: metadata:
name: csi-powerstore-pvc-snapshot name: csi-powerstore-pvc-snapshot
namespace: dell-storage namespace: dell-storage
spec: spec:
volumeSnapshotClassName: csi-powerstore-snapshot volumeSnapshotClassName: csi-powerstore-snapshot
source: source:
persistentVolumeClaimName: pvol0 persistentVolumeClaimName: pvol0
EOF EOF
~(keystone_admin)$ kubectl apply -f ~/powerstore-volume-snapshot.yaml #. Apply the |PVC| snapshot file.
volumesnapshot.snapshot.storage.k8s.io/csi-powerstore-pvc-snapshot created
.. code-block:: none
~(keystone_admin)$ kubectl apply -f ~/powerstore-volume-snapshot.yaml
volumesnapshot.snapshot.storage.k8s.io/csi-powerstore-pvc-snapshot created
#. Confirm that the |PVC| snapshot file was created successfully. #. Confirm that the |PVC| snapshot file was created successfully.