From 95749992c6e2ac82726ebc100e3726fa88143d07 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Mon, 14 Nov 2022 10:09:53 -0500 Subject: [PATCH 01/25] add pflex and 1.25 support --- content/docs/deployment/csmoperator/_index.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/content/docs/deployment/csmoperator/_index.md b/content/docs/deployment/csmoperator/_index.md index 38360d862e..69cb603ad1 100644 --- a/content/docs/deployment/csmoperator/_index.md +++ b/content/docs/deployment/csmoperator/_index.md @@ -6,7 +6,7 @@ weight: 1 --- {{% pageinfo color="primary" %}} -The Dell Container Storage Modules Operator Operator is currently in tech-preview and is not supported in production environments. It can be used in environments where no other Dell CSI Drivers or CSM Modules are installed. +The Dell Container Storage Modules Operator is currently in tech-preview and is not supported in production environments. It can be used in environments where no other Dell CSI Drivers or CSM Modules are installed. {{% /pageinfo %}} The Dell Container Storage Modules Operator Operator is a Kubernetes Operator, which can be used to install and manage the CSI Drivers and CSM Modules provided by Dell for various storage platforms. This operator is available as a community operator for upstream Kubernetes and can be deployed using OperatorHub.io. The operator can be installed using OLM (Operator Lifecycle Manager) or manually. @@ -14,15 +14,16 @@ The Dell Container Storage Modules Operator Operator is a Kubernetes Operator, w ## Supported Platforms Dell CSM Operator has been tested and qualified on Upstream Kubernetes and OpenShift. Supported versions are listed below. -| Kubernetes Version | OpenShift Version | -| -------------------- | ------------------- | -| 1.22, 1.23, 1.24 | 4.9, 4.10, 4.10 EUS | +| Kubernetes Version | OpenShift Version | +| -------------------------- | ------------------- | +| 1.22, 1.23, 1.24, 1.25 | 4.9, 4.10, 4.10 EUS | ## Supported CSI Drivers | CSI Driver | Version | ConfigVersion | | ------------------ | --------- | -------------- | -| CSI PowerScale | 2.2.0 + | v2.2.0 + | +| CSI PowerScale | 2.2.0 + | v2.2.0 + | +| CSI PowerFlex | 2.3.0 + | v2.3.0 + | ## Supported CSM Modules From 303644b9ffe3e983dcfdfbb76f5f6ad0051bebd3 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Mon, 14 Nov 2022 10:10:40 -0500 Subject: [PATCH 02/25] Create powerflex.md --- .../csmoperator/drivers/powerflex.md | 144 ++++++++++++++++++ 1 file changed, 144 insertions(+) create mode 100644 content/docs/deployment/csmoperator/drivers/powerflex.md diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md new file mode 100644 index 0000000000..535d8834bf --- /dev/null +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -0,0 +1,144 @@ +--- +title: PowerScale +linkTitle: "PowerScale" +description: > + Installing Dell CSI Driver for PowerScale via Dell CSM Operator +--- + +## Installing CSI Driver for PowerScale via Dell CSM Operator + +The CSI Driver for Dell PowerScale can be installed via the Dell CSM Operator. +To deploy the Operator, follow the instructions available [here](../../#installation). + +Note that the deployment of the driver using the operator does not use any Helm charts and the installation and configuration parameters will be slightly different from the one specified via the Helm installer. + +**Note**: MKE (Mirantis Kubernetes Engine) does not support the installation of CSI-PowerScale via Operator. + +### Listing installed drivers with the ContainerStorageModule CRD +User can query for all Dell CSI drivers using the following command: +`kubectl get csm --all-namespaces` + + +### Prerequisite + +1. Create namespace. + Execute `kubectl create namespace test-isilon` to create the test-isilon namespace (if not already present). Note that the namespace can be any user-defined name, in this example, we assume that the namespace is 'test-isilon'. + +2. Create *isilon-creds* secret by creating a yaml file called secret.yaml with the following content: + ``` + isilonClusters: + # logical name of PowerScale Cluster + - clusterName: "cluster1" + + # username for connecting to PowerScale OneFS API server + # Default value: None + username: "user" + + # password for connecting to PowerScale OneFS API server + password: "password" + + # HTTPS endpoint of the PowerScale OneFS API server + # Default value: None + # Examples: "1.2.3.4", "https://1.2.3.4", "https://abc.myonefs.com" + endpoint: "1.2.3.4" + + # Is this a default cluster (would be used by storage classes without ClusterName parameter) + # Allowed values: + # true: mark this cluster config as default + # false: mark this cluster config as not default + # Default value: false + isDefault: true + + # Specify whether the PowerScale OneFS API server's certificate chain and host name should be verified. + # Allowed values: + # true: skip OneFS API server's certificate verification + # false: verify OneFS API server's certificates + # Default value: default value specified in values.yaml + # skipCertificateValidation: true + + # The base path for the volumes to be created on PowerScale cluster + # This will be used if a storage class does not have the IsiPath parameter specified. + # Ensure that this path exists on PowerScale cluster. + # Allowed values: unix absolute path + # Default value: default value specified in values.yaml + # Examples: "/ifs/data/csi", "/ifs/engineering" + # isiPath: "/ifs/data/csi" + + # The permissions for isi volume directory path + # This will be used if a storage class does not have the IsiVolumePathPermissions parameter specified. + # Allowed values: valid octal mode number + # Default value: "0777" + # Examples: "0777", "777", "0755" + # isiVolumePathPermissions: "0777" + + - clusterName: "cluster2" + username: "user" + password: "password" + endpoint: "1.2.3.4" + endpointPort: "8080" + ``` + + Replace the values for the given keys as per your environment. After creating the secret.yaml, the following command can be used to create the secret, + `kubectl create secret generic isilon-creds -n isilon --from-file=config=secret.yaml` + + Use 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. + +3. Create isilon-certs-n secret. + Please refer [this section](../../../../csidriver/installation/helm/isilon/#certificate-validation-for-onefs-rest-api-calls) for creating cert-secrets. + + If certificate validation is skipped, empty secret must be created. To create an empty secret. Ex: empty-secret.yaml + + ```yaml + apiVersion: v1 + kind: Secret + metadata: + name: isilon-certs-0 + namespace: isilon + type: Opaque + data: + cert-0: "" + ``` + Execute command: ```kubectl create -f empty-secret.yaml``` + +### Install Driver + +1. Follow all the [prerequisites](#prerequisite) above + +2. Create a CR (Custom Resource) for PowerScale using the sample files provided + [here](https://github.com/dell/csm-operator/tree/master/samples). This file can be modified to use custom parameters if needed. + +3. Users should configure the parameters in CR. The following table lists the primary configurable parameters of the PowerScale driver and their default values: + + | Parameter | Description | Required | Default | + | --------- | ----------- | -------- |-------- | + | dnsPolicy | Determines the DNS Policy of the Node service | Yes | ClusterFirstWithHostNet | + | ***Common parameters for node and controller*** | + | CSI_ENDPOINT | The UNIX socket address for handling gRPC calls | No | /var/run/csi/csi.sock | + | X_CSI_ISI_SKIP_CERTIFICATE_VALIDATION | Specifies whether SSL security needs to be enabled for communication between PowerScale and CSI Driver | No | true | + | X_CSI_ISI_PATH | Base path for the volumes to be created | Yes | | + | X_CSI_ALLOWED_NETWORKS | Custom networks for PowerScale export. List of networks that can be used for NFS I/O traffic, CIDR format should be used | No | empty | + | X_CSI_ISI_AUTOPROBE | To enable auto probing for driver | No | true | + | X_CSI_ISI_NO_PROBE_ON_START | Indicates whether the controller/node should probe during initialization | Yes | | + | X_CSI_ISI_VOLUME_PATH_PERMISSIONS | The permissions for isi volume directory path | Yes | 0777 | + | ***Controller parameters*** | + | X_CSI_MODE | Driver starting mode | No | controller | + | X_CSI_ISI_ACCESS_ZONE | Name of the access zone a volume can be created in | No | System | + | X_CSI_ISI_QUOTA_ENABLED | To enable SmartQuotas | Yes | | + | ***Node parameters*** | + | X_CSI_MAX_VOLUMES_PER_NODE | Specify the default value for the maximum number of volumes that the controller can publish to the node | Yes | 0 | + | X_CSI_MODE | Driver starting mode | No | node | + +4. Execute the following command to create PowerScale custom resource: + ```kubectl create -f ``` . + This command will deploy the CSI-PowerScale driver in the namespace specified in the input YAML file. + +5. [Verify the CSI Driver installation](../#verifying-the-driver-installation) + +**Note** : + 1. "Kubelet config dir path" is not yet configurable in case of Operator based driver installation. + 2. Also, snapshotter and resizer sidecars are not optional to choose, it comes default with Driver installation. From d40b0d2438f3746b3c48aa9685d7fbf23e940f50 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Mon, 14 Nov 2022 10:14:00 -0500 Subject: [PATCH 03/25] powerflex.md updates --- .../csmoperator/drivers/powerflex.md | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index 535d8834bf..b18ab1c6ef 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -1,18 +1,18 @@ --- -title: PowerScale -linkTitle: "PowerScale" +title: PowerFlex +linkTitle: "PowerFlex" description: > - Installing Dell CSI Driver for PowerScale via Dell CSM Operator + Installing Dell CSI Driver for PowerFlex via Dell CSM Operator --- -## Installing CSI Driver for PowerScale via Dell CSM Operator +## Installing CSI Driver for PowerFlex via Dell CSM Operator -The CSI Driver for Dell PowerScale can be installed via the Dell CSM Operator. +The CSI Driver for Dell PowerFlex can be installed via the Dell CSM Operator. To deploy the Operator, follow the instructions available [here](../../#installation). Note that the deployment of the driver using the operator does not use any Helm charts and the installation and configuration parameters will be slightly different from the one specified via the Helm installer. -**Note**: MKE (Mirantis Kubernetes Engine) does not support the installation of CSI-PowerScale via Operator. +**Note**: MKE (Mirantis Kubernetes Engine) does not support the installation of CSI-PowerFlex via Operator. ### Listing installed drivers with the ContainerStorageModule CRD User can query for all Dell CSI drivers using the following command: @@ -109,10 +109,10 @@ User can query for all Dell CSI drivers using the following command: 1. Follow all the [prerequisites](#prerequisite) above -2. Create a CR (Custom Resource) for PowerScale using the sample files provided +2. Create a CR (Custom Resource) for PowerFlex using the sample files provided [here](https://github.com/dell/csm-operator/tree/master/samples). This file can be modified to use custom parameters if needed. -3. Users should configure the parameters in CR. The following table lists the primary configurable parameters of the PowerScale driver and their default values: +3. Users should configure the parameters in CR. The following table lists the primary configurable parameters of the PowerFlex driver and their default values: | Parameter | Description | Required | Default | | --------- | ----------- | -------- |-------- | @@ -133,9 +133,9 @@ User can query for all Dell CSI drivers using the following command: | X_CSI_MAX_VOLUMES_PER_NODE | Specify the default value for the maximum number of volumes that the controller can publish to the node | Yes | 0 | | X_CSI_MODE | Driver starting mode | No | node | -4. Execute the following command to create PowerScale custom resource: +4. Execute the following command to create PowerFlex custom resource: ```kubectl create -f ``` . - This command will deploy the CSI-PowerScale driver in the namespace specified in the input YAML file. + This command will deploy the CSI-PowerFlex driver in the namespace specified in the input YAML file. 5. [Verify the CSI Driver installation](../#verifying-the-driver-installation) From 70222a8605141b7cc82eab3c8576459ac86e3920 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Mon, 14 Nov 2022 11:30:02 -0500 Subject: [PATCH 04/25] Update powerflex.md --- .../csmoperator/drivers/powerflex.md | 197 +++++++++++------- 1 file changed, 116 insertions(+), 81 deletions(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index b18ab1c6ef..7184e15a10 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -18,92 +18,127 @@ Note that the deployment of the driver using the operator does not use any Helm User can query for all Dell CSI drivers using the following command: `kubectl get csm --all-namespaces` - -### Prerequisite - -1. Create namespace. - Execute `kubectl create namespace test-isilon` to create the test-isilon namespace (if not already present). Note that the namespace can be any user-defined name, in this example, we assume that the namespace is 'test-isilon'. - -2. Create *isilon-creds* secret by creating a yaml file called secret.yaml with the following content: - ``` - isilonClusters: - # logical name of PowerScale Cluster - - clusterName: "cluster1" - - # username for connecting to PowerScale OneFS API server - # Default value: None - username: "user" - - # password for connecting to PowerScale OneFS API server - password: "password" - - # HTTPS endpoint of the PowerScale OneFS API server - # Default value: None - # Examples: "1.2.3.4", "https://1.2.3.4", "https://abc.myonefs.com" - endpoint: "1.2.3.4" - - # Is this a default cluster (would be used by storage classes without ClusterName parameter) - # Allowed values: - # true: mark this cluster config as default - # false: mark this cluster config as not default - # Default value: false - isDefault: true - - # Specify whether the PowerScale OneFS API server's certificate chain and host name should be verified. - # Allowed values: - # true: skip OneFS API server's certificate verification - # false: verify OneFS API server's certificates - # Default value: default value specified in values.yaml - # skipCertificateValidation: true - - # The base path for the volumes to be created on PowerScale cluster - # This will be used if a storage class does not have the IsiPath parameter specified. - # Ensure that this path exists on PowerScale cluster. - # Allowed values: unix absolute path - # Default value: default value specified in values.yaml - # Examples: "/ifs/data/csi", "/ifs/engineering" - # isiPath: "/ifs/data/csi" - - # The permissions for isi volume directory path - # This will be used if a storage class does not have the IsiVolumePathPermissions parameter specified. - # Allowed values: valid octal mode number - # Default value: "0777" - # Examples: "0777", "777", "0755" - # isiVolumePathPermissions: "0777" - - - clusterName: "cluster2" - username: "user" - password: "password" - endpoint: "1.2.3.4" - endpointPort: "8080" - ``` - - Replace the values for the given keys as per your environment. After creating the secret.yaml, the following command can be used to create the secret, - `kubectl create secret generic isilon-creds -n isilon --from-file=config=secret.yaml` - - Use 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. - -3. Create isilon-certs-n secret. - Please refer [this section](../../../../csidriver/installation/helm/isilon/#certificate-validation-for-onefs-rest-api-calls) for creating cert-secrets. - - If certificate validation is skipped, empty secret must be created. To create an empty secret. Ex: empty-secret.yaml - - ```yaml +### Prerequisites +- If multipath is configured, ensure CSI-PowerFlex volumes are blacklisted by multipathd. See [troubleshooting section](../../../troubleshooting/powerflex.md) for details + +#### SDC Deployment for Operator +- This feature deploys the sdc kernel modules on all nodes with the help of an init container. +- For non-supported versions of the OS also do the manual SDC deployment steps given below. Refer to https://hub.docker.com/r/dellemc/sdc for supported versions. +- **Note:** When the driver is created, MDM value for initContainers in driver CR is set by the operator from mdm attributes in the driver configuration file, + config.yaml. An example of config.yaml is below in this document. Do not set MDM value for initContainers in the driver CR file manually. +- **Note:** To use an sdc-binary module from customer ftp site: + - Create a secret, sdc-repo-secret.yaml to contain the credentials for the private repo. To generate the base64 encoding of a credential: + ```yaml + echo -n | base64 -i +``` + secret sample to use: + ```yaml apiVersion: v1 kind: Secret metadata: - name: isilon-certs-0 - namespace: isilon + name: sdc-repo-creds + namespace: vxflexos type: Opaque data: - cert-0: "" - ``` - Execute command: ```kubectl create -f empty-secret.yaml``` + # set username to the base64 encoded username, sdc default is + username: + # set password to the base64 encoded password, sdc default is + password: +``` + - Create secret for FTP side by using the command `kubectl create -f sdc-repo-secret.yaml`. + - Optionally, enable sdc monitor by uncommenting the section for sidecar in manifest yaml. Please note the following: + - **If using sidecar**, you will need to edit the value fields under the HOST_PID and MDM fields by filling the empty quotes with host PID and the MDM IPs. + - **If not using sidecar**, please leave this commented out -- otherwise, the empty fields will cause errors. +##### Example CR: [config/samples/vxflex_v220_ops_48.yaml](https://github.com/dell/dell-csi-operator/blob/master/samples/vxflex_v220_ops_48.yaml) +```yaml + sideCars: + # Comment the following section if you don't want to run the monitoring sidecar + - name: sdc-monitor + envs: + - name: HOST_PID + value: "1" + - name: MDM + value: "" + - name: external-health-monitor + args: ["--monitor-interval=60s"] + initContainers: + - image: dellemc/sdc:3.6 + imagePullPolicy: IfNotPresent + name: sdc + envs: + - name: MDM + value: "10.x.x.x,10.x.x.x" +``` + *Note:* Please comment the sdc-monitor sidecar section if you are not using it. Blank values for MDM will result in error. Do not comment the external-health-monitor argument. + +#### Manual SDC Deployment + +For detailed PowerFlex installation procedure, see the _Dell PowerFlex Deployment Guide_. Install the PowerFlex SDC as follows: + +**Steps** + +1. Download the PowerFlex SDC from [Dell Online support](https://www.dell.com/support). The filename is EMC-ScaleIO-sdc-*.rpm, where * is the SDC name corresponding to the PowerFlex installation version. +2. Export the shell variable _MDM_IP_ in a comma-separated list using `export MDM_IP=xx.xxx.xx.xx,xx.xxx.xx.xx`, where xxx represents the actual IP address in your environment. This list contains the IP addresses of the MDMs. +3. Install the SDC per the _Dell PowerFlex Deployment Guide_: + - For Red Hat Enterprise Linux and CentOS, run `rpm -iv ./EMC-ScaleIO-sdc-*.x86_64.rpm`, where * is the SDC name corresponding to the PowerFlex installation version. +4. To add more MDM_IP for multi-array support, run `/opt/emc/scaleio/sdc/bin/drv_cfg --add_mdm --ip 10.xx.xx.xx.xx,10.xx.xx.xx`1. Create namespace. + Execute `kubectl create namespace test-vxflexos` to create the `test-vxflexos` namespace (if not already present). Note that the namespace can be any user-defined name, in this example, we assume that the namespace is 'test-vxflexos'. + +#### Create Secret +1. Create namespace: + Execute `kubectl create namespace test-vxflexos` to create the test-isilon namespace (if not already present). Note that the namespace can be any user-defined name, in this example, we assume that the namespace is 'test-vxflexos'. +2. Prepare the config.yaml for driver configuration. + + Example: config.yaml + + ```yaml + # Username for accessing PowerFlex system. + # Required: true + - username: "admin" + # Password for accessing PowerFlex system. + # Required: true + password: "password" + # System name/ID of PowerFlex system. + # Required: true + systemID: "ID1" + # REST API gateway HTTPS endpoint/PowerFlex Manager public IP for PowerFlex system. + # Required: true + endpoint: "https://127.0.0.1" + # Determines if the driver is going to validate certs while connecting to PowerFlex REST API interface. + # Allowed values: true or false + # Required: true + # Default value: true + skipCertificateValidation: true + # indicates if this array is the default array + # needed for backwards compatibility + # only one array is allowed to have this set to true + # Required: false + # Default value: false + isDefault: true + # defines the MDM(s) that SDC should register with on start. + # Allowed values: a list of IP addresses or hostnames separated by comma. + # Required: true + # Default value: none + mdm: "10.0.0.1,10.0.0.2" + # Defines all system names used to create powerflex volumes + # Required: false + # Default value: none + AllSystemNames: "name1,name2" + - username: "admin" + password: "Password123" + systemID: "ID2" + endpoint: "https://127.0.0.2" + skipCertificateValidation: true + mdm: "10.0.0.3,10.0.0.4" + AllSystemNames: "name1,name2" + ``` + + After editing the file, run the following command to create a secret called `vxflexos-config` + `kubectl create secret generic vxflexos-config -n --from-file=config=config.yaml` + + Use the following command to replace or update the secret: + + `kubectl create secret generic vxflexos-config -n --from-file=config=config.yaml -o yaml --dry-run=client | kubectl replace -f -` ### Install Driver From 65dc23df3b295ee960c4817ac929ef3d786930a6 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Mon, 14 Nov 2022 12:56:08 -0500 Subject: [PATCH 05/25] Update powerflex.md --- content/docs/deployment/csmoperator/drivers/powerflex.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index 7184e15a10..b2034dcb7a 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -49,7 +49,7 @@ User can query for all Dell CSI drivers using the following command: - Optionally, enable sdc monitor by uncommenting the section for sidecar in manifest yaml. Please note the following: - **If using sidecar**, you will need to edit the value fields under the HOST_PID and MDM fields by filling the empty quotes with host PID and the MDM IPs. - **If not using sidecar**, please leave this commented out -- otherwise, the empty fields will cause errors. -##### Example CR: [config/samples/vxflex_v220_ops_48.yaml](https://github.com/dell/dell-csi-operator/blob/master/samples/vxflex_v220_ops_48.yaml) +##### Example CR: [samples/storage_csm_powerflex_v240.yaml](https://github.com/dell/csm-operator/blob/main/samples/storage_csm_powerflex_v240.yaml) ```yaml sideCars: # Comment the following section if you don't want to run the monitoring sidecar From 0b2c47c756d352bdbfd5a36f880673fc815220f6 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Mon, 14 Nov 2022 12:56:50 -0500 Subject: [PATCH 06/25] Update powerflex.md --- content/docs/deployment/csmoperator/drivers/powerflex.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index b2034dcb7a..6240156ca0 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -19,7 +19,7 @@ User can query for all Dell CSI drivers using the following command: `kubectl get csm --all-namespaces` ### Prerequisites -- If multipath is configured, ensure CSI-PowerFlex volumes are blacklisted by multipathd. See [troubleshooting section](../../../troubleshooting/powerflex.md) for details +- If multipath is configured, ensure CSI-PowerFlex volumes are blacklisted by multipathd. See [troubleshooting section](../../../../troubleshooting/powerflex.md) for details #### SDC Deployment for Operator - This feature deploys the sdc kernel modules on all nodes with the help of an init container. From 00be5f1d2564d5e34d5ddaa4bd41a76cf9c4defe Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Mon, 14 Nov 2022 13:03:50 -0500 Subject: [PATCH 07/25] Update powerflex.md --- .../csmoperator/drivers/powerflex.md | 22 +++++-------------- 1 file changed, 6 insertions(+), 16 deletions(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index 6240156ca0..c5492cb252 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -150,23 +150,13 @@ For detailed PowerFlex installation procedure, see the _Dell PowerFlex Deploymen 3. Users should configure the parameters in CR. The following table lists the primary configurable parameters of the PowerFlex driver and their default values: | Parameter | Description | Required | Default | - | --------- | ----------- | -------- |-------- | - | dnsPolicy | Determines the DNS Policy of the Node service | Yes | ClusterFirstWithHostNet | + | replicas | Controls the number of controller pods you deploy. If the number of controller pods is greater than the number of available nodes, excess pods will become stay in a pending state. Defaults are 2 which allows for Controller high availability. | Yes | 2 | + | fsGroupPolicy | Defines which FS Group policy mode to be used, Supported modes `None, File and ReadWriteOnceWithFSType` | No | "ReadWriteOnceWithFSType" | | ***Common parameters for node and controller*** | - | CSI_ENDPOINT | The UNIX socket address for handling gRPC calls | No | /var/run/csi/csi.sock | - | X_CSI_ISI_SKIP_CERTIFICATE_VALIDATION | Specifies whether SSL security needs to be enabled for communication between PowerScale and CSI Driver | No | true | - | X_CSI_ISI_PATH | Base path for the volumes to be created | Yes | | - | X_CSI_ALLOWED_NETWORKS | Custom networks for PowerScale export. List of networks that can be used for NFS I/O traffic, CIDR format should be used | No | empty | - | X_CSI_ISI_AUTOPROBE | To enable auto probing for driver | No | true | - | X_CSI_ISI_NO_PROBE_ON_START | Indicates whether the controller/node should probe during initialization | Yes | | - | X_CSI_ISI_VOLUME_PATH_PERMISSIONS | The permissions for isi volume directory path | Yes | 0777 | - | ***Controller parameters*** | - | X_CSI_MODE | Driver starting mode | No | controller | - | X_CSI_ISI_ACCESS_ZONE | Name of the access zone a volume can be created in | No | System | - | X_CSI_ISI_QUOTA_ENABLED | To enable SmartQuotas | Yes | | - | ***Node parameters*** | - | X_CSI_MAX_VOLUMES_PER_NODE | Specify the default value for the maximum number of volumes that the controller can publish to the node | Yes | 0 | - | X_CSI_MODE | Driver starting mode | No | node | + | X_CSI_VXFLEXOS_ENABLELISTVOLUMESNAPSHOT | Enable list volume operation to include snapshots (since creating a volume from a snap actually results in a new snap) | No | false | + | X_CSI_VXFLEXOS_ENABLESNAPSHOTCGDELETE | Enable this to automatically delete all snapshots in a consistency group when a snap in the group is deleted | No | false | + | X_CSI_DEBUG | To enable debug mode | No | true | + | X_CSI_ALLOW_RWO_MULTI_POD_ACCESS | Setting allowRWOMultiPodAccess to "true" will allow multiple pods on the same node to access the same RWO volume. This behavior conflicts with the CSI specification version 1.3. NodePublishVolume description that requires an error to be returned in this case. However, some other CSI drivers support this behavior and some customers desire this behavior. Customers use this option at their own risk. | No | false | 4. Execute the following command to create PowerFlex custom resource: ```kubectl create -f ``` . From 048c0a9ded2b5a6195fbf0000273c7f2e05b27f2 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Mon, 14 Nov 2022 13:05:18 -0500 Subject: [PATCH 08/25] Update powerflex.md --- content/docs/deployment/csmoperator/drivers/powerflex.md | 1 + 1 file changed, 1 insertion(+) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index c5492cb252..826d9f3d00 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -150,6 +150,7 @@ For detailed PowerFlex installation procedure, see the _Dell PowerFlex Deploymen 3. Users should configure the parameters in CR. The following table lists the primary configurable parameters of the PowerFlex driver and their default values: | Parameter | Description | Required | Default | + | --------- | ----------- | -------- |-------- | | replicas | Controls the number of controller pods you deploy. If the number of controller pods is greater than the number of available nodes, excess pods will become stay in a pending state. Defaults are 2 which allows for Controller high availability. | Yes | 2 | | fsGroupPolicy | Defines which FS Group policy mode to be used, Supported modes `None, File and ReadWriteOnceWithFSType` | No | "ReadWriteOnceWithFSType" | | ***Common parameters for node and controller*** | From 29cb010db3876b00fa635f7321a3895270cb1f96 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Mon, 14 Nov 2022 13:06:20 -0500 Subject: [PATCH 09/25] Update powerflex.md --- content/docs/deployment/csmoperator/drivers/powerflex.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index 826d9f3d00..e912d92ac7 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -151,8 +151,9 @@ For detailed PowerFlex installation procedure, see the _Dell PowerFlex Deploymen | Parameter | Description | Required | Default | | --------- | ----------- | -------- |-------- | - | replicas | Controls the number of controller pods you deploy. If the number of controller pods is greater than the number of available nodes, excess pods will become stay in a pending state. Defaults are 2 which allows for Controller high availability. | Yes | 2 | + | dnsPolicy | Determines the DNS Policy of the Node service | Yes | ClusterFirstWithHostNet | | fsGroupPolicy | Defines which FS Group policy mode to be used, Supported modes `None, File and ReadWriteOnceWithFSType` | No | "ReadWriteOnceWithFSType" | + | replicas | Controls the number of controller pods you deploy. If the number of controller pods is greater than the number of available nodes, excess pods will become stay in a pending state. Defaults are 2 which allows for Controller high availability. | Yes | 2 | | ***Common parameters for node and controller*** | | X_CSI_VXFLEXOS_ENABLELISTVOLUMESNAPSHOT | Enable list volume operation to include snapshots (since creating a volume from a snap actually results in a new snap) | No | false | | X_CSI_VXFLEXOS_ENABLESNAPSHOTCGDELETE | Enable this to automatically delete all snapshots in a consistency group when a snap in the group is deleted | No | false | From 1fdb156faf14409ec5d131d3786635858e9a34bd Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Tue, 15 Nov 2022 07:09:29 -0500 Subject: [PATCH 10/25] remove tech preview --- content/docs/deployment/_index.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/content/docs/deployment/_index.md b/content/docs/deployment/_index.md index 8e6ecf2e58..5c698bdce4 100644 --- a/content/docs/deployment/_index.md +++ b/content/docs/deployment/_index.md @@ -7,8 +7,6 @@ weight: 1 --- The Container Storage Modules along with the required CSI Drivers can each be deployed using CSM operator. ->Note: Currently CSM operator is in tech preview and is not supported in production environments. - {{< cardpane >}} {{< card header="[**CSM Operator**](csmoperator/)" footer="Supports driver [PowerScale](csmoperator/drivers/powerscale/), modules [Authorization](csmoperator/modules/authorization/) [Replication](csmoperator/modules/replication/)">}} From 30db6c00362da674850e8dbad54c1fa42bbdc79b Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Tue, 15 Nov 2022 07:11:19 -0500 Subject: [PATCH 11/25] remove tech preview --- content/docs/deployment/csmoperator/_index.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/content/docs/deployment/csmoperator/_index.md b/content/docs/deployment/csmoperator/_index.md index 69cb603ad1..afb49ca9b7 100644 --- a/content/docs/deployment/csmoperator/_index.md +++ b/content/docs/deployment/csmoperator/_index.md @@ -5,10 +5,6 @@ description: Container Storage Modules Operator weight: 1 --- -{{% pageinfo color="primary" %}} -The Dell Container Storage Modules Operator is currently in tech-preview and is not supported in production environments. It can be used in environments where no other Dell CSI Drivers or CSM Modules are installed. -{{% /pageinfo %}} - The Dell Container Storage Modules Operator Operator is a Kubernetes Operator, which can be used to install and manage the CSI Drivers and CSM Modules provided by Dell for various storage platforms. This operator is available as a community operator for upstream Kubernetes and can be deployed using OperatorHub.io. The operator can be installed using OLM (Operator Lifecycle Manager) or manually. ## Supported Platforms From a394f13ad151f5e2f15b76b457c05c9f6c7399b8 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Tue, 15 Nov 2022 07:17:13 -0500 Subject: [PATCH 12/25] Update powerflex.md --- .../csmoperator/drivers/powerflex.md | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index e912d92ac7..e4815bced2 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -51,25 +51,18 @@ User can query for all Dell CSI drivers using the following command: - **If not using sidecar**, please leave this commented out -- otherwise, the empty fields will cause errors. ##### Example CR: [samples/storage_csm_powerflex_v240.yaml](https://github.com/dell/csm-operator/blob/main/samples/storage_csm_powerflex_v240.yaml) ```yaml - sideCars: - # Comment the following section if you don't want to run the monitoring sidecar + sideCars: + # sdc-monitor is disabled by default, due to high CPU usage - name: sdc-monitor + enabled: false + image: dellemc/sdc:3.6 envs: - name: HOST_PID value: "1" - name: MDM - value: "" - - name: external-health-monitor - args: ["--monitor-interval=60s"] - initContainers: - - image: dellemc/sdc:3.6 - imagePullPolicy: IfNotPresent - name: sdc - envs: - - name: MDM - value: "10.x.x.x,10.x.x.x" + value: "10.xx.xx.xx,10.xx.xx.xx" #provide MDM value ``` - *Note:* Please comment the sdc-monitor sidecar section if you are not using it. Blank values for MDM will result in error. Do not comment the external-health-monitor argument. + *Note:* Please comment the sdc-monitor sidecar section if you are not using it. Blank values for MDM will result in error. #### Manual SDC Deployment From bcdb7f77fa2f77cf627a7034977ed5007db50a11 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Tue, 15 Nov 2022 07:24:10 -0500 Subject: [PATCH 13/25] Update powerflex.md --- content/docs/deployment/csmoperator/drivers/powerflex.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index e4815bced2..c265a8baa4 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -15,7 +15,7 @@ Note that the deployment of the driver using the operator does not use any Helm **Note**: MKE (Mirantis Kubernetes Engine) does not support the installation of CSI-PowerFlex via Operator. ### Listing installed drivers with the ContainerStorageModule CRD -User can query for all Dell CSI drivers using the following command: +User can query for all Dell CSI drivers using this command: `kubectl get csm --all-namespaces` ### Prerequisites From af23eb61e59b5dd0dbaf8a28469a3837b12cc5f1 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Tue, 15 Nov 2022 07:25:06 -0500 Subject: [PATCH 14/25] Update powerflex.md --- content/docs/deployment/csmoperator/drivers/powerflex.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index c265a8baa4..42d2cda403 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -46,7 +46,7 @@ User can query for all Dell CSI drivers using this command: password: ``` - Create secret for FTP side by using the command `kubectl create -f sdc-repo-secret.yaml`. - - Optionally, enable sdc monitor by uncommenting the section for sidecar in manifest yaml. Please note the following: + - Optionally, enable sdc monitor by uncommenting the section for sidecar in manifest yaml. Please note: - **If using sidecar**, you will need to edit the value fields under the HOST_PID and MDM fields by filling the empty quotes with host PID and the MDM IPs. - **If not using sidecar**, please leave this commented out -- otherwise, the empty fields will cause errors. ##### Example CR: [samples/storage_csm_powerflex_v240.yaml](https://github.com/dell/csm-operator/blob/main/samples/storage_csm_powerflex_v240.yaml) From 4e2dfb0417e66a35cfe19b12a2b994f9054eabbe Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Tue, 15 Nov 2022 07:25:34 -0500 Subject: [PATCH 15/25] Update powerflex.md --- content/docs/deployment/csmoperator/drivers/powerflex.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index 42d2cda403..da280ac607 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -66,7 +66,7 @@ User can query for all Dell CSI drivers using this command: #### Manual SDC Deployment -For detailed PowerFlex installation procedure, see the _Dell PowerFlex Deployment Guide_. Install the PowerFlex SDC as follows: +For detailed PowerFlex installation procedure, see the _Dell PowerFlex Deployment Guide_. Install the PowerFlex SDC using this procedure: **Steps** From 787c619b9b5786939dd6ea4c03dd0ad43e67bc91 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Tue, 15 Nov 2022 07:28:11 -0500 Subject: [PATCH 16/25] Update powerflex.md --- content/docs/deployment/csmoperator/drivers/powerflex.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index da280ac607..caf6edb177 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -126,10 +126,10 @@ For detailed PowerFlex installation procedure, see the _Dell PowerFlex Deploymen AllSystemNames: "name1,name2" ``` - After editing the file, run the following command to create a secret called `vxflexos-config` + After editing the file, run this command to create a secret called `vxflexos-config` `kubectl create secret generic vxflexos-config -n --from-file=config=config.yaml` - Use the following command to replace or update the secret: + Use this command to replace or update the secret: `kubectl create secret generic vxflexos-config -n --from-file=config=config.yaml -o yaml --dry-run=client | kubectl replace -f -` @@ -153,7 +153,7 @@ For detailed PowerFlex installation procedure, see the _Dell PowerFlex Deploymen | X_CSI_DEBUG | To enable debug mode | No | true | | X_CSI_ALLOW_RWO_MULTI_POD_ACCESS | Setting allowRWOMultiPodAccess to "true" will allow multiple pods on the same node to access the same RWO volume. This behavior conflicts with the CSI specification version 1.3. NodePublishVolume description that requires an error to be returned in this case. However, some other CSI drivers support this behavior and some customers desire this behavior. Customers use this option at their own risk. | No | false | -4. Execute the following command to create PowerFlex custom resource: +4. Execute this command to create PowerFlex custom resource: ```kubectl create -f ``` . This command will deploy the CSI-PowerFlex driver in the namespace specified in the input YAML file. From 0e1e204bc7edee7a28e329df56a7e673dc565167 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Tue, 15 Nov 2022 09:55:09 -0500 Subject: [PATCH 17/25] Update powerflex.md --- content/docs/deployment/csmoperator/drivers/powerflex.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index caf6edb177..9a47e661fc 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -46,7 +46,7 @@ User can query for all Dell CSI drivers using this command: password: ``` - Create secret for FTP side by using the command `kubectl create -f sdc-repo-secret.yaml`. - - Optionally, enable sdc monitor by uncommenting the section for sidecar in manifest yaml. Please note: + - Optionally, enable sdc monitor by setting the enable flag for the sdc-monitor to true. Please note: - **If using sidecar**, you will need to edit the value fields under the HOST_PID and MDM fields by filling the empty quotes with host PID and the MDM IPs. - **If not using sidecar**, please leave this commented out -- otherwise, the empty fields will cause errors. ##### Example CR: [samples/storage_csm_powerflex_v240.yaml](https://github.com/dell/csm-operator/blob/main/samples/storage_csm_powerflex_v240.yaml) @@ -62,7 +62,6 @@ User can query for all Dell CSI drivers using this command: - name: MDM value: "10.xx.xx.xx,10.xx.xx.xx" #provide MDM value ``` - *Note:* Please comment the sdc-monitor sidecar section if you are not using it. Blank values for MDM will result in error. #### Manual SDC Deployment From 3406416faba4ae21dd14d7dca16707b338b8a219 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Tue, 15 Nov 2022 10:00:42 -0500 Subject: [PATCH 18/25] Update powerflex.md --- content/docs/deployment/csmoperator/drivers/powerflex.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index 9a47e661fc..89ff5a8007 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -78,7 +78,7 @@ For detailed PowerFlex installation procedure, see the _Dell PowerFlex Deploymen #### Create Secret 1. Create namespace: - Execute `kubectl create namespace test-vxflexos` to create the test-isilon namespace (if not already present). Note that the namespace can be any user-defined name, in this example, we assume that the namespace is 'test-vxflexos'. + Execute `kubectl create namespace test-vxflexos` to create the test-vxflexos namespace (if not already present). Note that the namespace can be any user-defined name, in this example, we assume that the namespace is 'test-vxflexos'. 2. Prepare the config.yaml for driver configuration. Example: config.yaml From f12bbf13b09b3f07004a5c944600ca2cf2706159 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Tue, 15 Nov 2022 10:03:39 -0500 Subject: [PATCH 19/25] Update powerflex.md --- content/docs/deployment/csmoperator/drivers/powerflex.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index 89ff5a8007..c9f49a1b4c 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -72,7 +72,7 @@ For detailed PowerFlex installation procedure, see the _Dell PowerFlex Deploymen 1. Download the PowerFlex SDC from [Dell Online support](https://www.dell.com/support). The filename is EMC-ScaleIO-sdc-*.rpm, where * is the SDC name corresponding to the PowerFlex installation version. 2. Export the shell variable _MDM_IP_ in a comma-separated list using `export MDM_IP=xx.xxx.xx.xx,xx.xxx.xx.xx`, where xxx represents the actual IP address in your environment. This list contains the IP addresses of the MDMs. 3. Install the SDC per the _Dell PowerFlex Deployment Guide_: - - For Red Hat Enterprise Linux and CentOS, run `rpm -iv ./EMC-ScaleIO-sdc-*.x86_64.rpm`, where * is the SDC name corresponding to the PowerFlex installation version. + - For environments using RPM, run `rpm -iv ./EMC-ScaleIO-sdc-*.x86_64.rpm`, where * is the SDC name corresponding to the PowerFlex installation version. 4. To add more MDM_IP for multi-array support, run `/opt/emc/scaleio/sdc/bin/drv_cfg --add_mdm --ip 10.xx.xx.xx.xx,10.xx.xx.xx`1. Create namespace. Execute `kubectl create namespace test-vxflexos` to create the `test-vxflexos` namespace (if not already present). Note that the namespace can be any user-defined name, in this example, we assume that the namespace is 'test-vxflexos'. From ed474cc71664e4522d26c24a7963fede334bc364 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Tue, 15 Nov 2022 10:08:04 -0500 Subject: [PATCH 20/25] Update powerflex.md --- content/docs/deployment/csmoperator/drivers/powerflex.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index c9f49a1b4c..669f706146 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -125,12 +125,12 @@ For detailed PowerFlex installation procedure, see the _Dell PowerFlex Deploymen AllSystemNames: "name1,name2" ``` - After editing the file, run this command to create a secret called `vxflexos-config` - `kubectl create secret generic vxflexos-config -n --from-file=config=config.yaml` + After editing the file, run this command to create a secret called `test-vxflexos-config`. If you are using a different namespace/secret name, just substitute those into the command. + `kubectl create secret generic test-vxflexos-config -n test-vxflexos --from-file=config=config.yaml` Use this command to replace or update the secret: - `kubectl create secret generic vxflexos-config -n --from-file=config=config.yaml -o yaml --dry-run=client | kubectl replace -f -` + `kubectl create secret generic test-vxflexos-config -n test-vxflexos --from-file=config=config.yaml -o yaml --dry-run=client | kubectl replace -f -` ### Install Driver From 2c13be2b1dadc2e562f792efdcc4c032c7bac136 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Tue, 15 Nov 2022 10:25:20 -0500 Subject: [PATCH 21/25] Update powerflex.md --- content/docs/deployment/csmoperator/drivers/powerflex.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index 669f706146..5bc10b9c9b 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -19,7 +19,7 @@ User can query for all Dell CSI drivers using this command: `kubectl get csm --all-namespaces` ### Prerequisites -- If multipath is configured, ensure CSI-PowerFlex volumes are blacklisted by multipathd. See [troubleshooting section](../../../../troubleshooting/powerflex.md) for details +- If multipath is configured, ensure CSI-PowerFlex volumes are blacklisted by multipathd. See [troubleshooting section](../../../../troubleshooting/powerflex) for details #### SDC Deployment for Operator - This feature deploys the sdc kernel modules on all nodes with the help of an init container. @@ -48,7 +48,7 @@ User can query for all Dell CSI drivers using this command: - Create secret for FTP side by using the command `kubectl create -f sdc-repo-secret.yaml`. - Optionally, enable sdc monitor by setting the enable flag for the sdc-monitor to true. Please note: - **If using sidecar**, you will need to edit the value fields under the HOST_PID and MDM fields by filling the empty quotes with host PID and the MDM IPs. - - **If not using sidecar**, please leave this commented out -- otherwise, the empty fields will cause errors. + - **If not using sidecar**, leave the enabled field set to false. ##### Example CR: [samples/storage_csm_powerflex_v240.yaml](https://github.com/dell/csm-operator/blob/main/samples/storage_csm_powerflex_v240.yaml) ```yaml sideCars: From 04ac60aeec86ec09b184d40ae8ccddb8bd7a754a Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Tue, 15 Nov 2022 10:28:55 -0500 Subject: [PATCH 22/25] Update powerflex.md --- content/docs/deployment/csmoperator/drivers/powerflex.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index 5bc10b9c9b..6af0a1b4fa 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -19,7 +19,7 @@ User can query for all Dell CSI drivers using this command: `kubectl get csm --all-namespaces` ### Prerequisites -- If multipath is configured, ensure CSI-PowerFlex volumes are blacklisted by multipathd. See [troubleshooting section](../../../../troubleshooting/powerflex) for details +- If multipath is configured, ensure CSI-PowerFlex volumes are blacklisted by multipathd. See [troubleshooting section](../../../csidriver/troubleshooting/powerflex.md) for details #### SDC Deployment for Operator - This feature deploys the sdc kernel modules on all nodes with the help of an init container. From 463b2d3c3b4ddf4f42d4b7443420cd952c082469 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Tue, 15 Nov 2022 10:33:09 -0500 Subject: [PATCH 23/25] Update powerflex.md --- content/docs/deployment/csmoperator/drivers/powerflex.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index 6af0a1b4fa..d538a711de 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -19,7 +19,7 @@ User can query for all Dell CSI drivers using this command: `kubectl get csm --all-namespaces` ### Prerequisites -- If multipath is configured, ensure CSI-PowerFlex volumes are blacklisted by multipathd. See [troubleshooting section](../../../csidriver/troubleshooting/powerflex.md) for details +- If multipath is configured, ensure CSI-PowerFlex volumes are blacklisted by multipathd. See [troubleshooting section](../../../../csidriver/troubleshooting/powerflex.md) for details #### SDC Deployment for Operator - This feature deploys the sdc kernel modules on all nodes with the help of an init container. From b4645681d118ddcb024a0e493d3f7d0d1e455432 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Tue, 15 Nov 2022 10:34:47 -0500 Subject: [PATCH 24/25] Update powerflex.md --- content/docs/deployment/csmoperator/drivers/powerflex.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index d538a711de..e1ebb8a160 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -19,7 +19,7 @@ User can query for all Dell CSI drivers using this command: `kubectl get csm --all-namespaces` ### Prerequisites -- If multipath is configured, ensure CSI-PowerFlex volumes are blacklisted by multipathd. See [troubleshooting section](../../../../csidriver/troubleshooting/powerflex.md) for details +- If multipath is configured, ensure CSI-PowerFlex volumes are blacklisted by multipathd. See [troubleshooting section](../../../csidriver/troubleshooting/powerflex) for details #### SDC Deployment for Operator - This feature deploys the sdc kernel modules on all nodes with the help of an init container. From 496169486652c208a0d8883b36121a55f117f792 Mon Sep 17 00:00:00 2001 From: Jooseppi Luna Date: Tue, 15 Nov 2022 10:37:13 -0500 Subject: [PATCH 25/25] Update powerflex.md --- content/docs/deployment/csmoperator/drivers/powerflex.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/docs/deployment/csmoperator/drivers/powerflex.md b/content/docs/deployment/csmoperator/drivers/powerflex.md index e1ebb8a160..272dd1e221 100644 --- a/content/docs/deployment/csmoperator/drivers/powerflex.md +++ b/content/docs/deployment/csmoperator/drivers/powerflex.md @@ -19,7 +19,7 @@ User can query for all Dell CSI drivers using this command: `kubectl get csm --all-namespaces` ### Prerequisites -- If multipath is configured, ensure CSI-PowerFlex volumes are blacklisted by multipathd. See [troubleshooting section](../../../csidriver/troubleshooting/powerflex) for details +- If multipath is configured, ensure CSI-PowerFlex volumes are blacklisted by multipathd. See [troubleshooting section](../../../../csidriver/troubleshooting/powerflex) for details #### SDC Deployment for Operator - This feature deploys the sdc kernel modules on all nodes with the help of an init container.