Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CSI PowerFlex driver docs update - renameSDC and preapprovedGUID #455

Merged
merged 9 commits into from
Feb 16, 2023
64 changes: 63 additions & 1 deletion content/docs/csidriver/features/powerflex.md
Original file line number Diff line number Diff line change
Expand Up @@ -661,4 +661,66 @@ allowedTopologies:
values:
- csi-vxflexos.dellemc.com
```
Once the volume gets created, the ControllerPublishVolume will set the QoS limits for the volumes mapped to SDC.
Once the volume gets created, the ControllerPublishVolume will set the QoS limits for the volumes mapped to SDC.

## Rename SDC

Starting in version 2.6, the CSI Driver for PowerFlex now supports renaming of SDC. To use this feature, the node section of values.yaml should have renameSDC keys enabled with a prefix value.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor: CSI driver for PowerFlex will support renaming of SDCs.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done


If you want to rename the SDC, please make the following edits to your [values.yaml](https://github.com/dell/csi-powerflex/blob/main/helm/csi-vxflexos/values.yaml) file:
```yaml
# "node" allows to configure node specific parameters
node:
...
...

# "renameSDC" defines the rename operation for SDC
# Default value: None
renameSDC:
# enabled: Enable/Disable rename of SDC
# Allowed values:
# true: enable renaming
# false: disable renaming
# Default value: "false"
enabled: false
# "prefix" defines a string for the new name of the SDC.
# "prefix" + "worker_node_hostname" should not exceed 31 chars.
# Default value: none
# Examples: "rhel-sdc", "sdc-test"
prefix: "sdc-test"
```
The renameSDC section is going to be used by the Node Service, it has two keys enabled and prefix:

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need to mention Node Service in the documentation? That is internal to our implementation right?
To enable renameSDC following keys are used.

* `enabled`: Boolean variable that specifies if the renaming for SDC is to be carried out or not. If true then the driver will perform the rename operation. By default, its value will be false.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would rephrase as "Boolean variable that specified is renaming of SDC is desired". If true, then the driver will perform the rename operation. By default, the value is set to false.

* `prefix`: string variable that is used to set the prefix for SDC name.

Now based on these two keys, there are certain scenarios on which the driver is going to perform the rename SDC operation:

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can remove "Now". Based on these two keys, the driver will perform the rename SDC operation as described below:

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you change it to "Based on these two keys, the driver will perform the rename SDC operation as described below", does it make sense?

* If enabled and prefix given then set the prefix+worker_node_name for SDC name.
* If enabled and prefix not given then set worker_node_name for SDC name.

> NOTE: name of the SDC cannot be more than 31 characters, hence the prefix given and the worker node hostname name taken should be such that the total length does not exceed 31 character limit.

## Pre-approving SDC by GUID

Starting in version 2.6, the CSI Driver for PowerFlex now supports pre-approving SDC by GUID.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor: CSI Driver for PowerFlex will support pre-approving SDC by GUID.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

CSI PowerFlex driver should be able to detect/read the SDC mode from the PowerFlex array and determine whether requests for SDC approval be made to the array prior to publishing a volume. This is specific to each SDC.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would avoid "should", gives the impression that it is best try. I would rephrase as "CSI PowerFlex driver will detect the SDC mode set on the PowerFlex array and will request SDC approval from the array prior to publishing a volume"

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done


If you want to get the SDC pre-approved by GUID, please make the following edits to your [values.yaml](https://github.com/dell/csi-powerflex/blob/main/helm/csi-vxflexos/values.yaml) file:

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Change to : To request SDC approval for GUID, make the following edits...

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

```yaml
# "node" allows to configure node specific parameters
node:
...
...

# "approveSDC" defines the approve operation for SDC
# Default value: None
approveSDC:
# enabled: Enable/Disable SDC approval
#Allowed values:
# true: Driver will attempt to approve restricted SDC by GUID during setup
# false: Driver will not attempt to approve restricted SDC by GUID during setup
# Default value: false
enabled: false
```
> NOTE: Currently, the CSI-PowerFlex driver only supports GUID for the restricted SDC mode.

If SDC approval is denied, then provisioning of the volume should not be attempted and an appropriate error message is reported in the logs/events so the user is informed.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

would avoid "should" again. If SDC approval is denied, then provisioning of the volume will not be attempted and an appropriate ....

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done

4 changes: 4 additions & 0 deletions content/docs/csidriver/installation/helm/powerflex.md
Original file line number Diff line number Diff line change
Expand Up @@ -203,6 +203,10 @@ Use the below command to replace or update the secret:
| healthMonitor.enabled | Enable/Disable health monitor of CSI volumes- volume usage, volume condition | No | false |
| nodeSelector | Defines what nodes would be selected for pods of node daemonset. Leave as blank to use all nodes. | Yes | " " |
| tolerations | Defines tolerations that would be applied to node daemonset. Leave as blank to install node driver only on worker nodes. | Yes | " " |
| **renameSDC** | This section allows the rename operation for SDC. | - | - |
| enabled | A boolean that enable/disable rename SDC feature. | No | false |
| prefix | Defines a string for the prefix of the SDC. | No | " " |
| approveSDC.enabled | A boolean that enable/disable SDC approval feature. | No | false |
| **monitor** | This section allows the configuration of the SDC monitoring pod. | - | - |
| enabled | Set to enable the usage of the monitoring pod. | Yes | false |
| hostNetwork | Set whether the monitor pod should run on the host network or not. | Yes | true |
Expand Down