From 49d9f333a33849fa1ab2164e0ce8004e855b77a5 Mon Sep 17 00:00:00 2001 From: Sidharth Sharma Date: Tue, 13 May 2025 11:52:07 +0000 Subject: [PATCH] Setup Main branch for v1.15.0 --- .github/workflows/deploy.yml | 2 +- content/v1/_index.md | 59 +- content/v1/applicationmobility/_index.md | 30 - .../v1/applicationmobility/release/_index.md | 21 - content/v1/authorization/_index.md | 19 - .../v1/authorization/v2.x/release/_index.md | 16 - content/v1/concepts/_index.md | 33 + .../v1/concepts/applicationmobility/_index.md | 30 + .../applicationmobility/use_cases.md | 2 +- content/v1/concepts/authorization/_index.md | 33 + .../migration-guide-from-v1-to-v2/_index.md | 185 +++ .../authorization}/troubleshooting.md | 29 +- .../v1.x/Backup and Restore/_index.md | 22 + .../v1.x}/Backup and Restore/helm/_index.md | 15 +- .../v1.x}/Backup and Restore/rpm/_index.md | 9 +- .../v1/concepts/authorization/v1.x/_index.md | 66 + .../concepts/authorization/v1.x}/cli.md | 105 +- .../v1.x/configuration/_index.md | 28 + .../v1.x}/configuration/powerflex/_index.md | 88 +- .../v1.x}/configuration/powermax/_index.md | 111 +- .../v1.x}/configuration/powerscale/_index.md | 67 +- .../configuration/proxy-server/_index.md | 12 +- .../concepts/authorization/v1.x}/design.md | 64 +- .../v1/concepts/authorization/v2.x/_index.md | 75 + .../v2.x/configuration}/_index.md | 97 +- .../v2.x/configuration/powerflex/_index.md | 179 +++ .../v2.x/configuration/powermax/_index.md | 245 +++ .../v2.x/configuration/powerscale/_index.md | 180 +++ .../v1/{ => concepts}/cosidriver/_index.md | 21 +- .../cosidriver/features/_index.md | 3 +- .../cosidriver/features/objectscale.md | 0 .../cosidriver/installation/_index.md | 15 + .../installation/configuration_file.md | 0 .../cosidriver/installation/helm.md | 0 .../cosidriver/release/_index.md | 1 + .../cosidriver/troubleshooting/_index.md | 3 +- .../cosidriver/uninstallation/_index.md | 0 .../cosidriver/upgrade/_index.md | 2 +- content/v1/concepts/csidriver/_index.md | 56 + .../v1/concepts/csidriver/features/_index.md | 26 + .../csidriver/features/powerflex.md | 32 +- .../csidriver/features/powermax.md | 225 ++- .../csidriver/features/powerscale.md | 13 +- .../csidriver/features/powerstore.md | 66 +- .../csidriver/features/unity.md | 8 +- content/v1/concepts/csidriver/test/_index.md | 22 + .../csidriver/test/powerflex.md | 4 +- .../{ => concepts}/csidriver/test/powermax.md | 4 +- .../csidriver/test/powerscale.md | 2 +- .../csidriver/test/powerstore.md | 0 .../v1/{ => concepts}/csidriver/test/unity.md | 2 +- .../csidriver/troubleshooting/_index.md | 1 + .../csidriver/troubleshooting/powerflex.md | 9 +- .../csidriver/troubleshooting/powermax.md | 7 +- .../csidriver/troubleshooting/powerscale.md | 4 + .../csidriver/troubleshooting/powerstore.md | 5 +- .../csidriver/troubleshooting/unity.md | 3 + content/v1/concepts/observability/_index.md | 95 ++ .../observability/design/_index.md | 18 +- .../concepts/observability/metrics/_index.md | 28 + .../observability/metrics/powerflex.md | 8 +- .../observability/metrics/powermax.md | 8 +- .../observability/metrics/powerscale.md | 8 +- .../observability/metrics/powerstore.md | 8 +- .../observability/troubleshooting/_index.md | 20 +- content/v1/concepts/replication/_index.md | 118 ++ .../replication/architecture/_index.md | 36 +- .../replication/architecture/powerscale.md | 10 +- content/v1/concepts/replication/claimRef.md | 42 + .../replication/cluster-topologies.md | 36 +- .../replication/disaster-recovery.md | 4 +- .../replication/high-availability/_index.md | 20 + .../high-availability/powermax-metro.md} | 17 +- .../high-availability/powerstore-metro.md | 102 ++ .../concepts/replication/migration/_index.md | 17 + .../migration/migrating-volumes-diff-array.md | 4 +- .../migration/migrating-volumes-same-array.md | 10 +- .../{ => concepts}/replication/monitoring.md | 2 +- content/v1/concepts/replication/pvc-remap.md | 43 + .../replication/replication-actions.md | 2 +- .../v1/{ => concepts}/replication/tools.md | 3 +- .../replication/troubleshooting.md | 10 +- .../replication/volume_expansion.md | 0 content/v1/concepts/resiliency/_index.md | 204 +++ .../v1/{ => concepts}/resiliency/design.md | 12 +- .../resiliency/troubleshooting.md | 7 +- content/v1/concepts/resiliency/usecases.md | 42 + content/v1/{ => concepts}/snapshots/_index.md | 13 +- content/v1/cosidriver/installation/_index.md | 6 - content/v1/csidriver/Architecture_Diagram.png | Bin 42686 -> 0 bytes content/v1/csidriver/_index.md | 57 - content/v1/csidriver/features/_index.md | 9 - content/v1/csidriver/flex.jpeg | Bin 260546 -> 0 bytes content/v1/csidriver/isilon.jpeg | Bin 74381 -> 0 bytes content/v1/csidriver/powermax.jpeg | Bin 230224 -> 0 bytes content/v1/csidriver/powerstore.jpeg | Bin 135265 -> 0 bytes content/v1/csidriver/release/_index.md | 6 - content/v1/csidriver/release/powerflex.md | 40 - content/v1/csidriver/release/powermax.md | 60 - content/v1/csidriver/release/powerscale.md | 48 - content/v1/csidriver/release/powerstore.md | 49 - content/v1/csidriver/release/unity.md | 44 - content/v1/csidriver/test/_index.md | 5 - content/v1/csidriver/unity.jpeg | Bin 146859 -> 0 bytes content/v1/csidriver/unity_architecture.png | Bin 42010 -> 0 bytes content/v1/csm_hexagon.png | Bin 423322 -> 0 bytes content/v1/deployment/_index.md | 61 - .../csminstallationwizard/_index.md | 135 -- .../csminstallationwizard/release/_index.md | 35 - content/v1/deployment/csmoperator/_index.md | 453 ------ .../deployment/csmoperator/drivers/_index.md | 101 -- .../csmoperator/drivers/powerflex.md | 189 --- .../csmoperator/drivers/powermax.md | 693 --------- .../csmoperator/drivers/powerscale.md | 177 --- .../csmoperator/drivers/powerstore.md | 491 ------ .../deployment/csmoperator/drivers/unity.md | 104 -- .../v1/deployment/csmoperator/install_olm.jpg | Bin 182304 -> 0 bytes .../deployment/csmoperator/install_pods.jpg | Bin 116545 -> 0 bytes .../deployment/csmoperator/modules/_index.md | 15 - .../csmoperator/modules/observability.md | 106 -- .../csmoperator/modules/replication.md | 106 -- .../csmoperator/modules/resiliency.md | 91 -- .../csmoperator/operator_hub_install.gif | Bin 2268982 -> 0 bytes .../csmoperator/operator_migration.md | 64 - .../deployment/csmoperator/release/_index.md | 63 - .../v1/deployment/csmoperator/uninstall.JPG | Bin 110286 -> 0 bytes .../deployment/csmoperator/uninstall_olm.JPG | Bin 37915 -> 0 bytes content/v1/deployment/helm/_index.md | 11 - content/v1/deployment/helm/drivers/_index.md | 6 - .../helm/drivers/installation/_index.md | 23 - .../helm/drivers/installation/powermax.md | 600 -------- .../helm/drivers/installation/powerstore.md | 500 ------ .../deployment/helm/drivers/upgrade/_index.md | 8 - .../helm/drivers/upgrade/powermax.md | 63 - content/v1/deployment/helm/modules/_index.md | 6 - .../helm/modules/installation/_index.md | 6 - .../installation/observability/installer.md | 180 --- .../helm/modules/uninstall/_index.md | 6 - .../modules/uninstall/applicationmobility.md | 18 - .../helm/modules/uninstall/resiliency.md | 30 - .../deployment/helm/modules/upgrade/_index.md | 8 - .../helm/modules/upgrade/observability.md | 141 -- content/v1/deployment/offline/_index.md | 8 - .../v1/deployment/offline/drivers/_index.md | 130 -- .../v1/deployment/offline/modules/_index.md | 285 ---- .../v1/deployment/offline/upgrade/_index.md | 11 - content/v1/deployment/rpm/_index.md | 8 - content/v1/deployment/rpm/modules/_index.md | 6 - .../rpm/modules/installation/_index.md | 6 - .../rpm/modules/uninstall/_index.md | 7 - .../rpm/modules/uninstall/authorization.md | 31 - .../deployment/rpm/modules/upgrade/_index.md | 7 - .../rpm/modules/upgrade/authorization.md | 69 - content/v1/getting-started/_index.md | 31 + .../v1/getting-started/installation/_index.md | 20 + .../installation/helm/_index.md | 3 + .../installation/helm/modules/_index.md | 7 + .../helm/modules/authorizationv1-x.md | 245 +++ .../helm/modules/authorizationv2-0.md | 209 +++ .../helm/modules/observability.md | 272 ++++ .../helm/modules}/observability/_index.md | 251 +-- .../helm/modules}/observability/deployment.md | 91 +- .../deployment/configuration/configuration.md | 150 ++ .../deployment/driver/powerflex.md | 41 + .../deployment/driver/powermax.md | 55 + .../deployment/driver/powerscale.md | 37 + .../deployment/driver/powerstore.md | 17 + .../observability/deployment/installation.md | 30 + .../helm/modules/observability/installer.md | 154 ++ .../helm/modules}/replication/_index.md | 0 .../modules}/replication/configmap-secrets.md | 12 +- .../modules}/replication/install-repctl.md | 31 +- .../modules}/replication/install-script.md | 4 +- .../helm/modules}/replication/installation.md | 33 +- .../helm/modules}/replication/powerflex.md | 6 +- .../helm/modules}/replication/powermax.md | 4 +- .../helm/modules}/replication/powerscale.md | 4 +- .../helm/modules}/replication/powerstore.md | 4 +- .../modules}/replication/storageclasses.md | 9 +- .../installation/helm/modules/resiliency.md} | 27 +- .../helm/modules/resiliency/_index.md | 307 ++++ .../modules/resiliency/dynamicparameters.md | 36 + .../helm/modules/resiliency/installation.md | 96 ++ .../helm/modules/resiliency/powerflex.md | 34 + .../helm/modules/resiliency/powermax.md | 34 + .../helm/modules/resiliency/powerscale.md | 33 + .../helm/modules/resiliency/powerstore.md | 34 + .../helm/modules/resiliency/unity.md | 31 + .../installation/installationwizard/_index.md | 4 + .../installation/installationwizard/helm.md | 84 + .../installationwizard/operator.md | 62 + .../csm-versions/default-values.properties | 2 +- .../installationwizard}/src/index.html | 27 +- .../installationwizard}/src/jest.config.js | 0 .../installationwizard}/src/jest.setup.js | 0 .../installationwizard}/src/package.json | 0 .../src/static/css/bootstrap.min.css | 0 .../src/static/css/bootstrap.min.css.map | 0 .../src/static/css/dds-icons-min.css | 0 .../src/static/css/dds-icons.css | 0 .../src/static/css/style.css | 4 + .../src/static/images/logo.svg | 0 .../src/static/js/bootstrap.bundle.min.js | 0 .../src/static/js/bootstrap.bundle.min.js.map | 0 .../src/static/js/commands.js | 3 +- .../src/static/js/constants.js | 2 +- .../src/static/js/generate-yaml.js | 4 +- .../src/static/js/jquery-3.6.1.min.js | 0 .../src/static/js/tests/generate-yaml.test.js | 36 +- .../src/static/js/tests/ui-functions.test.js | 31 +- .../src/static/js/tests/utility.test.js | 2 +- .../src/static/js/ui-functions.js | 48 +- .../src/static/js/utility.js | 0 .../helm/csm-1.12.0-values.template} | 223 ++- .../helm/csm-1.13.0-values.template} | 223 ++- .../helm/csm-1.14.0-values.template} | 193 ++- .../operator/csm-isilon-1.12.0.template | 0 .../operator/csm-isilon-1.13.0.template} | 88 +- .../operator/csm-isilon-1.14.0.template} | 90 +- .../operator/csm-powermax-1.12.0.template | 0 .../operator/csm-powermax-1.13.0.template} | 119 +- .../operator/csm-powermax-1.14.0.template} | 127 +- .../operator/csm-powerstore-1.12.0.template | 0 .../operator/csm-powerstore-1.13.0.template} | 42 +- .../operator/csm-powerstore-1.14.0.template} | 38 +- .../installation/kubernetes/_index.md | 23 + .../kubernetes/powerflex/_index.md | 24 + .../powerflex/csmoperator/_index.md | 274 ++++ .../csmoperator/csm-modules/_index.md | 7 + .../csm-modules/authorizationv1-x.md | 9 + .../csm-modules/authorizationv2-0.md | 9 + .../csmoperator/csm-modules/observability.md | 9 + .../csmoperator/csm-modules/replication.md | 9 + .../csmoperator/csm-modules/resiliency.md | 9 + .../kubernetes/powerflex/helm/_index.md} | 227 +-- .../powerflex/helm/csm-modules/_index.md | 7 + .../helm/csm-modules/authorizationv1-x.md | 8 + .../helm/csm-modules/authorizationv2-0.md | 9 + .../helm/csm-modules/observability/_index.md | 32 + .../observability/postinstallation.md | 9 + .../helm/csm-modules/replication/_index.md | 18 + .../replication/configmap-secrets.md | 9 + .../csm-modules/replication/csi-driver.md | 8 + .../csm-modules/replication/install-repctl.md | 8 + .../csm-modules/replication/install-script.md | 8 + .../powerflex/helm/csm-modules/resiliency.md | 11 + .../kubernetes/powerflex/offline/_index.md | 21 + .../powerflex/troubleshooting/_index.md | 31 + .../kubernetes/powermax/_index.md | 35 + .../kubernetes/powermax/csmoperator/_index.md | 297 ++++ .../csmoperator/csm-modules/_index.md | 7 + .../csm-modules/authorizationv1-x.md | 9 + .../csm-modules/authorizationv2-0.md | 9 + .../csmoperator/csm-modules/observability.md | 9 + .../csmoperator/csm-modules/replication.md | 9 + .../csmoperator/csm-modules/resiliency.md | 10 + .../csmoperator/installationwizard.md | 5 + .../kubernetes/powermax/helm/_index.md | 247 +++ .../powermax/helm/csm-modules/_index.md | 7 + .../helm/csm-modules/authorizationv1-x.md | 10 + .../helm/csm-modules/authorizationv2-0.md | 9 + .../helm/csm-modules/observability/_index.md | 31 + .../observability/postinstallation.md | 9 + .../helm/csm-modules/replication/_index.md | 17 + .../replication/configmap-secrets.md | 9 + .../csm-modules/replication/csi-driver.md | 8 + .../csm-modules/replication/install-repctl.md | 8 + .../csm-modules/replication/install-script.md | 8 + .../powermax/helm/csm-modules/resiliency.md | 12 + .../kubernetes/powermax/offline/_index.md | 21 + .../powermax/prerequisite/_index.md | 480 ++++++ .../powermax/troubleshooting/_index.md | 33 + .../kubernetes/powerscale/_index.md | 24 + .../powerscale/csmoperator/_index.md | 218 +++ .../csmoperator/csm-modules/_index.md | 7 + .../csm-modules/authorizationv1-x.md | 9 + .../csm-modules/authorizationv2-0.md | 9 + .../csmoperator/csm-modules/observability.md | 9 + .../csmoperator/csm-modules/replication.md | 9 + .../csmoperator/csm-modules/resiliency.md | 10 + .../csmoperator/installationwizard.md | 5 + .../kubernetes/powerscale/helm/_index.md} | 212 +-- .../powerscale/helm/csm-modules/_index.md | 7 + .../helm/csm-modules/authorizationv1-x.md | 40 + .../helm/csm-modules/authorizationv2-0.md | 9 + .../helm/csm-modules/observability/_index.md | 31 + .../observability/postinstallation.md | 9 + .../helm/csm-modules/replication/_index.md | 17 + .../replication/configmap-secrets.md | 9 + .../csm-modules/replication/csi-driver.md | 8 + .../csm-modules/replication/install-repctl.md | 8 + .../csm-modules/replication/install-script.md | 8 + .../powerscale/helm/csm-modules/resiliency.md | 12 + .../kubernetes/powerscale/offline/_index.md | 21 + .../powerscale/troubleshooting/_index.md | 32 + .../kubernetes/powerstore/_index.md | 30 + .../powerstore/csmoperator/_index.md | 194 +++ .../csmoperator/csm-modules/_index.md | 7 + .../csmoperator/csm-modules/resiliency.md | 10 + .../csmoperator/installationwizard.md | 5 + .../kubernetes/powerstore/helm/_index.md | 237 +++ .../powerstore/helm/csm-modules/_index.md | 7 + .../helm/csm-modules/observability/_index.md | 32 + .../observability/postinstallation.md | 9 + .../helm/csm-modules/replication/_index.md | 17 + .../replication/configmap-secrets.md | 10 + .../csm-modules/replication/csi-driver.md | 8 + .../csm-modules/replication/install-repctl.md | 8 + .../csm-modules/replication/install-script.md | 8 + .../powerstore/helm/csm-modules/resiliency.md | 12 + .../kubernetes/powerstore/offline/_index.md | 21 + .../powerstore/prerequisite/_index.md | 214 +++ .../powerstore/troubleshooting/_index.md | 33 + .../installation/kubernetes/unityxt/_index.md | 31 + .../kubernetes/unityxt/csmoperator/_index.md | 120 ++ .../kubernetes/unityxt/helm/_index.md} | 347 ++--- .../unityxt/helm/csm-modules/_index.md | 7 + .../unityxt/helm/csm-modules/resiliency.md | 12 + .../kubernetes/unityxt/offline/_index.md | 20 + .../kubernetes/unityxt/prerequisite/_index.md | 60 + .../unityxt/troubleshooting/_index.md | 27 + .../installation/offline/_index.md | 8 + .../installation/offline/dependencies.md | 38 + .../installation/offline/helm.md | 167 ++ .../installation/offline/observability.md | 294 ++++ .../installation/offline/operator.md | 214 +++ .../installation/openshift/_index.md | 21 + .../openshift/operatorinstallation.md | 89 ++ .../openshift/powerflex/_index.md | 22 + .../openshift/powerflex/csmoperator/_index.md | 540 +++++++ .../csmoperator/csm-modules/_index.md | 7 + .../csm-modules/authorizationv1-x.md | 9 + .../csm-modules/authorizationv2-0.md | 9 + .../csmoperator/csm-modules/observability.md | 9 + .../csmoperator/csm-modules/replication.md | 9 + .../csmoperator/csm-modules/resiliency.md | 9 + .../openshift/powerflex/offline/_index.md | 16 + .../powerflex/troubleshooting/_index.md | 32 + .../installation/openshift/powermax/_index.md | 27 + .../openshift/powermax/csmoperator/_index.md | 338 ++++ .../csmoperator/csm-modules/_index.md | 7 + .../csm-modules/authorizationv1-x.md | 9 + .../csm-modules/authorizationv2-0.md | 9 + .../csmoperator/csm-modules/observability.md | 9 + .../csmoperator/csm-modules/replication.md | 9 + .../csmoperator/csm-modules/resiliency.md | 9 + .../csmoperator/installationwizard.md | 5 + .../openshift/powermax/offline/_index.md | 19 + .../openshift/powermax/prerequisite/_index.md | 484 ++++++ .../powermax/troubleshooting/_index.md | 31 + .../openshift/powerscale/_index.md | 22 + .../powerscale/csmoperator/_index.md | 684 +++++++++ .../csmoperator/csm-modules/_index.md | 7 + .../csm-modules/authorizationv1-x.md | 9 + .../csm-modules/authorizationv2-0.md | 9 + .../csmoperator/csm-modules/observability.md | 9 + .../csmoperator/csm-modules/replication.md | 9 + .../csmoperator/csm-modules/resiliency.md | 9 + .../csmoperator/installationwizard.md | 5 + .../powerscale/csmoperator/prerequisite.md | 99 ++ .../openshift/powerscale/offline/_index.md | 17 + .../powerscale/troubleshooting/_index.md | 30 + .../openshift/powerstore/_index.md | 22 + .../powerstore/csmoperator/_index.md | 571 +++++++ .../csmoperator/csm-modules/_index.md | 7 + .../csmoperator/csm-modules/resiliency.md | 9 + .../csmoperator/installationwizard.md | 5 + .../openshift/powerstore/offline/_index.md | 15 + .../powerstore/prerequisite/_index.md | 488 ++++++ .../powerstore/troubleshooting/_index.md | 31 + .../installation/openshift/unityxt/_index.md | 22 + .../openshift/unityxt/csmoperator/_index.md | 537 +++++++ .../openshift/unityxt/offline/_index.md | 14 + .../openshift/unityxt/prerequisite/_index.md | 277 ++++ .../unityxt/troubleshooting/_index.md | 25 + .../installation/operator/_index.md | 78 + .../installation/operator/modules/_index.md | 17 + .../operator/modules/authorizationv1-x.md} | 132 +- .../operator/modules/authorizationv2-0.md} | 100 +- .../operator/modules/observability.md | 69 + .../operator/modules/replication.md | 153 ++ .../operator/modules/resiliency.md | 46 + .../operator/openshift_modules/_index.md | 7 + .../openshift_modules/authorizationv1.x.md | 6 + .../openshift_modules/authorizationv2.0.md | 0 .../openshift_modules/observability.md | 170 ++ .../operator/openshift_modules/replication.md | 373 +++++ .../operator/openshift_modules/resiliency.md | 133 ++ .../operatorinstallation_kubernetes.md | 71 + .../operatorinstallation_openshift.md | 114 ++ .../installation/operatormigration/_index.md | 38 + .../installation/troubleshooting/_index.md | 7 + .../troubleshooting/csmoperator}/_index.md | 35 +- .../getting-started/uninstallation/_index.md | 20 + .../uninstallation/helm/_index.md | 3 + .../uninstallation/helm/driver/driver.md} | 14 +- .../helm/module/authorizationv1-x.md} | 13 +- .../helm/module/authorizationv2-0.md | 31 + .../helm/module}/observability.md | 11 +- .../helm/module}/replication.md | 13 +- .../uninstallation/helm/module/resiliency.md | 13 + .../uninstallation/kubernetes/_index.md | 21 + .../kubernetes/powerflex/_index.md | 14 + .../kubernetes/powerflex/helm/_index.md | 26 + .../powerflex/helm/csm-modules/_index.md | 6 + .../helm/csm-modules/authorizationv1-x.md | 7 + .../helm/csm-modules/authorizationv2-0.md | 7 + .../helm/csm-modules/observability.md | 7 + .../powerflex/helm/csm-modules/replication.md | 7 + .../powerflex/helm/csm-modules/resiliency.md | 9 + .../kubernetes/powerflex/operator/_index.md | 8 + .../kubernetes/powermax/_index.md | 19 + .../kubernetes/powermax/helm/_index.md | 26 + .../powermax/helm/csm-modules/_index.md | 6 + .../helm/csm-modules/authorizationv1-x.md | 7 + .../helm/csm-modules/authorizationv2-0.md | 7 + .../helm/csm-modules/observability.md | 7 + .../powermax/helm/csm-modules/replication.md | 7 + .../powermax/helm/csm-modules/resiliency.md | 8 + .../kubernetes/powermax/operator/_index.md | 8 + .../kubernetes/powerscale/_index.md | 14 + .../kubernetes/powerscale/helm/_index.md | 26 + .../powerscale/helm/csm-modules/_index.md | 6 + .../helm/csm-modules/authorizationv1-x.md | 7 + .../helm/csm-modules/authorizationv2-0.md | 7 + .../helm/csm-modules/observability.md | 7 + .../helm/csm-modules/replication.md | 7 + .../powerscale/helm/csm-modules/resiliency.md | 9 + .../kubernetes/powerscale/operator/_index.md | 9 + .../kubernetes/powerstore/_index.md | 14 + .../kubernetes/powerstore/helm/_index.md | 24 + .../powerstore/helm/csm-modules/_index.md | 6 + .../helm/csm-modules/observability.md | 7 + .../helm/csm-modules/replication.md | 7 + .../powerstore/helm/csm-modules/resiliency.md | 8 + .../kubernetes/powerstore/operator/_index.md | 8 + .../kubernetes/unityxt/_index.md | 14 + .../kubernetes/unityxt/helm/_index.md | 19 + .../unityxt/helm/csm-modules/_index.md | 6 + .../unityxt/helm/csm-modules/resiliency.md | 8 + .../kubernetes/unityxt/operator/_index.md | 9 + .../uninstallation/openshift/_index.md | 21 + .../openshift/powerflex/_index.md | 13 + .../openshift/powerflex/operator/_index.md | 8 + .../openshift/powermax/_index.md | 18 + .../openshift/powermax/operator/_index.md | 8 + .../openshift/powerscale/_index.md | 13 + .../openshift/powerscale/operator/_index.md | 9 + .../openshift/powerstore/_index.md | 13 + .../openshift/powerstore/operator/_index.md | 8 + .../openshift/unityxt/_index.md | 11 + .../openshift/unityxt/operator/_index.md | 9 + .../uninstallation/operator/_index.md | 10 + .../uninstallation/operator/driver.md | 13 + content/v1/getting-started/upgrade/_index.md | 19 + .../v1/getting-started/upgrade/helm/_index.md | 3 + .../upgrade/helm/driver}/powerflex.md | 11 +- .../upgrade/helm/driver/powermax.md | 73 + .../upgrade/helm/driver/powerscale.md} | 15 +- .../upgrade/helm/driver}/powerstore.md | 21 +- .../upgrade/helm/driver}/unity.md | 10 +- .../upgrade/helm/module}/authorization.md | 9 +- .../upgrade/helm/module/observability.md | 187 +++ .../upgrade/helm/module}/replication.md | 17 +- .../upgrade/helm/module}/resiliency.md | 8 - .../upgrade/kubernetes/_index.md | 21 + .../upgrade/kubernetes/powerflex/_index.md | 16 + .../kubernetes/powerflex/helm/_index.md | 25 + .../powerflex/helm/csm-modules/_index.md | 6 + .../helm/csm-modules/authorization.md | 7 + .../helm/csm-modules/observability.md | 8 + .../powerflex/helm/csm-modules/replication.md | 7 + .../powerflex/helm/csm-modules/resiliency.md | 8 + .../kubernetes/powerflex/offline/_index.md | 8 + .../kubernetes/powerflex/operator/_index.md | 29 + .../powerflex/operator/csm-modules/_index.md | 7 + .../operator/csm-modules/authorizationv1-x.md | 6 + .../operator/csm-modules/observability.md | 7 + .../upgrade/kubernetes/powermax/_index.md | 20 + .../kubernetes/powermax/helm/_index.md | 25 + .../powermax/helm/csm-modules/_index.md | 6 + .../helm/csm-modules/authorization.md | 7 + .../helm/csm-modules/observability.md | 8 + .../powermax/helm/csm-modules/replication.md | 7 + .../powermax/helm/csm-modules/resiliency.md | 8 + .../kubernetes/powermax/offline/_index.md | 8 + .../kubernetes/powermax/operator/_index.md | 35 + .../powermax/operator/csm-modules/_index.md | 7 + .../operator/csm-modules/authorizationv1-x.md | 6 + .../operator/csm-modules/observability.md | 7 + .../upgrade/kubernetes/powerscale/_index.md | 16 + .../kubernetes/powerscale/helm/_index.md | 25 + .../powerscale/helm/csm-modules/_index.md | 6 + .../helm/csm-modules/authorization.md | 7 + .../helm/csm-modules/observability.md | 8 + .../helm/csm-modules/replication.md | 7 + .../powerscale/helm/csm-modules/resiliency.md | 8 + .../kubernetes/powerscale/offline/_index.md | 8 + .../kubernetes/powerscale/operator/_index.md | 35 + .../powerscale/operator/csm-modules/_index.md | 7 + .../operator/csm-modules/authorizationv1-x.md | 6 + .../operator/csm-modules/observability.md | 7 + .../upgrade/kubernetes/powerstore/_index.md | 16 + .../kubernetes/powerstore/helm/_index.md | 24 + .../powerstore/helm/csm-modules/_index.md | 6 + .../helm/csm-modules/observability.md | 7 + .../helm/csm-modules/replication.md | 7 + .../powerstore/helm/csm-modules/resiliency.md | 8 + .../kubernetes/powerstore/offline/_index.md | 8 + .../kubernetes/powerstore/operator/_index.md | 22 + .../upgrade/kubernetes/unityxt/_index.md | 15 + .../upgrade/kubernetes/unityxt/helm/_index.md | 21 + .../unityxt/helm/csm-modules/_index.md | 6 + .../unityxt/helm/csm-modules/resiliency.md | 8 + .../kubernetes/unityxt/offline/_index.md | 8 + .../kubernetes/unityxt/operator/_index.md | 18 + .../getting-started/upgrade/offline/_index.md | 11 + .../upgrade/openshift/_index.md | 21 + .../upgrade/openshift/powerflex/_index.md | 14 + .../openshift/powerflex/offline/_index.md | 8 + .../openshift/powerflex/operator/_index.md | 36 + .../powerflex/operator/csm-modules/_index.md | 7 + .../operator/csm-modules/authorizationv1-x.md | 6 + .../operator/csm-modules/observability.md | 7 + .../upgrade/openshift/powermax/_index.md | 18 + .../openshift/powermax/offline/_index.md | 8 + .../openshift/powermax/operator/_index.md | 36 + .../powermax/operator/csm-modules/_index.md | 7 + .../operator/csm-modules/authorizationv1-x.md | 6 + .../operator/csm-modules/observability.md | 7 + .../upgrade/openshift/powerscale/_index.md | 14 + .../openshift/powerscale/offline/_index.md | 8 + .../openshift/powerscale/operator/_index.md | 36 + .../powerscale/operator/csm-modules/_index.md | 7 + .../operator/csm-modules/authorizationv1-x.md | 6 + .../operator/csm-modules/observability.md | 7 + .../upgrade/openshift/powerstore/_index.md | 13 + .../openshift/powerstore/offline/_index.md | 8 + .../openshift/powerstore/operator/_index.md | 23 + .../upgrade/openshift/unityxt/_index.md | 13 + .../openshift/unityxt/offline/_index.md | 8 + .../openshift/unityxt/operator/_index.md | 18 + .../upgrade/operator/_index.md | 3 + .../upgrade/operator/authorization_upgrade.md | 77 + .../upgrade/operator/driver_upgrade.md | 117 ++ .../upgrade/operator/observability_upgrade.md | 48 + .../upgrade/operator/upgrade.md | 38 + content/v1/observability/_index.md | 94 -- content/v1/observability/metrics/_index.md | 9 - .../v1/observability/obs_architecture1.png | Bin 32995 -> 0 bytes .../v1/observability/obs_architecture2.png | Bin 40479 -> 0 bytes content/v1/observability/release/_index.md | 40 - content/v1/prerequisites/_index.md | 99 -- content/v1/prerequisites/component-version.md | 21 - content/v1/release/_index.md | 125 ++ content/v1/replication/_index.md | 89 -- content/v1/replication/arch.png | Bin 55526 -> 0 bytes content/v1/replication/common.png | Bin 44238 -> 0 bytes content/v1/replication/migration/_index.md | 7 - content/v1/replication/release/_index.md | 29 - content/v1/replication/sidecar.png | Bin 23115 -> 0 bytes content/v1/replication/state.png | Bin 18298 -> 0 bytes content/v1/replication/state_changes1.png | Bin 4993 -> 0 bytes content/v1/replication/state_changes2.png | Bin 5581 -> 0 bytes content/v1/resiliency/_index.md | 220 --- content/v1/resiliency/release/_index.md | 39 - content/v1/resiliency/resiliency_model.jpg | Bin 54821 -> 0 bytes content/v1/resiliency/usecases.md | 42 - .../volume-group-snapshots/_index.md | 127 -- .../v1/support/Slack_Mark-600x600-950dd6f.png | Bin 14874 -> 0 bytes content/v1/support/_index.md | 25 +- .../support/contributionguidelines/_index.md | 15 +- .../v1/support/deprecationpolicy/_index.md | 27 +- content/v1/support/learn/_index.md | 5 +- .../v1/support/{cert-csi => }/qualified.md | 0 content/v1/support/release/_index.md | 27 - content/v1/support/troubleshooting/_index.md | 16 +- content/v1/supportmatrix/_index.md | 125 ++ content/v1/supportmatrix/component-version.md | 21 + .../operator.md | 14 +- content/v1/tooling/_index.md | 13 + .../{support => tooling}/cert-csi/_index.md | 52 +- content/v1/tooling/cert-csi/csm_image.png | Bin 0 -> 67000 bytes .../cert-csi/img/HTMLReport.png | Bin .../cert-csi/img/interruptTest.png | Bin .../cert-csi/img/listRuns.png | Bin .../cert-csi/img/longevity.png | Bin .../cert-csi/img/multiDBTabularReport.png | Bin .../cert-csi/img/resourceUsage.png | Bin .../cert-csi/img/scaling.PNG | Bin .../cert-csi/img/tabularReport.png | Bin .../cert-csi/img/textReport.png | Bin .../cert-csi/img/unifiedTest.png | Bin content/v1/{support => tooling}/cli/_index.md | 51 +- content/v1/tooling/repctl/_index.md | 223 +++ content/v2/_index.md | 11 +- content/v2/applicationmobility/_index.md | 4 +- .../v2/applicationmobility/release/_index.md | 8 +- content/v2/authorization/_index.md | 2 +- .../v1.x/configuration/powerflex/_index.md | 17 +- .../v1.x/configuration/powermax/_index.md | 17 +- .../v1.x/configuration/powerscale/_index.md | 17 +- .../v2/authorization/v1.x/release/_index.md | 6 +- .../v2.x/configuration/powerflex/_index.md | 4 +- .../v2.x/configuration/powermax/_index.md | 12 +- .../v2.x/configuration/powerscale/_index.md | 5 +- .../v2/authorization/v2.x/release/_index.md | 7 +- .../v2/authorization/v2.x/troubleshooting.md | 2 +- content/v2/csidriver/_index.md | 8 +- content/v2/csidriver/features/powerflex.md | 129 +- content/v2/csidriver/features/powermax.md | 89 +- content/v2/csidriver/features/powerstore.md | 2 +- content/v2/csidriver/release/powerflex.md | 30 +- content/v2/csidriver/release/powermax.md | 37 +- content/v2/csidriver/release/powerscale.md | 17 +- content/v2/csidriver/release/powerstore.md | 24 +- content/v2/csidriver/release/unity.md | 11 +- .../v2/csidriver/troubleshooting/powermax.md | 1 + .../csminstallationwizard/_index.md | 26 +- .../csminstallationwizard/release/_index.md | 12 +- .../csm-versions/default-values.properties | 2 +- .../csminstallationwizard/src/index.html | 5 +- .../src/static/css/bootstrap.min.css.map | 0 .../src/static/js/constants.js | 3 +- .../src/static/js/tests/generate-yaml.test.js | 3 +- .../src/static/js/tests/ui-functions.test.js | 3 +- .../src/static/js/tests/utility.test.js | 3 +- .../src/static/js/ui-functions.js | 11 +- .../templates/helm/csm-1.13.0-values.template | 0 .../templates/helm/csm-1.8.0-values.template | 473 ------ .../operator/csm-isilon-1.11.1.template | 4 +- .../operator/csm-isilon-1.12.0.template | 4 +- .../operator/csm-isilon-1.13.0.template | 0 .../operator/csm-isilon-1.8.0.template | 470 ------ .../operator/csm-powermax-1.11.1.template | 2 +- .../operator/csm-powermax-1.12.0.template | 2 +- .../operator/csm-powermax-1.13.0.template | 0 .../operator/csm-powermax-1.9.3.template | 409 ----- .../operator/csm-powerstore-1.11.1.template | 2 +- .../operator/csm-powerstore-1.12.0.template | 2 +- .../operator/csm-powerstore-1.13.0.template | 0 .../operator/csm-powerstore-1.9.3.template | 195 --- content/v2/deployment/csmoperator/_index.md | 137 +- .../deployment/csmoperator/drivers/_index.md | 14 +- .../csmoperator/drivers/powerflex.md | 21 +- .../csmoperator/drivers/powermax.md | 118 +- .../csmoperator/drivers/powerstore.md | 128 +- .../deployment/csmoperator/drivers/unity.md | 4 +- .../csmoperator/modules/authorizationv2-0.md | 2 +- .../csmoperator/modules/replication.md | 7 +- .../csmoperator/modules/resiliency.md | 12 +- .../deployment/csmoperator/release/_index.md | 42 +- content/v2/deployment/helm/_index.md | 2 +- .../helm/drivers/installation/_index.md | 2 +- .../helm/drivers/installation/isilon.md | 14 +- .../helm/drivers/installation/powerflex.md | 16 +- .../helm/drivers/installation/powermax.md | 140 +- .../helm/drivers/installation/powerstore.md | 46 +- .../helm/drivers/installation/unity.md | 36 +- .../deployment/helm/drivers/upgrade/isilon.md | 6 +- .../helm/drivers/upgrade/powerflex.md | 19 +- .../helm/drivers/upgrade/powermax.md | 15 +- .../helm/drivers/upgrade/powerstore.md | 24 +- .../deployment/helm/drivers/upgrade/unity.md | 14 +- .../installation/observability/deployment.md | 11 +- .../replication/install-repctl.md | 10 +- .../replication/install-script.md | 9 +- .../modules/uninstall/applicationmobility.md | 2 +- .../helm/modules/uninstall/observability.md | 2 +- .../helm/modules/uninstall/replication.md | 5 +- .../helm/modules/uninstall/resiliency.md | 6 +- .../helm/modules/upgrade/authorization.md | 10 +- .../helm/modules/upgrade/observability.md | 2 +- .../helm/modules/upgrade/replication.md | 25 +- .../v2/deployment/offline/modules/_index.md | 29 +- .../authorization-v1.x/authorizationv1-x.md | 6 +- .../rpm/modules/upgrade/authorization.md | 1 + content/v2/observability/release/_index.md | 16 +- content/v2/prerequisites/_index.md | 75 +- content/v2/prerequisites/component-version.md | 26 +- content/v2/prerequisites/operator.md | 13 +- content/v2/replication/_index.md | 4 +- content/v2/replication/architecture/_index.md | 4 +- .../high-availability/powerstore-metro.md | 8 +- content/v2/replication/release/_index.md | 15 +- content/v2/replication/troubleshooting.md | 15 +- content/v2/resiliency/_index.md | 6 +- content/v2/resiliency/release/_index.md | 13 +- content/v2/snapshots/_index.md | 25 +- .../volume-group-snapshots/_index.md | 31 +- content/v2/support/_index.md | 5 +- content/v2/support/cert-csi/_index.md | 25 +- content/v2/support/cert-csi/qualified.md | 15 +- content/v2/support/cli/_index.md | 282 ++-- content/v3/_index.md | 31 +- content/v3/applicationmobility/_index.md | 2 +- .../v3/applicationmobility/release/_index.md | 9 +- .../Migration guide from v1 to v2/_index.md | 0 content/v3/authorization/_index.md | 6 +- .../v1.x GA/Backup and Restore/_index.md | 12 - content/v3/authorization/v1.x GA/_index.md | 64 - .../v1.x GA/configuration/_index.md | 8 - content/v3/authorization/v1.x GA/design1.png | Bin 22497 -> 0 bytes content/v3/authorization/v1.x GA/design2.png | Bin 8977 -> 0 bytes .../v1.x GA/karavi-authorization-example.png | Bin 23719 -> 0 bytes .../authorization/v1.x GA/release/_index.md | 34 - .../v1.x/Backup and Restore/_index.md | 0 .../v1.x/Backup and Restore/helm/_index.md | 0 .../v1.x/Backup and Restore/rpm/_index.md | 0 .../{v1 => v3}/authorization/v1.x/_index.md | 0 content/{v1 => v3}/authorization/v1.x/cli.md | 0 .../v1.x/configuration/_index.md | 0 .../v1.x/configuration/powerflex/_index.md | 17 +- .../v1.x/configuration/powermax/_index.md | 17 +- .../v1.x/configuration/powerscale/_index.md | 17 +- .../v1.x/configuration/proxy-server/_index.md | 0 .../{v1 => v3}/authorization/v1.x/design.md | 0 .../{v1 => v3}/authorization/v1.x/design1.png | Bin .../{v1 => v3}/authorization/v1.x/design2.png | Bin .../v1.x/karavi-authorization-example.png | Bin .../authorization/v1.x/release/_index.md | 6 +- .../authorization/v1.x/troubleshooting.md | 0 .../authorization/v2.0 Tech Preview/_index.md | 78 - .../authorization-ha-example.png | Bin 121616 -> 0 bytes .../v2.0 Tech Preview/configuration/_index.md | 8 - .../configuration/powerflex/_index.md | 119 -- .../authorization/v2.0 Tech Preview/image.png | Bin 178897 -> 0 bytes .../{v1 => v3}/authorization/v2.x/_index.md | 0 .../v2.x/authorization-ha-example.png | Bin .../v2.x/configuration/_index.md | 0 .../v2.x/configuration/powerflex/_index.md | 4 +- .../v2.x/configuration/powermax/_index.md | 12 +- .../v2.x/configuration/powerscale/_index.md | 5 +- .../{v1 => v3}/authorization/v2.x/image.png | Bin .../v3/authorization/v2.x/release/_index.md | 13 + .../authorization/v2.x/troubleshooting.md | 2 +- content/v3/cosidriver/_index.md | 2 + content/v3/csidriver/_index.md | 4 +- content/v3/csidriver/features/powerflex.md | 44 + content/v3/csidriver/features/powermax.md | 3 + content/v3/csidriver/features/powerscale.md | 1368 ++++++++--------- content/v3/csidriver/features/powerstore.md | 101 +- content/v3/csidriver/release/powerflex.md | 24 +- content/v3/csidriver/release/powermax.md | 31 +- content/v3/csidriver/release/powerscale.md | 23 +- content/v3/csidriver/release/powerstore.md | 25 +- content/v3/csidriver/release/unity.md | 19 +- .../v3/csidriver/troubleshooting/powerflex.md | 1 - .../v3/csidriver/troubleshooting/powermax.md | 1 + content/v3/csm_hexagon.png | Bin 194107 -> 423322 bytes content/v3/deployment/_index.md | 17 +- .../csminstallationwizard/_index.md | 37 +- .../csminstallationwizard/release/_index.md | 7 +- .../csm-versions/default-values.properties | 2 +- .../csminstallationwizard/src/index.html | 41 +- .../csminstallationwizard/src/package.json | 6 +- .../src/static/css/bootstrap-min-css.map | 0 .../{dds-icons.min.css => dds-icons-min.css} | 0 .../src/static/css/style.css | 2 +- .../src/static/js/commands.js | 1 + .../src/static/js/constants.js | 4 +- .../src/static/js/generate-yaml.js | 2 + .../src/static/js/tests/generate-yaml.test.js | 836 ++++++++-- .../src/static/js/tests/ui-functions.test.js | 22 +- .../src/static/js/tests/utility.test.js | 4 +- .../src/static/js/ui-functions.js | 46 +- .../templates/helm/csm-1.11.1-values.template | 0 .../templates/helm/csm-1.12.0-values.template | 0 .../operator/csm-isilon-1.10.2.template | 34 +- .../operator/csm-isilon-1.11.1.template | 4 +- ....0.template => csm-isilon-1.12.0.template} | 56 +- .../operator/csm-powermax-1.10.2.template | 22 +- .../operator/csm-powermax-1.11.1.template | 2 +- ....template => csm-powermax-1.12.0.template} | 72 +- .../operator/csm-powerstore-1.10.2.template | 16 +- .../operator/csm-powerstore-1.11.1.template | 2 +- ...emplate => csm-powerstore-1.12.0.template} | 32 +- content/v3/deployment/csmoperator/_index.md | 176 +-- .../deployment/csmoperator/drivers/_index.md | 45 +- .../csmoperator/drivers/powerflex.md | 29 +- .../csmoperator/drivers/powermax.md | 348 +++-- .../csmoperator/drivers/powerscale.md | 22 +- .../csmoperator/drivers/powerstore.md | 148 +- .../deployment/csmoperator/drivers/unity.md | 27 +- .../deployment/csmoperator/install.JPG | Bin content/v3/deployment/csmoperator/install.jpg | Bin 109610 -> 0 bytes .../csmoperator/install_olm_pods.JPG | Bin .../csmoperator/install_olm_pods.jpg | Bin 58146 -> 0 bytes .../deployment/csmoperator/modules/_index.md | 4 +- .../csmoperator/modules/authorizationv1-x.md | 0 .../csmoperator/modules/authorizationv2-0.md | 2 +- .../csmoperator/modules/observability.md | 10 +- .../csmoperator/modules/replication.md | 23 +- .../csmoperator/modules/resiliency.md | 22 +- .../deployment/csmoperator/release/_index.md | 26 +- .../csmoperator/troubleshooting/_index.md | 12 + .../helm/drivers/installation/_index.md | 4 +- .../helm/drivers/installation/isilon.md | 44 +- .../helm/drivers/installation/powerflex.md | 105 +- .../helm/drivers/installation/powermax.md | 323 ++-- .../helm/drivers/installation/powerstore.md | 129 +- .../helm/drivers/installation/unity.md | 98 +- .../deployment/helm/drivers/upgrade/isilon.md | 10 +- .../helm/drivers/upgrade/powerflex.md | 8 +- .../helm/drivers/upgrade/powermax.md | 8 +- .../helm/drivers/upgrade/powerstore.md | 10 +- .../deployment/helm/drivers/upgrade/unity.md | 8 +- .../installation/authorization v2.0/_index.md | 0 .../installation/authorization-v1.x/_index.md | 0 .../installation/authorization/_index.md | 247 --- .../modules/installation/encryption/_index.md | 186 --- .../modules/installation/encryption/rekey.md | 144 -- .../modules/installation/encryption/vault.md | 244 --- .../installation/observability/_index.md | 6 +- .../installation/observability/deployment.md | 97 +- .../installation/observability/installer.md | 4 +- .../replication/install-repctl.md | 7 +- .../replication/install-script.md | 7 +- .../installation/replication/installation.md | 15 + .../installation/replication/powerflex.md | 4 + .../installation/replication/powermax.md | 4 + .../installation/replication/powerscale.md | 4 + .../installation/replication/powerstore.md | 33 +- .../modules/installation/resiliency/_index.md | 28 +- .../modules/uninstall/authorization v2.0.md | 0 .../modules/uninstall/authorization-v1.x.md | 0 .../helm/modules/uninstall/encryption.md | 43 - .../helm/modules/upgrade/authorization.md | 4 + .../helm/modules/upgrade/observability.md | 32 +- .../helm/modules/upgrade/replication.md | 6 +- .../helm/modules/upgrade/resiliency.md | 4 +- .../v3/deployment/offline/drivers/_index.md | 6 +- .../v3/deployment/offline/modules/_index.md | 30 +- .../v3/deployment/offline/upgrade/_index.md | 4 +- .../authorization-v1.x/authorizationv1-x.md | 6 +- .../authorization/authorization.md | 192 --- .../rpm/modules/uninstall/authorization.md | 2 +- .../rpm/modules/upgrade/authorization.md | 12 +- content/v3/interactive-tutorials/_index.md | 23 - .../csm-operator/_index.md | 29 - .../csm-quickstart/_index.md | 29 - content/v3/observability/metrics/_index.md | 2 +- content/v3/observability/metrics/powermax.md | 5 +- .../v3/observability/metrics/powerstore.md | 10 +- content/v3/observability/release/_index.md | 12 +- content/v3/prerequisites/_index.md | 87 +- content/v3/prerequisites/component-version.md | 25 +- content/v3/prerequisites/operator.md | 12 +- content/v3/replication/_index.md | 10 +- .../replication/high-availability/_index.md | 0 .../high-availability/powermax-metro.md | 0 .../high-availability/powerstore-metro.md | 8 +- content/v3/replication/metro.png | Bin 45006 -> 0 bytes .../{v1 => v3}/replication/powermax-metro.png | Bin .../replication/powerstore-metro.png | Bin content/v3/replication/release/_index.md | 24 +- content/v3/replication/troubleshooting.md | 3 + content/v3/resiliency/_index.md | 9 +- content/v3/resiliency/release/_index.md | 12 +- content/v3/secure/_index.md | 8 - content/v3/secure/encryption/_index.md | 137 -- .../v3/secure/encryption/release/_index.md | 19 - .../v3/secure/encryption/troubleshooting.md | 102 -- .../volume-group-snapshots/_index.md | 6 +- content/v3/support/cert-csi/_index.md | 88 +- content/v3/support/cert-csi/qualified.md | 4 + content/v3/support/cli/_index.md | 151 +- content/v3/support/license/_index.md | 20 - content/v3/support/release/_index.md | 6 +- content/v3/support/troubleshooting/_index.md | 6 +- hugo.toml | 8 +- layouts/shortcodes/version-v1.html | 84 +- 872 files changed, 24029 insertions(+), 14489 deletions(-) delete mode 100644 content/v1/applicationmobility/_index.md delete mode 100644 content/v1/applicationmobility/release/_index.md delete mode 100644 content/v1/authorization/_index.md delete mode 100644 content/v1/authorization/v2.x/release/_index.md create mode 100644 content/v1/concepts/_index.md create mode 100644 content/v1/concepts/applicationmobility/_index.md rename content/v1/{ => concepts}/applicationmobility/use_cases.md (95%) create mode 100644 content/v1/concepts/authorization/_index.md create mode 100644 content/v1/concepts/authorization/migration-guide-from-v1-to-v2/_index.md rename content/{v3/authorization/v1.x GA => v1/concepts/authorization}/troubleshooting.md (92%) create mode 100644 content/v1/concepts/authorization/v1.x/Backup and Restore/_index.md rename content/{v3/authorization/v1.x GA => v1/concepts/authorization/v1.x}/Backup and Restore/helm/_index.md (86%) rename content/{v3/authorization/v1.x GA => v1/concepts/authorization/v1.x}/Backup and Restore/rpm/_index.md (94%) create mode 100644 content/v1/concepts/authorization/v1.x/_index.md rename content/{v3/authorization/v1.x GA => v1/concepts/authorization/v1.x}/cli.md (97%) create mode 100644 content/v1/concepts/authorization/v1.x/configuration/_index.md rename content/{v3/authorization/v1.x GA => v1/concepts/authorization/v1.x}/configuration/powerflex/_index.md (53%) rename content/{v3/authorization/v1.x GA => v1/concepts/authorization/v1.x}/configuration/powermax/_index.md (50%) rename content/{v3/authorization/v1.x GA => v1/concepts/authorization/v1.x}/configuration/powerscale/_index.md (59%) rename content/{v3/authorization/v1.x GA => v1/concepts/authorization/v1.x}/configuration/proxy-server/_index.md (95%) rename content/{v3/authorization/v1.x GA => v1/concepts/authorization/v1.x}/design.md (75%) create mode 100644 content/v1/concepts/authorization/v2.x/_index.md rename content/{v3/authorization/v2.0 Tech Preview/configuration/proxy-server => v1/concepts/authorization/v2.x/configuration}/_index.md (53%) create mode 100644 content/v1/concepts/authorization/v2.x/configuration/powerflex/_index.md create mode 100644 content/v1/concepts/authorization/v2.x/configuration/powermax/_index.md create mode 100644 content/v1/concepts/authorization/v2.x/configuration/powerscale/_index.md rename content/v1/{ => concepts}/cosidriver/_index.md (73%) rename content/v1/{ => concepts}/cosidriver/features/_index.md (96%) rename content/v1/{ => concepts}/cosidriver/features/objectscale.md (100%) create mode 100644 content/v1/concepts/cosidriver/installation/_index.md rename content/v1/{ => concepts}/cosidriver/installation/configuration_file.md (100%) rename content/v1/{ => concepts}/cosidriver/installation/helm.md (100%) rename content/v1/{ => concepts}/cosidriver/release/_index.md (95%) rename content/v1/{ => concepts}/cosidriver/troubleshooting/_index.md (94%) rename content/v1/{ => concepts}/cosidriver/uninstallation/_index.md (100%) rename content/v1/{ => concepts}/cosidriver/upgrade/_index.md (97%) create mode 100644 content/v1/concepts/csidriver/_index.md create mode 100644 content/v1/concepts/csidriver/features/_index.md rename content/v1/{ => concepts}/csidriver/features/powerflex.md (95%) rename content/v1/{ => concepts}/csidriver/features/powermax.md (71%) rename content/v1/{ => concepts}/csidriver/features/powerscale.md (94%) rename content/v1/{ => concepts}/csidriver/features/powerstore.md (90%) rename content/v1/{ => concepts}/csidriver/features/unity.md (97%) create mode 100644 content/v1/concepts/csidriver/test/_index.md rename content/v1/{ => concepts}/csidriver/test/powerflex.md (98%) rename content/v1/{ => concepts}/csidriver/test/powermax.md (95%) rename content/v1/{ => concepts}/csidriver/test/powerscale.md (98%) rename content/v1/{ => concepts}/csidriver/test/powerstore.md (100%) rename content/v1/{ => concepts}/csidriver/test/unity.md (93%) rename content/v1/{ => concepts}/csidriver/troubleshooting/_index.md (88%) rename content/v1/{ => concepts}/csidriver/troubleshooting/powerflex.md (95%) rename content/v1/{ => concepts}/csidriver/troubleshooting/powermax.md (94%) rename content/v1/{ => concepts}/csidriver/troubleshooting/powerscale.md (99%) rename content/v1/{ => concepts}/csidriver/troubleshooting/powerstore.md (96%) rename content/v1/{ => concepts}/csidriver/troubleshooting/unity.md (99%) create mode 100644 content/v1/concepts/observability/_index.md rename content/v1/{ => concepts}/observability/design/_index.md (53%) create mode 100644 content/v1/concepts/observability/metrics/_index.md rename content/v1/{ => concepts}/observability/metrics/powerflex.md (80%) rename content/v1/{ => concepts}/observability/metrics/powermax.md (89%) rename content/v1/{ => concepts}/observability/metrics/powerscale.md (82%) rename content/v1/{ => concepts}/observability/metrics/powerstore.md (83%) rename content/v1/{ => concepts}/observability/troubleshooting/_index.md (88%) create mode 100644 content/v1/concepts/replication/_index.md rename content/v1/{ => concepts}/replication/architecture/_index.md (77%) rename content/v1/{ => concepts}/replication/architecture/powerscale.md (89%) create mode 100644 content/v1/concepts/replication/claimRef.md rename content/v1/{ => concepts}/replication/cluster-topologies.md (81%) rename content/v1/{ => concepts}/replication/disaster-recovery.md (93%) create mode 100644 content/v1/concepts/replication/high-availability/_index.md rename content/{v3/replication/high-availability.md => v1/concepts/replication/high-availability/powermax-metro.md} (58%) create mode 100644 content/v1/concepts/replication/high-availability/powerstore-metro.md create mode 100644 content/v1/concepts/replication/migration/_index.md rename content/v1/{ => concepts}/replication/migration/migrating-volumes-diff-array.md (95%) rename content/v1/{ => concepts}/replication/migration/migrating-volumes-same-array.md (95%) rename content/v1/{ => concepts}/replication/monitoring.md (98%) create mode 100644 content/v1/concepts/replication/pvc-remap.md rename content/v1/{ => concepts}/replication/replication-actions.md (99%) rename content/v1/{ => concepts}/replication/tools.md (99%) rename content/v1/{ => concepts}/replication/troubleshooting.md (95%) rename content/v1/{ => concepts}/replication/volume_expansion.md (100%) create mode 100644 content/v1/concepts/resiliency/_index.md rename content/v1/{ => concepts}/resiliency/design.md (76%) rename content/v1/{ => concepts}/resiliency/troubleshooting.md (74%) create mode 100644 content/v1/concepts/resiliency/usecases.md rename content/v1/{ => concepts}/snapshots/_index.md (87%) delete mode 100644 content/v1/cosidriver/installation/_index.md delete mode 100644 content/v1/csidriver/Architecture_Diagram.png delete mode 100644 content/v1/csidriver/_index.md delete mode 100644 content/v1/csidriver/features/_index.md delete mode 100644 content/v1/csidriver/flex.jpeg delete mode 100644 content/v1/csidriver/isilon.jpeg delete mode 100644 content/v1/csidriver/powermax.jpeg delete mode 100644 content/v1/csidriver/powerstore.jpeg delete mode 100644 content/v1/csidriver/release/_index.md delete mode 100644 content/v1/csidriver/release/powerflex.md delete mode 100644 content/v1/csidriver/release/powermax.md delete mode 100644 content/v1/csidriver/release/powerscale.md delete mode 100644 content/v1/csidriver/release/powerstore.md delete mode 100644 content/v1/csidriver/release/unity.md delete mode 100644 content/v1/csidriver/test/_index.md delete mode 100644 content/v1/csidriver/unity.jpeg delete mode 100644 content/v1/csidriver/unity_architecture.png delete mode 100644 content/v1/csm_hexagon.png delete mode 100644 content/v1/deployment/_index.md delete mode 100644 content/v1/deployment/csminstallationwizard/_index.md delete mode 100644 content/v1/deployment/csminstallationwizard/release/_index.md delete mode 100644 content/v1/deployment/csmoperator/_index.md delete mode 100644 content/v1/deployment/csmoperator/drivers/_index.md delete mode 100644 content/v1/deployment/csmoperator/drivers/powerflex.md delete mode 100644 content/v1/deployment/csmoperator/drivers/powermax.md delete mode 100644 content/v1/deployment/csmoperator/drivers/powerscale.md delete mode 100644 content/v1/deployment/csmoperator/drivers/powerstore.md delete mode 100644 content/v1/deployment/csmoperator/drivers/unity.md delete mode 100644 content/v1/deployment/csmoperator/install_olm.jpg delete mode 100644 content/v1/deployment/csmoperator/install_pods.jpg delete mode 100644 content/v1/deployment/csmoperator/modules/_index.md delete mode 100644 content/v1/deployment/csmoperator/modules/observability.md delete mode 100644 content/v1/deployment/csmoperator/modules/replication.md delete mode 100644 content/v1/deployment/csmoperator/modules/resiliency.md delete mode 100644 content/v1/deployment/csmoperator/operator_hub_install.gif delete mode 100644 content/v1/deployment/csmoperator/operator_migration.md delete mode 100644 content/v1/deployment/csmoperator/release/_index.md delete mode 100644 content/v1/deployment/csmoperator/uninstall.JPG delete mode 100644 content/v1/deployment/csmoperator/uninstall_olm.JPG delete mode 100644 content/v1/deployment/helm/_index.md delete mode 100644 content/v1/deployment/helm/drivers/_index.md delete mode 100644 content/v1/deployment/helm/drivers/installation/_index.md delete mode 100644 content/v1/deployment/helm/drivers/installation/powermax.md delete mode 100644 content/v1/deployment/helm/drivers/installation/powerstore.md delete mode 100644 content/v1/deployment/helm/drivers/upgrade/_index.md delete mode 100644 content/v1/deployment/helm/drivers/upgrade/powermax.md delete mode 100644 content/v1/deployment/helm/modules/_index.md delete mode 100644 content/v1/deployment/helm/modules/installation/_index.md delete mode 100644 content/v1/deployment/helm/modules/installation/observability/installer.md delete mode 100644 content/v1/deployment/helm/modules/uninstall/_index.md delete mode 100644 content/v1/deployment/helm/modules/uninstall/applicationmobility.md delete mode 100644 content/v1/deployment/helm/modules/uninstall/resiliency.md delete mode 100644 content/v1/deployment/helm/modules/upgrade/_index.md delete mode 100644 content/v1/deployment/helm/modules/upgrade/observability.md delete mode 100644 content/v1/deployment/offline/_index.md delete mode 100644 content/v1/deployment/offline/drivers/_index.md delete mode 100644 content/v1/deployment/offline/modules/_index.md delete mode 100644 content/v1/deployment/offline/upgrade/_index.md delete mode 100644 content/v1/deployment/rpm/_index.md delete mode 100644 content/v1/deployment/rpm/modules/_index.md delete mode 100644 content/v1/deployment/rpm/modules/installation/_index.md delete mode 100644 content/v1/deployment/rpm/modules/uninstall/_index.md delete mode 100644 content/v1/deployment/rpm/modules/uninstall/authorization.md delete mode 100644 content/v1/deployment/rpm/modules/upgrade/_index.md delete mode 100644 content/v1/deployment/rpm/modules/upgrade/authorization.md create mode 100644 content/v1/getting-started/_index.md create mode 100644 content/v1/getting-started/installation/_index.md create mode 100644 content/v1/getting-started/installation/helm/_index.md create mode 100644 content/v1/getting-started/installation/helm/modules/_index.md create mode 100644 content/v1/getting-started/installation/helm/modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/installation/helm/modules/authorizationv2-0.md create mode 100644 content/v1/getting-started/installation/helm/modules/observability.md rename content/v1/{deployment/helm/modules/installation => getting-started/installation/helm/modules}/observability/_index.md (63%) rename content/v1/{deployment/helm/modules/installation => getting-started/installation/helm/modules}/observability/deployment.md (80%) create mode 100644 content/v1/getting-started/installation/helm/modules/observability/deployment/configuration/configuration.md create mode 100644 content/v1/getting-started/installation/helm/modules/observability/deployment/driver/powerflex.md create mode 100644 content/v1/getting-started/installation/helm/modules/observability/deployment/driver/powermax.md create mode 100644 content/v1/getting-started/installation/helm/modules/observability/deployment/driver/powerscale.md create mode 100644 content/v1/getting-started/installation/helm/modules/observability/deployment/driver/powerstore.md create mode 100644 content/v1/getting-started/installation/helm/modules/observability/deployment/installation.md create mode 100644 content/v1/getting-started/installation/helm/modules/observability/installer.md rename content/v1/{deployment/helm/modules/installation => getting-started/installation/helm/modules}/replication/_index.md (100%) rename content/v1/{deployment/helm/modules/installation => getting-started/installation/helm/modules}/replication/configmap-secrets.md (87%) rename content/v1/{deployment/helm/modules/installation => getting-started/installation/helm/modules}/replication/install-repctl.md (64%) rename content/v1/{deployment/helm/modules/installation => getting-started/installation/helm/modules}/replication/install-script.md (92%) rename content/v1/{deployment/helm/modules/installation => getting-started/installation/helm/modules}/replication/installation.md (55%) rename content/v1/{deployment/helm/modules/installation => getting-started/installation/helm/modules}/replication/powerflex.md (97%) rename content/v1/{deployment/helm/modules/installation => getting-started/installation/helm/modules}/replication/powermax.md (98%) rename content/v1/{deployment/helm/modules/installation => getting-started/installation/helm/modules}/replication/powerscale.md (97%) rename content/v1/{deployment/helm/modules/installation => getting-started/installation/helm/modules}/replication/powerstore.md (97%) rename content/v1/{deployment/helm/modules/installation => getting-started/installation/helm/modules}/replication/storageclasses.md (89%) rename content/v1/{deployment/helm/modules/installation/resiliency/_index.md => getting-started/installation/helm/modules/resiliency.md} (80%) create mode 100644 content/v1/getting-started/installation/helm/modules/resiliency/_index.md create mode 100644 content/v1/getting-started/installation/helm/modules/resiliency/dynamicparameters.md create mode 100644 content/v1/getting-started/installation/helm/modules/resiliency/installation.md create mode 100644 content/v1/getting-started/installation/helm/modules/resiliency/powerflex.md create mode 100644 content/v1/getting-started/installation/helm/modules/resiliency/powermax.md create mode 100644 content/v1/getting-started/installation/helm/modules/resiliency/powerscale.md create mode 100644 content/v1/getting-started/installation/helm/modules/resiliency/powerstore.md create mode 100644 content/v1/getting-started/installation/helm/modules/resiliency/unity.md create mode 100644 content/v1/getting-started/installation/installationwizard/_index.md create mode 100644 content/v1/getting-started/installation/installationwizard/helm.md create mode 100644 content/v1/getting-started/installation/installationwizard/operator.md rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/csm-versions/default-values.properties (94%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/index.html (97%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/jest.config.js (100%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/jest.setup.js (100%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/package.json (100%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/static/css/bootstrap.min.css (100%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/static/css/bootstrap.min.css.map (100%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/static/css/dds-icons-min.css (100%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/static/css/dds-icons.css (100%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/static/css/style.css (98%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/static/images/logo.svg (100%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/static/js/bootstrap.bundle.min.js (100%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/static/js/bootstrap.bundle.min.js.map (100%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/static/js/commands.js (78%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/static/js/constants.js (98%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/static/js/generate-yaml.js (98%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/static/js/jquery-3.6.1.min.js (100%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/static/js/tests/generate-yaml.test.js (98%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/static/js/tests/ui-functions.test.js (96%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/static/js/tests/utility.test.js (99%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/static/js/ui-functions.js (93%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/static/js/utility.js (100%) rename content/{v2/deployment/csminstallationwizard/src/templates/helm/csm-1.9.3-values.template => v1/getting-started/installation/installationwizard/src/templates/helm/csm-1.12.0-values.template} (70%) rename content/{v2/deployment/csminstallationwizard/src/templates/helm/csm-1.10.2-values.template => v1/getting-started/installation/installationwizard/src/templates/helm/csm-1.13.0-values.template} (70%) rename content/{v3/deployment/csminstallationwizard/src/templates/helm/csm-1.11.0-values.template => v1/getting-started/installation/installationwizard/src/templates/helm/csm-1.14.0-values.template} (75%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/templates/operator/csm-isilon-1.12.0.template (100%) rename content/{v2/deployment/csminstallationwizard/src/templates/operator/csm-isilon-1.10.2.template => v1/getting-started/installation/installationwizard/src/templates/operator/csm-isilon-1.13.0.template} (89%) rename content/{v2/deployment/csminstallationwizard/src/templates/operator/csm-isilon-1.9.3.template => v1/getting-started/installation/installationwizard/src/templates/operator/csm-isilon-1.14.0.template} (87%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/templates/operator/csm-powermax-1.12.0.template (100%) rename content/{v2/deployment/csminstallationwizard/src/templates/operator/csm-powermax-1.8.0.template => v1/getting-started/installation/installationwizard/src/templates/operator/csm-powermax-1.13.0.template} (79%) rename content/{v2/deployment/csminstallationwizard/src/templates/operator/csm-powermax-1.10.2.template => v1/getting-started/installation/installationwizard/src/templates/operator/csm-powermax-1.14.0.template} (78%) rename content/v1/{deployment/csminstallationwizard => getting-started/installation/installationwizard}/src/templates/operator/csm-powerstore-1.12.0.template (100%) rename content/{v2/deployment/csminstallationwizard/src/templates/operator/csm-powerstore-1.8.0.template => v1/getting-started/installation/installationwizard/src/templates/operator/csm-powerstore-1.13.0.template} (86%) rename content/{v2/deployment/csminstallationwizard/src/templates/operator/csm-powerstore-1.10.2.template => v1/getting-started/installation/installationwizard/src/templates/operator/csm-powerstore-1.14.0.template} (90%) create mode 100644 content/v1/getting-started/installation/kubernetes/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/csmoperator/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/csmoperator/csm-modules/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/csmoperator/csm-modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/csmoperator/csm-modules/authorizationv2-0.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/csmoperator/csm-modules/observability.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/csmoperator/csm-modules/replication.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/csmoperator/csm-modules/resiliency.md rename content/v1/{deployment/helm/drivers/installation/powerflex.md => getting-started/installation/kubernetes/powerflex/helm/_index.md} (53%) create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/helm/csm-modules/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/helm/csm-modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/helm/csm-modules/authorizationv2-0.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/helm/csm-modules/observability/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/helm/csm-modules/observability/postinstallation.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/helm/csm-modules/replication/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/helm/csm-modules/replication/configmap-secrets.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/helm/csm-modules/replication/csi-driver.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/helm/csm-modules/replication/install-repctl.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/helm/csm-modules/replication/install-script.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/helm/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/offline/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerflex/troubleshooting/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/csmoperator/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/csmoperator/csm-modules/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/csmoperator/csm-modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/csmoperator/csm-modules/authorizationv2-0.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/csmoperator/csm-modules/observability.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/csmoperator/csm-modules/replication.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/csmoperator/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/csmoperator/installationwizard.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/helm/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/helm/csm-modules/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/helm/csm-modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/helm/csm-modules/authorizationv2-0.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/helm/csm-modules/observability/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/helm/csm-modules/observability/postinstallation.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/helm/csm-modules/replication/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/helm/csm-modules/replication/configmap-secrets.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/helm/csm-modules/replication/csi-driver.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/helm/csm-modules/replication/install-repctl.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/helm/csm-modules/replication/install-script.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/helm/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/offline/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/prerequisite/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powermax/troubleshooting/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/csmoperator/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/csmoperator/csm-modules/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/csmoperator/csm-modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/csmoperator/csm-modules/authorizationv2-0.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/csmoperator/csm-modules/observability.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/csmoperator/csm-modules/replication.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/csmoperator/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/csmoperator/installationwizard.md rename content/v1/{deployment/helm/drivers/installation/isilon.md => getting-started/installation/kubernetes/powerscale/helm/_index.md} (51%) create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/helm/csm-modules/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/helm/csm-modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/helm/csm-modules/authorizationv2-0.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/helm/csm-modules/observability/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/helm/csm-modules/observability/postinstallation.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/helm/csm-modules/replication/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/helm/csm-modules/replication/configmap-secrets.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/helm/csm-modules/replication/csi-driver.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/helm/csm-modules/replication/install-repctl.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/helm/csm-modules/replication/install-script.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/helm/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/offline/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerscale/troubleshooting/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerstore/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerstore/csmoperator/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerstore/csmoperator/csm-modules/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerstore/csmoperator/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerstore/csmoperator/installationwizard.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerstore/helm/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerstore/helm/csm-modules/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerstore/helm/csm-modules/observability/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerstore/helm/csm-modules/observability/postinstallation.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerstore/helm/csm-modules/replication/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerstore/helm/csm-modules/replication/configmap-secrets.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerstore/helm/csm-modules/replication/csi-driver.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerstore/helm/csm-modules/replication/install-repctl.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerstore/helm/csm-modules/replication/install-script.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerstore/helm/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerstore/offline/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerstore/prerequisite/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/powerstore/troubleshooting/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/unityxt/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/unityxt/csmoperator/_index.md rename content/v1/{deployment/helm/drivers/installation/unity.md => getting-started/installation/kubernetes/unityxt/helm/_index.md} (54%) create mode 100644 content/v1/getting-started/installation/kubernetes/unityxt/helm/csm-modules/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/unityxt/helm/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/installation/kubernetes/unityxt/offline/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/unityxt/prerequisite/_index.md create mode 100644 content/v1/getting-started/installation/kubernetes/unityxt/troubleshooting/_index.md create mode 100644 content/v1/getting-started/installation/offline/_index.md create mode 100644 content/v1/getting-started/installation/offline/dependencies.md create mode 100644 content/v1/getting-started/installation/offline/helm.md create mode 100644 content/v1/getting-started/installation/offline/observability.md create mode 100644 content/v1/getting-started/installation/offline/operator.md create mode 100644 content/v1/getting-started/installation/openshift/_index.md create mode 100644 content/v1/getting-started/installation/openshift/operatorinstallation.md create mode 100644 content/v1/getting-started/installation/openshift/powerflex/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powerflex/csmoperator/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powerflex/csmoperator/csm-modules/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powerflex/csmoperator/csm-modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/installation/openshift/powerflex/csmoperator/csm-modules/authorizationv2-0.md create mode 100644 content/v1/getting-started/installation/openshift/powerflex/csmoperator/csm-modules/observability.md create mode 100644 content/v1/getting-started/installation/openshift/powerflex/csmoperator/csm-modules/replication.md create mode 100644 content/v1/getting-started/installation/openshift/powerflex/csmoperator/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/installation/openshift/powerflex/offline/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powerflex/troubleshooting/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powermax/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powermax/csmoperator/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powermax/csmoperator/csm-modules/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powermax/csmoperator/csm-modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/installation/openshift/powermax/csmoperator/csm-modules/authorizationv2-0.md create mode 100644 content/v1/getting-started/installation/openshift/powermax/csmoperator/csm-modules/observability.md create mode 100644 content/v1/getting-started/installation/openshift/powermax/csmoperator/csm-modules/replication.md create mode 100644 content/v1/getting-started/installation/openshift/powermax/csmoperator/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/installation/openshift/powermax/csmoperator/installationwizard.md create mode 100644 content/v1/getting-started/installation/openshift/powermax/offline/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powermax/prerequisite/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powermax/troubleshooting/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powerscale/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powerscale/csmoperator/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powerscale/csmoperator/csm-modules/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powerscale/csmoperator/csm-modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/installation/openshift/powerscale/csmoperator/csm-modules/authorizationv2-0.md create mode 100644 content/v1/getting-started/installation/openshift/powerscale/csmoperator/csm-modules/observability.md create mode 100644 content/v1/getting-started/installation/openshift/powerscale/csmoperator/csm-modules/replication.md create mode 100644 content/v1/getting-started/installation/openshift/powerscale/csmoperator/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/installation/openshift/powerscale/csmoperator/installationwizard.md create mode 100644 content/v1/getting-started/installation/openshift/powerscale/csmoperator/prerequisite.md create mode 100644 content/v1/getting-started/installation/openshift/powerscale/offline/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powerscale/troubleshooting/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powerstore/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powerstore/csmoperator/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powerstore/csmoperator/csm-modules/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powerstore/csmoperator/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/installation/openshift/powerstore/csmoperator/installationwizard.md create mode 100644 content/v1/getting-started/installation/openshift/powerstore/offline/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powerstore/prerequisite/_index.md create mode 100644 content/v1/getting-started/installation/openshift/powerstore/troubleshooting/_index.md create mode 100644 content/v1/getting-started/installation/openshift/unityxt/_index.md create mode 100644 content/v1/getting-started/installation/openshift/unityxt/csmoperator/_index.md create mode 100644 content/v1/getting-started/installation/openshift/unityxt/offline/_index.md create mode 100644 content/v1/getting-started/installation/openshift/unityxt/prerequisite/_index.md create mode 100644 content/v1/getting-started/installation/openshift/unityxt/troubleshooting/_index.md create mode 100644 content/v1/getting-started/installation/operator/_index.md create mode 100644 content/v1/getting-started/installation/operator/modules/_index.md rename content/{v3/deployment/csmoperator/modules/authorization.md => v1/getting-started/installation/operator/modules/authorizationv1-x.md} (57%) rename content/{v3/deployment/csmoperator/modules/authorization v2.0 Tech Preview.md => v1/getting-started/installation/operator/modules/authorizationv2-0.md} (79%) create mode 100644 content/v1/getting-started/installation/operator/modules/observability.md create mode 100644 content/v1/getting-started/installation/operator/modules/replication.md create mode 100644 content/v1/getting-started/installation/operator/modules/resiliency.md create mode 100644 content/v1/getting-started/installation/operator/openshift_modules/_index.md create mode 100644 content/v1/getting-started/installation/operator/openshift_modules/authorizationv1.x.md create mode 100644 content/v1/getting-started/installation/operator/openshift_modules/authorizationv2.0.md create mode 100644 content/v1/getting-started/installation/operator/openshift_modules/observability.md create mode 100644 content/v1/getting-started/installation/operator/openshift_modules/replication.md create mode 100644 content/v1/getting-started/installation/operator/openshift_modules/resiliency.md create mode 100644 content/v1/getting-started/installation/operator/operatorinstallation_kubernetes.md create mode 100644 content/v1/getting-started/installation/operator/operatorinstallation_openshift.md create mode 100644 content/v1/getting-started/installation/operatormigration/_index.md create mode 100644 content/v1/getting-started/installation/troubleshooting/_index.md rename content/v1/{deployment/csmoperator/troubleshooting => getting-started/installation/troubleshooting/csmoperator}/_index.md (54%) create mode 100644 content/v1/getting-started/uninstallation/_index.md create mode 100644 content/v1/getting-started/uninstallation/helm/_index.md rename content/v1/{deployment/helm/drivers/uninstall/_index.md => getting-started/uninstallation/helm/driver/driver.md} (66%) rename content/{v3/deployment/helm/modules/uninstall/authorization.md => v1/getting-started/uninstallation/helm/module/authorizationv1-x.md} (60%) create mode 100644 content/v1/getting-started/uninstallation/helm/module/authorizationv2-0.md rename content/v1/{deployment/helm/modules/uninstall => getting-started/uninstallation/helm/module}/observability.md (61%) rename content/v1/{deployment/helm/modules/uninstall => getting-started/uninstallation/helm/module}/replication.md (77%) create mode 100644 content/v1/getting-started/uninstallation/helm/module/resiliency.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerflex/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerflex/helm/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerflex/helm/csm-modules/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerflex/helm/csm-modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerflex/helm/csm-modules/authorizationv2-0.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerflex/helm/csm-modules/observability.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerflex/helm/csm-modules/replication.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerflex/helm/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerflex/operator/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powermax/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powermax/helm/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powermax/helm/csm-modules/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powermax/helm/csm-modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powermax/helm/csm-modules/authorizationv2-0.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powermax/helm/csm-modules/observability.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powermax/helm/csm-modules/replication.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powermax/helm/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powermax/operator/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerscale/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerscale/helm/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerscale/helm/csm-modules/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerscale/helm/csm-modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerscale/helm/csm-modules/authorizationv2-0.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerscale/helm/csm-modules/observability.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerscale/helm/csm-modules/replication.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerscale/helm/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerscale/operator/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerstore/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerstore/helm/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerstore/helm/csm-modules/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerstore/helm/csm-modules/observability.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerstore/helm/csm-modules/replication.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerstore/helm/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/powerstore/operator/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/unityxt/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/unityxt/helm/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/unityxt/helm/csm-modules/_index.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/unityxt/helm/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/uninstallation/kubernetes/unityxt/operator/_index.md create mode 100644 content/v1/getting-started/uninstallation/openshift/_index.md create mode 100644 content/v1/getting-started/uninstallation/openshift/powerflex/_index.md create mode 100644 content/v1/getting-started/uninstallation/openshift/powerflex/operator/_index.md create mode 100644 content/v1/getting-started/uninstallation/openshift/powermax/_index.md create mode 100644 content/v1/getting-started/uninstallation/openshift/powermax/operator/_index.md create mode 100644 content/v1/getting-started/uninstallation/openshift/powerscale/_index.md create mode 100644 content/v1/getting-started/uninstallation/openshift/powerscale/operator/_index.md create mode 100644 content/v1/getting-started/uninstallation/openshift/powerstore/_index.md create mode 100644 content/v1/getting-started/uninstallation/openshift/powerstore/operator/_index.md create mode 100644 content/v1/getting-started/uninstallation/openshift/unityxt/_index.md create mode 100644 content/v1/getting-started/uninstallation/openshift/unityxt/operator/_index.md create mode 100644 content/v1/getting-started/uninstallation/operator/_index.md create mode 100644 content/v1/getting-started/uninstallation/operator/driver.md create mode 100644 content/v1/getting-started/upgrade/_index.md create mode 100644 content/v1/getting-started/upgrade/helm/_index.md rename content/v1/{deployment/helm/drivers/upgrade => getting-started/upgrade/helm/driver}/powerflex.md (80%) create mode 100644 content/v1/getting-started/upgrade/helm/driver/powermax.md rename content/v1/{deployment/helm/drivers/upgrade/isilon.md => getting-started/upgrade/helm/driver/powerscale.md} (72%) rename content/v1/{deployment/helm/drivers/upgrade => getting-started/upgrade/helm/driver}/powerstore.md (82%) rename content/v1/{deployment/helm/drivers/upgrade => getting-started/upgrade/helm/driver}/unity.md (74%) rename content/v1/{deployment/helm/modules/upgrade => getting-started/upgrade/helm/module}/authorization.md (83%) create mode 100644 content/v1/getting-started/upgrade/helm/module/observability.md rename content/v1/{deployment/helm/modules/upgrade => getting-started/upgrade/helm/module}/replication.md (92%) rename content/v1/{deployment/helm/modules/upgrade => getting-started/upgrade/helm/module}/resiliency.md (66%) create mode 100644 content/v1/getting-started/upgrade/kubernetes/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerflex/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerflex/helm/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerflex/helm/csm-modules/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerflex/helm/csm-modules/authorization.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerflex/helm/csm-modules/observability.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerflex/helm/csm-modules/replication.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerflex/helm/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerflex/offline/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerflex/operator/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerflex/operator/csm-modules/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerflex/operator/csm-modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerflex/operator/csm-modules/observability.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powermax/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powermax/helm/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powermax/helm/csm-modules/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powermax/helm/csm-modules/authorization.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powermax/helm/csm-modules/observability.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powermax/helm/csm-modules/replication.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powermax/helm/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powermax/offline/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powermax/operator/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powermax/operator/csm-modules/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powermax/operator/csm-modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powermax/operator/csm-modules/observability.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerscale/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerscale/helm/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerscale/helm/csm-modules/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerscale/helm/csm-modules/authorization.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerscale/helm/csm-modules/observability.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerscale/helm/csm-modules/replication.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerscale/helm/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerscale/offline/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerscale/operator/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerscale/operator/csm-modules/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerscale/operator/csm-modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerscale/operator/csm-modules/observability.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerstore/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerstore/helm/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerstore/helm/csm-modules/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerstore/helm/csm-modules/observability.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerstore/helm/csm-modules/replication.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerstore/helm/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerstore/offline/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/powerstore/operator/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/unityxt/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/unityxt/helm/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/unityxt/helm/csm-modules/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/unityxt/helm/csm-modules/resiliency.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/unityxt/offline/_index.md create mode 100644 content/v1/getting-started/upgrade/kubernetes/unityxt/operator/_index.md create mode 100644 content/v1/getting-started/upgrade/offline/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/powerflex/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/powerflex/offline/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/powerflex/operator/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/powerflex/operator/csm-modules/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/powerflex/operator/csm-modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/upgrade/openshift/powerflex/operator/csm-modules/observability.md create mode 100644 content/v1/getting-started/upgrade/openshift/powermax/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/powermax/offline/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/powermax/operator/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/powermax/operator/csm-modules/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/powermax/operator/csm-modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/upgrade/openshift/powermax/operator/csm-modules/observability.md create mode 100644 content/v1/getting-started/upgrade/openshift/powerscale/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/powerscale/offline/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/powerscale/operator/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/powerscale/operator/csm-modules/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/powerscale/operator/csm-modules/authorizationv1-x.md create mode 100644 content/v1/getting-started/upgrade/openshift/powerscale/operator/csm-modules/observability.md create mode 100644 content/v1/getting-started/upgrade/openshift/powerstore/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/powerstore/offline/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/powerstore/operator/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/unityxt/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/unityxt/offline/_index.md create mode 100644 content/v1/getting-started/upgrade/openshift/unityxt/operator/_index.md create mode 100644 content/v1/getting-started/upgrade/operator/_index.md create mode 100644 content/v1/getting-started/upgrade/operator/authorization_upgrade.md create mode 100644 content/v1/getting-started/upgrade/operator/driver_upgrade.md create mode 100644 content/v1/getting-started/upgrade/operator/observability_upgrade.md create mode 100644 content/v1/getting-started/upgrade/operator/upgrade.md delete mode 100644 content/v1/observability/_index.md delete mode 100644 content/v1/observability/metrics/_index.md delete mode 100644 content/v1/observability/obs_architecture1.png delete mode 100644 content/v1/observability/obs_architecture2.png delete mode 100644 content/v1/observability/release/_index.md delete mode 100644 content/v1/prerequisites/_index.md delete mode 100644 content/v1/prerequisites/component-version.md create mode 100644 content/v1/release/_index.md delete mode 100644 content/v1/replication/_index.md delete mode 100644 content/v1/replication/arch.png delete mode 100644 content/v1/replication/common.png delete mode 100644 content/v1/replication/migration/_index.md delete mode 100644 content/v1/replication/release/_index.md delete mode 100644 content/v1/replication/sidecar.png delete mode 100644 content/v1/replication/state.png delete mode 100644 content/v1/replication/state_changes1.png delete mode 100644 content/v1/replication/state_changes2.png delete mode 100644 content/v1/resiliency/_index.md delete mode 100644 content/v1/resiliency/release/_index.md delete mode 100644 content/v1/resiliency/resiliency_model.jpg delete mode 100644 content/v1/resiliency/usecases.md delete mode 100644 content/v1/snapshots/volume-group-snapshots/_index.md delete mode 100644 content/v1/support/Slack_Mark-600x600-950dd6f.png rename content/v1/support/{cert-csi => }/qualified.md (100%) delete mode 100644 content/v1/support/release/_index.md create mode 100644 content/v1/supportmatrix/_index.md create mode 100644 content/v1/supportmatrix/component-version.md rename content/v1/{prerequisites => supportmatrix}/operator.md (50%) create mode 100644 content/v1/tooling/_index.md rename content/v1/{support => tooling}/cert-csi/_index.md (89%) create mode 100644 content/v1/tooling/cert-csi/csm_image.png rename content/v1/{support => tooling}/cert-csi/img/HTMLReport.png (100%) rename content/v1/{support => tooling}/cert-csi/img/interruptTest.png (100%) rename content/v1/{support => tooling}/cert-csi/img/listRuns.png (100%) rename content/v1/{support => tooling}/cert-csi/img/longevity.png (100%) rename content/v1/{support => tooling}/cert-csi/img/multiDBTabularReport.png (100%) rename content/v1/{support => tooling}/cert-csi/img/resourceUsage.png (100%) rename content/v1/{support => tooling}/cert-csi/img/scaling.PNG (100%) rename content/v1/{support => tooling}/cert-csi/img/tabularReport.png (100%) rename content/v1/{support => tooling}/cert-csi/img/textReport.png (100%) rename content/v1/{support => tooling}/cert-csi/img/unifiedTest.png (100%) rename content/v1/{support => tooling}/cli/_index.md (92%) create mode 100644 content/v1/tooling/repctl/_index.md rename content/{v3 => v2}/deployment/csminstallationwizard/src/static/css/bootstrap.min.css.map (100%) rename content/{v1 => v2}/deployment/csminstallationwizard/src/templates/helm/csm-1.13.0-values.template (100%) delete mode 100644 content/v2/deployment/csminstallationwizard/src/templates/helm/csm-1.8.0-values.template rename content/{v1 => v2}/deployment/csminstallationwizard/src/templates/operator/csm-isilon-1.13.0.template (100%) delete mode 100644 content/v2/deployment/csminstallationwizard/src/templates/operator/csm-isilon-1.8.0.template rename content/{v1 => v2}/deployment/csminstallationwizard/src/templates/operator/csm-powermax-1.13.0.template (100%) delete mode 100644 content/v2/deployment/csminstallationwizard/src/templates/operator/csm-powermax-1.9.3.template rename content/{v1 => v2}/deployment/csminstallationwizard/src/templates/operator/csm-powerstore-1.13.0.template (100%) delete mode 100644 content/v2/deployment/csminstallationwizard/src/templates/operator/csm-powerstore-1.9.3.template rename content/{v1 => v3}/authorization/Migration guide from v1 to v2/_index.md (100%) delete mode 100644 content/v3/authorization/v1.x GA/Backup and Restore/_index.md delete mode 100644 content/v3/authorization/v1.x GA/_index.md delete mode 100644 content/v3/authorization/v1.x GA/configuration/_index.md delete mode 100644 content/v3/authorization/v1.x GA/design1.png delete mode 100644 content/v3/authorization/v1.x GA/design2.png delete mode 100644 content/v3/authorization/v1.x GA/karavi-authorization-example.png delete mode 100644 content/v3/authorization/v1.x GA/release/_index.md rename content/{v1 => v3}/authorization/v1.x/Backup and Restore/_index.md (100%) rename content/{v1 => v3}/authorization/v1.x/Backup and Restore/helm/_index.md (100%) rename content/{v1 => v3}/authorization/v1.x/Backup and Restore/rpm/_index.md (100%) rename content/{v1 => v3}/authorization/v1.x/_index.md (100%) rename content/{v1 => v3}/authorization/v1.x/cli.md (100%) rename content/{v1 => v3}/authorization/v1.x/configuration/_index.md (100%) rename content/{v1 => v3}/authorization/v1.x/configuration/powerflex/_index.md (98%) rename content/{v1 => v3}/authorization/v1.x/configuration/powermax/_index.md (98%) rename content/{v1 => v3}/authorization/v1.x/configuration/powerscale/_index.md (98%) rename content/{v1 => v3}/authorization/v1.x/configuration/proxy-server/_index.md (100%) rename content/{v1 => v3}/authorization/v1.x/design.md (100%) rename content/{v1 => v3}/authorization/v1.x/design1.png (100%) rename content/{v1 => v3}/authorization/v1.x/design2.png (100%) rename content/{v1 => v3}/authorization/v1.x/karavi-authorization-example.png (100%) rename content/{v1 => v3}/authorization/v1.x/release/_index.md (50%) rename content/{v1 => v3}/authorization/v1.x/troubleshooting.md (100%) delete mode 100644 content/v3/authorization/v2.0 Tech Preview/_index.md delete mode 100644 content/v3/authorization/v2.0 Tech Preview/authorization-ha-example.png delete mode 100644 content/v3/authorization/v2.0 Tech Preview/configuration/_index.md delete mode 100644 content/v3/authorization/v2.0 Tech Preview/configuration/powerflex/_index.md delete mode 100644 content/v3/authorization/v2.0 Tech Preview/image.png rename content/{v1 => v3}/authorization/v2.x/_index.md (100%) rename content/{v1 => v3}/authorization/v2.x/authorization-ha-example.png (100%) rename content/{v1 => v3}/authorization/v2.x/configuration/_index.md (100%) rename content/{v1 => v3}/authorization/v2.x/configuration/powerflex/_index.md (98%) rename content/{v1 => v3}/authorization/v2.x/configuration/powermax/_index.md (97%) rename content/{v1 => v3}/authorization/v2.x/configuration/powerscale/_index.md (98%) rename content/{v1 => v3}/authorization/v2.x/image.png (100%) create mode 100644 content/v3/authorization/v2.x/release/_index.md rename content/{v1 => v3}/authorization/v2.x/troubleshooting.md (91%) rename content/{v2 => v3}/deployment/csminstallationwizard/src/static/css/bootstrap-min-css.map (100%) rename content/v3/deployment/csminstallationwizard/src/static/css/{dds-icons.min.css => dds-icons-min.css} (100%) rename content/{v1 => v3}/deployment/csminstallationwizard/src/templates/helm/csm-1.11.1-values.template (100%) rename content/{v1 => v3}/deployment/csminstallationwizard/src/templates/helm/csm-1.12.0-values.template (100%) rename content/{v1 => v3}/deployment/csminstallationwizard/src/templates/operator/csm-isilon-1.11.1.template (99%) rename content/v3/deployment/csminstallationwizard/src/templates/operator/{csm-isilon-1.11.0.template => csm-isilon-1.12.0.template} (92%) rename content/{v1 => v3}/deployment/csminstallationwizard/src/templates/operator/csm-powermax-1.11.1.template (99%) rename content/v3/deployment/csminstallationwizard/src/templates/operator/{csm-powermax-1.11.0.template => csm-powermax-1.12.0.template} (90%) rename content/{v1 => v3}/deployment/csminstallationwizard/src/templates/operator/csm-powerstore-1.11.1.template (99%) rename content/v3/deployment/csminstallationwizard/src/templates/operator/{csm-powerstore-1.11.0.template => csm-powerstore-1.12.0.template} (89%) rename content/{v1 => v3}/deployment/csmoperator/install.JPG (100%) delete mode 100644 content/v3/deployment/csmoperator/install.jpg rename content/{v1 => v3}/deployment/csmoperator/install_olm_pods.JPG (100%) delete mode 100644 content/v3/deployment/csmoperator/install_olm_pods.jpg rename content/{v1 => v3}/deployment/csmoperator/modules/authorizationv1-x.md (100%) rename content/{v1 => v3}/deployment/csmoperator/modules/authorizationv2-0.md (99%) rename content/{v1 => v3}/deployment/helm/modules/installation/authorization v2.0/_index.md (100%) rename content/{v1 => v3}/deployment/helm/modules/installation/authorization-v1.x/_index.md (100%) delete mode 100644 content/v3/deployment/helm/modules/installation/authorization/_index.md delete mode 100644 content/v3/deployment/helm/modules/installation/encryption/_index.md delete mode 100644 content/v3/deployment/helm/modules/installation/encryption/rekey.md delete mode 100644 content/v3/deployment/helm/modules/installation/encryption/vault.md rename content/{v1 => v3}/deployment/helm/modules/uninstall/authorization v2.0.md (100%) rename content/{v1 => v3}/deployment/helm/modules/uninstall/authorization-v1.x.md (100%) delete mode 100644 content/v3/deployment/helm/modules/uninstall/encryption.md rename content/{v1 => v3}/deployment/rpm/modules/installation/authorization-v1.x/authorizationv1-x.md (98%) delete mode 100644 content/v3/deployment/rpm/modules/installation/authorization/authorization.md delete mode 100644 content/v3/interactive-tutorials/_index.md delete mode 100644 content/v3/interactive-tutorials/csm-operator/_index.md delete mode 100644 content/v3/interactive-tutorials/csm-quickstart/_index.md rename content/{v1 => v3}/replication/high-availability/_index.md (100%) rename content/{v1 => v3}/replication/high-availability/powermax-metro.md (100%) rename content/{v1 => v3}/replication/high-availability/powerstore-metro.md (86%) delete mode 100644 content/v3/replication/metro.png rename content/{v1 => v3}/replication/powermax-metro.png (100%) rename content/{v1 => v3}/replication/powerstore-metro.png (100%) delete mode 100644 content/v3/secure/_index.md delete mode 100644 content/v3/secure/encryption/_index.md delete mode 100644 content/v3/secure/encryption/release/_index.md delete mode 100644 content/v3/secure/encryption/troubleshooting.md delete mode 100644 content/v3/support/license/_index.md diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 3ce2ac24a0..d348078c74 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -3,7 +3,7 @@ name: Build w/ Hugo & deploy to GitHub Pages on: push: branches: - - release-1.13.1 + - release-1.14.0 workflow_dispatch: jobs: diff --git a/content/v1/_index.md b/content/v1/_index.md index 0c5bb5c713..9cb2a26de8 100644 --- a/content/v1/_index.md +++ b/content/v1/_index.md @@ -1,56 +1,5 @@ - --- -title: "Documentation" -linkTitle: "Documentation" ---- - -{{% pageinfo color="primary" %}} -1. {{< message text="8" >}} - -2. {{< message text="7" >}} - -3. {{< message text="1" >}} - -4. {{< message text="5" >}} -{{% /pageinfo %}} - - - -The Dell Technologies (Dell) Container Storage Modules (CSM) enables simple and consistent integration and automation experiences, extending enterprise storage capabilities to Kubernetes for cloud-native stateful applications. It reduces management complexity so developers can independently consume enterprise storage with ease and automate daily operations such as provisioning, snapshotting, replication, observability, authorization, application mobility and resiliency. - -CSM Hex Diagram - -

-CSM is made up of multiple components including modules (enterprise capabilities), CSI drivers (storage enablement), and other related applications (deployment, feature controllers, etc). - -{{% cardpane %}} - {{< card header="[**Authorization**](authorization/)" - footer="Supports [PowerFlex](csidriver/features/powerflex/) [PowerScale](csidriver/features/powerscale/) [PowerMax](csidriver/features/powermax/)">}} - CSM for Authorization provides storage and Kubernetes administrators the ability to apply RBAC for Dell CSI Drivers. It does this by deploying a proxy between the CSI driver and the storage system to enforce role-based access and usage rules.
-[...Learn more](authorization/) - - {{< /card >}} - {{< card header="[**Replication**](replication/)" - footer="Supports [PowerFlex](csidriver/features/powerflex/) [PowerStore](csidriver/features/powerstore/) [PowerScale](csidriver/features/powerscale/) [PowerMax](csidriver/features/powermax/)">}} - CSM for Replication project aims to bring Replication & Disaster Recovery capabilities of Dell Storage Arrays to Kubernetes clusters. It helps you replicate groups of volumes and can provide you a way to restart applications in case of both planned and unplanned migration. -[...Learn more](replication/) -{{< /card >}} -{{% /cardpane %}} -{{% cardpane %}} -{{< card header="[**Resiliency**](resiliency/)" - footer="Supports [PowerFlex](csidriver/features/powerflex/) [PowerScale](csidriver/features/powerscale/) [Unity](csidriver/features/unity/) [PowerStore](csidriver/features/powerstore/) [PowerMax](csidriver/features/powermax/)">}} - CSM for Resiliency is designed to make Kubernetes Applications, including those that utilize persistent storage, more resilient to various failures. -[...Learn more](resiliency/) - {{< /card >}} -{{< card header="[**Observability**](observability/)" - footer="Supports [PowerFlex](csidriver/features/powerflex/) [PowerStore](csidriver/features/powerstore/) [PowerScale](csidriver/features/powerscale/) [PowerMax](csidriver/features/powermax/)">}} - CSM for Observability provides visibility on the capacity of the volumes/file shares that is being managed with Dell CSM CSI (Container Storage Interface) drivers along with their performance in terms of bandwidth, IOPS, and response time. -[...Learn more](observability/) - {{< /card >}} -{{% /cardpane %}} -{{% cardpane %}} -{{< card header="[**Application Mobility**](applicationmobility/)">}} - Container Storage Modules for Application Mobility provide Kubernetes administrators the ability to clone their stateful application workloads and application data to other clusters in the cloud. - [...Learn more](applicationmobility/) - {{< /card >}} -{{% /cardpane %}} +title: "Container Storage Modules" +linkTitle: "Container Storage Modules" +weight: 20 +--- diff --git a/content/v1/applicationmobility/_index.md b/content/v1/applicationmobility/_index.md deleted file mode 100644 index bab99e9fb7..0000000000 --- a/content/v1/applicationmobility/_index.md +++ /dev/null @@ -1,30 +0,0 @@ ---- -title: "Application Mobility" -linkTitle: "Application Mobility" -weight: 9 -Description: > - Application Mobility ---- - -{{% pageinfo color="primary" %}} -{{< message text="10" >}} -{{% /pageinfo %}} - -Container Storage Modules for Application Mobility provide Kubernetes administrators the ability to clone their stateful application workloads and application data to other clusters, either on-premise or in the cloud. - -Application Mobility uses [Velero](https://velero.io) and its integration of [Restic](https://restic.net) to copy both application metadata and data to object storage. When a backup is requested, Application Mobility uses these options to determine how the application data is backed up: -- If [Volume Group Snapshots](../snapshots/volume-group-snapshots/) are enabled on the CSI driver backing the application's Persistent Volumes, crash consistent snapshots of all volumes are used for the backup. -- If [Volume Snapshots](../snapshots/) are enabled on the Kubernetes cluster and supported by the CSI driver, individual snapshots are used for each Persistent Volume used by the application. -- If no snapshot options are enabled, default to using full copies of each Persistent Volume used by the application. - -After a backup has been created, it can be restored on the same Kubernetes cluster or any other cluster(s) if this criteria is met: -- Application Mobility is installed on the target cluster(s). -- The target cluster(s) has access to the object store bucket. For example, if backing up and restoring an application from an on-premise Kubernetes cluster to AWS EKS, an S3 bucket can be used if both the on-premise and EKS cluster have access to it. -- Storage Class is defined on the target cluster(s) to support creating the required Persistent Volumes used by the application. - -## Supported Data Movers -{{}} -| Data Mover | Description | -|-|-| -| Restic | Persistent Volume data will be stored in the provided object store bucket | -{{
}} diff --git a/content/v1/applicationmobility/release/_index.md b/content/v1/applicationmobility/release/_index.md deleted file mode 100644 index 4da515e0fb..0000000000 --- a/content/v1/applicationmobility/release/_index.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -title: "Release Notes" -linkTitle: "Release Notes" -weight: 5 -Description: > - Release Notes ---- -{{% pageinfo color="primary" %}} -{{< message text="10" >}} -{{% /pageinfo %}} - -## Release Notes - CSM Application Mobility v1.3.0 - - -### New Features/Changes - -### Fixed Issues - -### Known Issues - -There are no known issues in this release. diff --git a/content/v1/authorization/_index.md b/content/v1/authorization/_index.md deleted file mode 100644 index 3a1cdca5e4..0000000000 --- a/content/v1/authorization/_index.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -title: "Authorization" -linkTitle: "Authorization" -weight: 4 -Description: > - Dell Technologies (Dell) Container Storage Modules (CSM) for Authorization ---- - -[Container Storage Modules](https://github.com/dell/csm) (CSM) for Authorization is part of the open-source suite of Kubernetes storage enablers for Dell products. - -CSM for Authorization provides storage and Kubernetes administrators the ability to apply RBAC for Dell CSI Drivers. It does this by deploying a proxy between the CSI driver and the storage system to enforce role-based access and usage rules. - -Storage administrators of compatible storage platforms will be able to apply quota and RBAC rules that instantly and automatically restrict cluster tenants usage of storage resources. Users of storage through CSM for Authorization do not need to have storage admin root credentials to access the storage system. - -Kubernetes administrators will have an interface to create, delete, and manage roles/groups that storage rules may be applied. Administrators and/or users may then generate authentication tokens that may be used by tenants to use storage with proper access policies being automatically enforced. - -Currently, we have two versions of Authorization, **v1.x** and **v2.x**. **v2.x is not backward compatible with v1.x versions**. - -**Starting with CSM 1.13, Authorization v1.x will be deprecated and will be officially discontinued by CSM 1.15 in September 2025. Please migrate to Authorization v2.0 before then to avoid any issues using the v2 Migration guide linked below.** diff --git a/content/v1/authorization/v2.x/release/_index.md b/content/v1/authorization/v2.x/release/_index.md deleted file mode 100644 index f721ecd154..0000000000 --- a/content/v1/authorization/v2.x/release/_index.md +++ /dev/null @@ -1,16 +0,0 @@ ---- -title: "Release notes" -linkTitle: "Release notes" -weight: 6 -Description: > - Dell Container Storage Modules (CSM) release notes for authorization ---- - -## Release Notes - CSM Authorization 2.1.0 - -### New Features/Changes - -- [#1560 - [FEATURE]: CSM support for OpenShift 4.18](https://github.com/dell/csm/issues/1560) -- [#1561 - [FEATURE]: Added support for Kubernetes 1.32 ](https://github.com/dell/csm/issues/1561) -- [#1563 - [FEATURE]: Support KubeVirt for CSM modules](https://github.com/dell/csm/issues/1563) -- [#1611 - [FEATURE]: Added support for PowerScale 9.10](https://github.com/dell/csm/issues/1611) \ No newline at end of file diff --git a/content/v1/concepts/_index.md b/content/v1/concepts/_index.md new file mode 100644 index 0000000000..c76795a086 --- /dev/null +++ b/content/v1/concepts/_index.md @@ -0,0 +1,33 @@ +--- +title: "Concepts" +hide_feedback: false +linkTitle: "Concepts" +no_list: true +description: "Conceptual and technical information about Container Storage Modules" +weight: 3 +--- + +{{< cardcontainer >}} + + {{< customcard link="./cosidriver" title="COSI Driver" imageNumber="6" >}} + + {{< customcard link="./csidriver" title="Driver" imageNumber="6">}} + + {{< customcard link="./authorization" title="Authorization" imageNumber="6">}} + + {{< customcard link="./observability" title="Observability" imageNumber="6">}} + + {{< customcard link="./replication" title="Replication" imageNumber="6">}} + + {{< customcard link="./resiliency" title="Resiliency" imageNumber="6">}} + + {{< customcard link="./snapshots" title="Snapshots" imageNumber="6">}} + + + {{< customcard link="./applicationmobility" title="Application Mobility" imageNumber="6">}} + + + + + +{{< /cardcontainer >}} \ No newline at end of file diff --git a/content/v1/concepts/applicationmobility/_index.md b/content/v1/concepts/applicationmobility/_index.md new file mode 100644 index 0000000000..80c5c19add --- /dev/null +++ b/content/v1/concepts/applicationmobility/_index.md @@ -0,0 +1,30 @@ +--- +title: "Application Mobility" +linkTitle: "Application Mobility" +weight: 9 +Description: > + Application Mobility +--- + +{{% pageinfo color="primary" %}} +{{< message text="10" >}} +{{% /pageinfo %}} + +Container Storage Modules for Application Mobility provide Kubernetes administrators the ability to clone their stateful application workloads and application data to other clusters, either on-premise or in the cloud. + +Application Mobility uses object storage to copy application metadata and data. When a backup is requested, it uses these options: + +- **[Volume Snapshots](../snapshots/)** : If enabled and supported by the CSI driver, individual snapshots are used for each Persistent Volume. +- **Full Copies**: If no snapshot options are enabled, full copies of each Persistent Volume are used. + +After a backup is created, it can be restored on the same or any other cluster(s) if: + +- Application Mobility is installed on the target cluster(s). +- The target cluster(s) has access to the object store bucket. For example, if backing up and restoring an application from an on-premise Kubernetes cluster to AWS EKS, an S3 bucket can be used if both the on-premise and EKS cluster have access to it. +- Storage Class is defined on the target cluster(s) to support creating the required Persistent Volumes. +## Supported Data Movers +{{}} +| Data Mover | Description | +|-|-| +| Restic | Persistent Volume data will be stored in the provided object store bucket | +{{
}} diff --git a/content/v1/applicationmobility/use_cases.md b/content/v1/concepts/applicationmobility/use_cases.md similarity index 95% rename from content/v1/applicationmobility/use_cases.md rename to content/v1/concepts/applicationmobility/use_cases.md index 7ffdae38ca..5e8a51b769 100644 --- a/content/v1/applicationmobility/use_cases.md +++ b/content/v1/concepts/applicationmobility/use_cases.md @@ -6,7 +6,7 @@ Description: > Use Cases --- -After Application Mobility is installed, the [dellctl CLI](../../support/cli) can be used to register clusters and manage backups and restores of applications. These examples also provide references for using the Application Mobility Custom Resource Definitions (CRDs) to define Custom Resources (CRs) as an alternative to using the `dellctl` CLI. +After Application Mobility is installed, the [dellctl CLI](../../../tooling/cli) can be used to register clusters and manage backups and restores of applications. These examples also provide references for using the Application Mobility Custom Resource Definitions (CRDs) to define Custom Resources (CRs) as an alternative to using the `dellctl` CLI. ## Backup and Restore an Application This example details the steps when an application in namespace `demo1` is being backed up and then later restored to either the same cluster or another cluster. In this sample, both Application Mobility and Velero are installed in the `application-mobility` namespace. diff --git a/content/v1/concepts/authorization/_index.md b/content/v1/concepts/authorization/_index.md new file mode 100644 index 0000000000..8a358be333 --- /dev/null +++ b/content/v1/concepts/authorization/_index.md @@ -0,0 +1,33 @@ +--- +title: "Authorization" +linkTitle: "Authorization" +no_list: true +weight: 4 +Description: > + Container Storage Modules (CSM) for Authorization +--- + +{{% pageinfo color="primary" %}} +{{< message text="5" >}} +{{% /pageinfo %}} + +Container Storage Modules for Authorization is part of the open-source suite of Kubernetes storage enablers for Dell products. + +Container Storage Modules for Authorization provides storage and Kubernetes administrators the ability to apply RBAC for Dell CSI Drivers. It does this by deploying a proxy between the CSI driver and the storage system to enforce role-based access and usage rules. + +Storage administrators of compatible storage platforms will be able to apply quota and RBAC rules that instantly and automatically restrict cluster tenants usage of storage resources. Users of storage through Container Storage Modules for Authorization do not need to have storage admin root credentials to access the storage system. + +Kubernetes administrators will have an interface to create, delete, and manage roles/groups that storage rules may be applied. Administrators and/or users may then generate authentication tokens that may be used by tenants to use storage with proper access policies being automatically enforced. + +Currently, we have two versions of Authorization, **v1.x** and **v2.x**. **v2.x is not backward compatible with v1.x versions**. + + +{{< cardcontainer >}} + + {{< customcard link="./v1.x" title="v1.x" >}} + + {{< customcard link="./v2.x" title="v2.x" >}} + + {{< customcard link="./migration-guide-from-v1-to-v2" title="Migration from v1 to v2" >}} + +{{< /cardcontainer >}} \ No newline at end of file diff --git a/content/v1/concepts/authorization/migration-guide-from-v1-to-v2/_index.md b/content/v1/concepts/authorization/migration-guide-from-v1-to-v2/_index.md new file mode 100644 index 0000000000..7c87d9974d --- /dev/null +++ b/content/v1/concepts/authorization/migration-guide-from-v1-to-v2/_index.md @@ -0,0 +1,185 @@ +--- +title: "Authorization - v2 Migration guide" +linktitle: "Migration Guide From v1 to v2" +no_list: true +weight: 4 +description: > + Container Storage Modules for Authorization v1 to v2 Migration Guide +--- +Container Storage Modules for Authorization v2 has significant architectural changes that prevent a user from upgrading Authorization v1 to Authorization v2. This page provides a reference guide for migrating v1 to v2 using Powerflex as an example. + +**Before migration please note following points** + - Container Storage Modules for Authorization v2 calculates the actual usage of capacity provisioned by syncing with the array. + - Volumes belonging to a tenant are identified using the **Volume Prefix** configured in csmtenant custom resource. + - Volumes without the **Volume Prefix** will not be accounted for in usage capacity calculation as ownership of the volume is unknown without the volume prefix. + - User should rename all volumes that are needed to be accounted for with the **Volume Prefix** before migration to v2. See the [Prerequisites](../Migration%20guide%20from%20v1%20to%20v2/#prerequisites). + +## Prerequisites +### On the storage array, rename the volumes owned by each tenant with a tenant prefix. +Use [dellctl](../../../tooling/cli/) to list the volumes owned by the tenant. +```terminal +# dellctl volume get --proxy --namespace +NAME VOLUME ID SIZE POOL SYSTEM ID PV NAME PV STATUS STORAGE CLASS PVC NAME NAMESPACE SNAPSHOT COUNT +k8s-4cfa97ba5d c6cfdfe000000229 8.000000 pool1 3000000000011111 k8s-4cfa97ba5d Bound vxflexos vol-create-test-vndq8 test 0 +k8s-519bb230c5 c6cfdfe20000022b 8.000000 pool1 3000000000011111 k8s-519bb230c5 Bound vxflexos vol-create-test-wc45j test 0 +k8s-ecc8381e08 c6cfdfe300000231 8.000000 pool1 3000000000011111 k8s-ecc8381e08 Bound vxflexos vol-create-test-r8ptv test 0 +k8s-cc47d7a61e c6cfdfe10000022a 8.000000 pool1 3000000000011111 k8s-cc47d7a61e Bound vxflexos vol-create-test-k8szc test 0 +k8s-76914ae62b c6cfdfdf00000223 8.000000 pool1 3000000000011111 k8s-76914ae62b Bound vxflexos vol-create-test-8sbtl test 0 +``` + +On the storage array, rename each volume with your chosen tenant prefix. For example, if you've chosen the prefix `tn1`, volume `k8s-4cfa97ba5d` should be renamed to `tn1-k8s-4cfa97ba5d`. + +## Storage Systems + +Authorization v1 setup, list the storage to get all the storage systems configured in the environment. +Example: + +```terminal +karavictl storage list --admin-token admintoken.yaml --addr csm-authorization.host.com + +{ + "storage": { + "powerflex": { + "3000000000011111": { + "Endpoint": "https://1.1.1.1", + "Insecure": true, + "Password": "(omitted)", + "User": "admin" + } + } + } +} +``` +Authorization v2, storage is created using custom resources. For each Storage in a v1 environment, create using the CR, example: + +```terminal +kubectl create -f controller/config/samples/csm-authorization_v1_storage.yaml +``` +```yaml +apiVersion: csm-authorization.storage.dell.com/v1 +kind: Storage +metadata: + name: powerflex +spec: + # Type of the storage system. Example: powerflex, powermax, powerscale + type: powerflex + endpoint: https://1.1.1.1 + # System ID of the backend storage array + systemID: 3000000000011111 + # Vault is the credential manager for storage arrays + vault: + identifier: vault0 + kvEngine: secret + path: csm-authorization/powerflex/3000000000011111 + # SkipCertificateValidation is the flag to skip certificate validation + skipCertificateValidation: true + # PollInterval is the polling frequency to test the storage connectivity + pollInterval: 30s +``` + +## Role and Role Binding + +Authorization v2, role creation is simpler. User will not be required to bind the role, only thing user needs to do is create roles that are needed. + +List all the roles that are created in Container Storage Modules for Authorization v1 setup. +Example: +```terminal +karavictl role list --admin-token admintoken.yaml --addr csm-authorization.host.com +``` +```terminal +{ + "CSIGold": [ + { + "storage_system_id": "3000000000011111", + "pool_quotas": [ + { + "pool": "mypool", + "quota": 32000000 + } + ] + } + ], + "CSISilver": [ + { + "storage_system_id": "3000000000011111", + "pool_quotas": [ + { + "pool": "mypool", + "quota": 16000000 + } + ] + } + ] +} +``` +Authorization v2, roles are created using custom resources. For each role in a v1 environment, create using the CR, example: +```terminal +kubectl create -f controller/config/samples/csm-authorization_v1_csmrole.yaml +``` +```yaml +apiVersion: csm-authorization.storage.dell.com/v1 +kind: CSMRole +metadata: + name: CSIGold +spec: + quota: 3200GiB + systemID: 3000000000011111 + systemType: powerflex + pool: pool1 +``` +```yaml +apiVersion: csm-authorization.storage.dell.com/v1 +kind: CSMRole +metadata: + name: CSISilver +spec: + quota: 1600GiB + systemID: 3000000000011111 + systemType: powerflex + pool: pool2 +``` + +## Tenant + +List all the tenants in v1 setup and all those tenants should be created in v2 setup. +List tenants in v1 setup, example: +```bash +karavictl tenant list --admin-token admintoken.yaml --addr csm-authorization.host.com +``` +```terminal +{ + "tenants": [ + { + "name": "Alice" + } + ] +} +``` +Get detail of each tenant, example: +```bash +karavictl tenant get --name Alice --admin-token admintoken.yaml --addr csm-authorization.host.com +``` +```json +{ + "name": "Alice" + "roles": "CSIGold,CSISilver" + "approvesdc": true +} +``` +Authorization v2, tenants are created using custom resources. The `spec.volumePrefix` field must be the prefix used in the prerequisite step of renaming the storage array volumes. For each tenant in a v1 environment, create using the CR, example: +```bash +kubectl create -f controller/config/samples/csm-authorization_v1_csmtenant.yaml +``` +csm-authorization_v1_csmtenant.yaml file will look like following example: +```yaml +apiVersion: csm-authorization.storage.dell.com/v1 +kind: CSMTenant +metadata: + name: Alice +spec: + # Roles defines a comma separated list of Roles for this tenant + roles: CSIGold,CSISilver + approveSdc: true + revoke: false + volumePrefix: tn1 +``` \ No newline at end of file diff --git a/content/v3/authorization/v1.x GA/troubleshooting.md b/content/v1/concepts/authorization/troubleshooting.md similarity index 92% rename from content/v3/authorization/v1.x GA/troubleshooting.md rename to content/v1/concepts/authorization/troubleshooting.md index f036e89e1b..6577b24491 100644 --- a/content/v3/authorization/v1.x GA/troubleshooting.md +++ b/content/v1/concepts/authorization/troubleshooting.md @@ -2,12 +2,13 @@ title: "Troubleshooting" linkTitle: "Troubleshooting" weight: 5 +toc_hide: true Description: > Troubleshooting guide --- {{% pageinfo color="primary" %}} -The CSM Authorization RPM will be deprecated in a future release. It is highly recommended that you use CSM Authorization Helm deployment or CSM Operator going forward. +{{< message text="5" >}} {{% /pageinfo %}} ## RPM Deployment @@ -21,7 +22,7 @@ The CSM Authorization RPM will be deprecated in a future release. It is highly r ### The Failure of Building an Authorization RPM This response occurs when running 'make rpm' without the proper permissions or correct pathing of the Authorization repository. -``` +```terminal Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting "/root/karavi-authorization/bin/deploy" to rootfs at "/home/builder/rpm/deploy": mount /root/karavi-authorization/bin/deploy:/home/builder/rpm/deploy (via /proc/self/fd/6), flags: 0x5000: not a directory: unknown: Are you trying to mount a directory onto a file (or vice-versa)? Check if the specified host path exists and is the expected type.ERROR[0001] error waiting for container: context canceled ``` @@ -39,9 +40,9 @@ __Resolution__ chmod o+rwx deploy/rpm ``` -### Retrieve CSM Authorization Server Logs +### Retrieve Container Storage Modules Authorization Server Logs -To retrieve logs from services on the CSM Authorization Server, run the following command (e.g proxy-server logs): +To retrieve logs from services on Authorization Server, run the following command (e.g proxy-server logs): ```bash k3s kubectl logs deploy/proxy-server -n karavi -c proxy-server @@ -58,7 +59,7 @@ This situation may occur if there are Iptables or other firewall rules preventin ```bash karavictl tenant list --addr ``` -``` +```terminal { "ErrorMsg": "rpc error: code = Unavailable desc = Gateway Timeout: HTTP status code 504; transport: received the unexpected content-type \"text/plain; charset=utf-8\"" @@ -72,18 +73,18 @@ prevent communication with the `DNS-hostname`, either new rules must be created ### Installation fails to install policies If SELinux is enabled, the policies may fail to install: -``` +```terminal error: failed to install policies (see /tmp/policy-install-for-karavi3163047435): exit status 1 ``` __Resolution__ -This issue should only occur with older versions of CSM Authorization. If your system is encountering this issue, upgrade to version 1.5.0 or above. +This issue should only occur with older versions of Container Storage Modules Authorization. If your system is encountering this issue, upgrade to version 1.5.0 or above. ### After installation, the create-pvc Pod is in an Error state If SELinux is enabled, the create-pvc Pod may be in an Error state: -``` +```terminal kube-system create-pvc-44a763c7-e70f-4e32-a114-e94615041042 0/1 Error 0 102s ``` @@ -114,7 +115,7 @@ kubectl -n rollout restart ds/-node ### The CSI Driver for Dell PowerFlex v2.3.0 is in an Error or CrashLoopBackoff state due to "request denied for path" errors The vxflexos-controller pods will have logs similar to: -``` +```terminal time="2022-06-30T17:35:03Z" level=error msg="failed to list vols for array 2d6fb7c6370a990f : rpc error: code = Internal desc = Unable to list volumes: request denied for path " error="rpc error: code = Internal desc = Unable to list volumes: request denied for path" time="2022-06-30T17:35:03Z" level=error msg="array 2d6fb7c6370a990f probe failed: failed to list vols for array 2d6fb7c6370a990f : rpc error: code = Internal desc = Unable to list volumes: request denied for path " ... @@ -122,18 +123,18 @@ time="2022-06-30T17:35:03Z" level=fatal msg="grpc failed" error="rpc error: code ``` The vxflexos-node pods will have logs similar to: -``` +```terminal time="2022-06-30T17:38:32Z" level=error msg="failed to list vols for array 2d6fb7c6370a990f : rpc error: code = Internal desc = Unable to list volumes: request denied for path " error="rpc error: code = Internal desc = Unable to list volumes: request denied for path" time="2022-06-30T17:38:32Z" level=error msg="array 2d6fb7c6370a990f probe failed: failed to list vols for array 2d6fb7c6370a990f : rpc error: code = Internal desc = Unable to list volumes: request denied for path " ... time="2022-06-30T17:38:32Z" level=fatal msg="grpc failed" error="rpc error: code = FailedPrecondition desc = All arrays are not working. Could not proceed further: map[2d6fb7c6370a990f:failed to list vols for array 2d6fb7c6370a990f : rpc error: code = Internal desc = Unable to list volumes: request denied for path ]" ``` -This occurs when the CSM Authorization proxy-server does not allow all driver HTTPS request paths. +This occurs when the Container Storage Modules Authorization proxy-server does not allow all driver HTTPS request paths. __Resolution__ -1. Edit the `powerflex-urls` configMap in the namespace where CSM Authorization is deployed to allow all request paths by default. +1. Edit the `powerflex-urls` configMap in the namespace where Container Storage Modules Authorization is deployed to allow all request paths by default. ```bash kubectl -n edit configMap powerflex-urls @@ -186,7 +187,7 @@ data: input.url]))\n}\n" ``` -2. Rollout restart the CSM Authorization proxy-server so the policy change gets applied. +2. Rollout restart the Container Storage Modules Authorization proxy-server so the policy change gets applied. ```bash kubectl -n rollout restart deploy/proxy-server @@ -208,4 +209,4 @@ If you are applying a new token in an existing driver installation, restart the ```bash kubectl -n rollout restart deploy/-controller kubectl -n rollout restart ds/-node -``` \ No newline at end of file +``` diff --git a/content/v1/concepts/authorization/v1.x/Backup and Restore/_index.md b/content/v1/concepts/authorization/v1.x/Backup and Restore/_index.md new file mode 100644 index 0000000000..ac96bbe47a --- /dev/null +++ b/content/v1/concepts/authorization/v1.x/Backup and Restore/_index.md @@ -0,0 +1,22 @@ +--- +title: Backup and Restore +linktitle: Backup and Restore +weight: 2 +description: Methods to backup and restore CSM Authorization +tags: + - backup + - restore + - csm-authorization +no_list: true +--- + +Backup and Restore information for Container Storage Modules Authorization can be found in this section. + + +{{< cardcontainer >}} + + {{< customcard link="./helm" title="Helm" >}} + + {{< customcard link="./rpm" title="RPM" >}} + +{{< /cardcontainer >}} diff --git a/content/v3/authorization/v1.x GA/Backup and Restore/helm/_index.md b/content/v1/concepts/authorization/v1.x/Backup and Restore/helm/_index.md similarity index 86% rename from content/v3/authorization/v1.x GA/Backup and Restore/helm/_index.md rename to content/v1/concepts/authorization/v1.x/Backup and Restore/helm/_index.md index e4ecfec456..b8fb9f63ab 100644 --- a/content/v3/authorization/v1.x GA/Backup and Restore/helm/_index.md +++ b/content/v1/concepts/authorization/v1.x/Backup and Restore/helm/_index.md @@ -2,8 +2,11 @@ title: Helm linktitle: Helm description: > - Dell Technologies (Dell) Container Storage Modules (CSM) for Authorization Helm backup and restore + Container Storage Modules (CSM) for Authorization Helm backup and restore --- +{{% pageinfo color="primary" %}} +{{< message text="5" >}} +{{% /pageinfo %}} ## Roles @@ -75,14 +78,14 @@ deployment.apps/proxy-server restarted ## Tenants, Quota, and Volume ownership -Redis is used to store application data regarding [tenants, quota, and volume ownership](../../design#quota--volume-ownership) with the Storage Class `csm-authorization-local-storage` or the one specified in the `redis.storageClass` parameter in the values file. +Redis is used to store application data regarding [tenants, quota, and volume ownership](../../design#quota--volume-ownership) with the Storage Class `csm-authorization-local-storage` or the one specified in the `redis.storageClass` parameter in the values file. The Persistent Volume for Redis is provisioned by the above Storage Class with the `redis-primary-pv-claim` Persistent Volume Claim. See the example. ```bash kubectl get persistentvolume ``` -``` +```terminal NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE k8s-ab74921ab9 8Gi RWO Delete Bound authorization/redis-primary-pv-claim 112m ``` @@ -99,7 +102,7 @@ k8s-ab74921ab9 8Gi RWO Delete Bound author kubectl -n edit deploy/redis-primary ``` -The Deployment has a volumes field that should look like this: +The Deployment has a volumes field that must look like this: ```yaml volumes: @@ -108,7 +111,7 @@ volumes: claimName: redis-primary-pv-claim ``` -Replace the value of `claimName` with the name of the Persisent Volume Claim associated with the backup. If the new Persisent Volume Claim name is `redis-backup`, you would edit the deployment to look like this: +Replace the value of `claimName` with the name of the Persistent Volume Claim associated with the backup. If the new Persistent Volume Claim name is `redis-backup`, you would edit the deployment to look like this: ```yaml volumes: @@ -117,4 +120,4 @@ volumes: claimName: redis-backup ``` -Once saved, Redis will now use the backup volume. \ No newline at end of file +Once saved, Redis now uses the backup volume. diff --git a/content/v3/authorization/v1.x GA/Backup and Restore/rpm/_index.md b/content/v1/concepts/authorization/v1.x/Backup and Restore/rpm/_index.md similarity index 94% rename from content/v3/authorization/v1.x GA/Backup and Restore/rpm/_index.md rename to content/v1/concepts/authorization/v1.x/Backup and Restore/rpm/_index.md index a76b7a3d58..7ae2324b39 100644 --- a/content/v3/authorization/v1.x GA/Backup and Restore/rpm/_index.md +++ b/content/v1/concepts/authorization/v1.x/Backup and Restore/rpm/_index.md @@ -6,7 +6,7 @@ description: > --- {{% pageinfo color="primary" %}} -The CSM Authorization RPM is no longer actively maintained or supported. It will be deprecated in a future release. It is highly recommended that you use CSM Authorization Helm deployment or CSM Operator going forward. +{{< message text="5" >}} {{% /pageinfo %}} ## Roles @@ -88,7 +88,8 @@ Redis is used to store application data regarding [tenants, quota, and volume ow ```bash k3s kubectl -n karavi get pvc ``` -``` + +```terminal NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE redis-primary-pv-claim Bound pvc-12d8cc05-910d-45bd-9f30-f6807b287a69 8Gi RWO local-path 65m ``` @@ -109,7 +110,7 @@ cp /var/lib/rancher/k3s/storage/pvc-12d8cc05-910d-45bd-9f30-f6807b287a69/appendo ```bash k3s kubectl -n karavi get pvc ``` -``` +```terminal NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE redis-primary-pv-claim Bound pvc-e7ea31bf-3d79-41fc-88d8-50ba356a298b 8Gi RWO local-path 65m ``` @@ -128,4 +129,4 @@ cp /path/to/copy/appendonly.aof /var/lib/rancher/k3s/storage/pvc-e7ea31bf-3d79-4 ```bash k3s kubectl -n karavi rollout restart deploy/redis-primary deployment.apps/redis-primary restarted -``` +``` \ No newline at end of file diff --git a/content/v1/concepts/authorization/v1.x/_index.md b/content/v1/concepts/authorization/v1.x/_index.md new file mode 100644 index 0000000000..787867043e --- /dev/null +++ b/content/v1/concepts/authorization/v1.x/_index.md @@ -0,0 +1,66 @@ +--- +title: Authorization - v1.x +linktitle: v1.x +weight: 4 +no_list: true +Description: > + Container Storage Modules (CSM) for Authorization v1.x. +tags: + - csm-authorization +--- + +{{% pageinfo color="primary" %}} +{{< message text="5" >}} +{{% /pageinfo %}} + +The following diagram shows a high-level overview of Container Storage Modules for Authorization with a `tenant-app` that is using a CSI driver to perform storage operations through the Authorization `proxy-server` to access the a Dell storage system. All requests from the CSI driver will contain the token for the given tenant that was granted by the Storage Administrator. + +![Container Storage Modules for Authorization](../../../../images/authorization/v1.x/karavi-authorization-example.png "Container Storage Modules for Authorization") + +## Container Storage Modules Authorization Capabilities +{{}} +| Feature | PowerStore | PowerScale | PowerFlex | PowerMax | Unity XT | +| - | - | - | - | - | - | +|
Ability to set storage quota limits to ensure k8s tenants are not over consuming storage | No | No (natively supported) | Yes | Yes | No | +|
Ability to create access control policies to ensure k8s tenant clusters are not accessing storage that does not belong to them | No | No (natively supported) | Yes | Yes | No | +|
Ability to shield storage credentials from Kubernetes administrators ensuring credentials are only handled by storage admins | No | Yes | Yes | Yes | No | +{{
}} + +**NOTE:** PowerScale OneFS implements its own form of Role-Based Access Control (RBAC). Authorization does not enforce any role-based restrictions for PowerScale. To configure RBAC for PowerScale, refer to the PowerScale OneFS [documentation](https://www.dell.com/support/home/en-us/product-support/product/isilon-onefs/docs). + +## Authorization Components Support Matrix +Authorization consists of two main components - the Authorization Sidecar and the Authorization Proxy Server. The Authorization Sidecar is bundled with the CSI driver, and the Authorization Proxy Server validates access to storage platforms. + +Users should always install or upgrade the Authorization proxy server and sidecar from the same release. This practice helps ensure optimal performance and compatibility, avoiding potential issues from version discrepancies. + +## Roles and Responsibilities + +The Container Storage Modules for Authorization CLI can be executed in the context of the following roles: +- Storage Administrators +- Kubernetes Tenant Administrators + +### Storage Administrators + +Storage Administrators can perform the following operations within Container Storage Modules for Authorization + +- Tenant Management (create, get, list, delete, bind roles, unbind roles) +- Token Management (generate, revoke) +- Storage System Management (create, get, list, update, delete) +- Storage Access Roles Management (assign to a storage system with an optional quota) + +### Tenant Administrators + +Tenants of Container Storage Modules for Authorization can use the token provided by the Storage Administrators in their storage requests. + +### Workflow + +1) Tenant Admin requests storage from a Storage Admin. +2) Storage Admin uses Container Storage Modules Authorization CLI to:
+ a) Create a tenant resource.
+ b) Create a role permitting desired storage access.
+ c) Assign the role to the tenant and generate a token.
+3) Storage Admin returns a token to the Tenant Admin. +4) Tenant Admin inputs the Token into their Kubernetes cluster as a Secret. +5) Tenant Admin updates CSI driver with Container Storage Modules Authorization sidecar module. + +![Container Storage Modules for Authorization Workflow](../../../../images/authorization/v1.x/design2.png "Authorization Workflow") diff --git a/content/v3/authorization/v1.x GA/cli.md b/content/v1/concepts/authorization/v1.x/cli.md similarity index 97% rename from content/v3/authorization/v1.x GA/cli.md rename to content/v1/concepts/authorization/v1.x/cli.md index 8f13774355..038e375892 100644 --- a/content/v3/authorization/v1.x GA/cli.md +++ b/content/v1/concepts/authorization/v1.x/cli.md @@ -1,13 +1,14 @@ --- title: CLI -linktitle: CLI +linktitle: CLI +toc_hide: true weight: 4 description: > - Dell Technologies (Dell) Container Storage Modules (CSM) for Authorization CLI + Container Storage Modules (CSM) for Authorization CLI --- {{% pageinfo color="primary" %}} -The CSM Authorization karavictl CLI is no longer actively maintained or supported. It will be deprecated in CSM 2.0. +{{< message text="5" >}} {{% /pageinfo %}} karavictl is a command-line interface (CLI) used to interact with and manage your Container Storage Modules (CSM) Authorization deployment. @@ -59,7 +60,7 @@ storage products from Kubernetes clusters ##### Commands -``` +```terminal admin Generate admin token for use with CSM Authorization cluster-info Display the state of resources within the cluster completion Generate the autocompletion script for the specified shell @@ -73,7 +74,7 @@ storage products from Kubernetes clusters ##### Options -``` +```terminal -h, --help Help for karavictl -f, --admin-token Path to admin token file; required for all commands except `admin token` and `cluster-info` --addr Address of the CSM Authorization Proxy Server; required for all commands except `admin token` and `cluster-info` @@ -102,12 +103,12 @@ karavictl admin token [flags] ``` ##### Required Flags -``` +```terminal -n, --name Name of the admin ``` ##### Optional Flags -``` +```terminal -h, --help Help for token -s, --jwt-signing-secret Specify JWT signing secret, or omit to use stdin --refresh-token-expiration Expiration time of the refresh token, e.g. 48h (default 720h0m0s) @@ -152,7 +153,7 @@ karavictl cluster-info [flags] ``` ##### Optional Flags -``` +```terminal -h, --help Help for cluster-info -w, --watch Watch for changes ``` @@ -162,7 +163,7 @@ karavictl cluster-info [flags] ```bash karavictl cluster-info ``` -``` +```terminal NAME READY UP-TO-DATE AVAILABLE AGE tenant-service 1/1 1 1 59m redis-primary 1/1 1 1 59m @@ -191,7 +192,7 @@ karavictl generate [flags] ##### Optional Flags -``` +```terminal -h, --help Help for generate ``` @@ -211,14 +212,14 @@ karavictl generate token --tenant Alice --admin-token admintoken.yaml --addr csm ``` ##### Required Flags -``` +```terminal -t, --tenant Name of the tenant -f, --admin-token Path to admin token file --addr Address of the CSM Authorization Proxy Server ``` ##### Optional Flags -``` +```terminal -h, --help Help for token --insecure Skip certificate validation of the CSM Authorization Proxy Server --access-token-expiration Expiration time of the access token, e.g. 1m30s (default 1m0s) @@ -267,7 +268,7 @@ karavictl role [flags] ##### Options -``` +```terminal -h, --help Help for role ``` @@ -284,14 +285,14 @@ karavictl role get [flags] ``` ##### Required Flags -``` +```terminal -n, --name Name of the role -f, --admin-token Path to admin token file --addr Address of the CSM Authorization Proxy Server ``` ##### Optional Flags -``` +```terminal -h, --help Help for get --insecure Skip certificate validation of the CSM Authorization Proxy Server ``` @@ -333,13 +334,13 @@ karavictl role list [flags] ``` ##### Required Flags -``` +```terminal -f, --admin-token Path to admin token file --addr Address of the CSM Authorization Proxy Server ``` ##### Optional Flags -``` +```terminal -h, --help Help for list --insecure Skip certificate validation of the CSM Authorization Proxy Server ``` @@ -395,14 +396,14 @@ karavictl role create [flags] ``` ##### Required Flags -``` +```terminal --role Role in the form ==== -f, --admin-token Path to admin token file --addr Address of the CSM Authorization Proxy Server ``` ##### Optional Flags -``` +```terminal -h, --help Help for create --insecure Skip certificate validation of the CSM Authorization Proxy Server ``` @@ -435,14 +436,14 @@ karavictl role update [flags] ``` ##### Required Flags -``` +```terminal --role Role in the form ==== -f, --admin-token Path to admin token file --addr Address of the CSM Authorization Proxy Server ``` ##### Optional Flags -``` +```terminal -h, --help Help for update --insecure Skip certificate validation of the CSM Authorization Proxy Server ``` @@ -472,14 +473,14 @@ karavictl role delete [flags] ``` ##### Required Flags -``` +```terminal --role Role in the form ==== -f, --admin-token Path to admin token file --addr Address of the CSM Authorization Proxy Server ``` ##### Optional Flags -``` +```terminal -h, --help Help for delete --insecure Skip certificate validation of the CSM Authorization Proxy Server ``` @@ -511,7 +512,7 @@ karavictl rolebinding [flags] ##### Options -``` +```terminal -h, --help help for rolebinding ``` @@ -528,7 +529,7 @@ karavictl rolebinding create [flags] ``` ##### Required Flags -``` +```terminal -r, --role Role name -t, --tenant Tenant name -f, --admin-token Path to admin token file @@ -536,7 +537,7 @@ karavictl rolebinding create [flags] ``` ##### Optional Flags -``` +```terminal -h, --help Help for create --insecure Skip certificate validation of the CSM Authorization Proxy Server ``` @@ -567,7 +568,7 @@ karavictl rolebinding delete [flags] ``` ##### Required Flags -``` +```terminal -r, --role Role name -t, --tenant Tenant name -f, --admin-token Path to admin token file @@ -575,7 +576,7 @@ karavictl rolebinding delete [flags] ``` ##### Optional Flags -``` +```terminal -h, --help Help for delete --insecure Skip certificate validation of the CSM Authorization Proxy Server ``` @@ -608,7 +609,7 @@ karavictl storage [flags] ##### Options -``` +```terminal -h, --help Help for storage ``` @@ -625,7 +626,7 @@ karavictl storage get [flags] ``` ##### Required Flags -``` +```terminal -s, --system-id System identifier (default "systemid") -t, --type Type of storage system ("powerflex", "powermax", "powerscale") -f, --admin-token Path to admin token file @@ -633,7 +634,7 @@ karavictl storage get [flags] ``` ##### Optional Flags -``` +```terminal -h, --help Help for delete --insecure Skip certificate validation of the CSM Authorization Proxy Server ``` @@ -670,14 +671,14 @@ karavictl storage list [flags] ``` ##### Required Flags -``` +```terminal -t, --type Type of storage system ("powerflex", "powermax", "powerscale") -f, --admin-token Path to admin token file --addr Address of the CSM Authorization Proxy Server ``` ##### Optional Flags -``` +```terminal -h, --help Help for delete --insecure Skip certificate validation of the CSM Authorization Proxy Server ``` @@ -720,7 +721,7 @@ karavictl storage create [flags] ``` ##### Required Flags -``` +```terminal -e, --endpoint Endpoint of REST API gateway -p, --password Password (default "****") -s, --system-id System identifier (default "systemid") @@ -731,7 +732,7 @@ karavictl storage create [flags] ``` ##### Optional Flags -``` +```terminal -h, --help Help for delete -a, --array-insecure Skip certificate validation of the storage array --insecure Skip certificate validation of the CSM Authorization Proxy Server @@ -763,7 +764,7 @@ karavictl storage update [flags] ``` ##### Required Flags -``` +```terminal -e, --endpoint Endpoint of REST API gateway -p, --pass Password (default "****") -s, --system-id System identifier (default "systemid") @@ -774,7 +775,7 @@ karavictl storage update [flags] ``` ##### Optional Flags -``` +```terminal -h, --help Help for delete -a, --array-insecure Skip certificate validation of the storage array --insecure Skip certificate validation of the CSM Authorization Proxy Server @@ -807,7 +808,7 @@ karavictl storage delete [flags] ``` ##### Required Flags -``` +```terminal -s, --system-id System identifier (default "systemid") -t, --type Type of storage system ("powerflex", "powermax") -f, --admin-token Path to admin token file @@ -815,7 +816,7 @@ karavictl storage delete [flags] ``` ##### Optional Flags -``` +```terminal -h, --help Help for delete --insecure Skip certificate validation of the CSM Authorization Proxy Server ``` @@ -869,14 +870,14 @@ karavictl tenant create [flags] ``` ##### Required Flags -``` +```terminal -n, --name Tenant name -f, --admin-token Path to admin token file --addr Address of the CSM Authorization Proxy Server ``` ##### Optional Flags -``` +```terminal -h, --help Help for delete -a, --approvesdc To allow/deny SDC approval requests (default true | This flag is only applicable to PowerFlex. This flag will Approve/Deny a tenant's SDC request) --insecure Skip certificate validation of the CSM Authorization Proxy Server @@ -908,14 +909,14 @@ karavictl tenant get [flags] ``` ##### Required Flags -``` +```terminal -n, --name Tenant name -f, --admin-token Path to admin token file --addr Address of the CSM Authorization Proxy Server ``` ##### Optional Flags -``` +```terminal -h, --help Help for delete --insecure Skip certificate validation of the CSM Authorization Proxy Server ``` @@ -951,13 +952,13 @@ karavictl tenant list [flags] ``` ##### Required Flags -``` +```terminal -f, --admin-token Path to admin token file --addr Address of the CSM Authorization Proxy Server ``` ##### Optional Flags -``` +```terminal -h, --help Help for delete --insecure Skip certificate validation of the CSM Authorization Proxy Server ``` @@ -996,14 +997,14 @@ karavictl tenant revoke [flags] ``` ##### Required Flags -``` +```terminal -n, --name Tenant name -f, --admin-token Path to admin token file --addr Address of the CSM Authorization Proxy Server ``` ##### Optional Flags -``` +```terminal -c, --cancel Cancel a previous tenant revocation -h, --help Help for delete --insecure Skip certificate validation of the CSM Authorization Proxy Server @@ -1034,14 +1035,14 @@ karavictl tenant delete [flags] ``` ##### Required Flags -``` +```terminal -n, --name Tenant name -f, --admin-token Path to admin token file --addr Address of the CSM Authorization Proxy Server ``` ##### Optional Flags -``` +```terminal -h, --help Help for delete --insecure Skip certificate validation of the CSM Authorization Proxy Server ``` @@ -1071,14 +1072,14 @@ karavictl tenant update [flags] ``` ##### Required Flags -``` +```terminal -n, --name Tenant name -f, --admin-token Path to admin token file --addr Address of the CSM Authorization Proxy Server ``` ##### Optional Flags -``` +```terminal -h, --help Help for delete -a, --approvesdc To allow/deny SDC approval requests (default true | This flag is only applicable to PowerFlex. This flag will Approve/Deny a tenant's SDC request) --insecure Skip certificate validation of the CSM Authorization Proxy Server @@ -1089,4 +1090,4 @@ karavictl tenant update [flags] karavictl tenant update --name Alice --approvesdc=false --admin-token admintoken.yaml --addr csm-authorization.host.com ``` -On success, there will be no output. You may run `karavictl tenant get --name ` to confirm the update was persisted. \ No newline at end of file +On success, there will be no output. You may run `karavictl tenant get --name ` to confirm the update was persisted. diff --git a/content/v1/concepts/authorization/v1.x/configuration/_index.md b/content/v1/concepts/authorization/v1.x/configuration/_index.md new file mode 100644 index 0000000000..5fd9ad0b95 --- /dev/null +++ b/content/v1/concepts/authorization/v1.x/configuration/_index.md @@ -0,0 +1,28 @@ +--- +title: Configuration +linktitle: Configuration +weight: 2 +description: Configure CSM Authorization +no_list: true +--- + +This section provides the details and instructions on how to configure Container Storage Modules Authorization. + + +{{< cardcontainer >}} + + {{< customcard link="./powerflex" imageNumber="3" title="PowerFlex" >}} + + {{< customcard link="./powermax" imageNumber="3" title="PowerMax" >}} + + {{< customcard link="./powerscale" imageNumber="3" title="PowerScale" >}} + + +{{< /cardcontainer >}} + + +{{< cardcontainer >}} + + {{< customcard link="./proxy-server" title="Proxy Server" >}} + +{{< /cardcontainer >}} diff --git a/content/v3/authorization/v1.x GA/configuration/powerflex/_index.md b/content/v1/concepts/authorization/v1.x/configuration/powerflex/_index.md similarity index 53% rename from content/v3/authorization/v1.x GA/configuration/powerflex/_index.md rename to content/v1/concepts/authorization/v1.x/configuration/powerflex/_index.md index 9763cfcbdc..994f2332c1 100644 --- a/content/v3/authorization/v1.x GA/configuration/powerflex/_index.md +++ b/content/v1/concepts/authorization/v1.x/configuration/powerflex/_index.md @@ -2,21 +2,23 @@ title: PowerFlex linktitle: PowerFlex description: > - Enabling CSM Authorization for PowerFlex CSI Driver + Enabling Container Storage Modules Authorization for PowerFlex CSI Driver --- -## Configuring PowerFlex CSI Driver with CSM for Authorization +## Configuring PowerFlex CSI Driver with Container Storage Modules for Authorization -Given a setup where Kubernetes, a storage system, and the CSM for Authorization Proxy Server are deployed, follow these steps to configure the CSI Drivers to work with the Authorization sidecar: +Given a setup where Kubernetes, a storage system, and the Container Storage Modules for Authorization Proxy Server are deployed, follow these steps to configure the CSI Drivers to work with the Authorization sidecar: 1. Apply the secret containing the tenant token data into the driver namespace. It's assumed that the Kubernetes administrator has the token secret manifest, generated by your storage administrator via [Generate a Token](../proxy-server/#generate-a-token), saved in `/tmp/token.yaml`. - + #It is assumed that array type powerflex has the namespace "vxflexos". ```console kubectl apply -f /tmp/token.yaml -n vxflexos ``` -2. Edit these parameters in `samples/secret/karavi-authorization-config.json` file in the [CSI PowerFlex](https://github.com/dell/csi-powerflex/tree/main/samples) driver and update/add connection information for one or more backend storage arrays. In an instance where multiple CSI drivers are configured on the same Kubernetes cluster, the port range in the *endpoint* parameter must be different for each driver. +2. Edit these parameters in `samples/secret/karavi-authorization-config.json` file in the [CSI PowerFlex](https://github.com/dell/csi-powerflex/tree/main/samples/secret/karavi-authorization-config.json) driver and update/add connection information for one or more backend storage arrays. In an instance where multiple CSI drivers are configured on the same Kubernetes cluster, the port range in the *endpoint* parameter must be different for each driver. + +{{< collapse id="1" title="Parameters">}} | Parameter | Description | Required | Default | | --------- | ----------- | -------- |-------- | @@ -27,35 +29,35 @@ Given a setup where Kubernetes, a storage system, and the CSM for Authorization | systemID | System ID of the backend storage array. | Yes | " " | | skipCertificateValidation | A boolean that enables/disables certificate validation of the backend storage array. This parameter is not used. | No | true | | isDefault | A boolean that indicates if the array is the default array. This parameter is not used. | No | default value from values.yaml | +{{< /collapse >}} +
    +
  • Create the karavi-authorization-config secret using this command: - Create the karavi-authorization-config secret using this command: - - ```bash - - kubectl -n vxflexos create secret generic karavi-authorization-config --from-file=config=samples/secret/karavi-authorization-config.json -o yaml --dry-run=client | kubectl apply -f - - ``` +```bash +kubectl -n vxflexos create secret generic karavi-authorization-config --from-file=config=samples/secret/karavi-authorization-config.json -o yaml --dry-run=client | kubectl apply -f - +``` +
  • +
3. Create the proxy-server-root-certificate secret. If running in *insecure* mode, create the secret with empty data: ```bash - kubectl -n vxflexos create secret generic proxy-server-root-certificate --from-literal=rootCertificate.pem= -o yaml --dry-run=client | kubectl apply -f - ``` Otherwise, create the proxy-server-root-certificate secret with the appropriate file: ```bash - kubectl -n vxflexos create secret generic proxy-server-root-certificate --from-file=rootCertificate.pem=/path/to/rootCA -o yaml --dry-run=client | kubectl apply -f - ``` -4. Prepare the driver configuration secret, applicable to your driver installation method, to communicate with the CSM Authorization sidecar. +4. Prepare the driver configuration secret, applicable to your driver installation method, to communicate with the Container Storage Modules Authorization sidecar. **Helm** - Refer to the [Install the Driver](../../../../deployment/helm/drivers/installation/powerflex/#install-the-driver) section to edit the parameters in `samples/config.yaml` to configure the driver to communicate with the CSM Authorization sidecar. + Refer to the [Install the Driver](../../../../../getting-started/installation/kubernetes/powerflex/helm/#install-driver) section to edit the parameters in `samples/config.yaml` to configure the driver to communicate with the Authorization sidecar. - Update `endpoint` to match the localhost endpoint in `samples/secret/karavi-authorization-config.json`. @@ -70,15 +72,14 @@ Given a setup where Kubernetes, a storage system, and the CSM for Authorization password: "ignored" systemID: "ID2" endpoint: "https://localhost:9400" - skipCertificateValidation: true - isDefault: true + skipCertificateValidation: true + isDefault: true mdm: "10.0.0.3,10.0.0.4" ``` - **Operator** - Refer to the [Create Secret](../../../../deployment/csmoperator/drivers/powerflex/#create-secret) section to prepare `secret.yaml` to configure the driver to communicate with the CSM Authorization sidecar. + Refer to the [Create Secret](../../../../../getting-started/installation/kubernetes/powerflex/csmoperator/#create-secret) section to prepare `secret.yaml` to configure the driver to communicate with the CSM Authorization sidecar. - Update `endpoint` to match the localhost endpoint in `samples/secret/karavi-authorization-config.json`. @@ -93,24 +94,24 @@ Given a setup where Kubernetes, a storage system, and the CSM for Authorization password: "ignored" systemID: "ID2" endpoint: "https://localhost:9400" - skipCertificateValidation: true - isDefault: true + skipCertificateValidation: true + isDefault: true mdm: "10.0.0.3,10.0.0.4" ``` -5. Enable CSM Authorization in the driver installation applicable to your installation method. +5. Enable Container Storage Modules Authorization in the driver installation applicable to your installation method. **Helm** - Refer to the [Install the Driver](../../../../deployment/helm/drivers/installation/powerflex/#install-the-driver) section to edit the parameters in `myvalues.yaml` to enable CSM Authorization. + Refer to the [Install the Driver](../../../../../getting-started/installation/kubernetes/powerflex/helm/#install-driver) section to edit the parameters in `myvalues.yaml` to enable Authorization. - Update `authorization.enabled` to `true`. - - - Update `images.authorization` to the image of the CSM Authorization sidecar. In most cases, you can leave the default value. - - Update `authorization.proxyHost` to the hostname of the CSM Authorization Proxy Server. `csm-authorization.com` is a placeholder for the proxyHost. See the administrator of CSM for Authorization for the correct value. - - - Update `authorization.skipCertificateValidation` to `true` or `false` depending on if you want to disable or enable certificate validation of the CSM Authorization Proxy Server. + - Update `images.authorization` to the image of Authorization sidecar. In most cases, you can leave the default value. + + - Update `authorization.proxyHost` to the hostname of Authorization Proxy Server. `csm-authorization.com` is a placeholder for the proxyHost. See the administrator of Authorization for the correct value. + + - Update `authorization.skipCertificateValidation` to `true` or `false` depending on if you want to disable or enable certificate validation of Authorization Proxy Server. Example: @@ -119,8 +120,8 @@ Given a setup where Kubernetes, a storage system, and the CSM for Authorization enabled: true # sidecarProxyImage: the container image used for the csm-authorization-sidecar. - # Default value: dellemc/csm-authorization-sidecar:v1.11.0 - sidecarProxyImage: dellemc/csm-authorization-sidecar:v1.11.0 + # Default value: quay.io/dell/container-storage-modules/csm-authorization-sidecar:v1.14.0 + sidecarProxyImage: quay.io/dell/container-storage-modules/csm-authorization-sidecar:{{< version-v1 key="Authv1_csm_authorization_sidecar" >}} # proxyHost: hostname of the csm-authorization server # Default value: None @@ -129,26 +130,26 @@ Given a setup where Kubernetes, a storage system, and the CSM for Authorization # skipCertificateValidation: certificate validation of the csm-authorization server # Allowed Values: # "true" - TLS certificate verification will be skipped - # "false" - TLS certificate will be verified - # Default value: "true" + # "false" - TLS certificate will be verified + # Default value: "true" skipCertificateValidation: true ``` **Operator** - Refer to the [Install Driver](../../../../deployment/csmoperator/drivers/powerflex/#install-driver) section to edit the parameters in the Custom Resource to enable CSM Authorization. + Refer to the [Install Driver](../../../../../getting-started/installation/kubernetes/powerflex/csmoperator/#install-driver) section to edit the parameters in the Custom Resource to enable Authorization. Under `modules`, enable the module named `authorization`: - Update the `enabled` field to `true.` - - Update the `image` to the image of the CSM Authorization sidecar. In most cases, you can leave the default value. + - Update the `image` to the image of the Authorization sidecar. In most cases, you can leave the default value. - - Update the `PROXY_HOST` environment value to the hostname of the CSM Authorization Proxy Server. `csm-authorization.com` is a placeholder for the proxyHost. See the administrator of CSM for Authorization for the correct value. + - Update the `PROXY_HOST` environment value to the hostname of the Authorization Proxy Server. `csm-authorization.com` is a placeholder for the proxyHost. See the administrator of Authorization for the correct value. - - Update the `SKIP_CERTIFICATE_VALIDATION` environment value to `true` or `false` depending on if you want to disable or enable certificate validation of the CSM Authorization Proxy Server. + - Update the `SKIP_CERTIFICATE_VALIDATION` environment value to `true` or `false` depending on if you want to disable or enable certificate validation of Authorization Proxy Server. - Example: + Example: ```yaml modules: @@ -156,20 +157,23 @@ Given a setup where Kubernetes, a storage system, and the CSM for Authorization - name: authorization # enable: Enable/Disable csm-authorization enabled: true - configVersion: v1.11.0 + configVersion: {{< version-v1 key="Authv1_ConfigVersion" >}} components: - name: karavi-authorization-proxy - image: dellemc/csm-authorization-sidecar:v1.11.0 + image: quay.io/dell/container-storage-modules/csm-authorization-sidecar:{{< version-v1 key="Authv1_csm_authorization_sidecar" >}} envs: # proxyHost: hostname of the csm-authorization server - name: "PROXY_HOST" value: "csm-authorization.com" - - # skipCertificateValidation: Enable/Disable certificate validation of the csm-authorization server + + # skipCertificateValidation: Enable/Disable certificate validation of the csm-authorization server - name: "SKIP_CERTIFICATE_VALIDATION" value: "true" ``` + Alternatively, you can use the minimal sample files provided + [here](https://github.com/dell/csm-operator/tree/main/samples/minimal-samples/powerflex_{{< version-v1 key="Min_sample_operator_pflex" >}}.yaml) and install the module using default values + 6. Install the Dell CSI PowerFlex driver following the appropriate documentation for your installation method. -7. (Optional) Install [dellctl](../../../../support/cli/#installation-instructions) to perform Kubernetes administrator commands for additional capabilities (e.g., list volumes). Please refer to the [dellctl documentation page](../../../../support/cli) for the installation steps and command list. +7. (Optional) Install [dellctl](../../../../../tooling/cli/#installation-instructions) to perform Kubernetes administrator commands for additional capabilities (e.g., list volumes). Please refer to the [dellctl documentation page](../../../../../tooling/cli) for the installation steps and command list. diff --git a/content/v3/authorization/v1.x GA/configuration/powermax/_index.md b/content/v1/concepts/authorization/v1.x/configuration/powermax/_index.md similarity index 50% rename from content/v3/authorization/v1.x GA/configuration/powermax/_index.md rename to content/v1/concepts/authorization/v1.x/configuration/powermax/_index.md index 420afe103f..55053d2255 100644 --- a/content/v3/authorization/v1.x GA/configuration/powermax/_index.md +++ b/content/v1/concepts/authorization/v1.x/configuration/powermax/_index.md @@ -2,21 +2,21 @@ title: PowerMax linktitle: PowerMax description: > - Enabling CSM Authorization for PowerMax CSI Driver + Enabling Container Storage Modules Authorization for PowerMax CSI Driver --- -## Configuring PowerMax CSI Driver with CSM for Authorization +## Configuring PowerMax CSI Driver with Container Storage Modules for Authorization -Given a setup where Kubernetes, a storage system, and the CSM for Authorization Proxy Server are deployed, follow these steps to configure the CSI Drivers to work with the Authorization sidecar: +Given a setup where Kubernetes, a storage system, and the Authorization Proxy Server are deployed, follow these steps to configure the CSI Drivers to work with the Authorization sidecar: 1. Apply the secret containing the tenant token data into the driver namespace. It's assumed that the Kubernetes administrator has the token secret manifest, generated by your storage administrator via [Generate a Token](../proxy-server/#generate-a-token), saved in `/tmp/token.yaml`. #It is assumed that array type powermax has the namespace "powermax". - ```console + ```bash kubectl apply -f /tmp/token.yaml -n powermax ``` -2. Edit these parameters in `samples/secret/karavi-authorization-config.json` file in [CSI PowerMax](https://github.com/dell/csi-powermax/tree/main/samples/secret) driver and update/add connection information for one or more backend storage arrays. In an instance where multiple CSI drivers are configured on the same Kubernetes cluster, the port range in the *endpoint* parameter must be different for each driver. +2. Edit these parameters in `samples/secret/karavi-authorization-config.json` file in [CSI PowerMax](https://github.com/dell/csi-powermax/tree/main/samples/secret/karavi-authorization-config.json) driver and update/add connection information for one or more backend storage arrays. In an instance where multiple CSI drivers are configured on the same Kubernetes cluster, the port range in the *endpoint* parameter must be different for each driver. | Parameter | Description | Required | Default | | --------- | ----------- | -------- |-------- | @@ -28,10 +28,8 @@ Given a setup where Kubernetes, a storage system, and the CSM for Authorization | skipCertificateValidation | A boolean that enables/disables certificate validation of the backend storage array. This parameter is not used. | No | true | | isDefault | A boolean that indicates if the array is the default array. This parameter is not used. | No | default value from values.yaml | - Create the karavi-authorization-config secret using this command: ```bash - kubectl -n powermax create secret generic karavi-authorization-config --from-file=config=samples/secret/karavi-authorization-config.json -o yaml --dry-run=client | kubectl apply -f - ``` @@ -40,44 +38,84 @@ Create the karavi-authorization-config secret using this command: If running in *insecure* mode, create the secret with empty data: ```bash - kubectl -n powermax create secret generic proxy-server-root-certificate --from-literal=rootCertificate.pem= -o yaml --dry-run=client | kubectl apply -f - ``` Otherwise, create the proxy-server-root-certificate secret with the appropriate file: ```bash - kubectl -n powermax create secret generic proxy-server-root-certificate --from-file=rootCertificate.pem=/path/to/rootCA -o yaml --dry-run=client | kubectl apply -f - ``` -4. Prepare the driver configuration secret, applicable to your driver installation method, to communicate with the CSM Authorization sidecar. +4. Prepare the driver configuration secret, applicable to your driver installation method, to communicate with the Authorization sidecar. **Helm** - Refer to the [Install the Driver](../../../../deployment/helm/drivers/installation/powermax/#install-the-driver) section where you edit `samples/secret/secret.yaml` with the credentials of the PowerMax. Leave `username` and `password` with the default values as they will be ignored. + Refer to the [Install the Driver](../../../../../getting-started/installation/kubernetes/powermax/helm/#install-driver) section where you edit `samples/secret/secret.yaml` with the credentials of the PowerMax. + + Update endpoint to match the localhost endpoint in `samples/secret/karavi-authorization-config.json`. Leave `username` and `password` with the default values base64 encoded. + + **Note:** Authorization does not currently support the `backupEndpoint` parameter. + + Example: + ```yaml + storageArrays: + - storageArrayId: "000000000001" + primaryEndpoint: https://localhost:9400 + managementServers: + - endpoint: https://localhost:9400 + username: - + password: - + skipCertificateValidation: true + limits: + maxActiveRead: 10 + maxActiveWrite: 10 + maxOutstandingRead: 10 + maxOutstandingWrite: 10 + ``` **Operator** - Refer to the [Install the Driver](../../../../deployment/csmoperator/drivers/powermax/#install-driver) section to prepare `powermax-creds.yaml`. Leave `username` and `password` with the default values as they will be ignored. + Refer to the [Install the Driver](../../../../../getting-started/installation/kubernetes/powermax/csmoperator/#install-driver) section to prepare `powermax-creds.yaml`. + + Update endpoint to match the localhost endpoint in `samples/secret/karavi-authorization-config.json`. Leave `username` and `password` with the default values base64 encoded. -5. Enable CSM Authorization in the driver installation applicable to your installation method. + **Note:** Authorization does not currently support the `backupEndpoint` parameter. + + Example: + ```yaml + storageArrays: + - storageArrayId: "000000000001" + primaryEndpoint: https://localhost:9400 + managementServers: + - endpoint: https://localhost:9400 + username: - + password: - + skipCertificateValidation: true + limits: + maxActiveRead: 10 + maxActiveWrite: 10 + maxOutstandingRead: 10 + maxOutstandingWrite: 10 + ``` + +5. Enable Container Storage Modules Authorization in the driver installation applicable to your installation method. **Helm** - Refer to the [Install the Driver](../../../../deployment/helm/drivers/installation/powermax/#install-the-driver) section to edit the parameters in `my-powermax-settings.yaml` file to configure the driver to communicate with the CSM Authorization sidecar. + Refer to the [Install the Driver](../../../../../getting-started/installation/kubernetes/powermax/helm/#install-driver) section to edit the parameters in `my-powermax-settings.yaml` file to configure the driver to communicate with the Authorization sidecar. - Update `global.storageArrays.endpoint` to match the localhost endpoint in `samples/secret/karavi-authorization-config.json`. - Update `global.managementServers.endpoint` to match the localhost endpoint in `samples/secret/karavi-authorization-config.json`. - Update `authorization.enabled` to `true`. - - - Update `images.authorization` to the image of the CSM Authorization sidecar. In most cases, you can leave the default value. - - Update `authorization.proxyHost` to the hostname of the CSM Authorization Proxy Server. `csm-authorization.com` is a placeholder for the proxyHost. See the administrator of CSM for Authorization for the correct value. - - - Update `authorization.skipCertificateValidation` to `true` or `false` depending on if you want to disable or enable certificate validation of the CSM Authorization Proxy Server. + - Update `images.authorization` to the image of Authorization sidecar. In most cases, you can leave the default value. + + - Update `authorization.proxyHost` to the hostname of Authorization Proxy Server. `csm-authorization.com` is a placeholder for the proxyHost. See the administrator of Authorization for the correct value. + + - Update `authorization.skipCertificateValidation` to `true` or `false` depending on if you want to disable or enable certificate validation of Authorization Proxy Server. - Update `csireverseproxy.deployAsSidecar` to `true`. @@ -103,8 +141,8 @@ Create the karavi-authorization-config secret using this command: enabled: true # sidecarProxyImage: the container image used for the csm-authorization-sidecar. - # Default value: dellemc/csm-authorization-sidecar:v1.11.0 - sidecarProxyImage: dellemc/csm-authorization-sidecar:v1.11.0 + # Default value: quay.io/dell/container-storage-modules/csm-authorization-sidecar:v1.14.0 + sidecarProxyImage: quay.io/dell/container-storage-modules/csm-authorization-sidecar:{{< version-v1 key="Authv1_csm_authorization_sidecar" >}} # proxyHost: hostname of the csm-authorization server # Default value: None @@ -113,28 +151,28 @@ Create the karavi-authorization-config secret using this command: # skipCertificateValidation: certificate validation of the csm-authorization server # Allowed Values: # "true" - TLS certificate verification will be skipped - # "false" - TLS certificate will be verified - # Default value: "true" + # "false" - TLS certificate will be verified + # Default value: "true" skipCertificateValidation: true ``` **Operator** - Refer to the [Install Driver](../../../../deployment/csmoperator/drivers/powermax/#install-driver) section to edit the parameters in the Custom Resource to enable CSM Authorization. + Refer to the [Install Driver](../../../../../getting-started/installation/kubernetes/powermax/csmoperator/#install-driver) section to edit the parameters in the Custom Resource to enable Authorization. Under `modules`, enable the module named `authorization`: - Update the `enabled` field to `true.` - - Update the `image` to the image of the CSM Authorization sidecar. In most cases, you can leave the default value. + - Update the `image` to the image of the Container Storage Modules Authorization sidecar. In most cases, you can leave the default value. - - Update the `PROXY_HOST` environment value to the hostname of the CSM Authorization Proxy Server. `csm-authorization.com` is a placeholder for the proxyHost. See the administrator of CSM for Authorization for the correct value. + - Update the `PROXY_HOST` environment value to the hostname of the Container Storage Modules Authorization Proxy Server. `csm-authorization.com` is a placeholder for the proxyHost. See the administrator of Authorization for the correct value. - - Update the `SKIP_CERTIFICATE_VALIDATION` environment value to `true` or `false` depending on if you want to disable or enable certificate validation of the CSM Authorization Proxy Server. + - Update the `SKIP_CERTIFICATE_VALIDATION` environment value to `true` or `false` depending on if you want to disable or enable certificate validation of Authorization Proxy Server. - Update the `DeployAsSidecar` environment variable for the `csipowermax-reverseproxy` component to `true`. - Example: + Example: ```yaml modules: @@ -142,7 +180,7 @@ Create the karavi-authorization-config secret using this command: # enabled: Always set to true enabled: true forceRemoveModule: true - configVersion: v2.10.0 + configVersion: {{< version-v1 key="Authv1_PMax_ReverseProxy_ConfigVersion" >}} components: - name: csipowermax-reverseproxy envs: @@ -152,20 +190,23 @@ Create the karavi-authorization-config secret using this command: - name: authorization # enable: Enable/Disable csm-authorization enabled: true - configVersion: v1.11.0 + configVersion: {{< version-v1 key="Authv1_ConfigVersion" >}} components: - name: karavi-authorization-proxy - image: dellemc/csm-authorization-sidecar:v1.11.0 + image: quay.io/dell/container-storage-modules/csm-authorization-sidecar:{{< version-v1 key="Authv1_csm_authorization_sidecar" >}} envs: # proxyHost: hostname of the csm-authorization server - name: "PROXY_HOST" value: "csm-authorization.com" - - # skipCertificateValidation: Enable/Disable certificate validation of the csm-authorization server + + # skipCertificateValidation: Enable/Disable certificate validation of the csm-authorization server - name: "SKIP_CERTIFICATE_VALIDATION" value: "true" ``` -5. Install the Dell CSI PowerMax driver following the appropriate documentation for your installation method. + Alternatively, you can use the minimal sample files provided + [here](https://github.com/dell/csm-operator/tree/main/samples/minimal-samples/powermax_{{< version-v1 key="Min_sample_operator_pmax" >}}.yaml) and install the module using default values + +5. Install the CSI PowerMax driver following the appropriate documentation for your installation method. -6. (Optional) Install [dellctl](../../../../support/cli/#installation-instructions) to perform Kubernetes administrator commands for additional capabilities (e.g., list volumes). Please refer to the [dellctl documentation page](../../../../support/cli) for the installation steps and command list. +6. (Optional) Install [dellctl](../../../../../tooling/cli/#installation-instructions) to perform Kubernetes administrator commands for additional capabilities (e.g., list volumes). Please refer to the [dellctl documentation page](../../../../../tooling/cli) for the installation steps and command list. diff --git a/content/v3/authorization/v1.x GA/configuration/powerscale/_index.md b/content/v1/concepts/authorization/v1.x/configuration/powerscale/_index.md similarity index 59% rename from content/v3/authorization/v1.x GA/configuration/powerscale/_index.md rename to content/v1/concepts/authorization/v1.x/configuration/powerscale/_index.md index 0bf73d4cbe..3dbb5a5191 100644 --- a/content/v3/authorization/v1.x GA/configuration/powerscale/_index.md +++ b/content/v1/concepts/authorization/v1.x/configuration/powerscale/_index.md @@ -2,21 +2,21 @@ title: PowerScale linktitle: PowerScale description: > - Enabling CSM Authorization for PowerScale CSI Driver + Enabling Container Storage Modules Authorization for PowerScale CSI Driver --- -## Configuring PowerScale CSI Driver with CSM for Authorization +## Configuring PowerScale CSI Driver with Container Storage Modules for Authorization -Given a setup where Kubernetes, a storage system, and the CSM for Authorization Proxy Server are deployed, follow these steps to configure the CSI Drivers to work with the Authorization sidecar: +Given a setup where Kubernetes, a storage system, and Container Storage Modules for Authorization Proxy Server are deployed, follow these steps to configure the CSI Drivers to work with the Authorization sidecar: 1. Apply the secret containing the token data into the driver namespace. It's assumed that the Kubernetes administrator has the token secret manifest, generated by your storage administrator via [Generate a Token](../proxy-server/#generate-a-token), saved in `/tmp/token.yaml`. - + #It is assumed that array type powerscale has the namespace "isilon". - ```console + ```bash kubectl apply -f /tmp/token.yaml -n isilon ``` -2. Edit these parameters in `samples/secret/karavi-authorization-config.json` file in [CSI PowerScale](https://github.com/dell/csi-powerscale/tree/main/samples/secret) driver and update/add connection information for one or more backend storage arrays. In an instance where multiple CSI drivers are configured on the same Kubernetes cluster, the port range in the *endpoint* parameter must be different for each driver. +2. Edit these parameters in `samples/secret/karavi-authorization-config.json` file in [CSI PowerScale](https://github.com/dell/csi-powerscale/tree/main/samples/secret/karavi-authorization-config.json) driver and update/add connection information for one or more backend storage arrays. In an instance where multiple CSI drivers are configured on the same Kubernetes cluster, the port range in the *endpoint* parameter must be different for each driver. | Parameter | Description | Required | Default | | --------- | ----------- | -------- |-------- | @@ -28,11 +28,9 @@ Given a setup where Kubernetes, a storage system, and the CSM for Authorization | skipCertificateValidation | A boolean that enables/disables certificate validation of the backend storage array. This parameter is not used. | No | true | | isDefault | A boolean that indicates if the array is the default array. This parameter is not used. | No | default value from values.yaml | - Create the karavi-authorization-config secret using this command: ```bash - kubectl -n isilon create secret generic karavi-authorization-config --from-file=config=samples/secret/karavi-authorization-config.json -o yaml --dry-run=client | kubectl apply -f - ``` @@ -41,22 +39,20 @@ kubectl -n isilon create secret generic karavi-authorization-config --from-file= If running in *insecure* mode, create the secret with empty data: ```bash - kubectl -n isilon create secret generic proxy-server-root-certificate --from-literal=rootCertificate.pem= -o yaml --dry-run=client | kubectl apply -f - ``` Otherwise, create the proxy-server-root-certificate secret with the appropriate file: ```bash - kubectl -n isilon create secret generic proxy-server-root-certificate --from-file=rootCertificate.pem=/path/to/rootCA -o yaml --dry-run=client | kubectl apply -f - ``` -4. Prepare the driver configuration secret, applicable to your driver installation method, to communicate with the CSM Authorization sidecar. +4. Prepare the driver configuration secret, applicable to your driver installation method, to communicate with the Container Storage Modules Authorization sidecar. **Helm** - Refer to the [Install the Driver](../../../../deployment/helm/drivers/installation/isilon/#install-the-driver) section to edit the parameters to prepare the `samples/secret/secret.yaml` file to configure the driver to communicate with the CSM Authorization sidecar. + Refer to the [Install the Driver](../../../../../getting-started/installation/kubernetes/powerscale/helm/#install-driver) section to edit the parameters to prepare the `samples/secret/secret.yaml` file to configure the driver to communicate with the Authorization sidecar. - Update `endpoint` to match the localhost endpoint in `samples/secret/karavi-authorization-config.json`. @@ -82,7 +78,7 @@ kubectl -n isilon create secret generic karavi-authorization-config --from-file= **Operator** - Refer to the [Prerequisite](../../../../deployment/csmoperator/drivers/powerscale/#prerequisite) section to prepare the `secret.yaml` file to configure the driver to communicate with the CSM Authorization sidecar. + Refer to the [Prerequisite](../../../../../getting-started/installation/kubernetes/powerscale/csmoperator/#prerequisite) section to prepare the `secret.yaml` file to configure the driver to communicate with the Authorization sidecar. - Update `endpoint` to match the localhost endpoint in `samples/secret/karavi-authorization-config.json`. @@ -106,19 +102,19 @@ kubectl -n isilon create secret generic karavi-authorization-config --from-file= skipCertificateValidation: true ``` -5. Enable CSM Authorization in the driver installation applicable to your installation method. - +5. Enable Container Storage Modules Authorization in the driver installation applicable to your installation method. + **Helm** - Refer to the [Install the Driver](../../../../deployment/helm/drivers/installation/isilon/#install-the-driver) section to edit the parameters in `my-isilon-settings.yaml` file to enable CSM Authorization. + Refer to the [Install the Driver](../../../../../getting-started/installation/kubernetes/powerscale/helm/#install-driver) section to edit the parameters in `my-isilon-settings.yaml` file to enable Authorization. - Update `authorization.enabled` to `true`. - - - Update `images.authorization` to the image of the CSM Authorization sidecar. In most cases, you can leave the default value. - - Update `authorization.proxyHost` to the hostname of the CSM Authorization Proxy Server. `csm-authorization.com` is a placeholder for the proxyHost. See the administrator of CSM for Authorization for the correct value. - - - Update `authorization.skipCertificateValidation` to `true` or `false` depending on if you want to disable or enable certificate validation of the CSM Authorization Proxy Server. + - Update `images.authorization` to the image of Authorization sidecar. In most cases, you can leave the default value. + + - Update `authorization.proxyHost` to the hostname of Authorization Proxy Server. `csm-authorization.com` is a placeholder for the proxyHost. See the administrator of Authorization for the correct value. + + - Update `authorization.skipCertificateValidation` to `true` or `false` depending on if you want to disable or enable certificate validation of Authorization Proxy Server. Example: @@ -127,8 +123,8 @@ kubectl -n isilon create secret generic karavi-authorization-config --from-file= enabled: true # sidecarProxyImage: the container image used for the csm-authorization-sidecar. - # Default value: dellemc/csm-authorization-sidecar:v1.11.0 - sidecarProxyImage: dellemc/csm-authorization-sidecar:v1.11.0 + # Default value: quay.io/dell/container-storage-modules/csm-authorization-sidecar:v1.14.0 + sidecarProxyImage: quay.io/dell/container-storage-modules/csm-authorization-sidecar:{{< version-v1 key="Authv1_csm_authorization_sidecar" >}} # proxyHost: hostname of the csm-authorization server # Default value: None @@ -137,24 +133,24 @@ kubectl -n isilon create secret generic karavi-authorization-config --from-file= # skipCertificateValidation: certificate validation of the csm-authorization server # Allowed Values: # "true" - TLS certificate verification will be skipped - # "false" - TLS certificate will be verified - # Default value: "true" + # "false" - TLS certificate will be verified + # Default value: "true" skipCertificateValidation: true ``` **Operator** - Refer to the [Install Driver](../../../../deployment/csmoperator/drivers/powerscale/#install-driver) section to edit the parameters in the Custom Resource to enable CSM Authorization. + Refer to the [Install Driver](../../../../../getting-started/installation/kubernetes/powerscale/csmoperator/#install-driver) section to edit the parameters in the Custom Resource to enable Authorization. Under `modules`, enable the module named `authorization`: - Update the `enabled` field to `true.` - - Update the `image` to the image of the CSM Authorization sidecar. In most cases, you can leave the default value. + - Update the `image` to the image of Authorization sidecar. In most cases, you can leave the default value. - - Update the `PROXY_HOST` environment value to the hostname of the CSM Authorization Proxy Server. `csm-authorization.com` is a placeholder for the proxyHost. See the administrator of CSM for Authorization for the correct value. + - Update the `PROXY_HOST` environment value to the hostname of Authorization Proxy Server. `csm-authorization.com` is a placeholder for the proxyHost. See the administrator of for Authorization for the correct value. - - Update the `SKIP_CERTIFICATE_VALIDATION` environment value to `true` or `false` depending on if you want to disable or enable certificate validation of the CSM Authorization Proxy Server. + - Update the `SKIP_CERTIFICATE_VALIDATION` environment value to `true` or `false` depending on if you want to disable or enable certificate validation of Authorization Proxy Server. ```yaml modules: @@ -162,20 +158,23 @@ kubectl -n isilon create secret generic karavi-authorization-config --from-file= - name: authorization # enable: Enable/Disable csm-authorization enabled: true - configVersion: v1.11.0 + configVersion: {{< version-v1 key="Authv1_ConfigVersion" >}} components: - name: karavi-authorization-proxy - image: dellemc/csm-authorization-sidecar:v1.11.0 + image: quay.io/dell/container-storage-modules/csm-authorization-sidecar:{{< version-v1 key="Authv1_csm_authorization_sidecar" >}} envs: # proxyHost: hostname of the csm-authorization server - name: "PROXY_HOST" value: "csm-authorization.com" - - # skipCertificateValidation: Enable/Disable certificate validation of the csm-authorization server + + # skipCertificateValidation: Enable/Disable certificate validation of the csm-authorization server - name: "SKIP_CERTIFICATE_VALIDATION" value: "true" ``` + Alternatively, you can use the minimal sample files provided + [here](https://github.com/dell/csm-operator/tree/main/samples/minimal-samples/powerscale_{{< version-v1 key="Min_sample_operator_pstore" >}}.yaml) and install the module using default values + 6. Install the Dell CSI PowerScale driver following the appropriate documentation for your installation method. -7. (Optional) Install [dellctl](../../../../support/cli/#installation-instructions) to perform Kubernetes administrator commands for additional capabilities (e.g., list volumes). Please refer to the [dellctl documentation page](../../../../support/cli) for the installation steps and command list. +7. (Optional) Install [dellctl](../../../../../tooling/cli/#installation-instructions) to perform Kubernetes administrator commands for additional capabilities (e.g., list volumes). Please refer to the [dellctl documentation page](../../../../../tooling/cli) for the installation steps and command list. diff --git a/content/v3/authorization/v1.x GA/configuration/proxy-server/_index.md b/content/v1/concepts/authorization/v1.x/configuration/proxy-server/_index.md similarity index 95% rename from content/v3/authorization/v1.x GA/configuration/proxy-server/_index.md rename to content/v1/concepts/authorization/v1.x/configuration/proxy-server/_index.md index 9be045d765..da7673d02a 100644 --- a/content/v3/authorization/v1.x GA/configuration/proxy-server/_index.md +++ b/content/v1/concepts/authorization/v1.x/configuration/proxy-server/_index.md @@ -2,10 +2,10 @@ title: Proxy Server linktitle: Proxy Server description: > - Configuring the CSM for Authorization Proxy Server + Configuring the Container Storage Modules for Authorization Proxy Server --- -## Configuring the CSM for Authorization Proxy Server +## Configuring the Container Storage Modules for Authorization Proxy Server The storage administrator must first configure Authorization with the following via `karavictl`: - Karavictl admin token @@ -36,8 +36,7 @@ In clusters where there is no integrated LoadBalancer, the `EXTERNAL-IP` field i An admin token is required for executing `karavictl` commands, with the exception of `admin token` and `cluster-info`. For example, to generate an admin token and redirect the output to a file: -```bash - +``` $ karavictl admin token --name admin --access-token-expiration 30s --refresh-token-expiration 120m > admintoken.yaml $ Enter JWT Signing Secret: $ cat admintoken.yaml @@ -45,19 +44,16 @@ $ cat admintoken.yaml "Access": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJjc20iLCJleHAiOjE2ODIzNDg0MzEsImdyb3VwIjoiYWRtaW4iLCJpc3MiOiJjb20uZGVsbC5jc20iLCJyb2xlcyI6IiIsInN1YiI6ImNzbS1hZG1pbiJ9.OxTL48c1VLKSY6oVnYw_jmQ7XHX4UEfwIRkfLQh9beA", "Refresh": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJjc20iLCJleHAiOjE2ODQ5NDAzNzEsImdyb3VwIjoiYWRtaW4iLCJpc3MiOiJjb20uZGVsbC5jc20iLCJyb2xlcyI6IiIsInN1YiI6ImNzbS1hZG1pbiJ9._ELmuc2qprZPeuW22wISiw0pvuM6rhyabDOybakqs68" } - ``` Alternatively, the JWT signing secret can be specified with the CLI. ```bash - $ karavictl admin token --name admin --jwt-signing-secret supersecret --access-token-expiration 30s --refresh-token-expiration 120m > admintoken.yaml $ cat admintoken.yaml { "Access": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJjc20iLCJleHAiOjE2ODIzNDg2MTEsImdyb3VwIjoiYWRtaW4iLCJpc3MiOiJjb20uZGVsbC5jc20iLCJyb2xlcyI6IiIsInN1YiI6ImNzbS1hZG1pbiJ9.C6c9DrlOE95_soFm0YEyzs08ye2TL_koYsp4qJFEglI", "Refresh": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOiJjc20iLCJleHAiOjE2ODIzNTU3ODEsImdyb3VwIjoiYWRtaW4iLCJpc3MiOiJjb20uZGVsbC5jc20iLCJyb2xlcyI6IiIsInN1YiI6ImNzbS1hZG1pbiJ9.XMcOVIuJ56JhuJrfGqQ_DUqXDyHLxrOrkvQJUxAOst4" } - ``` >__Note__: @@ -65,7 +61,7 @@ $ cat admintoken.yaml ### Configuring Storage -A `storage` entity in CSM Authorization consists of the storage type (PowerFlex, PowerMax, PowerScale), the system ID, the API endpoint, and the credentials. For example, to create PowerFlex storage: +A `storage` entity in Container Storage Modules Authorization consists of the storage type (PowerFlex, PowerMax, PowerScale), the system ID, the API endpoint, and the credentials. For example, to create PowerFlex storage: #### RPM Deployment ```bash diff --git a/content/v3/authorization/v1.x GA/design.md b/content/v1/concepts/authorization/v1.x/design.md similarity index 75% rename from content/v3/authorization/v1.x GA/design.md rename to content/v1/concepts/authorization/v1.x/design.md index 2e763582b0..452aaf63cd 100644 --- a/content/v3/authorization/v1.x GA/design.md +++ b/content/v1/concepts/authorization/v1.x/design.md @@ -3,13 +3,13 @@ title: Design linktitle: Design weight: 1 description: > - Dell Technologies (Dell) Container Storage Modules (CSM) for Authorization design + Container Storage Modules (CSM) for Authorization design --- -Container Storage Modules (CSM) for Authorization is designed as a service mesh solution and consists of many internal components that work together in concert to achieve its overall functionality. +Container Storage Modules for Authorization is designed as a service mesh solution and consists of many internal components that work together in concert to achieve its overall functionality. This document provides an overview of the major components, including how they fit together and pointers to implementation details. -If you are a developer who is new to CSM for Authorization and want to build a mental map of how it works, you're in the right place. +If you are a developer who is new to Authorization and want to build a mental map of how it works, you're in the right place. ## Terminology @@ -23,7 +23,7 @@ If you are a developer who is new to CSM for Authorization and want to build a m ## Bird's Eye View -``` +```terminal +-----------------------------------+ | Kubernetes | | | @@ -56,7 +56,7 @@ The mechanism for managing this storage would utilize a CSI Driver. ### CSI Driver A CSI Driver supports the Container Service Interface (CSI) specification. Dell provides customers with CSI Drivers for its various storage arrays. -CSM for Authorization intends to support a majority, if not all, of these drivers. +Authorization intends to support a majority, if not all, of these drivers. A CSI Driver will typically be configured to communicate directly to its intended storage array and as such will be limited in using only the authentication methods supported by the Storage Array itself, e.g. Basic authentication over TLS. @@ -65,43 +65,43 @@ methods supported by the Storage Array itself, e.g. Basic authentication over TL ### Sidecar Proxy -The CSM for Authorization Sidecar Proxy is deployed as a sidecar in the CSI Driver's Pod. It acts as a proxy and forwards all requests to a -CSM Authorization Server. +The Container Storage Modules for Authorization Sidecar Proxy is deployed as a sidecar in the CSI Driver's Pod. It acts as a proxy and forwards all requests to a +Container Storage Modules Authorization Server. -The [CSI Driver section](#csi-driver) noted the limitation of a CSI Driver using Storage Array supported authentication methods only. By nature of being a proxy, the CSM for Authorization -Sidecar Proxy is able to override the Authorization HTTP header for outbound requests to use Bearer tokens. Such tokens are managed by CSM for Authorization as will +The [CSI Driver section](#csi-driver) noted the limitation of a CSI Driver using Storage Array supported authentication methods only. By nature of being a proxy, the Authorization +Sidecar Proxy is able to override the Authorization HTTP header for outbound requests to use Bearer tokens. Such tokens are managed by Authorization as will be described later in this document. -### CSM for Authorization Server +### Container Storage Modules for Authorization Server -The CSM for Authorization Server is, at its core, a Layer 7 proxy for intercepting traffic between a CSI Driver and a Storage Array. +The Authorization Server is, at its core, a Layer 7 proxy for intercepting traffic between a CSI Driver and a Storage Array. -Inbound requests are expected to originate from the CSM for Authorization Sidecar Proxy, for the following reasons: +Inbound requests are expected to originate from the Container Storage Modules for Authorization Sidecar Proxy, for the following reasons: -* Processing a set of agreed upon HTTP headers (added by the CSM for Authorization Sidecar Proxy) to assist in routing traffic to the intended Storage Array. +* Processing a set of agreed upon HTTP headers (added by the Authorization Sidecar Proxy) to assist in routing traffic to the intended Storage Array. * Inspection of CSM-specific Authorization Bearer tokens. -### CSM for Authorization CLI +### Container Storage Modules for Authorization CLI -The [*karavictl*](../cli) CLI (Command Line Interface) application allows Storage Admins to manage and interact with a running CSM for Authorization Server. +The [*karavictl*](../../../tooling/cli) CLI (Command Line Interface) application allows Storage Admins to manage and interact with a running Container Storage Modules for Authorization Server. ### Storage Array -A Storage Array is typically considered to be one of the various Dell storage offerings, e.g. Dell PowerFlex which is supported by CSM for Authorization +A Storage Array is typically considered to be one of the various Dell storage offerings, e.g. Dell PowerFlex which is supported by Container Storage Modules for Authorization today. Support for more Storage Arrays will come in the future. ## How it Works -CSM for Authorization intends to override the existing authorization methods between a CSI Driver and its Storage Array. This may be desirable for several reasons, if: +Authorization intends to override the existing authorization methods between a CSI Driver and its Storage Array. This may be desirable for several reasons, if: * The CSI Driver requires privileged login credentials (e.g. "root") in order to function. * The Storage Array does not natively support the concept of RBAC and/or multi-tenancy. -This section of of the document describes how CSM for Authorization provides a solution to these problems. +This section of of the document describes how Authorization provides a solution to these problems. ### Bearer Tokens -CSM for Authorization overrides any existing authorization mechanism between a CSI Driver and its corresponding Storage Array with the use of JSON Web Tokens (JWTs). The CSI Driver and Storage Array will not be aware of this taking place. +Authorization overrides any existing authorization mechanism between a CSI Driver and its corresponding Storage Array with the use of JSON Web Tokens (JWTs). The CSI Driver and Storage Array will not be aware of this taking place. In the context of [RFC-6749](https://tools.ietf.org/html/rfc6749#section-1.5) there are two such JWTs that are used: @@ -131,12 +131,12 @@ Both tokens are signed using a server-side secret preventing the risk of tamperi The refresh approach is beneficial for the following reasons: * Accidental exposure of an access token poses a lesser security concern, given the set expiration time is short (e.g. 30 seconds). -* The CSM for Authorization Server can fully trust the access token without having to perform a database check on each request (doing so would nullify the benefits of using tokens in the first place). -* The CSM for Authorization Server can defer Tenant checks at refresh time only, e.g. do not allow refresh if the Tenant's access has been revoked by a Storage Admin. There may be a short time window in between revocation and enforcement, depending on the access token's expiration time. +* Authorization Server can fully trust the access token without having to perform a database check on each request (doing so would nullify the benefits of using tokens in the first place). +* Authorization Server can defer Tenant checks at refresh time only, e.g. do not allow refresh if the Tenant's access has been revoked by a Storage Admin. There may be a short time window in between revocation and enforcement, depending on the access token's expiration time. The following diagram shows the access and refresh tokens in play and how a valid access token is required for a request to be proxied to the intended Storage Array. -``` +```terminal +---------+ +---------------+ | | | | | | | | +----------+ @@ -157,15 +157,15 @@ The following diagram shows the access and refresh tokens in play and how a vali * A) CSI Driver makes a request to the Storage Array: * request is intercepted by the Sidecar Proxy to add the access token. - * The CSM for Authorization Server deems the access token valid. - * The CSM for Authorization Server permits the request to be proxied to the intended Storage Array. + * The Authorization Server deems the access token valid. + * The Authorization Server permits the request to be proxied to the intended Storage Array. * B) Storage Array response is sent back as expected. * C) CSI Driver makes a request to the Storage Array: * request is intercepted by the Sidecar Proxy to add the access token. - * The CSM for Authorization Server deems the access token is invalid; it has since expired. -* D) The CSM for Authorization Server responds with HTTP 401 Unauthorized. + * The Authorization Server deems the access token is invalid; it has since expired. +* D) The Authorization Server responds with HTTP 401 Unauthorized. * E) Sidecar Proxy requests a new access token by passing both refresh token and expired token. -* F) The CSM for Authorization Server processes the request: +* F) The Authorization Server processes the request: * is the refresh token valid? * is the access token expired? * has the Tenant had access revoked? @@ -208,7 +208,7 @@ This role says _Allow Tenants with the Developer role access to the bronze pool ### Policy -CSM for Authorization leverages the [Open Policy Agent](https://www.openpolicyagent.org/) to use a policy-as-code approach to policy management. It stores a collection of policy files written in Rego language. Each policy file defines a set of policy rules that form the basis of a policy decision. A policy decision is made by processing the inputs provided. For CSM for Authorization, the inputs are: +Authorization leverages the [Open Policy Agent](https://www.openpolicyagent.org/) to use a policy-as-code approach to policy management. It stores a collection of policy files written in Rego language. Each policy file defines a set of policy rules that form the basis of a policy decision. A policy decision is made by processing the inputs provided. For Authorization, the inputs are: * The set of roles defined by the Storage Admin. * The claims section of a validated JWT. @@ -216,7 +216,7 @@ CSM for Authorization leverages the [Open Policy Agent](https://www.openpolicyag Given these inputs, many decisions can be made to answer questions like "Can Tenant X, with _these_ roles provision _this_ volume of size Y?". The result of the policy decision will determine whether or not the request is proxied. -``` +```terminal +----------------+ | Open Policy | | Agent | @@ -235,7 +235,7 @@ Given these inputs, many decisions can be made to answer questions like "Can Ten ### Quota & Volume Ownership -Policy decisions based on the current request and set of roles alone are not enough. CSM for Authorization must maintain a cache of volumes approved for creation and deletion in order to know if a Tenant has already consumed their quota on a given storage pool. +Policy decisions based on the current request and set of roles alone are not enough. Authorization must maintain a cache of volumes approved for creation and deletion in order to know if a Tenant has already consumed their quota on a given storage pool. A Redis database is used to store this volume data and their relationship with a Tenant, Storage Array and Pool. The use of composite keys provide fast, constant time look up of volumes, e.g. `quota:powerflex:542a2d5f5122210f:bronze:Tenant-1:data` is a Redis hash with volume data as its values. @@ -245,11 +245,11 @@ This section documents the pieces of code that are general in nature and shared ### Logging -CSM for Authorization uses the [Logrus](https://github.com/sirupsen/logrus) package when logging messages. +Authorization uses the [Logrus](https://github.com/sirupsen/logrus) package when logging messages. ## Observability -Both the CSM for Authorization Server and Sidecar Proxy are long-running processes, so it's important to understand what's going on inside. We use OpenTelemetry (otel) to help with that. +Both the Authorization Server and Sidecar Proxy are long-running processes, so it's important to understand what's going on inside. We use OpenTelemetry (otel) to help with that. The following otel exporters are used: diff --git a/content/v1/concepts/authorization/v2.x/_index.md b/content/v1/concepts/authorization/v2.x/_index.md new file mode 100644 index 0000000000..8782957fe8 --- /dev/null +++ b/content/v1/concepts/authorization/v2.x/_index.md @@ -0,0 +1,75 @@ +--- +title: Authorization - v2.x +linktitle: v2.x +weight: 4 +no_list: true +Description: > + Container Storage Modules (CSM) for Authorization v2.x. +tags: + - csm-authorization +--- + +The following diagram shows a high-level overview of Container Storage Modules for Authorization with a `tenant-app` that is using a CSI driver to perform storage operations through the CSM for Authorization `proxy-server` to access the a Dell storage system. All requests from the CSI driver will contain the token for the given tenant that was granted by the Storage Administrator. + +![Alt text](../../../../images/authorization/v2.x/image.png) + +This is the introduction to a Stateless Architecture for Authorization. The creation of storage, roles, and tenants is done through Custom Resources (CRs) which are tracked and contained within CSM Authorization. The underlying communication is consistent with the previous architecture which makes the creation of volumes and snapshots seamless. + +## Container Storage Modules for Authorization Capabilities +{{}} +| Feature | PowerScale | PowerFlex | PowerMax | +| ------------------------------------------------------------------------------------------------------------------------------ | ---------- | --------- | -------- | +|
Ability to set storage quota limits to ensure k8s tenants are not overconsuming storage | No | Yes | Yes | +|
Ability to create access control policies to ensure k8s tenant clusters are not accessing storage that does not belong to them | No | Yes | Yes | +|
Ability to shield storage credentials from Kubernetes administrators by storing them in vault | Yes | Yes | Yes | +|
Ability to create snapshots from owned volumes that consume the storage quota | Yes | Yes | Yes | +|
Ability to periodically query storage array to keep quota consumption in sync | No | Yes | Yes | +{{
}} + +### Snapshot Support + +As stated above, all snapshot requests that are associated with a volume that has been approved and created will go through a similar authorization processes ensuring that the snapshot fits within the allotted quota. + +```yaml +apiVersion: snapshot.storage.k8s.io/v1 +kind: VolumeSnapshot +metadata: + name: vol1-snapshot +spec: + volumeSnapshotClassName: vxflexos-snapclass + source: + persistentVolumeClaimName: vol1 +``` + +This will take a snapshot of the `persistent volume claim` named `vol1`. Container Storage Modules Authorization will verify ownership with Redis to ensure that the tenant who is attempting to create the snapshot owns the `vol1` volume. If the tenant does own the volume, authorization will proceed to check to see if the snapshot fits within the allotted quota and add a record if it does. + +### Backend Storage Polling + +A configurable polling mechanism has been introduced to ensure that the tenant and Redis are always in sync with the backend storage configured. This is determined by the [volumePrefix](configuration#configuring-tenants) specified for the `tenant`. During polling, for each of the tenants and roles, the storage service will ensure that nothing has been removed or added by the storage admin which would lead to Redis being out of sync. + +If a volume is created with the matching `volumePrefix`, the new entry will be added to Redis and the available quota will be consumed accordingly. Similarly, if a snapshot is created from a volume that is owned by the tenant in the backend storage array, that will be added to Redis. + +Lastly, if there is any deletion on the backend storage array of a volume or snapshot that is owned by the tenant, that entry will be deleted from Redis and the available capacity will reflect accordingly. + +## Roles and Responsibilities + +The Stateless Container Storage Modules Authorization contains the following roles: +- Storage Administrators +- Kubernetes Tenant Administrators + +### Storage Administrators + +Storage Administrators perform the following: + +- Storage System Management (create, get, delete) +- Role Management (create, get, delete) +- Tenant Management (create, get, delete) +- Token Management (create, revoke) + +For more information on the configuration of the above, see the configuration of the [Proxy Server](../v2.x/configuration/#configuring-the-container-storage-module-for-authorization-proxy-server). + +### Tenant Administrators + +Tenants of Authorization can use the token provided by the Storage Administrators in their storage requests. + +For more information on how to use the token and configuration, see configuration for the [PowerFlex driver](../v2.x/configuration/powerflex), [PowerMax driver](../v2.x/configuration/powermax), or the [PowerScale driver](../v2.x/configuration/powerscale). \ No newline at end of file diff --git a/content/v3/authorization/v2.0 Tech Preview/configuration/proxy-server/_index.md b/content/v1/concepts/authorization/v2.x/configuration/_index.md similarity index 53% rename from content/v3/authorization/v2.0 Tech Preview/configuration/proxy-server/_index.md rename to content/v1/concepts/authorization/v2.x/configuration/_index.md index c407f3acc4..ec3c459bc3 100644 --- a/content/v3/authorization/v2.0 Tech Preview/configuration/proxy-server/_index.md +++ b/content/v1/concepts/authorization/v2.x/configuration/_index.md @@ -1,25 +1,33 @@ --- -title: Proxy Server -linktitle: Proxy Server -description: > - Configuring the CSM for Authorization Proxy Server +title: Configuration +linktitle: Configuration +weight: 2 +description: Configure Container Storage Modules Authorization Proxy Server +no_list: true --- +{{% pageinfo color="primary" %}} +{{< message text="1" >}} +{{% /pageinfo %}} +This section provides the details and instructions on how to configure Container Storage Modules Authorization. -## Configuring the CSM for Authorization Proxy Server +## Configuring the Container Storage Modules for Authorization Proxy Server Run `kubectl -n authorization get ingress` and `kubectl -n authorization get service` to see the Ingress rules for these services and the exposed port for accessing these services via the LoadBalancer. For example: ```bash kubectl -n authorization get ingress ``` -``` + +```terminal NAME CLASS HOSTS ADDRESS PORTS AGE proxy-server nginx csm-authorization.com 00, 000 86s -``` +``` + ```bash kubectl -n authorization get service -``` -``` +``` + +```terminal NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE authorization-cert-manager ClusterIP 00.000.000.000 000/TCP 28s authorization-cert-manager-webhook ClusterIP 00.000.000.000 000/TCP 27s @@ -47,10 +55,25 @@ Afterwards, the storage administrator can configure Authorization with the follo ### Configuring Storage -A `storage` entity in CSM Authorization consists of the storage type (PowerFlex), the system ID, the API endpoint, and the vault credentials path. For example, to create PowerFlex storage: +The storage types supported are `powerflex`, `powermax`, and `powerscale`. During the creation of a storage system and role, the storage type must be one of the supported types. + +A `storage` entity in Container Storage Modules Authorization consists of the storage type (`powerflex`, `powermax` or `powerscale`), the system ID, the API endpoint, and the vault credentials path. Edit these parameters in the manifest: + + | Parameter | Description | Required | Default | + | ------------------------- | ------------------------------------------------------------------------------------ | -------- | ------- | + | type | The type of the storage array. | Yes | - | + | endpoint | HTTPS REST API endpoint of the backend storage array. | Yes | - | + | systemID | System ID of the backend storage array. | Yes | - | + | vault.identifier | The identifier of the Vault to be used that was configured in the Authorization CR. | Yes | - | + | vault.kvEngine | The mount path of the KV secrets engine. | Yes | secret | + | vault.path | The location within the store that the credentials for the array are stored. | Yes | - | + | skipCertificateValidation | A boolean that enables/disables certificate validation of the backend storage array. | No | true | + | pollInterval | PollInterval is the polling frequency to test the storage connectivity. | No | 30s | + +For example, to create PowerFlex storage: ```yaml -apiVersion: csm-authorization.storage.dell.com/v1alpha1 +apiVersion: csm-authorization.storage.dell.com/v1 kind: Storage metadata: name: powerflex @@ -58,22 +81,33 @@ spec: type: powerflex endpoint: https://10.0.0.1 systemID: 1000000000000000 - credentialStore: vault - credentialPath: storage/powerflex + vault: + identifier: vault0 + kvEngine: secret + path: csm-authorization/powerflex/1000000000000000 skipCertificateValidation: true pollInterval: 30s ``` >__Note__: -> - The `credentialStore` is the way that credentials for the storage array are stored. -> - The `credentialPath` is the location within the store that the credentials for the array are stored. +> - The `systemID` can vary from storage type to storage type. Please contact the storage administrator for more details on how to obtain it. ### Configuring Roles -A `role` consists of a name, the storage array to use, and the quota limit for the storage pool to be used. For example, to create a role named `role1` using the PowerFlex storage created above with a quota limit of 128GB in storage pool `myStoragePool`: +A `role` consists of a name, the storage array to use, and the quota limit for the storage pool to be used. Edit these parameters in the manifest: + + | Parameter | Description | Required | Default | + | ---------- | --------------------------------------------------------------- | -------- | ------- | + | name | The name of the role that will be used to bind with the tenant. | Yes | - | + | quota | The amount of allocated space for the specified role. | Yes | - | + | systemID | System ID of the backend storage array. | Yes | - | + | systemType | The type of the storage array. | Yes | - | + | pool | The storage pool name. | Yes | - | + +For example, to create a role named `role1` using the PowerFlex storage created above with a quota limit of 128iB in storage pool `myStoragePool`: ```yaml -apiVersion: csm-authorization.storage.dell.com/v1alpha1 +apiVersion: csm-authorization.storage.dell.com/v1 kind: CSMRole metadata: labels: @@ -84,22 +118,30 @@ metadata: app.kubernetes.io/created-by: csm-authorization name: role1 spec: - quota: 128GB + quota: 128GiB systemID: 1000000000000000 systemType: powerflex pool: myStoragePool ``` ->__Note__: -> - The `name` is the name of the role that will be used to bind with the tenant. -> - The `quota` is the amount of allocated space for the specified role. +>__Note__: +> - The `quota` must be set with iB (TiB/GiB etc). Example: 10 TiB or 512 GiB. If it is not, the quota enforcement will be inaccurate ### Configuring Tenants -A `tenant` is a Kubernetes cluster that a role will be bound to. For example, to create a tenant named `csmtenant-sample`: +A `tenant` is a Kubernetes cluster that a role will be bound to. Edit these parameters in the manifest: + + | Parameter | Description | Required | Default | + | ------------ | ------------------------------------------------------------------------------------------------------------------------------ | -------- | ------- | + | roles | A comma separate list of roles that the tenant can be associated with. | Yes | - | + | approveSdc | ApproveSdc is used to enable an SDC to access the MDM while the SDC is in restricted access mode. | Yes | false | + | revoke | Revoke is a boolean to indicate whether tenant is revoked. Set to `true` to revoke the tenant but keep it in Auth. | Yes | false | + | volumePrefix | The prefix that all volumes and snapshots will contain to show association with the tenant. It should not exceed 3 characters. | Yes | - | + +For example, to create a tenant named `csmtenant-sample`: ```yaml -apiVersion: csm-authorization.storage.dell.com/v1alpha1 +apiVersion: csm-authorization.storage.dell.com/v1 kind: CSMTenant metadata: labels: @@ -113,17 +155,10 @@ spec: roles: role1 approveSdc: false revoke: false - # This prefix is added for each new volume provisioned by the tenant. - # It should not exceed 3 characters. Example: tn1 volumePrefix: tn1 ``` ->__Note__: -> - The `roles` are a comma separate list of roles that the tenant can be associated with. -> - The `volumePrefix` is the prefix that all volumes and snapshots will contain to show association with the tenant. -> - By creating a tenant, it will automatically bind with the roles for usage. - ### Generate a Token Once the tenant is created, an access/refresh token pair can be created for the tenant. The storage admin is responsible for generating and sending the token to the Kubernetes tenant admin. @@ -160,7 +195,7 @@ type: Opaque This secret must be applied in the driver namespace. ->__Note__: +>__Note__: > - The `insecure` flag specifies to skip certificate validation when connecting to the Authorization proxy-server. > - The `addr` flag is the address of the Authorization proxy-server. > - The `tenant` flag specifies which tenant to generate the token for. diff --git a/content/v1/concepts/authorization/v2.x/configuration/powerflex/_index.md b/content/v1/concepts/authorization/v2.x/configuration/powerflex/_index.md new file mode 100644 index 0000000000..8c0714d6b7 --- /dev/null +++ b/content/v1/concepts/authorization/v2.x/configuration/powerflex/_index.md @@ -0,0 +1,179 @@ +--- +title: PowerFlex +linktitle: PowerFlex +description: > + Enabling Container Storage Modules Authorization for PowerFlex CSI Driver +--- +{{% pageinfo color="primary" %}} +{{< message text="1" >}} +{{% /pageinfo %}} +## Configuring PowerFlex CSI Driver with Container Storage Modules for Authorization + +Given a setup where Kubernetes, a storage system, and the Authorization Proxy Server are deployed, follow these steps to configure the CSI Drivers to work with the Authorization sidecar: + +1. Apply the secret containing the tenant token data into the driver namespace. It's assumed that the Kubernetes administrator has the token secret manifest, generated by your storage administrator via [Generate a Token](../#generate-a-token), saved in `/tmp/token.yaml`. + + ```bash + kubectl apply -f /tmp/token.yaml -n vxflexos + ``` + + This takes the assumption that Powerflex will be installed in the `vxflexos` namespace. + +2. Edit these parameters in `samples/secret/karavi-authorization-config.json` file in the [CSI PowerFlex](https://github.com/dell/csi-powerflex/tree/main/samples/secret/karavi-authorization-config.json) driver and update/add connection information for one or more backend storage arrays. In an instance where multiple CSI drivers are configured on the same Kubernetes cluster, the port range in the *endpoint* parameter must be different for each driver. + +{{< collapse id="1" title="Parameters">}} + | Parameter | Description | Required | Default | + | ------------------------- | ---------------------------------------------------------------------------------------------------------------- | -------- | ------------------------------ | + | username | Username for connecting to the backend storage array. This parameter is ignored. | No | - | + | password | Password for connecting to to the backend storage array. This parameter is ignored. | No | - | + | intendedEndpoint | HTTPS REST API endpoint of the backend storage array. | Yes | - | + | endpoint | HTTPS localhost endpoint that the authorization sidecar will listen on. | Yes | https://localhost:9400 | + | systemID | System ID of the backend storage array. | Yes | " " | + | skipCertificateValidation | A boolean that enables/disables certificate validation of the backend storage array. This parameter is not used. | No | true | + | isDefault | A boolean that indicates if the array is the default array. This parameter is not used. | No | default value from values.yaml | +{{< /collapse >}} +
    +
  • Create the karavi-authorization-config secret using this command: + + ```bash + kubectl -n vxflexos create secret generic karavi-authorization-config --from-file=config=samples/secret/karavi-authorization-config.json -o yaml --dry-run=client | kubectl apply -f - + ``` +
  • +
+ +3. Create the proxy-server-root-certificate secret. + + If running in *insecure* mode, create the secret with empty data: + + ```bash + kubectl -n vxflexos create secret generic proxy-server-root-certificate --from-literal=rootCertificate.pem= -o yaml --dry-run=client | kubectl apply -f - + ``` + + Otherwise, create the proxy-server-root-certificate secret with the appropriate file: + + ```bash + kubectl -n vxflexos create secret generic proxy-server-root-certificate --from-file=rootCertificate.pem=/path/to/rootCA -o yaml --dry-run=client | kubectl apply -f - + ``` + +4. Prepare the driver configuration secret, applicable to your driver installation method, to communicate with the Container Storage Modules Authorization sidecar. + + **Operator** + + Refer to the [Create Secret](../../../../../getting-started/installation/kubernetes/powerflex/csmoperator/#create-secret) section to prepare `secret.yaml` to configure the driver to communicate with the Authorization sidecar. + + - Update `endpoint` to match the localhost endpoint in `samples/secret/karavi-authorization-config.json`. + + - Update `skipCertificateValidation` to `true`. + + - The `username` and `password` can be any value since they will be ignored. + + Example: + + ```yaml + - username: "ignored" + password: "ignored" + systemID: "ID2" + endpoint: "https://localhost:9400" + skipCertificateValidation: true + isDefault: true + mdm: "10.0.0.3,10.0.0.4" + ``` + + **Helm** + + Refer to the [Install the Driver](../../../../../getting-started/installation/kubernetes/powerflex/helm/#install-driver) section to edit the parameters in `samples/config.yaml` to configure the driver to communicate with Authorization sidecar. + + - Update `endpoint` to match the localhost endpoint in `samples/secret/karavi-authorization-config.json`. + + - Update `skipCertificateValidation` to `true`. + + - The `username` and `password` can be any value since they will be ignored. + + Example: + + ```yaml + - username: "ignored" + password: "ignored" + systemID: "ID2" + endpoint: "https://localhost:9400" + skipCertificateValidation: true + isDefault: true + mdm: "10.0.0.3,10.0.0.4" + ``` + +5. Enable Container Storage Modules Authorization in the driver installation applicable to your installation method. + Alternatively, you can use the minimal sample files provided [here](https://github.com/dell/csm-operator/tree/main/samples/minimal-samples/powerflex_{{< version-v1 key="Min_sample_operator_pflex" >}}.yaml) and install the module using default value. + + **Operator** + + Refer to the [Install Driver](../../../../../getting-started/installation/kubernetes/powerflex/csmoperator/#install-driver) section to edit the parameters in the Custom Resource to enable Authorization. + + Under `modules`, enable the module named `authorization`: + + - Update the `enabled` field to `true.` + + - Update the `image` to the image of Authorization sidecar. In most cases, you can leave the default value. + + - Update the `PROXY_HOST` environment value to the hostname of Authorization Proxy Server. `csm-authorization.com` is a placeholder for the proxyHost. See the administrator of Authorization for the correct value. + + - Update the `SKIP_CERTIFICATE_VALIDATION` environment value to `true` or `false` depending on if you want to disable or enable certificate validation of Authorization Proxy Server. + + - Do not update the `configVersion`. You will notice in the example that it is set to v1.14.0. This ensures that Operator checks on version support do not prevent deployment of the v2.2.0 version of authorization. + + Example: + + ```yaml + modules: + # Authorization: enable csm-authorization for RBAC + - name: authorization + # enable: Enable/Disable csm-authorization + enabled: true + configVersion: {{< version-v1 key="Authv1_ConfigVersion" >}} + components: + - name: karavi-authorization-proxy + image: quay.io/dell/container-storage-modules/csm-authorization-sidecar:{{< version-v1 key="Authv2_csm_authorization_sidecar" >}} + envs: + # proxyHost: hostname of the csm-authorization server + - name: "PROXY_HOST" + value: "csm-authorization.com" + + # skipCertificateValidation: Enable/Disable certificate validation of the csm-authorization server + - name: "SKIP_CERTIFICATE_VALIDATION" + value: "true" + ``` + + **Helm** + + Refer to the [Install the Driver](../../../../../getting-started/installation/kubernetes/powerflex/helm/#install-driver) section to edit the parameters in `myvalues.yaml` to enable Authorization. + + - Update `authorization.enabled` to `true`. + + - Update `images.authorization` to the image of Authorization sidecar. In most cases, you can leave the default value. + + - Update `authorization.proxyHost` to the hostname of Authorization Proxy Server. `csm-authorization.com` is a placeholder for the proxyHost. See the administrator of Authorization for the correct value. + + - Update `authorization.skipCertificateValidation` to `true` or `false` depending on if you want to disable or enable certificate validation of Authorization Proxy Server. + + Example: + + ```yaml + authorization: + enabled: true + + # sidecarProxyImage: the container image used for the csm-authorization-sidecar. + # Default value: quay.io/dell/container-storage-modules/csm-authorization-sidecar:v2.2.0 + sidecarProxyImage: quay.io/dell/container-storage-modules/csm-authorization-sidecar:{{< version-v1 key="Authv2_csm_authorization_sidecar" >}} + + # proxyHost: hostname of the csm-authorization server + # Default value: None + proxyHost: csm-authorization.com + + # skipCertificateValidation: certificate validation of the csm-authorization server + # Allowed Values: + # "true" - TLS certificate verification will be skipped + # "false" - TLS certificate will be verified + # Default value: "true" + skipCertificateValidation: true + ``` + +1. Install the CSI PowerFlex driver following the appropriate documentation for your installation method. diff --git a/content/v1/concepts/authorization/v2.x/configuration/powermax/_index.md b/content/v1/concepts/authorization/v2.x/configuration/powermax/_index.md new file mode 100644 index 0000000000..48f3c5603d --- /dev/null +++ b/content/v1/concepts/authorization/v2.x/configuration/powermax/_index.md @@ -0,0 +1,245 @@ +--- +title: PowerMax +linktitle: PowerMax +description: > + Enabling Container Storage Modules Authorization for PowerMax CSI Driver +--- +{{% pageinfo color="primary" %}} +{{< message text="1" >}} +{{% /pageinfo %}} + +## Configuring PowerMax CSI Driver with Container Storage Modules for Authorization + +Given a setup where Kubernetes, a storage system, and the Container Storage Modules for Authorization Proxy Server are deployed, follow these steps to configure the CSI Drivers to work with the Authorization sidecar: + +1. Apply the secret containing the tenant token data into the driver namespace. It's assumed that the Kubernetes administrator has the token secret manifest, generated by your storage administrator via [Generate a Token](../#generate-a-token), saved in `/tmp/token.yaml`. + + ```bash + kubectl apply -f /tmp/token.yaml -n powermax + ``` + + This takes the assumption that PowerMax will be installed in the `powermax` namespace. + +2. Edit these parameters in `samples/secret/karavi-authorization-config.json` file in the [CSI PowerMax](https://github.com/dell/csi-powermax/tree/main/samples/secret/karavi-authorization-config.json) driver and update/add connection information for one or more backend storage arrays. In an instance where multiple CSI drivers are configured on the same Kubernetes cluster, the port range in the *endpoint* parameter must be different for each driver. + + | Parameter | Description | Required | Default | + | --------- | ----------- | -------- |-------- | + | username | Username for connecting to the backend storage array. This parameter is ignored. | No | - | + | password | Password for connecting to to the backend storage array. This parameter is ignored. | No | - | + | intendedEndpoint | HTTPS REST API endpoint of the backend storage array. | Yes | - | + | endpoint | HTTPS localhost endpoint that the authorization sidecar will listen on. | Yes | https://localhost:9400 | + | systemID | System ID of the backend storage array. | Yes | " " | + | skipCertificateValidation | A boolean that enables/disables certificate validation of the backend storage array. This parameter is not used. | No | true | + | isDefault | A boolean that indicates if the array is the default array. This parameter is not used. | No | default value from values.yaml | + + Create the karavi-authorization-config secret using this command: + + ```bash + kubectl -n powermax create secret generic karavi-authorization-config --from-file=config=samples/secret/karavi-authorization-config.json -o yaml --dry-run=client | kubectl apply -f - + ``` + +3. Create the proxy-server-root-certificate secret. + + If running in *insecure* mode, create the secret with empty data: + + ```bash + kubectl -n powermax create secret generic proxy-server-root-certificate --from-literal=rootCertificate.pem= -o yaml --dry-run=client | kubectl apply -f - + ``` + + Otherwise, create the proxy-server-root-certificate secret with the appropriate file: + + ```bash + kubectl -n powermax create secret generic proxy-server-root-certificate --from-file=rootCertificate.pem=/path/to/rootCA -o yaml --dry-run=client | kubectl apply -f - + ``` + +4. Prepare the driver configuration secret, applicable to your driver installation method, to communicate with Authorization sidecar. + + **Operator** + + Refer to the [Install Driver](../../../../../getting-started/installation/kubernetes/powermax/csmoperator/#install-driver) section to prepare `powermax-creds.yaml` to configure the driver to communicate with Authorization sidecar. + + Update endpoint to match the localhost endpoint in `samples/secret/karavi-authorization-config.json`. Leave `username` and `password` with the default values base64 encoded. + + **Note:** Authorization does not currently support the `backupEndpoint` parameter. + + Example: + ```yaml + storageArrays: + - storageArrayId: "000000000001" + primaryEndpoint: https://localhost:9400 + managementServers: + - endpoint: https://localhost:9400 + username: - + password: - + skipCertificateValidation: true + limits: + maxActiveRead: 10 + maxActiveWrite: 10 + maxOutstandingRead: 10 + maxOutstandingWrite: 10 + ``` + + **Helm** + + Refer to the [Install the Driver](../../../../../getting-started/installation/kubernetes/powermax/helm/#install-driver) section where you edit `samples/secret/secret.yaml` with the credentials of the PowerMax. + + Update endpoint to match the localhost endpoint in `samples/secret/karavi-authorization-config.json`. Leave `username` and `password` with the default values base64 encoded. + + **Note:** Authorization does not currently support the `backupEndpoint` parameter. + + Example: + ```yaml + storageArrays: + - storageArrayId: "000000000001" + primaryEndpoint: https://localhost:9400 + managementServers: + - endpoint: https://localhost:9400 + username: - + password: - + skipCertificateValidation: true + limits: + maxActiveRead: 10 + maxActiveWrite: 10 + maxOutstandingRead: 10 + maxOutstandingWrite: 10 + ``` + +5. **Operator Only**: Prepare the reverse proxy configMap using sample [here](https://github.com/dell/csm-operator/blob/main/samples/csireverseproxy/config.yaml). Fill in the appropriate values for driver configuration. + Example: config.yaml + ```yaml + port: 2222 + logLevel: debug + logFormat: text + config: + storageArrays: + - storageArrayId: "000000000001" # arrayID + primaryURL: "https://localhost:9400" # primary unisphere for arrayID + proxyCredentialSecrets: + - powermax-creds # credential secret for primary unisphere, e.g., powermax-creds + managementServers: + - url: "https://localhost:9400" # primary unisphere endpoint + arrayCredentialSecret: powermax-creds # credential secret, e.g., powermax-creds + skipCertificateValidation: true + ``` + +6. Enable Container Storage Modules Authorization in the driver installation applicable to your installation method. + Alternatively, you can use the minimal sample files provided + [here](https://github.com/dell/csm-operator/tree/main/samples/minimal-samples/powermax_{{< version-v1 key="Min_sample_operator_pmax" >}}.yaml) and install the module using default values + + **Operator** + + Refer to the [Install Driver](../../../../../getting-started/installation/kubernetes/powermax/csmoperator/#install-driver) section to edit the parameters in the Custom Resource to enable Authorization. + + Under `modules`, enable the module named `authorization`: + + - Update the `enabled` field to `true.` + + - Update the `image` to the image of Authorization sidecar. In most cases, you can leave the default value. + + - Update the `PROXY_HOST` environment value to the hostname of Authorization Proxy Server. `csm-authorization.com` is a placeholder for the proxyHost. See the administrator of Authorization for the correct value. + + - Update the `SKIP_CERTIFICATE_VALIDATION` environment value to `true` or `false` depending on if you want to disable or enable certificate validation of Authorization Proxy Server. + + - Do not update the `configVersion`. You will notice in the example that it is set to v1.14.0. This ensures that Operator checks on version support do not prevent deployment of the v2.2.0. + + Example: + + ```yaml + modules: + # CSI Powermax Reverseproxy is a mandatory module for Powermax + - name: csireverseproxy + # enabled: Always set to true + enabled: true + forceRemoveModule: true + configVersion: {{< version-v1 key="Authv1_ConfigVersion" >}} + components: + - name: csipowermax-reverseproxy + # image: Define the container images used for the reverse proxy + # Default value: None + image: quay.io/dell/container-storage-modules/csipowermax-reverseproxy:{{< version-v1 key="Authv1_PMax_ReverseProxy_ConfigVersion" >}} + envs: + # "tlsSecret" defines the TLS secret that is created with certificate + # and its associated key + # Default value: None + # Example: "tls-secret" + - name: X_CSI_REVPROXY_TLS_SECRET + value: "csirevproxy-tls-secret" + - name: X_CSI_REVPROXY_PORT + value: "2222" + - name: X_CSI_CONFIG_MAP_NAME + value: "powermax-reverseproxy-config" + # deployAsSidecar defines the way reverseproxy is installed with the driver + # set it true, if csm-auth is enabled / you want it as a sidecar container + # set it false, if you want it as a deployment + - name: "DeployAsSidecar" + value: "true" + + # Authorization: enable csm-authorization for RBAC + - name: authorization + # enable: Enable/Disable csm-authorization + enabled: true + configVersion: {{< version-v1 key="Authv1_ConfigVersion" >}} + components: + - name: karavi-authorization-proxy + image: quay.io/dell/container-storage-modules/csm-authorization-sidecar:{{< version-v1 key="Authv2_csm_authorization_sidecar" >}} + envs: + # proxyHost: hostname of the csm-authorization server + - name: "PROXY_HOST" + value: "csm-authorization.com" + + # skipCertificateValidation: Enable/Disable certificate validation of the csm-authorization server + - name: "SKIP_CERTIFICATE_VALIDATION" + value: "true" + ``` + + **Helm** + + Refer to the [Install the Driver](../../../../../getting-started/installation/kubernetes/powermax/helm/#install-driver) section to edit the parameters in `my-powermax-settings.yaml` file to configure the driver to communicate with Authorization sidecar. + + - Update `global.storageArrays.endpoint` to match the localhost endpoint in `samples/secret/karavi-authorization-config.json`. + + - Update `global.managementServers.endpoint` to match the localhost endpoint in `samples/secret/karavi-authorization-config.json`. + + - Update `authorization.enabled` to `true`. + + - Update `images.authorization` to the image of Authorization sidecar. In most cases, you can leave the default value. + + - Update `authorization.proxyHost` to the hostname of Authorization Proxy Server. `csm-authorization.com` is a placeholder for the proxyHost. See the administrator of Authorization for the correct value. + + - Update `authorization.skipCertificateValidation` to `true` or `false` depending on if you want to disable or enable certificate validation of Authorization Proxy Server. + + - Update `csireverseproxy.deployAsSidecar` to `true`. + + Example: + + ```yaml + global: + storageArrays: + - storageArrayId: "123456789" + endpoint: https://localhost:9400 + managementServers: + - endpoint: https://localhost:9400 + csireverseproxy: + # Set enabled to true if you want to deploy csireverseproxy as sidecar + # Allowed values: + # "true" - CSI reverse proxy will be deployed as a sidecar + # "false" - CSI reverse proxy will be deployed along with driver + # Default value: "true" + deployAsSidecar: true + authorization: + enabled: true + # sidecarProxyImage: the container image used for the csm-authorization-sidecar. + # Default value: quay.io/dell/container-storage-modules/csm-authorization-sidecar:v2.2.0 + sidecarProxyImage: quay.io/dell/container-storage-modules/csm-authorization-sidecar:{{< version-v1 key="Authv2_csm_authorization_sidecar" >}} + # proxyHost: hostname of the csm-authorization server + # Default value: None + proxyHost: csm-authorization.com + # skipCertificateValidation: certificate validation of the csm-authorization server + # Allowed Values: + # "true" - TLS certificate verification will be skipped + # "false" - TLS certificate will be verified + # Default value: "true" + skipCertificateValidation: true + ``` + +7. Install the Dell CSI PowerMax driver following the appropriate documentation for your installation method. diff --git a/content/v1/concepts/authorization/v2.x/configuration/powerscale/_index.md b/content/v1/concepts/authorization/v2.x/configuration/powerscale/_index.md new file mode 100644 index 0000000000..4c5524e1c6 --- /dev/null +++ b/content/v1/concepts/authorization/v2.x/configuration/powerscale/_index.md @@ -0,0 +1,180 @@ +--- +title: PowerScale +linktitle: PowerScale +description: > + Enabling Container Storage Modules Authorization for PowerScale CSI Driver +--- +{{% pageinfo color="primary" %}} +{{< message text="1" >}} +{{% /pageinfo %}} + +## Configuring PowerScale CSI Driver with Container Storage Modules for Authorization + +Given a setup where Kubernetes, a storage system, and the Container Storage Modules for Authorization Proxy Server are deployed, follow these steps to configure the CSI Drivers to work with the Authorization sidecar: + +1. Apply the secret containing the token data into the driver namespace. It's assumed that the Kubernetes administrator has the token secret manifest, generated by your storage administrator via [Generate a Token](../#generate-a-token), saved in `/tmp/token.yaml`. + + ```console + kubectl apply -f /tmp/token.yaml -n isilon + ``` + + This takes the assumption that PowerScale will be installed in the `isilon` namespace. + +2. Edit these parameters in `samples/secret/karavi-authorization-config.json` file in [CSI PowerScale](https://github.com/dell/csi-powerscale/tree/main/samples/secret/karavi-authorization-config.json) driver and update/add connection information for one or more backend storage arrays. In an instance where multiple CSI drivers are configured on the same Kubernetes cluster, the port range in the *endpoint* parameter must be different for each driver. + + | Parameter | Description | Required | Default | + | ------------------------- | ---------------------------------------------------------------------------------------------------------------- | -------- | ------------------------------ | + | username | Username for connecting to the backend storage array. This parameter is ignored. | No | - | + | password | Password for connecting to to the backend storage array. This parameter is ignored. | No | - | + | intendedEndpoint | HTTPS REST API endpoint of the backend storage array. | Yes | - | + | endpoint | HTTPS localhost endpoint that the authorization sidecar will listen on. | Yes | https://localhost:9400 | + | systemID | Cluster name of the backend storage array. | Yes | " " | + | skipCertificateValidation | A boolean that enables/disables certificate validation of the backend storage array. This parameter is not used. | No | true | + | isDefault | A boolean that indicates if the array is the default array. This parameter is not used. | No | default value from values.yaml | + + Create the karavi-authorization-config secret using this command: + + ```bash + kubectl -n isilon create secret generic karavi-authorization-config --from-file=config=samples/secret/karavi-authorization-config.json -o yaml --dry-run=client | kubectl apply -f - + ``` + +3. Create the proxy-server-root-certificate secret. + + If running in *insecure* mode, create the secret with empty data: + + ```bash + kubectl -n isilon create secret generic proxy-server-root-certificate --from-literal=rootCertificate.pem= -o yaml --dry-run=client | kubectl apply -f - + ``` + + Otherwise, create the proxy-server-root-certificate secret with the appropriate file: + + ```bash + kubectl -n isilon create secret generic proxy-server-root-certificate --from-file=rootCertificate.pem=/path/to/rootCA -o yaml --dry-run=client | kubectl apply -f - + ``` + +4. Prepare the driver configuration secret, applicable to your driver installation method, to communicate with Authorization sidecar. + + **Operator** + + Refer to the [Prerequisite](../../../../../getting-started/installation/kubernetes/powerscale/csmoperator/#install-driver) section to prepare the `secret.yaml` file to configure the driver to communicate with the CSM Authorization sidecar. + + - Update `endpoint` to match the localhost endpoint in `samples/secret/karavi-authorization-config.json`. + + - Update `mountEndpoint` to the PowerScale OneFS API server. For example, 10.0.0.1. + + - Update `skipCertificateValidation` to `true`. + + - The `username` and `password` can be any value since they will be ignored. + + Example: + + ```yaml + isilonClusters: + - clusterName: "cluster1" + username: "ignored" + password: "ignored" + isDefault: true + endpoint: localhost + endpointPort: 9400 + mountEndpoint: 10.0.0.1 + skipCertificateValidation: true + ``` + + **Helm** + + Refer to the [Install the Driver](../../../../../getting-started/installation/kubernetes/powerscale/helm/#install-driver) section to edit the parameters to prepare the `samples/secret/secret.yaml` file to configure the driver to communicate with Authorization sidecar. + + - Update `endpoint` to match the localhost endpoint in `samples/secret/karavi-authorization-config.json`. + + - Update `mountEndpoint` to the PowerScale OneFS API server. For example, 10.0.0.1. + + - Update `skipCertificateValidation` to `true`. + + - The `username` and `password` can be any value since they will be ignored. + + Example: + + ```yaml + isilonClusters: + - clusterName: "cluster1" + username: "ignored" + password: "ignored" + isDefault: true + endpoint: localhost + endpointPort: 9400 + mountEndpoint: 10.0.0.1 + skipCertificateValidation: true + ``` + +5. Enable Container Storage Modules Authorization in the driver installation applicable to your installation method. + + **Operator** + + Refer to the [Install Driver](../../../../../getting-started/installation/kubernetes/powerscale/csmoperator/#install-driver) section to edit the parameters in the Custom Resource to enable Authorization. + + Under `modules`, enable the module named `authorization`: + + - Update the `enabled` field to `true.` + + - Update the `image` to the image of Authorization sidecar. In most cases, you can leave the default value. + + - Update the `PROXY_HOST` environment value to the hostname of Authorization Proxy Server. `csm-authorization.com` is a placeholder for the proxyHost. See the administrator of Authorization for the correct value. + + - Update the `SKIP_CERTIFICATE_VALIDATION` environment value to `true` or `false` depending on if you want to disable or enable certificate validation of Authorization Proxy Server. + + - Do not update the `configVersion`. You will notice in the example that it is set to v1.14.0. This ensures that Operator checks on version support do not prevent deployment of the v2.2.0 version of authorization. + + ```yaml + modules: + # Authorization: enable csm-authorization for RBAC + - name: authorization + # enable: Enable/Disable csm-authorization + enabled: true + configVersion: {{< version-v1 key="Authv1_ConfigVersion" >}} + components: + - name: karavi-authorization-proxy + image: quay.io/dell/container-storage-modules/csm-authorization-sidecar:{{< version-v1 key="Authv2_csm_authorization_sidecar" >}} + envs: + # proxyHost: hostname of the csm-authorization server + - name: "PROXY_HOST" + value: "csm-authorization.com" + + # skipCertificateValidation: Enable/Disable certificate validation of the csm-authorization server + - name: "SKIP_CERTIFICATE_VALIDATION" + value: "true" + ``` + + **Helm** + + Refer to the [Install the Driver](../../../../../getting-started/installation/kubernetes/powerscale/helm/#install-driver) section to edit the parameters in `my-isilon-settings.yaml` file to enable Authorization. + + - Update `authorization.enabled` to `true`. + + - Update `images.authorization` to the image of Authorization sidecar. In most cases, you can leave the default value. + + - Update `authorization.proxyHost` to the hostname of Authorization Proxy Server. `csm-authorization.com` is a placeholder for the proxyHost. See the administrator of Authorization for the correct value. + + - Update `authorization.skipCertificateValidation` to `true` or `false` depending on if you want to disable or enable certificate validation of Authorization Proxy Server. + + Example: + + ```yaml + authorization: + enabled: true + + # sidecarProxyImage: the container image used for the csm-authorization-sidecar. + sidecarProxyImage: quay.io/dell/container-storage-modules/csm-authorization-sidecar:{{< version-v1 key="Authv2_csm_authorization_sidecar" >}} + + # proxyHost: hostname of the csm-authorization server + # Default value: None + proxyHost: csm-authorization.com + + # skipCertificateValidation: certificate validation of the csm-authorization server + # Allowed Values: + # "true" - TLS certificate verification will be skipped + # "false" - TLS certificate will be verified + # Default value: "true" + skipCertificateValidation: true + ``` + +6. Install the Dell CSI PowerScale driver following the appropriate documentation for your installation method. diff --git a/content/v1/cosidriver/_index.md b/content/v1/concepts/cosidriver/_index.md similarity index 73% rename from content/v1/cosidriver/_index.md rename to content/v1/concepts/cosidriver/_index.md index c54c53fdb1..0114fb0938 100644 --- a/content/v1/cosidriver/_index.md +++ b/content/v1/concepts/cosidriver/_index.md @@ -2,6 +2,7 @@ title: "COSI Driver" linkTitle: "COSI Driver" description: About Dell Technologies (Dell) COSI Driver +no_list: true weight: 3 --- @@ -18,8 +19,8 @@ Dell COSI Driver is a multi-backend driver, meaning that it can connect to multi {{}} | | COSI | |------------|:----------:| -| Kubernetes | 1.27 | -| K3s | 1.27 | +|
Kubernetes | 1.27 | +|
K3s | 1.27 | {{
}} ### COSI Driver Capabilities @@ -27,10 +28,10 @@ Dell COSI Driver is a multi-backend driver, meaning that it can connect to multi {{}} | Features | ObjectScale | |------------------------|:-----------:| -| Bucket Creation | yes | -| Bucket Deletion | yes | -| Bucket Access Granting | yes | -| Bucket Access Revoking | yes | +|
Bucket Creation | Yes | +|
Bucket Deletion | Yes | +|
Bucket Access Granting | Yes | +|
Bucket Access Revoking | Yes | {{
}} ## Backend Storage Details @@ -38,9 +39,9 @@ Dell COSI Driver is a multi-backend driver, meaning that it can connect to multi {{}} | Protocol | ObjectScale | |------------|:-----------:| -| AWS S3 | yes | -| GCS | N/A | -| Azure Blob | N/A | +|
AWS S3 | Yes | +|
GCS | N/A | +|
Azure Blob | N/A | {{
}} ## Supported Storage Platforms @@ -48,7 +49,7 @@ Dell COSI Driver is a multi-backend driver, meaning that it can connect to multi {{}} | Storage Platform | Versions | |------------------|:--------:| -| ObjectScale | 1.2.x | +|
ObjectScale | 1.2.x | {{
}} > **NOTE:** Object Scale 1.2.x is planned for End of Standard Support on January 31st 2025. Please refer Dell Support documentation for more information. We plan to support COSI driver when a new version of ObjectScale is available. diff --git a/content/v1/cosidriver/features/_index.md b/content/v1/concepts/cosidriver/features/_index.md similarity index 96% rename from content/v1/cosidriver/features/_index.md rename to content/v1/concepts/cosidriver/features/_index.md index 4d1ae6b0af..2706cae3f9 100644 --- a/content/v1/cosidriver/features/_index.md +++ b/content/v1/concepts/cosidriver/features/_index.md @@ -2,7 +2,8 @@ title: "Features" linkTitle: "Features" weight: 4 -description: Description of COSI Driver features +description: Description of COSI Driver features +no_list: true --- ## ObjectScale diff --git a/content/v1/cosidriver/features/objectscale.md b/content/v1/concepts/cosidriver/features/objectscale.md similarity index 100% rename from content/v1/cosidriver/features/objectscale.md rename to content/v1/concepts/cosidriver/features/objectscale.md diff --git a/content/v1/concepts/cosidriver/installation/_index.md b/content/v1/concepts/cosidriver/installation/_index.md new file mode 100644 index 0000000000..82530ba36f --- /dev/null +++ b/content/v1/concepts/cosidriver/installation/_index.md @@ -0,0 +1,15 @@ +--- +title: "Installation" +linkTitle: "Installation" +weight: 1 +description: Process of installation +no_list: true +--- + +{{< cardcontainer >}} + + {{< customcard link="./configuration_file" title="Configuration File" >}} + + {{< customcard link="./helm" title="Using Helm" >}} + +{{< /cardcontainer >}} \ No newline at end of file diff --git a/content/v1/cosidriver/installation/configuration_file.md b/content/v1/concepts/cosidriver/installation/configuration_file.md similarity index 100% rename from content/v1/cosidriver/installation/configuration_file.md rename to content/v1/concepts/cosidriver/installation/configuration_file.md diff --git a/content/v1/cosidriver/installation/helm.md b/content/v1/concepts/cosidriver/installation/helm.md similarity index 100% rename from content/v1/cosidriver/installation/helm.md rename to content/v1/concepts/cosidriver/installation/helm.md diff --git a/content/v1/cosidriver/release/_index.md b/content/v1/concepts/cosidriver/release/_index.md similarity index 95% rename from content/v1/cosidriver/release/_index.md rename to content/v1/concepts/cosidriver/release/_index.md index 03121d192b..032674d0a3 100644 --- a/content/v1/cosidriver/release/_index.md +++ b/content/v1/concepts/cosidriver/release/_index.md @@ -3,6 +3,7 @@ title: "Release Notes" linkTitle: "Release Notes" weight: 6 description: Release Notes for COSI Driver +toc_hide: true --- ## Release Notes - COSI Driver v0.3.0 diff --git a/content/v1/cosidriver/troubleshooting/_index.md b/content/v1/concepts/cosidriver/troubleshooting/_index.md similarity index 94% rename from content/v1/cosidriver/troubleshooting/_index.md rename to content/v1/concepts/cosidriver/troubleshooting/_index.md index 04ce3c43dc..19c233e7a7 100644 --- a/content/v1/cosidriver/troubleshooting/_index.md +++ b/content/v1/concepts/cosidriver/troubleshooting/_index.md @@ -2,7 +2,8 @@ title: Troubleshooting linktitle: Troubleshooting description: Troubleshooting COSI Driver -weight: 5 +weight: 5 +toc_hide: true --- ## Troubleshooting COSI Driver with logs diff --git a/content/v1/cosidriver/uninstallation/_index.md b/content/v1/concepts/cosidriver/uninstallation/_index.md similarity index 100% rename from content/v1/cosidriver/uninstallation/_index.md rename to content/v1/concepts/cosidriver/uninstallation/_index.md diff --git a/content/v1/cosidriver/upgrade/_index.md b/content/v1/concepts/cosidriver/upgrade/_index.md similarity index 97% rename from content/v1/cosidriver/upgrade/_index.md rename to content/v1/concepts/cosidriver/upgrade/_index.md index cc02b5d538..ca1acf0514 100644 --- a/content/v1/cosidriver/upgrade/_index.md +++ b/content/v1/concepts/cosidriver/upgrade/_index.md @@ -2,7 +2,7 @@ title: Upgrade linktitle: Upgrade description: Upgrading COSI Driver -weight: 5 +weight: 2 --- ## Update Driver from v0.1.0 to v0.1.1 using Helm diff --git a/content/v1/concepts/csidriver/_index.md b/content/v1/concepts/csidriver/_index.md new file mode 100644 index 0000000000..7a2242dfd8 --- /dev/null +++ b/content/v1/concepts/csidriver/_index.md @@ -0,0 +1,56 @@ +--- +title: "CSI Drivers" +linkTitle: "CSI Drivers" +description: About Dell Technologies (Dell) CSI Drivers +no_list: true +weight: 3 +--- + +The CSI Drivers implement an interface between [CSI](https://kubernetes-csi.github.io/docs/) enabled Container Orchestrator (CO) and Storage Arrays. It is a plug-in that is installed into Kubernetes to provide persistent storage using the Dell storage system. + +![CSI Architecture](../../../images/csidriver/Architecture_Diagram.png) + +## Features and capabilities + +### CSI Driver Capabilities +{{}} +| Features | PowerStore | PowerScale | PowerFlex | PowerMax | Unity XT | +|--------------------------|:----------:|:----------:|:---------:|:--------:|:---------:| +|
CSI Driver version | 2.13.0 | 2.13.0 | 2.13.0 | 2.13.0 | 2.13.0 | +|
Static Provisioning | yes | yes | yes | yes | yes | +|
Dynamic Provisioning | yes | yes | yes | yes | yes | +|
Expand Persistent Volume | yes | yes | yes | yes | yes | +|
Volume Snapshot | yes | yes | yes | yes for LUN
no for NFS | yes | +|
Volume Clone | yes | yes | yes | yes for LUN
no for NFS | yes | +|
[Access Mode](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#access-modes) for [volumeMode: Filesystem](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#volume-mode)| RWO, RWOP

ROX, RWX **with NFS ONLY** | RWO, RWX, ROX, RWOP | RWO, ROX, RWOP

RWX **with NFS ONLY** | RWO, RWOP

ROX, RWX **with NFS ONLY** | RWO, ROX, RWOP

RWX **with NFS ONLY** | +|
Access Mode for `volumeMode: Block`| RWO, RWX, ROX, RWOP | Not Supported | RWX, ROX, RWOP | RWX, ROX, RWOP | RWO, RWX | +| [Raw Block Volume](https://kubernetes.io/docs/concepts/storage/volume-pvc-datasource/) | yes | no | yes | yes | yes | +| [CSI Ephemeral Volume](https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#csi-ephemeral-volumes) | yes | yes | yes | no | yes | +| [Generic Ephemeral Volume](https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes) | yes | yes | yes | yes | yes | +|
Topology | yes | yes | yes | yes | yes | +|
Multi-array | yes | yes | yes | yes | yes | +|
Volume Health Monitoring | yes | yes | yes | yes | yes | +|
Storage Capacity Tracking | yes | yes | yes | yes | yes | +|
Volume Limit | yes | yes | yes | yes | yes | +{{
}} + +### Storage Platform Details +{{}} +| Features | PowerStore | PowerScale | PowerFlex | PowerMax | Unity XT | +|---------------|:----------------:|:----------------:|:------------------:|:----------------:|:----------------:| +|
Fibre Channel | yes | N/A | N/A | yes | yes | +|
iSCSI | yes | N/A | N/A | yes | yes | +|
NVMeTCP | yes | N/A | N/A | yes | N/A | +|
NVMeFC | yes | N/A | N/A | N/A | N/A | +|
NFS | yes | yes | yes | yes - SDNAS only (not eNAS) | yes | +|
Other | N/A | N/A | ScaleIO protocol | N/A | N/A | +|
Supported FS | ext3 / ext4 / xfs / NFS | NFS | ext4 / xfs / NFS | ext4 / xfs / NFS | ext4 / xfs / NFS | +|
Thin / Thick provisioning | Thin | N/A | Thin | Thin | Thin/Thick | +|
Platform-specific configurable settings | iSCSI CHAP | Access Zone
NFS version (3 or 4);Configurable Export IPs | - | Service Level selection
iSCSI CHAP | Host IO Limit
Tiering Policy
NFS Host IO size
Snapshot Retention duration | +|
Auto RDM(vSphere) | N/A | N/A | N/A | Yes(over FC) | N/A | +|
Internet Protocol| IPv4 | IPv4 | IPv4 | IPv4 | IPv4 | +{{
}} + +> **Note:** Please note Dual-Stack or IPv6 is not supported. + +
diff --git a/content/v1/concepts/csidriver/features/_index.md b/content/v1/concepts/csidriver/features/_index.md new file mode 100644 index 0000000000..eb48fcf019 --- /dev/null +++ b/content/v1/concepts/csidriver/features/_index.md @@ -0,0 +1,26 @@ +--- +title: "Features" +linkTitle: "Features" +weight: 4 +tags: + - pod-deploy + - csi-driver +description: Description of CSI Driver features +no_list: true +--- + + + +{{< cardcontainer >}} + + {{< customcard link="./powerstore" imageNumber="3" title="PowerStore" >}} + + {{< customcard link="./powermax" imageNumber="3" title="PowerMax" >}} + + {{< customcard link="./powerflex" imageNumber="3" title="PowerFlex" >}} + + {{< customcard link="./powerscale" imageNumber="3" title="PowerScale" >}} + + {{< customcard link="./unity" imageNumber="3" title="Unity" >}} + +{{< /cardcontainer >}} diff --git a/content/v1/csidriver/features/powerflex.md b/content/v1/concepts/csidriver/features/powerflex.md similarity index 95% rename from content/v1/csidriver/features/powerflex.md rename to content/v1/concepts/csidriver/features/powerflex.md index a394dea1ba..f79a01e340 100644 --- a/content/v1/csidriver/features/powerflex.md +++ b/content/v1/concepts/csidriver/features/powerflex.md @@ -80,10 +80,6 @@ spec: storage: 8Gi ``` -## Create Consistent Snapshot of Group of Volumes - -This feature extends CSI specification to add the capability to create crash-consistent snapshots of a group of volumes. This feature is available as a technical preview. To use this feature, users have to deploy the csi-volumegroupsnapshotter side-car as part of the PowerFlex driver. Once the sidecar has been deployed, users can make snapshots by using yaml files, More information can be found here: [Volume Group Snapshotter](../../../snapshots/volume-group-snapshots/). - ## Volume Expansion Feature The CSI PowerFlex driver version 1.2 and later support expansion of Persistent Volumes. This expansion is done online, which is when PVC is attached to a node. @@ -289,7 +285,7 @@ allowedTopologies: For additional information, see the [Kubernetes Topology documentation](https://kubernetes-csi.github.io/docs/topology.html). -> *NOTE*: In the manifest file of the Dell CSM operator, topology can be enabled by specifying the system name or _systemid_ in the allowed topologies field. _Volumebindingmode_ is also set to _WaitForFirstConsumer_ by default. +> *NOTE*: In the manifest file of the Container Storage Modules operator, topology can be enabled by specifying the system name or _systemid_ in the allowed topologies field. _Volumebindingmode_ is also set to _WaitForFirstConsumer_ by default. ## Controller HA @@ -303,7 +299,7 @@ in your values file to the desired number of controller pods. By default, the dr > *NOTE:* If the controller count is greater than the number of available nodes, excess controller pods will be stuck in a pending state. -If you are using the Dell CSM Operator, the value to adjust is: +If you are using the Container Storage Modules Operator, the value to adjust is: ```yaml replicas: 1 @@ -388,7 +384,7 @@ controller: > *NOTE:* Tolerations/selectors work the same way for node pods. -For configuring Controller HA on the Dell CSM Operator, please refer to the [Dell CSM Operator documentation](../../../deployment/csmoperator/#custom-resource-specification). +For configuring Controller HA on the Container Storage Modules Operator, please refer to the [Container Storage Modules Operator documentation](../../../getting-started/installation/operator/#custom-resource-definitions). ## SDC Deployment @@ -400,7 +396,7 @@ The CSI PowerFlex driver version 1.3 and later support the automatic deployment Refer to https://hub.docker.com/r/dellemc/sdc for supported OS versions. - There is no automated uninstallation of the SDC kernel module. Follow PowerFlex SDC documentation to manually uninstall the SDC driver from the node. -From CSM 1.12.0, you can disable automatic SDC deployment. +From Container Storage Modules **1.12.0**, you can disable automatic SDC deployment. By default, SDC deployment is enabled. If you do not want to deploy `sdc` with PowerFlex, it can be disabled by setting the `sdc.enabled` field to `false`. @@ -471,7 +467,6 @@ Here we specify that we want the CSI driver to manage two arrays: one with an IP To use this config we need to create a Kubernetes secret from it. To do so, run the following command: ```bash - kubectl create secret generic vxflexos-config -n vxflexos --from-file=config=secret.yaml ``` @@ -573,8 +568,7 @@ When creating ephemeral volumes, it is important to specify the following within To use existing volumes from PowerFlex array as Persistent volumes in your Kubernetes environment, perform these steps: 1. Log into one of the MDMs of the PowerFlex cluster. 2. Execute these commands to retrieve the `systemID` and `volumeID`. - 1. ```bash - + 1. ```bash scli --mdm_ip --login --username --password ``` - **Output:** `Logged in. User role is SuperUser. System ID is ` @@ -750,7 +744,7 @@ Based on these two keys, there are certain scenarios on which the driver is goin * 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. +> ℹ️ **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 @@ -774,7 +768,7 @@ node: # Default value: false enabled: false ``` -> NOTE: Currently, the CSI-PowerFlex driver only supports GUID for the restricted SDC mode. +> ℹ️ **NOTE:** : Currently, the CSI-PowerFlex driver only supports GUID for the restricted SDC mode. If SDC approval is denied, then provisioning of the volume will not be attempted and an appropriate error message is reported in the logs/events so the user is informed. @@ -792,8 +786,8 @@ The user can also set the volume limit for all the nodes in the cluster by speci ## NFS volume support Starting with version 2.8, the CSI driver for PowerFlex will support NFS volumes for PowerFlex storage systems version 4.0.x. -> NOTE: -> Starting from CSM 1.11.0, the CSI-PowerFlex driver will automatically round up NFS volume sizes to a minimum of 3GB if a smaller size is requested. This change prevents backend errors and ensures compatibility. +> ℹ️ **NOTE:** : +> Starting from Container Storage Modules 1.11.0, the CSI-PowerFlex driver will automatically round up NFS volume sizes to a minimum of 3GB if a smaller size is requested. This change prevents backend errors and ensures compatibility. CSI driver will support following operations for NFS volumes: @@ -807,7 +801,7 @@ To enable the support of NFS volumes operations from CSI driver, there are a few * `nasName`: defines the NAS server name that should be used for NFS volumes. * `enableQuota`: when enabled will set quota limit for a newly provisioned NFS volume. -> NOTE: +> ℹ️ **NOTE:** : > * `nasName` > * nasName is a mandatory parameter and has to be provided in secret yaml, else it will be an error state and will be captured in driver logs. > * nasName can be given at storage class level as well. @@ -915,7 +909,7 @@ If enableQuota feature is set, user can also set other tree quota parameters suc * `softLimit`: soft limit set to quota. Specified as a percentage w.r.t. PVC size. * `gracePeriod`: grace period of quota, must be mentioned along with softLimit, in seconds. Soft Limit can be exceeded until the grace period. -> NOTE: +> ℹ️ **NOTE:** : > * `hardLimit` is set to same size as that of PVC size. > * When a volume with quota enabled is expanded then the hardLimit and softLimit are also recalculated by driver w.r.t. to the new PVC size. > * `sofLimit` cannot be set to unlimited value (0), otherwise it will become greater than hardLimit (PVC size). @@ -964,7 +958,7 @@ This means that we allow for NFS Export created by driver to be consumed by addr ## Configuring NFS independent of SDC -Starting from CSM 1.12.0, the CSI PowerFlex driver supports configuring NFS independent of SDC. This separation is helpful in scenarios where an SDC is not available in the cluster or additional network interfaces do not need to be deployed. +Starting from Container Storage Modules 1.12.0, the CSI PowerFlex driver supports configuring NFS independent of SDC. This separation is helpful in scenarios where an SDC is not available in the cluster or additional network interfaces do not need to be deployed. To disable SDC deployment, update the values file and provide the interface names mapping for each of the nodes that are being used. @@ -1002,7 +996,7 @@ If such a node is not available, the pods stay in Pending state. This means pods Without storage capacity tracking, pods get scheduled on a node satisfying the topology constraints. If the required capacity is not available, volume attachment to the pods fails, and pods remain in ContainerCreating state. Storage capacity tracking eliminates unnecessary scheduling of pods when there is insufficient capacity. -The attribute `storageCapacity.enabled` in `values.yaml` can be used to enable/disable the feature during driver installation using helm. This is by default set to true. To configure how often the driver checks for changed capacity set `storageCapacity.pollInterval` attribute. In case of driver installed via operator, this interval can be configured in the sample file provided [here](https://github.com/dell/csm-operator/blob/main/samples/) by editing the `--capacity-poll-interval` argument present in the provisioner sidecar. +The attribute `storageCapacity.enabled` in `values.yaml` can be used to enable/disable the feature during driver installation using helm. This is by default set to true. To configure how often the driver checks for changed capacity set `storageCapacity.pollInterval` attribute. In case of driver installed via operator, this interval can be configured in the sample file provided [here](https://github.com/dell/csm-operator/blob/main/samples/storage_csm_powerflex_{{< version-v1 key="sample_sc_pflex" >}}.yaml) by editing the `--capacity-poll-interval` argument present in the provisioner sidecar. ## Multiple Availability Zones PowerFlex CSI driver version 2.13.0 and above supports multiple Availability Zones for Block. NFS is not supported at this time. diff --git a/content/v1/csidriver/features/powermax.md b/content/v1/concepts/csidriver/features/powermax.md similarity index 71% rename from content/v1/csidriver/features/powermax.md rename to content/v1/concepts/csidriver/features/powermax.md index 46dd48103f..7c0b031f87 100644 --- a/content/v1/csidriver/features/powermax.md +++ b/content/v1/concepts/csidriver/features/powermax.md @@ -1,6 +1,6 @@ --- title: PowerMax -linktitle: PowerMax +linktitle: PowerMax weight: 1 Description: Code features for PowerMax Driver --- @@ -8,7 +8,7 @@ Description: Code features for PowerMax Driver ## Multi Unisphere Support Starting with v1.7, the CSI PowerMax driver can communicate with multiple Unisphere for PowerMax servers to manage multiple PowerMax arrays.For more details on how -to configure the driver and ReverseProxy, see the relevant section [here](../../../deployment/helm/drivers/installation/powermax#sample-values-file) +to configure the driver and ReverseProxy, see the relevant section [here](../../../../docs/getting-started/installation/kubernetes/powermax/helm#sample-values-file) ## Volume Snapshot Feature @@ -20,7 +20,7 @@ In order to use Volume Snapshots, ensure the following components have been depl - Volume Snapshot Controller - Volume Snapshot Class -To use this feature, enable it in `values.yaml` +To use this feature(helm), enable it in `values.yaml` ```yaml snapshot: @@ -132,7 +132,7 @@ When challenged, the host initiator transmits a CHAP credential and CHAP secret ## Custom Driver Name -Starting from version 1.3.0 of the driver, a custom name can be assigned to the driver at the time of installation. This enables installation of the CSI driver in a different namespace and installation of multiple CSI drivers for Dell PowerMax in the same Kubernetes/OpenShift cluster. +Starting from version 1.3.0 of the driver, a custom name can be assigned to the driver at the time of installation. This enables installation of the CSI driver in a different namespace and installation of multiple CSI drivers for PowerMax in the same Kubernetes/OpenShift cluster. To use this feature, set the following values under `customDriverName` in `my-powermax-settings.yaml`. @@ -151,7 +151,7 @@ For example, if the driver name is set to _driver_ and it is installed in the na ### Install multiple drivers -To install multiple CSI Drivers for Dell PowerMax in a single Kubernetes cluster, you can take advantage of the custom driver name feature. There are a few important restrictions that should be strictly adhered to: +To install multiple CSI Drivers for PowerMax in a single Kubernetes cluster, you can take advantage of the custom driver name feature. There are a few important restrictions that should be strictly adhered to: - Only one driver can be installed in a single namespace - Different drivers should not connect to a single Unisphere server @@ -221,7 +221,7 @@ spec: ## Raw block support -Starting in v1.4, the CSI PowerMax driver supports raw block volumes. +Starting in Container Storage Modules 1.4, the CSI PowerMax driver supports raw block volumes. Raw Block volumes are created using the volumeDevices list in the Pod template spec with each entry accessing a volumeClaimTemplate specifying a volumeMode: Block. An example configuration is outlined here: @@ -305,9 +305,9 @@ In the `my-powermax-settings.yaml` file, the csireverseproxy section can be used The new Helm chart is configured as a sub chart for the CSI PowerMax helm chart. The install script automatically installs the CSI PowerMax Reverse Proxy and configures the CSI PowerMax driver to use this service. -### Using Dell CSM Operator +### Using Container Storage Modules Operator -For complete installation instructions for the CSI PowerMax driver and the CSI PowerMax Reverse Proxy, see the [Dell CSM Operator documentation](../../../deployment/csmoperator/drivers/powermax/) for PowerMax. +For complete installation instructions for the CSI PowerMax driver and the CSI PowerMax Reverse Proxy, see the [Container Storage Modules Operator documentation](../../../../getting-started/installation/kubernetes/powermax/csmoperator/) for PowerMax. ## User-friendly hostnames @@ -331,15 +331,15 @@ controllerCount: 2 ``` > *NOTE:* The default value for controllerCount is 2. We recommend not changing this unless it is really necessary. -> Also, if the controller count is greater than the number of available nodes (where the Pods can be scheduled), some controller Pods will remain in the Pending state +> Also, if the controller count is greater than the number of available nodes (where the Pods can be scheduled), some controller Pods will remain in the Pending state -If you are using the Dell CSM Operator, the value to adjust is: +If you are using the Container Storage Modules Operator, the value to adjust is: ```yaml -replicas: 2 +replicas: 2 ``` -For more details about configuring Controller HA using the Dell CSM Operator, see the [Dell CSM Operator documentation](../../../deployment/csmoperator/#custom-resource-specification). +For more details about configuring Controller HA using the Container Storage Modules Operator, see the [Container Storage Modules Operator documentation](../../../getting-started/installation/operator/#custom-resource-definitions). ## NodeSelectors and Tolerations @@ -347,7 +347,7 @@ Starting with version 1.5, the CSI PowerMax driver helm installer allows you to ### controller -If you want to apply `nodeSelectors` and `tolerations` for the controller Pods, edit the `controller` section in the `values` file. +If you want to apply `nodeSelectors` and `tolerations` for the controller Pods, edit the `controller` section in the `values` file. Here are some examples: * To schedule controller Pods to worker nodes only (Default): @@ -380,7 +380,7 @@ controller: ### node -If you want to apply `nodeSelectors` and `tolerations` for the node Pods, edit the `node` section in the `values` file. +If you want to apply `nodeSelectors` and `tolerations` for the node Pods, edit the `node` section in the `values` file. The `values` file already includes a set of default `tolerations` and you can add and remove tolerations to this list ```yaml @@ -441,7 +441,7 @@ parameters: SRP: "SRP_1" SYMID: "000000000001" ServiceLevel: #Insert Service Level Name -provisioner: csi-powermax.dellemc.com +provisioner: csi-powermax.dellemc.com reclaimPolicy: Delete volumeBindingMode: WaitForFirstConsumer allowVolumeExpansion: true @@ -469,12 +469,12 @@ To use the enhanced topology keys: 1. To use this feature, set node.topologyControl.enabled to true. 2. Edit the config file [topologyConfig.yaml](https://github.com/dell/csi-powermax/blob/main/samples/configmap/topologyConfig.yaml) in `csi-powermax/samples/configmap` folder and provide values for the following parameters. -| Parameter | Description | +| Parameter | Description | |-----------|--------------| -| allowedConnections | List of node, array and protocol info for user allowed configuration | +| allowedConnections | List of node, array and protocol info for user allowed configuration | | allowedConnections.nodeName | Name of the node on which user wants to apply given rules | | allowedConnections.rules | List of StorageArrayID:TransportProtocol pair | -| deniedConnections | List of node, array and protocol info for user denied configuration | +| deniedConnections | List of node, array and protocol info for user denied configuration | | deniedConnections.nodeName | Name of the node on which user wants to apply given rules | | deniedConnections.rules | List of StorageArrayID:TransportProtocol pair | @@ -523,10 +523,10 @@ deniedConnections: - "*:*" ``` -3. Use the below command to create ConfigMap with configmap name as `node-topology-config` in the namespace powermax, +3. Use the below command to create ConfigMap with configmap name as `node-topology-config` in the namespace powermax, ```bash - + kubectl create configmap node-topology-config --from-file=topologyConfig.yaml -n powermax ``` @@ -556,7 +556,7 @@ cd dell-csi-helm-installer ./csi-install.sh --namespace powermax --values ./my-powermax-settings.yaml --upgrade ``` -Note: my-powermax-settings.yaml is a values.yaml file which the user has used for driver installation. +Note: my-powermax-settings.yaml is a values.yaml file which the user has used for driver installation. ### Operator based installation @@ -566,11 +566,11 @@ To update the log level dynamically, the user has to edit the ConfigMap `powerma ```bash kubectl edit configmap -n powermax powermax-config-params -``` +``` ## Volume Health Monitoring -CSI Driver for Dell PowerMax 2.2.0 and above supports volume health monitoring. Alpha feature gate `CSIVolumeHealth` needs to be enabled for the node side monitoring to take effect. For more information, please refer to the [Kubernetes GitHub repository](https://github.com/kubernetes-csi/external-health-monitor/blob/master/README.md). To use this feature, set controller.healthMonitor.enabled and node.healthMonitor.enabled to true. To change the monitor interval, set controller.healthMonitor.interval parameter. +CSI Driver for PowerMax 2.2.0 and above supports volume health monitoring. Alpha feature gate `CSIVolumeHealth` needs to be enabled for the node side monitoring to take effect. For more information, please refer to the [Kubernetes GitHub repository](https://github.com/kubernetes-csi/external-health-monitor/blob/master/README.md). To use this feature, set controller.healthMonitor.enabled and node.healthMonitor.enabled to true. To change the monitor interval, set controller.healthMonitor.interval parameter. ## Single Pod Access Mode for PersistentVolumes- ReadWriteOncePod @@ -594,20 +594,20 @@ spec: When this feature is enabled, the existing `ReadWriteOnce(RWO)` access mode restricts volume access to a single node and allows multiple pods on the same node to read from and write to the same volume. To migrate existing PersistentVolumes to use `ReadWriteOncePod`, please follow the instruction from [here](https://kubernetes.io/docs/tasks/administer-cluster/change-pv-access-mode-readwriteoncepod/). - + ## Support for auto RDM for vSphere over FC - -CSI Driver for Dell PowerMax 2.5.0 and above supports auto RDM for vSphere over FC. + +CSI Driver for PowerMax 2.5.0 and above supports auto RDM for vSphere over FC. This feature supports volume provisioning on Kubernetes clusters running on vSphere (VMware hypervisor) via RDM mechanism. This feature enables the users to use PMAX CSI drivers with VMs on vSphere Hypervisor with the same feature and functionality as there with bare metal servers when they have only FC ports in PMAX storage. -It will be supported only on new/freshly installed clusters where the cluster is exclusively deployed in a virtualized vSphere environment. Having hybrid topologies like iSCSI, NVMeTCP or FC (in pass-through) is not supported. +It will be supported only on new/freshly installed clusters where the cluster is exclusively deployed in a virtualized vSphere environment. Having hybrid topologies like iSCSI, NVMeTCP or FC (in pass-through) is not supported. To use this feature - Set `vSphere.enabled` to true. -- Create a secret which contains vCenter privileges. Follow the steps [here](../../../deployment/helm/drivers/installation/powermax#auto-rdm-for-vsphere-over-fc-requirements) to create it. Update `vCenterCredSecret` with the secret name created. - +- Create a secret which contains vCenter privileges. Follow the steps [here](../../../../getting-started/installation/kubernetes/powermax/prerequisite#auto-rdm-for-vsphere-over-fc-requirements) to create it. Update `vCenterCredSecret` with the secret name created. + ```yaml VMware/vSphere virtualization support # set enable to true, if you to enable VMware virtualized environment support via RDM @@ -628,11 +628,11 @@ vSphere: # vCenterHost: URL/endpoint of the vCenter where all the ESX are present vCenterHost: "00.000.000.01" # vCenterCredSecret: secret name for the vCenter credentials - vCenterCredSecret: vcenter-creds + vCenterCredSecret: vcenter-creds ``` - + >Note: Replication is not supported with this feature. ->Limitations of RDM can be referred [here.](https://configmax.esp.vmware.com/home) +>Limitations of RDM can be referred [here.](https://configmax.esp.vmware.com/home) >Supported number of RDM Volumes per VM is 60 as per the limitations. >RDMs should not be added/removed manually from vCenter on any of the cluster VMs. @@ -644,7 +644,7 @@ This feature helps the scheduler to make more informed choices about where to st Without storage capacity tracking, pods get scheduled on a node satisfying the topology constraints. If the required capacity is not available, volume attachment to the pods fails, and pods remain in the ContainerCreating state. Storage capacity tracking eliminates unnecessary scheduling of pods when there is insufficient capacity. -Storage capacity can be tracked by setting the attribute `storageCapacity.enabled` to true in values.yaml (set to true by default) during driver installation. To configure how often driver checks for changed capacity, set the `storageCapacity.pollInterval` attribute (set to 5m by default). In case of driver installed via operator, this interval can be configured in the sample file provided [here.](https://github.com/dell/csm-operator/blob/main/samples) by editing the `--capacity-poll-interval` argument present in the provisioner sidecar. +Storage capacity can be tracked by setting the attribute `storageCapacity.enabled` to true in values.yaml (set to true by default) during driver installation. To configure how often driver checks for changed capacity, set the `storageCapacity.pollInterval` attribute (set to 5m by default). In case of driver installed via operator, this interval can be configured in the sample file provided [here.](https://github.com/dell/csm-operator/blob/main/samples/storage_csm_powermax_{{< version-v1 key="sample_sc_pmax" >}}.yaml) by editing the `--capacity-poll-interval` argument present in the provisioner sidecar. ## Metro support @@ -654,12 +654,12 @@ Please note that the Metro feature does not require the deployment of the replic ## Volume Limits -The CSI Driver for Dell PowerMax allows users to specify the maximum number of PowerMax volumes that can be created on a node. +The CSI Driver for PowerMax allows users to specify the maximum number of PowerMax volumes that can be created on a node. The user can set the volume limit for a node by creating a node label `max-powermax-volumes-per-node` and specifying the volume limit for that node.
`kubectl label node max-powermax-volumes-per-node=` -The user can also set the volume limit for all the nodes in the cluster by specifying the same to `maxPowerMaxVolumesPerNode` attribute in values.yaml. In case of driver installed via operator, this attribute can be modified in the sample file provided [here](https://github.com/dell/csm-operator/blob/main/samples) by editing the `X_CSI_MAX_VOLUMES_PER_NODE` parameter. +The user can also set the volume limit for all the nodes in the cluster by specifying the same to `maxPowerMaxVolumesPerNode` attribute in values.yaml. In case of driver installed via operator, this attribute can be modified in the sample file provided [here](https://github.com/dell/csm-operator/blob/main/samples/storage_csm_powermax_{{< version-v1 key="sample_sc_pmax" >}}.yaml) by editing the `X_CSI_MAX_VOLUMES_PER_NODE` parameter. This feature is also supported for limiting the volume provisioning on Kubernetes clusters running on vSphere (VMware hypervisor) via RDM mechanism. User can set `vSphere.enabled` to true and also set volume limits to positive values less than or equal 60 via labels or in Values.yaml file. @@ -670,11 +670,158 @@ This feature is also supported for limiting the volume provisioning on Kubernete The CSI Driver for Dell PowerMax supports NVMeTCP from v2.11.0. To enable NVMe/TCP provisioning, blockProtocol in settings file should be specified as NVMETCP. +>**NOTE:**
If `X_CSI_TRANSPORT_PROTOCOL` is not specified or set to `auto` in the powermax-array-config ConfigMap, the driver will detect the available initiators on the host and choose the protocol. Priority is given to NVMe/TCP, followed by FC, then iSCSI. + **Limitations** -These are the CSM modules not supported with NVMeTCP protocol: +These are the Container Storage Modules not supported with NVMeTCP protocol: -- CSM Authorization -- CSM Observability -- CSM Application Mobility +- Container Storage Modules Authorization +- Container Storage Modules Observability +- Container Storage Modules Application Mobility - Metro Replication + +## Mount Credentials Support + +From version 2.14.0, the CSI Driver for Dell PowerMax supports Mount Credentials, making the configMap obsolete. In earlier versions of the PowerMax Reverse Proxy, configuring it required creating a config map that referenced credentials stored in secrets. Now, a single mountable secret can be used to store both array information and credentials, simplifying the setup. +```yaml +storageArrays: + - storageArrayId: "000000000001" + primaryEndpoint: https://primary-1.unisphe.re:8443 + backupEndpoint: https://backup-1.unisphe.re:8443 +managementServers: + - endpoint: https://primary-1.unisphe.re:8443 + username: admin + password: password + skipCertificateValidation: true + limits: + maxActiveRead: 5 + maxActiveWrite: 4 + maxOutStandingRead: 50 + maxOutStandingWrite: 50 + - endpoint: https://backup-1.unisphe.re:8443 + username: admin2 + password: password2 + skipCertificateValidation: false + certSecret: primary-cert +``` + +This method works with both `helm` and `operator` installations for PowerMax, automatically mounting the secret for use by the PowerMax driver/node and the Reverse Proxy. + +**Note:** ConfigMaps to specify credentials is deprecated as of CSI PowerMax v2.14.0 and will be removed in a future release. However, for backwards compatibility, you can still configure and use the PowerMax driver with the config map. + +## Multiple Availability Zones + +Starting with CSM 1.14.0, the PowerMax CSI driver supports multiple availability zones (AZ) for block protocols. Availability Zones permit provisioning of volumes on storage arrays that are dedicated to a set of cluster nodes. Cluster nodes in an AZ will only access storage in the same AZ. Arrays in an AZ will not be used to provision storage to nodes which are not in the same AZ. This may be of benefit when stricter control of access to storage is needed or for disaster preparation use cases. Unlike the [topology support](#topology-support) mentioned earlier, multi AZ support restricts driver access to storage to only from arrays within the cluster node's AZ. No host registration nor storage connectivity setup is performed to arrays not in the node's AZ. + +Availability Zones support the use of a single StorageClass that is not associated with any specific PowerMax array or storage resource pool (SRP). Each cluster node must be labelled with topology labels that match the labels in the secret for the AZ local target array. This allows for using minimal storage classes which can more easily adapt to changes in the storage and cluster environment, thus reducing management activities. + +Restrictions: + +- Support is limited to block storage only, NFS is not supported. +- Only one PowerMax array per availability zone is supported. +- Every PowerMax array must be labelled with one or more zone labels. +- Every cluster worker node must be assigned to a zone. +- The volumeBindingMode must be set to WaitForFirstConsumer. +- The controller pods will still need access to the Unisphere API service across availability zones. + +> **Note:** Cluster nodes that are not in a zone will not be able to access arrays that are zoned. Conversely, arrays that are unzoned will only be accessible from nodes that are not zoned to an array. + +> **Note:** The initial support for Availability Zones does not include support for Metro Volumes. + +With this support, a single storage class can be used to provision volumes from a pool of PowerMax arrays based on topology information, where each AZ has its own PowerMax array. When the StorageClass's volumeBindingMode property is set to _WaitForFirstConsumer_ the volume creation and binding is done at the time the volume is mounted to the cluster. It is at this time that the physical volume is provisioned on the local array based on the AZ. + +The following represents an example of the secret showing two arrays in different availability zones: + +### Secret + +```yaml +storageArrays: + - storageArrayId: "000000000001" + primaryEndpoint: https://primary-1.unisphe.re:8443 + backupEndpoint: https://backup-1.unisphe.re:8443 + labels: + topology.kubernetes.io/region: region1 + topology.kubernetes.io/zone: zone1 + parameters: + SRP: srp_1 + ServiceLevel: Gold + - storageArrayId: "000000000002" + primaryEndpoint: https://primary-2.unisphe.re:8443 + backupEndpoint: https://backup-2.unisphe.re:8443 + labels: + topology.kubernetes.io/region: region1 + topology.kubernetes.io/zone: zone2 + parameters: + SRP: srp_2 +``` + +### Labelling Worker Nodes + +The worker nodes should have corresponding labels to match an availability zone. + +```bash +# Label each worker node in the cluster +kubectl label nodes worker-1 topology.kubernetes.io/region=region1 +kubectl label nodes worker-2 topology.kubernetes.io/region=region1 +... +kubectl label nodes worker-1 topology.kubernetes.io/zone=zone1 +kubectl label nodes worker-2 topology.kubernetes.io/zone=zone2 +``` + +### Storage Class + +When using multiple availability zones the StorageClass (AZ StorageClass) should not include the SYMID parameter. The following sample shows a minimal StorageClass definition: + +```yaml +apiVersion: storage.k8s.io/v1 +kind: StorageClass +metadata: + name: powermax-multi-az +provisioner: csi-powermax.dellemc.com +volumeBindingMode: WaitForFirstConsumer +reclaimPolicy: Delete +``` + +With the above configuration, nodes labelled with the matching region, _region1_ and zone _zone1_ will access volumes provisioned on PowerMax array 000000000001. Nodes labelled with region _region1_ and zone _zone2_ will access volumes provisioned on PowerMax array 000000000002. Different storage resource pools (SRP) will be used for each array based on the specifications in the secret. + +#### Optional Parameters + +In addition to the topology description, common array parameters can be defined in the secret to provide defaults when those parameters are not specified in the StorageClass. In the examples above the SRP and service level are defaults for array 000000000001 so are no longer needed in the StorageClass definition. If the SRP is specified in the StorageClass then the StorageClass parameters will override the parameters in the secret. + +The following parameters can be defined in the secret as defaults when not defined in the StorageClass. These parameters if specified in the StorageClass can override the values in the secret: + +{{}} +|Parameter|Required|Default|Description| +|:-|:-|:-|:-| +|SRP|true||Name of SRP on the PowerMax array that should be used for provisioning| +|ServiceLevel|false|Optimized|Name of Service Level on PowerMax array that should be used for provisioning| +|ApplicationPrefix|false|None|Name of application to be used to group volumes| +|HostLimitName|false|None|HostLimitName uniquely identifies given set of limits| +|HostIOLimitMBSec|false|None|The MBs per Second Host IO limit| +|HostIOLimitIOSec|false|None|The IOs per Second Host IO limit| +|DynamicDistribution|false|None|Distribution of the Host IO limits| +{{
}} + +#### Creating PVCs from a Snapshot or PVC with Multi-AZ + +When creating a PVC which uses a snapshot or another PVC as a source, the PVC will not be bound until a consuming pod is deployed to a node in the availability zone of the source volume. This is due to the `volumeBindingMode` property of the StorageClass being set to `WaitForFirstConsumer`. If a bound PVC is required before a pod is deployed then you can use another non AZ StorageClass for the new PVC which uses a `volumeBindingMode` of `Immediate`. The new StorageClass must specify the array ID and must match the array ID of the source PVC or VolumeSnapshot. + +When using storage classes without the array ID there is no guarantee that PVCs will be scheduled to be created on the same array as the source snapshot or PVC. This is due to Kubernetes scheduling pods on nodes which may be in an AZ that is different from the source AZ. To avoid volume creation failures one can use a different storage class for the new PVC which is on the same array as the source by specifying the array ID. Another option is to make use of node affinity directives to schedule the pod on nodes which are in the same AZ as the source pod. For example one can add the following affinity stanza to indicate that the pod must be deployed on an AZ based on the matchedExpressions: + +```yaml +spec: + affinity: + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + nodeSelectorTerms: + - matchExpressions: + - key: zone.topology.kubernetes.io/region + operator: In + values: + - region1 + - key: zone.topology.kubernetes.io/zone + operator: In + values: + - zone1 +``` diff --git a/content/v1/csidriver/features/powerscale.md b/content/v1/concepts/csidriver/features/powerscale.md similarity index 94% rename from content/v1/csidriver/features/powerscale.md rename to content/v1/concepts/csidriver/features/powerscale.md index 37cddb9c49..8189f7921b 100644 --- a/content/v1/csidriver/features/powerscale.md +++ b/content/v1/concepts/csidriver/features/powerscale.md @@ -301,14 +301,13 @@ controllerCount: 2 >**NOTE:** The default value for controllerCount is 2. It is recommended to not change this unless really required. Also, if the controller count is greater than the number of available nodes (where the pods can be scheduled), some controller pods will remain in a Pending state. -If you are using the Dell CSM Operator, the value to adjust is: +If you are using the Container Storage Modules Operator, the value to adjust is: ```yaml replicas: 2 ``` -For more details about configuring Controller HA using the Dell CSM Operator, see the [Dell CSM Operator documentation](../../../deployment/csmoperator/#custom-resource-specification). - +For more details about configuring Controller HA using the Container Storage Modules Operator, see the [Container Storage Modules Operator documentation](../../../getting-started/installation/operator/#custom-resource-definitions). ## CSI Ephemeral Inline Volume The CSI PowerScale driver version 1.4.0 and later supports CSI ephemeral inline volumes. @@ -437,7 +436,7 @@ For a cluster with multiple network interfaces and if a user wants to segregate ## Volume Limit -The CSI Driver for Dell PowerScale allows users to specify the maximum number of PowerScale volumes that can be used in a node. +The CSI Driver for PowerScale allows users to specify the maximum number of PowerScale volumes that can be used in a node. The user can set the volume limit for a node by creating a node label `max-isilon-volumes-per-node` and specifying the volume limit for that node.
`kubectl label node max-isilon-volumes-per-node=` @@ -455,7 +454,7 @@ If such a node is not available, the pods stay in Pending state. This means pods Without storage capacity tracking, pods get scheduled on a node satisfying the topology constraints. If the required capacity is not available, volume attachment to the pods fails, and pods remain in ContainerCreating state. Storage capacity tracking eliminates unnecessary scheduling of pods when there is insufficient capacity. -The attribute `storageCapacity.enabled` in `values.yaml` can be used to enable/disable the feature during driver installation using helm. This is by default set to true. To configure how often driver checks for changed capacity set `storageCapacity.pollInterval` attribute. In case of driver installed via operator, this interval can be configured in the sample file provided [here.](https://github.com/dell/csm-operator/blob/main/samples/) by editing the `--capacity-poll-interval` argument present in the provisioner sidecar. +The attribute `storageCapacity.enabled` in `values.yaml` can be used to enable/disable the feature during driver installation using helm. This is by default set to true. To configure how often driver checks for changed capacity set `storageCapacity.pollInterval` attribute. In case of driver installed via operator, this interval can be configured in the sample file provided [here.](https://github.com/dell/csm-operator/blob/main/samples/storage_csm_powerscale_{{< version-v1 key="sample_sc_pscale" >}}.yaml) by editing the `--capacity-poll-interval` argument present in the provisioner sidecar. ## Node selector in helm template @@ -615,7 +614,7 @@ kubectl edit configmap -n isilon isilon-config-params ## NAT Support -CSI Driver for Dell PowerScale is supported in the NAT environment. +CSI Driver for PowerScale is supported in the NAT environment. ## Configurable permissions for volume directory @@ -652,7 +651,7 @@ Other ways of configuring powerscale volume permissions remain the same as helm- ## PV/PVC Metrics -CSI Driver for Dell PowerScale 2.1.0 and above supports volume health monitoring. This allows Kubernetes to report on the condition, status and usage of the underlying volumes. +CSI Driver for PowerScale 2.1.0 and above supports volume health monitoring. This allows Kubernetes to report on the condition, status and usage of the underlying volumes. For example, if a volume were to be deleted from the array, or unmounted outside of Kubernetes, Kubernetes will now report these abnormal conditions as events. ### This feature can be enabled diff --git a/content/v1/csidriver/features/powerstore.md b/content/v1/concepts/csidriver/features/powerstore.md similarity index 90% rename from content/v1/csidriver/features/powerstore.md rename to content/v1/concepts/csidriver/features/powerstore.md index 9dee2e189a..6af5c86b19 100644 --- a/content/v1/csidriver/features/powerstore.md +++ b/content/v1/concepts/csidriver/features/powerstore.md @@ -192,7 +192,7 @@ parameters: csi.storage.k8s.io/fstype: xfs ``` -> Note: Volume expansion of Metro volume pairs requires that the Metro link be suspended prior to extending the volume. The Metro volume link can be restored after the volume has been resized. +> ℹ️ **NOTE:** : Volume expansion of Metro volume pairs requires that the Metro link be suspended prior to extending the volume. The Metro volume link can be restored after the volume has been resized. To resize a PVC, edit the existing PVC spec and set spec.resources.requests.storage to the intended size. For example, if you have a PVC pstore-pvc-demo of size 3Gi, then you can resize it to 30Gi by updating the PVC. @@ -435,7 +435,7 @@ The CSI Driver for Dell PowerStore allows users to specify the maximum number of The user can set the volume limit for a node by creating a node label `max-powerstore-volumes-per-node` and specifying the volume limit for that node.
`kubectl label node max-powerstore-volumes-per-node=` -The user can also set the volume limit for all the nodes in the cluster by specifying the same value for the `maxPowerstoreVolumesPerNode` attribute in values.yaml during Helm installation. In the case of driver installed via the operator, this attribute can be modified in the sample yaml file for PowerStore, which is located at https://github.com/dell/csm-operator/blob/main/samples/ by editing the `X_CSI_POWERSTORE_MAX_VOLUMES_PER_NODE` parameter. +The user can also set the volume limit for all the nodes in the cluster by specifying the same value for the `maxPowerstoreVolumesPerNode` attribute in values.yaml during Helm installation. In the case of driver installed via the operator, this attribute can be modified in the sample yaml file for PowerStore, which is located [here](https://github.com/dell/csm-operator/blob/main/samples/storage_csm_powerstore_{{< version-v1 key="sample_sc_pstore" >}}.yaml) by editing the `X_CSI_POWERSTORE_MAX_VOLUMES_PER_NODE` parameter. >**NOTE:**
The default value of `maxPowerstoreVolumesPerNode` is 0.
If `maxPowerstoreVolumesPerNode` is set to zero, then CO shall decide how many volumes of this type can be published by the controller to the node.

The volume limit specified in the `maxPowerstoreVolumesPerNode` attribute is applicable to all the nodes in the cluster for which the node label `max-powerstore-volumes-per-node` is not set. @@ -540,7 +540,7 @@ After that, you can use `powerstore-1` storage class to create volumes on the fi CSI PowerStore supports the ability to dynamically modify array information within the secret, allowing users to update _credentials_ for the PowerStore arrays, in-flight, without restarting the driver. -> Note: Updates to the secret that include adding a new array, or modifying the endpoint, globalID, or blockProtocol parameters +> ℹ️ **NOTE:** Updates to the secret that include adding a new array, or modifying the endpoint, globalID, or blockProtocol parameters > require the driver to be restarted to properly pick up and process the changes. To do so, change the configuration file `config.yaml` and apply the update using the following command: @@ -578,7 +578,7 @@ It has to be specified in `config.yaml` and in Storage Classes. The change provides backward compatibility with previously created PVs. However, to provision new volumes, make sure to delete old Storage Classes and create new ones with `arrayID` instead of `arrayIP` specified. -> NOTE: It is recommended to migrate the PVs to new identifiers before changing management IPs of storage systems. The recommended way to do it is to clone the existing volume and delete the old one. The cloned volume will automatically switch to using globalID instead of management IP. +> ℹ️ **NOTE:** : It is recommended to migrate the PVs to new identifiers before changing management IPs of storage systems. The recommended way to do it is to clone the existing volume and delete the old one. The cloned volume will automatically switch to using globalID instead of management IP. ## Root squashing @@ -629,14 +629,14 @@ kubectl edit configmap -n csi-powerstore powerstore-config-params ## NAT Support -CSI Driver for Dell Powerstore is supported in the NAT environment for NFS protocol. +CSI Driver for Powerstore is supported in the NAT environment for NFS protocol. The user will be able to install the driver and able to create pods. ## PV/PVC Metrics -CSI Driver for Dell Powerstore 2.1.0 and above supports volume health monitoring. Alpha feature gate `CSIVolumeHealth` needs to be enabled for the node side monitoring to take effect. For more information, please refer to the [Kubernetes GitHub repository](https://github.com/kubernetes-csi/external-health-monitor/blob/master/README.md). To use this feature, set controller.healthMonitor.enabled and node.healthMonitor.enabled to true. To change the monitor interval, set controller.healthMonitor.interval parameter. +CSI Driver for Powerstore 2.1.0 and above supports volume health monitoring. Alpha feature gate `CSIVolumeHealth` needs to be enabled for the node side monitoring to take effect. For more information, please refer to the [Kubernetes GitHub repository](https://github.com/kubernetes-csi/external-health-monitor/blob/master/README.md). To use this feature, set controller.healthMonitor.enabled and node.healthMonitor.enabled to true. To change the monitor interval, set controller.healthMonitor.interval parameter. ## Single Pod Access Mode for PersistentVolumes- ReadWriteOncePod @@ -691,23 +691,18 @@ nfsAcls: "A::OWNER@:rwatTnNcCy,A::GROUP@:rxtncy,A::EVERYONE@:rxtncy,A::user@doma ## NVMe Support -**NVMeTCP Support** -CSI Driver for Dell Powerstore 2.2.0 and above supports NVMe/TCP provisioning. To enable NVMe/TCP provisioning, blockProtocol on secret should be specified as `NVMeTCP`. ->Note: NVMe/TCP is not supported on RHEL 7.x versions and CoreOS. ->NVMe/TCP is supported with Powerstore 2.1 and above. +#### NVMeTCP Support +- Supported from CSI Driver for PowerStore 2.2.0 and above. +- Enable by setting `blockProtocol` to `NVMeTCP` in the secret. +- Not supported on RHEL 7.x and CoreOS. -**NVMeFC Support** -CSI Driver for Dell Powerstore 2.3.0 and above supports NVMe/FC provisioning. To enable NVMe/FC provisioning, blockProtocol on secret should be specified as `NVMeFC`. ->NVMe/FC is supported with Powerstore 3.0 and above. +#### NVMeFC Support +- Supported from CSI Driver for PowerStore 2.3.0 and above. +- Enable by setting `blockProtocol` to `NVMeFC` in the secret. +- Supported with PowerStore 3.0 and above. ->NVMe-FC feature is supported with Helm. - ->Note: -> In case blockProtocol is specified as `auto`, the driver will be able to find the initiators on the host and choose the protocol accordingly. If the host has multiple protocols enabled, then NVMeFC gets the highest priority followed by NVMeTCP, followed by FC and then iSCSI. - -## Volume group snapshot Support - -CSI Driver for Dell Powerstore 2.3.0 and above supports creating volume groups and take snapshot of them by making use of CRD (Custom Resource Definition). More information can be found here: [Volume Group Snapshotter](../../../snapshots/volume-group-snapshots/). +**Note**: +- If `blockProtocol` is set to `auto`, the driver will choose the protocol based on host initiators. Priority: NVMeFC > NVMeTCP > FC > iSCSI. ## Configurable Volume Attributes (Optional) @@ -763,9 +758,34 @@ If such a node is not available, the pods stay in Pending state. This means they Without storage capacity tracking, pods get scheduled on a node satisfying the topology constraints. If the required capacity is not available, volume attachment to the pods fails, and pods remain in ContainerCreating state. Storage capacity tracking eliminates unnecessary scheduling of pods when there is insufficient capacity. The attribute `storageCapacity.enabled` in `my-powerstore-settings.yaml` can be used to enabled/disabled the feature during driver installation . -To configure how often driver checks for changed capacity set `storageCapacity.pollInterval` attribute. In case of driver installed via operator, this interval can be configured in the sample files provided [here](https://github.com/dell/csm-operator/tree/main/samples) by editing the `capacity-poll-interval` argument present in the `provisioner` sidecar. +To configure how often driver checks for changed capacity set `storageCapacity.pollInterval` attribute. In case of driver installed via operator, this interval can be configured in the sample files provided [here](https://github.com/dell/csm-operator/tree/main/samples/storage_csm_powerstore_{{< version-v1 key="sample_sc_pstore" >}}.yaml) by editing the `capacity-poll-interval` argument present in the `provisioner` sidecar. ## Metro support The CSI PowerStore driver supports the provisioning of Metro volumes. The process and details of how to provision and use Metro volumes can be found [here](../../../replication/high-availability). -Please note that the Metro feature does not require the deployment of the replicator sidecar or the replication controller. \ No newline at end of file +Please note that the Metro feature does not require the deployment of the replicator sidecar or the replication controller. + +## Shared NFS +Shared NFS utilizes native NFS features to support large-scale ReadWriteMany (RWX) volumes through the access mode, enabling efficient shared storage across multiple consumers. It follows a client-server model, with a node serving as an NFS server and potentially a client as well. +- **Scalability and Flexibility**: Offers enhanced scalability and flexibility compared to traditional NFS, which relies on a single dedicated server. +- **Centralized File Management**: Allows remote files to be accessed as if they were local, simplifying file management and reducing duplication for more efficient storage use. +- **NFSv4 Recommendation**: NFS versions v4,1, v4.2. +- **Prerequisites**: NFS-related services (nfs-server and nfs-mountd on Linux) must be running on all participating worker nodes. +- **Enable Shared NFS Support**: Version 2.14 introduces support for Shared NFS via a new StorageClass. + +```yaml +apiVersion: storage.k8s.io/v1 +kind: StorageClass +metadata: + name: powerstore-sharednfs-sc +provisioner: csi-powerstore.dellemc.com +reclaimPolicy: Delete +parameters: + arrayID: + shared-nfs: RWX + csi.storage.k8s.io/fstype: ext4 +provisioner: csi-powerstore.dellemc.com +reclaimPolicy: Delete +volumeBindingMode: WaitForFirstConsumer + +``` diff --git a/content/v1/csidriver/features/unity.md b/content/v1/concepts/csidriver/features/unity.md similarity index 97% rename from content/v1/csidriver/features/unity.md rename to content/v1/concepts/csidriver/features/unity.md index d356d8d8cf..d4f3112bd3 100644 --- a/content/v1/csidriver/features/unity.md +++ b/content/v1/concepts/csidriver/features/unity.md @@ -144,7 +144,7 @@ status: readyToUse: true ``` Note : -A set of annotated volume snapshot class manifests have been provided in the [csi-unity/samples/volumesnapshotclass/](https://github.com/dell/csi-unity/tree/main/samples/volumesnapshotclass) folder. Use these samples to create new Volume Snapshot to provision storage. +A set of annotated volume snapshot class manifests have been provided in the [csi-unity/samples/volumesnapshotclass/](https://github.com/dell/csi-unity/tree/main/samples/volumesnapshotclass/snapclass-v1.yaml) folder. Use these samples to create new Volume Snapshot to provision storage. ### Creating PVCs with Volume Snapshots as Source @@ -500,7 +500,7 @@ You can check what labels your nodes contain by running `kubectl get nodes --sho For any additional information about the topology, see the [Kubernetes Topology documentation](https://kubernetes-csi.github.io/docs/topology.html). ## Volume Limit -The CSI Driver for Dell Unity XT allows users to specify the maximum number of Unity XT volumes that can be used in a node. +The CSI Driver for Unity XT allows users to specify the maximum number of Unity XT volumes that can be used in a node. The user can set the volume limit for a node by creating a node label `max-unity-volumes-per-node` and specifying the volume limit for that node.
`kubectl label node max-unity-volumes-per-node=` @@ -510,7 +510,7 @@ The user can also set the volume limit for all the nodes in the cluster by speci >**NOTE:**
To reflect the changes after setting the value either via node label or in values.yaml file, user has to bounce the driver controller and node pods using the command `kubectl get pods -n unity --no-headers=true | awk '/unity-/{print $1}'| xargs kubectl delete -n unity pod`.

If the value is set both by node label and values.yaml file then node label value will get the precedence and user has to remove the node label in order to reflect the values.yaml value.

The default value of `maxUnityVolumesPerNode` is 0.

If `maxUnityVolumesPerNode` is set to zero, then Container Orchestration decides how many volumes of this type can be published by the controller to the node.

The volume limit specified to `maxUnityVolumesPerNode` attribute is applicable to all the nodes in the cluster for which node label `max-unity-volumes-per-node` is not set. ## NAT Support -CSI Driver for Dell Unity XT is supported in the NAT environment for NFS protocol. +CSI Driver for Unity XT is supported in the NAT environment for NFS protocol. The user will be able to install the driver and able to create pods. @@ -560,7 +560,7 @@ If such a node is not available, the pods stay in Pending state. This means pods Without storage capacity tracking, pods get scheduled on a node satisfying the topology constraints. If the required capacity is not available, volume attachment to the pods fails, and pods remain in ContainerCreating state. Storage capacity tracking eliminates unnecessary scheduling of pods when there is insufficient capacity. Moreover, storage capacity tracking returns `MaximumVolumeSize` parameter, which may be used as an input to the volume creation. -The attribute `storageCapacity.enabled` in `values.yaml` can be used to enable/disable the feature during driver installation using helm. This is by default set to true. To configure how often driver checks for changed capacity set `storageCapacity.pollInterval` attribute. In case of driver installed via operator, this interval can be configured in the sample file provided [here.](https://github.com/dell/csm-operator/blob/main/samples/) by editing the `--capacity-poll-interval` argument present in the provisioner sidecar. +The attribute `storageCapacity.enabled` in `values.yaml` can be used to enable/disable the feature during driver installation using helm. This is by default set to true. To configure how often driver checks for changed capacity set `storageCapacity.pollInterval` attribute. In case of driver installed via operator, this interval can be configured in the sample file provided [here.](https://github.com/dell/csm-operator/blob/main/samples/storage_csm_unity_{{< version-v1 key="sample_sc_unity" >}}.yaml) by editing the `--capacity-poll-interval` argument present in the provisioner sidecar. ## Dynamic Logging Configuration diff --git a/content/v1/concepts/csidriver/test/_index.md b/content/v1/concepts/csidriver/test/_index.md new file mode 100644 index 0000000000..4fa408df41 --- /dev/null +++ b/content/v1/concepts/csidriver/test/_index.md @@ -0,0 +1,22 @@ +--- +title: "Testing Drivers" +linkTitle: "Testing Drivers" +description: "Tests to validate CSI Driver Installation" +no_list: true +--- + + +{{< cardcontainer >}} + + + {{< customcard link="./powerflex" imageNumber="3" title="PowerFlex" >}} + + {{< customcard link="./powermax" imageNumber="3" title="PowerMax" >}} + + {{< customcard link="./powerscale" imageNumber="3" title="PowerScale" >}} + + {{< customcard link="./powerstore" imageNumber="3" title="PowerStore" >}} + + {{< customcard link="./unity" imageNumber="3" title="Unity" >}} + +{{< /cardcontainer >}} diff --git a/content/v1/csidriver/test/powerflex.md b/content/v1/concepts/csidriver/test/powerflex.md similarity index 98% rename from content/v1/csidriver/test/powerflex.md rename to content/v1/concepts/csidriver/test/powerflex.md index deb58f77d4..baed323559 100644 --- a/content/v1/csidriver/test/powerflex.md +++ b/content/v1/concepts/csidriver/test/powerflex.md @@ -6,7 +6,7 @@ description: Tests to validate PowerFlex CSI Driver installation This section provides multiple methods to test driver functionality in your environment. -**Note**: To run the test for CSI Driver for Dell PowerFlex, install Helm 3. +**Note**: To run the test for CSI Driver for PowerFlex, install Helm 3. ## Test deploying a simple pod with PowerFlex storage @@ -91,7 +91,7 @@ The `snaptest.sh` script will create a snapshot using the definitions in the `sn *NOTE:* The `snaptest.sh` shell script creates the snapshots, describes them, and then deletes them. You can see your snapshots using `kubectl get volumesnapshot -n helmtest-vxflexos`. -Notice that this _VolumeSnapshot_ class has a reference to a _snapshotClassName: vxflexos-snapclass_. The CSI Driver for Dell PowerFlex installation does not create this class. You will need +Notice that this _VolumeSnapshot_ class has a reference to a _snapshotClassName: vxflexos-snapclass_. The CSI Driver for PowerFlex installation does not create this class. You will need to create instance of _VolumeSnapshotClass_ from one of default samples in `samples/volumesnapshotclass' directory. ## Test restoring from a snapshot diff --git a/content/v1/csidriver/test/powermax.md b/content/v1/concepts/csidriver/test/powermax.md similarity index 95% rename from content/v1/csidriver/test/powermax.md rename to content/v1/concepts/csidriver/test/powermax.md index c97d092d97..1ff7ca29fe 100644 --- a/content/v1/csidriver/test/powermax.md +++ b/content/v1/concepts/csidriver/test/powermax.md @@ -6,9 +6,9 @@ description: Tests to validate PowerMax CSI Driver installation This section provides multiple methods to test driver functionality in your environment. The tests are validated using bash as the default shell. -**Note**: To run the test for CSI Driver for Dell PowerMax, install Helm 3. +**Note**: To run the test for CSI Driver for PowerMax, install Helm 3. -The _csi-powermax_ repository includes examples of how you can use CSI Driver for Dell PowerMax. The shell scripts are used to automate the installation and uninstallation of helm charts for the creation of Pods with a different number of volumes in a given namespace using the storageclass provided. To test the installation of the CSI driver, perform these tests: +The _csi-powermax_ repository includes examples of how you can use CSI Driver for PowerMax. The shell scripts are used to automate the installation and uninstallation of helm charts for the creation of Pods with a different number of volumes in a given namespace using the storageclass provided. To test the installation of the CSI driver, perform these tests: - Volume clone test - Volume test - Snapshot test diff --git a/content/v1/csidriver/test/powerscale.md b/content/v1/concepts/csidriver/test/powerscale.md similarity index 98% rename from content/v1/csidriver/test/powerscale.md rename to content/v1/concepts/csidriver/test/powerscale.md index 65776865fc..a60f639019 100644 --- a/content/v1/csidriver/test/powerscale.md +++ b/content/v1/concepts/csidriver/test/powerscale.md @@ -6,7 +6,7 @@ description: Tests to validate PowerScale CSI Driver installation This section provides multiple methods to test driver functionality in your environment. -**Note**: To run the test for CSI Driver for Dell PowerScale, install Helm 3. +**Note**: To run the test for CSI Driver for PowerScale, install Helm 3. ## Test deploying a simple pod with PowerScale storage diff --git a/content/v1/csidriver/test/powerstore.md b/content/v1/concepts/csidriver/test/powerstore.md similarity index 100% rename from content/v1/csidriver/test/powerstore.md rename to content/v1/concepts/csidriver/test/powerstore.md diff --git a/content/v1/csidriver/test/unity.md b/content/v1/concepts/csidriver/test/unity.md similarity index 93% rename from content/v1/csidriver/test/unity.md rename to content/v1/concepts/csidriver/test/unity.md index 79cd5615a5..4414ee2525 100644 --- a/content/v1/csidriver/test/unity.md +++ b/content/v1/concepts/csidriver/test/unity.md @@ -30,7 +30,7 @@ You can find all the created resources in `unity` namespace. ## Support for SLES 15 -The CSI Driver for Dell Unity XT requires these of packages installed on all worker nodes that run on SLES 15. +The CSI Driver for Unity XT requires these of packages installed on all worker nodes that run on SLES 15. - open-iscsi **open-iscsi is required in order to make use of iSCSI protocol for provisioning** - nfs-utils **nfs-utils is required in order to make use of NFS protocol for provisioning** diff --git a/content/v1/csidriver/troubleshooting/_index.md b/content/v1/concepts/csidriver/troubleshooting/_index.md similarity index 88% rename from content/v1/csidriver/troubleshooting/_index.md rename to content/v1/concepts/csidriver/troubleshooting/_index.md index 9679830c30..d6059c25b8 100644 --- a/content/v1/csidriver/troubleshooting/_index.md +++ b/content/v1/concepts/csidriver/troubleshooting/_index.md @@ -3,4 +3,5 @@ title: Troubleshooting linktitle: Troubleshooting description: Troubleshooting for CSI Drivers weight: 5 +toc_hide: true --- diff --git a/content/v1/csidriver/troubleshooting/powerflex.md b/content/v1/concepts/csidriver/troubleshooting/powerflex.md similarity index 95% rename from content/v1/csidriver/troubleshooting/powerflex.md rename to content/v1/concepts/csidriver/troubleshooting/powerflex.md index e30ae5f99e..37beb6e94d 100644 --- a/content/v1/csidriver/troubleshooting/powerflex.md +++ b/content/v1/concepts/csidriver/troubleshooting/powerflex.md @@ -3,6 +3,7 @@ title: PowerFlex linktitle: PowerFlex description: Troubleshooting PowerFlex Driver --- +
| Symptoms | Prevention, Resolution or Workaround | |------------|--------------| @@ -14,14 +15,14 @@ description: Troubleshooting PowerFlex Driver |CreateVolume error System is not configured in the driver | Powerflex name if used for systemID in StorageClass ensure same name is also used in array config systemID | |Defcontext mount option seems to be ignored, volumes still are not being labeled correctly.|Ensure SElinux is enabled on a worker node, and ensure your container run time manager is properly configured to be utilized with SElinux.| |Mount options that interact with SElinux are not working (like defcontext).|Check that your container orchestrator is properly configured to work with SElinux.| -| The `kubectl logs -n vxflexos vxflexos-controller-* driver` logs show `x509: certificate signed by unknown authority` |A self assigned certificate is used for PowerFlex array. See [certificate validation for PowerFlex Gateway](../../../deployment/helm/drivers/installation/powerflex/#certificate-validation-for-powerflex-gateway-rest-api-calls)| +| The `kubectl logs -n vxflexos vxflexos-controller-* driver` logs show `x509: certificate signed by unknown authority` |A self assigned certificate is used for PowerFlex array. See [certificate validation for PowerFlex Gateway](v1/getting-started/installation/kubernetes/powerflex/helm/#certificate-validation-for-powerflex-gateway-rest-api-calls)| | When you run the command `kubectl apply -f snapclass-v1.yaml`, you get the error `error: unable to recognize "snapclass-v1.yaml": no matches for kind "VolumeSnapshotClass" in version "snapshot.storage.k8s.io/v1"` | Check to make sure that the v1 snapshotter CRDs are installed, and not the v1beta1 CRDs, which are no longer supported. | | The controller pod is stuck and producing errors such as" `Failed to watch *v1.VolumeSnapshotContent: failed to list *v1.VolumeSnapshotContent: the server could not find the requested resource (get volumesnapshotcontents.snapshot.storage.k8s.io)` | Make sure that v1 snapshotter CRDs and v1 snapclass are installed, and not v1beta1, which is no longer supported. | | Driver install or upgrade fails because of an incompatible Kubernetes version, even though the version seems to be within the range of compatibility. For example: `Error: UPGRADE FAILED: chart requires kubeVersion: >= 1.21.0 <= 1.28.0 which is incompatible with Kubernetes V1.21.11-mirantis-1` | If you are using an extended Kubernetes version, see the helm Chart at `helm/csi-vxflexos/Chart.yaml` and use the alternate `kubeVersion` check that is provided in the comments. Note: this is not meant to be used to enable the use of pre-release alpha and beta versions, which is not supported. | -| Volume metrics are missing | Enable [Volume Health Monitoring](../../features/powerflex#volume-health-monitoring) | +| Volume metrics are missing | Enable [Volume Health Monitoring](v1/concepts/csidriver/features/powerflex#volume-health-monitoring) | | When a node goes down, the block volumes attached to the node cannot be attached to another node | This is a known issue and has been reported at https://github.com/kubernetes-csi/external-attacher/issues/215. Workaround:
1. Force delete the pod running on the node that went down
2. Delete the volumeattachment to the node that went down.
Now the volume can be attached to the new node. | | CSI-PowerFlex volumes cannot mount; are being recognized as multipath devices | CSI-PowerFlex does not support multipath; to fix:
1. Remove any multipath mapping involving a powerflex volume with `multipath -f `
2. Blacklist CSI-PowerFlex volumes in multipath config file | - | When attempting a driver upgrade, you see: ```spec.fsGroupPolicy: Invalid value: "xxx": field is immutable``` | You cannot upgrade between drivers with different fsGroupPolicies. See [upgrade documentation](../../../deployment/helm/drivers/upgrade/powerflex) for more details | + | When attempting a driver upgrade, you see: ```spec.fsGroupPolicy: Invalid value: "xxx": field is immutable``` | You cannot upgrade between drivers with different fsGroupPolicies. See [upgrade documentation](v1/getting-started/upgrade/kubernetes/powerflex/helm) for more details | | When accessing ROX mode PVC in OpenShift where the worker nodes are non-root user, you see: ```Permission denied``` while accessing the PVC mount location from the pod. | Set the ```securityContext``` for ROX mode PVC pod as below, as it defines privileges for the pods or containers.

securityContext:
       runAsUser: 0
       runAsGroup: 0 | | When a cluster node goes down, the block volumes attached to the node cannot be attached to another node. | This is a known issue reported at [kubernetes-csi/external-attacher#215](https://github.com/kubernetes-csi/external-attacher/issues/215). Workaround:
1. Force delete the pod running on the node that went down.
2. Delete the pod's persistent volume attachment on the node that went down. Now the volume can be attached to the new node. A CSI ephemeral pod may not get created in OpenShift 4.13 and fail with the error `"error when creating pod: the pod uses an inline volume provided by CSIDriver csi-vxflexos.dellemc.com, and the namespace has a pod security enforcement level that is lower than privileged."` | This issue occurs because OpenShift 4.13 introduced the CSI Volume Admission plugin to restrict the use of a CSI driver capable of provisioning CSI ephemeral volumes during pod admission. Therefore, an additional label `security.openshift.io/csi-ephemeral-volume-profile` in [csidriver.yaml](https://github.com/dell/helm-charts/blob/csi-vxflexos-2.8.0/charts/csi-vxflexos/templates/csidriver.yaml) file with the required security profile value should be provided. Follow [OpenShift 4.13 documentation for CSI Ephemeral Volumes](https://docs.openshift.com/container-platform/4.13/storage/container_storage_interface/ephemeral-storage-csi-inline.html) for more information. | @@ -29,4 +30,4 @@ A CSI ephemeral pod may not get created in OpenShift 4.13 and fail with the erro |CSM object `vxflexos` is in failed state and CSI-Powerflex driver is not in running state | Verify the secret name: `kubectl get secret -n ` it should be in `-config` format. 1. Retrieve the existing secret: `kubectl get secret old-secret-name -n -o yaml > secret.yaml`
2. Edit the secret.yaml file: Change metadata.name to -Config
3. Apply the new secret: `kubectl apply -f secret.yaml`
4. Delete the old secret: kubectl delete secret old-secret-name| > - +
diff --git a/content/v1/csidriver/troubleshooting/powermax.md b/content/v1/concepts/csidriver/troubleshooting/powermax.md similarity index 94% rename from content/v1/csidriver/troubleshooting/powermax.md rename to content/v1/concepts/csidriver/troubleshooting/powermax.md index 15bf8b0ce5..4e4fb03670 100644 --- a/content/v1/csidriver/troubleshooting/powermax.md +++ b/content/v1/concepts/csidriver/troubleshooting/powermax.md @@ -3,6 +3,8 @@ title: PowerMax linktitle: PowerMax description: Troubleshooting PowerMax Driver --- +
+ | Symptoms | Prevention, Resolution or Workaround | |------------|--------------| | `kubectl describe pod powermax-controller- –n ` indicates that the driver image could not be loaded | You may need to put an insecure-registries entry in `/etc/docker/daemon.json` or log in to the docker registry | @@ -10,7 +12,7 @@ description: Troubleshooting PowerMax Driver | `kubectl logs powermax-controller- –n driver` logs show that the driver failed to connect to the U4P because it could not verify the certificates | Check the powermax-certs secret and ensure it is not empty or it has the valid certificates| |Driver install or upgrade fails because of an incompatible Kubernetes version, even though the version seems to be within the range of compatibility. For example: Error: UPGRADE FAILED: chart requires kubeVersion: >= 1.23.0 < 1.27.0 which is incompatible with Kubernetes V1.23.11-mirantis-1 | If you are using an extended Kubernetes version, please see the [helm Chart](https://github.com/dell/helm-charts/blob/main/charts/csi-powermax/Chart.yaml) and use the alternate kubeVersion check that is provided in the comments. Please note that this is not meant to be used to enable the use of pre-release alpha and beta versions, which are not supported.| | When a node goes down, the block volumes attached to the node cannot be attached to another node | 1. Force delete the pod running on the node that went down
2. Delete the volumeattachment to the node that went down.
Now the volume can be attached to the new node. | -| When attempting a driver upgrade, you see: ```spec.fsGroupPolicy: Invalid value: "xxx": field is immutable``` | You cannot upgrade between drivers with different fsGroupPolicies. See [upgrade documentation](../../../deployment/helm/drivers/upgrade/powermax) for more details | +| When attempting a driver upgrade, you see: ```spec.fsGroupPolicy: Invalid value: "xxx": field is immutable``` | You cannot upgrade between drivers with different fsGroupPolicies. See [upgrade documentation](v1/getting-started/upgrade/kubernetes/powerflex/helm) for more details | | Ater the migration group is in “migrated” state but unable to move to “commit ready” state because the new paths are not being discovered on the cluster nodes.| Run the following commands manually on the cluster nodes `rescan-scsi-bus.sh  -i` `rescan-scsi-bus.sh  -a`| | `Failed to fetch details for array: 000000000000. [Unauthorized]`" | Please make sure that correct encrypted username and password in secret files are used, also ensure whether the RBAC is enabled for the user | | `Error looking up volume for idempotence check: Not Found` or `Get Volume step fails for: (000000000000) symID with error (Invalid Response from API)`| Make sure that Unisphere endpoint doesn't end with front slash | @@ -20,5 +22,6 @@ description: Troubleshooting PowerMax Driver | nodestage is failing with error `Error invalid IQN Target iqn.EMC.0648.SE1F` | 1. Update initiator name to full default name , ex: iqn.1993-08.org.debian:01:e9afae962192
2.Ensure that the iSCSI initiators are available on all the nodes where the driver node plugin will be installed and it should be full default name. | | Volume mount is failing on few OS(ex:VMware Virtual Platform) during node publish with error `wrong fs type, bad option, bad superblock` | 1. Check the multipath configuration(if enabled) 2. Edit Vm Advanced settings->hardware and add the param `disk.enableUUID=true` and reboot the node | | Standby controller pod is in crashloopbackoff state | Scale down the replica count of the controller pod's deployment to 1 using ```kubectl scale deployment --replicas=1 -n ``` | -| When running CSI-PowerMax with Replication in a multi-cluster configuration, the driver on the target cluster fails and the following error is seen in logs: `error="CSI reverseproxy service host or port not found, CSI reverseproxy not installed properly"` | The reverseproxy service needs to be created manually on the target cluster. Follow [the instructions here](../../../deployment/csmoperator/modules/replication#configuration-steps) to create it.| +| When running CSI-PowerMax with Replication in a multi-cluster configuration, the driver on the target cluster fails and the following error is seen in logs: `error="CSI reverseproxy service host or port not found, CSI reverseproxy not installed properly"` | The reverseproxy service needs to be created manually on the target cluster. Follow [the instructions here](/docs/getting-started/installation/kubernetes/powermax/csmoperator/csm-modules/replication/#configuration-steps) to create it.| | PVC creation is failing with error `A problem occurred modifying the storage group resource: Failed to create batch task(s): The maximum allowed devices for a storage group has been exceeded`. This is because of a hardware limit of 4k devices in a storage group.| Create a separate Storage Class with a new unique `ApplicationPrefix` parameter (such as `ApplicationPrefix: OCPX`) or add a new unique `StorageGroup` parameter (such as `StorageGroup: "custom_SG_1"`) to place the provisioned volumes in a new Storage Group.| +
diff --git a/content/v1/csidriver/troubleshooting/powerscale.md b/content/v1/concepts/csidriver/troubleshooting/powerscale.md similarity index 99% rename from content/v1/csidriver/troubleshooting/powerscale.md rename to content/v1/concepts/csidriver/troubleshooting/powerscale.md index cbba6686c0..da71dbc380 100644 --- a/content/v1/csidriver/troubleshooting/powerscale.md +++ b/content/v1/concepts/csidriver/troubleshooting/powerscale.md @@ -5,6 +5,8 @@ description: Troubleshooting PowerScale Driver Here are some installation failures that might be encountered and how to mitigate them. +
+ | Symptoms | Prevention, Resolution or Workaround | |------------|--------------| |The `kubectl logs isilon-controller-0 -n isilon -c driver` logs shows the driver **cannot authenticate** | Check your secret's username and password for corresponding cluster | @@ -20,3 +22,5 @@ Here are some installation failures that might be encountered and how to mitigat |Driver install or upgrade fails because of an incompatible Kubernetes version, even though the version seems to be within the range of compatibility. For example: Error: UPGRADE FAILED: chart requires kubeVersion: >= 1.22.0 < 1.25.0 which is incompatible with Kubernetes V1.22.11-mirantis-1 | If you are using an extended Kubernetes version, please see the [helm Chart](https://github.com/dell/helm-charts/blob/main/charts/csi-isilon/Chart.yaml) and use the alternate kubeVersion check that is provided in the comments. Please note that this is not meant to be used to enable the use of pre-release alpha and beta versions, which is not supported.| | Standby controller pod is in crashloopbackoff state | Scale down the replica count of the controller pod's deployment to 1 using ```kubectl scale deployment --replicas=1 -n ``` | | fsGroupPolicy may not work as expected without root privileges for NFS only [https://github.com/kubernetes/examples/issues/260](https://github.com/kubernetes/examples/issues/260) | To get the desired behavior set “RootClientEnabled” = “true” in the storage class parameter | +
+ diff --git a/content/v1/csidriver/troubleshooting/powerstore.md b/content/v1/concepts/csidriver/troubleshooting/powerstore.md similarity index 96% rename from content/v1/csidriver/troubleshooting/powerstore.md rename to content/v1/concepts/csidriver/troubleshooting/powerstore.md index aa1bcc1174..0bae353207 100644 --- a/content/v1/csidriver/troubleshooting/powerstore.md +++ b/content/v1/concepts/csidriver/troubleshooting/powerstore.md @@ -3,11 +3,13 @@ title: PowerStore linktitle: PowerStore description: Troubleshooting PowerStore Driver --- +
+ | Symptoms | Prevention, Resolution or Workaround | | --- | --- | | When you run the command `kubectl describe pods powerstore-controller- –n csi-powerstore`, the system indicates that the driver image could not be loaded. | - If on Kubernetes, edit the daemon.json file found in the registry location and add `{ "insecure-registries" :[ "hostname.cloudapp.net:5000" ] }`
- If on OpenShift, run the command `oc edit image.config.openshift.io/cluster` and add registries to yaml file that is displayed when you run the command.| | The `kubectl logs -n csi-powerstore powerstore-node-` driver logs show that the driver can't connect to PowerStore API. | Check if you've created a secret with correct credentials | -|Installation of the driver on Kubernetes supported versions fails with the following error:
```Error: unable to build kubernetes objects from release manifest: unable to recognize "": no matches for kind "VolumeSnapshotClass" in version "snapshot.storage.k8s.io/v1"```|Kubernetes v1.21/v1.22/v1.23 requires v1 version of snapshot CRDs to be created in cluster, see the [Volume Snapshot Requirements](../../../deployment/helm/drivers/installation/powerstore/#optional-volume-snapshot-requirements)| +|Installation of the driver on Kubernetes supported versions fails with the following error:
```Error: unable to build kubernetes objects from release manifest: unable to recognize "": no matches for kind "VolumeSnapshotClass" in version "snapshot.storage.k8s.io/v1"```|Kubernetes v1.21/v1.22/v1.23 requires v1 version of snapshot CRDs to be created in cluster, see the [Volume Snapshot Requirements](v1/getting-started/installation/kubernetes/powerstore/helm/#volume-snapshot-requirements-optional)| | If PVC is not getting created and getting the following error in PVC description:
```failed to provision volume with StorageClass "powerstore-iscsi": rpc error: code = Internal desc = : Unknown error:```| Check if you've created a secret with correct credentials | | If the NVMeFC pod is not getting created and the host looses the ssh connection, causing the driver pods to go to error state | remove the nvme_tcp module from the host in case of NVMeFC connection | | When a node goes down, the block volumes attached to the node cannot be attached to another node | 1. Force delete the pod running on the node that went down
2. Delete the volumeattachment to the node that went down.
Now the volume can be attached to the new node. | @@ -20,3 +22,4 @@ description: Troubleshooting PowerStore Driver | Unable to install or upgrade the driver due to minimum Kubernetes version or Openshift version | Currently CSM only supports n, n-1, n-2 version of Kubernetes and Openshift, if you still wanted to continue with existing version update the `verify.sh` to continue.| | Volumes are not getting deleted on the array when PV's are deleted | Ensure `persistentVolumeReclaimPolicy` is set to Delete. | | fsGroupPolicy may not work as expected without root privileges for NFS only [https://github.com/kubernetes/examples/issues/260](https://github.com/kubernetes/examples/issues/260) | To get the desired behavior set “RootClientEnabled” = “true” in the storage class parameter | +
diff --git a/content/v1/csidriver/troubleshooting/unity.md b/content/v1/concepts/csidriver/troubleshooting/unity.md similarity index 99% rename from content/v1/csidriver/troubleshooting/unity.md rename to content/v1/concepts/csidriver/troubleshooting/unity.md index 951e77a5ae..40c0b7d0e9 100644 --- a/content/v1/csidriver/troubleshooting/unity.md +++ b/content/v1/concepts/csidriver/troubleshooting/unity.md @@ -4,6 +4,8 @@ description: Troubleshooting Unity XT Driver --- --- +
+ | Symptoms | Prevention, Resolution or Workaround | | --- | --- | | When you run the command `kubectl describe pods unity-controller- –n unity`, the system indicates that the driver image could not be loaded. | You may need to put an insecure-registries entry in `/etc/docker/daemon.json` or login to the docker registry | @@ -17,3 +19,4 @@ description: Troubleshooting Unity XT Driver | Standby controller pod is in crashloopbackoff state | Scale down the replica count of the controller pod's deployment to 1 using ```kubectl scale deployment --replicas=1 -n ``` | | fsGroupPolicy may not work as expected without root privileges for NFS only [https://github.com/kubernetes/examples/issues/260](https://github.com/kubernetes/examples/issues/260) | To get the desired behavior set “RootClientEnabled” = “true” in the storage class parameter | | When both iSCSI IQNs and FC WWNs are present, host registrations on Unity systems will include all initiators. If only FC WWNs are present, a warning message will appear: **‘iSCSI Initiators’ cannot be retrieved.**| Ensure only desired initiators are configured on the worker nodes to limit the initiators included in the host registrations | +
\ No newline at end of file diff --git a/content/v1/concepts/observability/_index.md b/content/v1/concepts/observability/_index.md new file mode 100644 index 0000000000..2284a4552f --- /dev/null +++ b/content/v1/concepts/observability/_index.md @@ -0,0 +1,95 @@ +--- +title: "Observability" +linkTitle: "Observability" +no_list: true +weight: 5 +Description: > + Container Storage Modules (CSM) for Observability +--- + + [Container Storage Modules](https://github.com/dell/csm) for Observability is part of the open-source suite of Kubernetes storage enablers for Dell products. + + It is an OpenTelemetry agent that collects array-level metrics for Dell storage so they can be exported into a Prometheus database. With Container Storage Modules for Observability, you will gain visibility not only on the capacity of the volumes/file shares you manage with Dell CSM CSI (Container Storage Interface) drivers but also their performance in terms of bandwidth, IOPS, and response time. + + Thanks to pre-packaged Grafana dashboards, you will be able to go through these metrics history and see the topology between a Kubernetes PV (Persistent Volume) and its translation as a LUN or file share in the backend array. This module also allows Kubernetes admins to collect array level metrics to check the overall capacity and performance directly from the Prometheus/Grafana tools rather than interfacing directly with the storage system itself. + +Metrics data is collected and pushed to the [OpenTelemetry Collector](https://github.com/open-telemetry/opentelemetry-collector), so it can be processed, and exported in a format consumable by Prometheus. SSL certificates for TLS between nodes are handled by [cert-manager](https://github.com/jetstack/cert-manager). + +Container Storage Modules for Observability is composed of several services, each residing in its own GitHub repository, that can be installed following one of the four deployments we support [here](../../getting-started/installation/kubernetes/powermax/helm/csm-modules/observability/). Contributions can be made to this repository or any of the Container Storage Modules for Observability repositories listed below. + +{{}} +| Name | Repository | Description | +| ---- | --------- | ----------- | +| Metrics for PowerFlex | [Container Storage Modules Metrics for PowerFlex](https://github.com/dell/karavi-metrics-powerflex) | Metrics for PowerFlex captures telemetry data about Kubernetes storage usage and performance obtained through the CSI (Container Storage Interface) Driver for PowerFlex. The metrics service pushes it to the OpenTelemetry Collector, so it can be processed, and exported in a format consumable by Prometheus. Prometheus can then be configured to scrape the OpenTelemetry Collector exporter endpoint to provide metrics, so they can be visualized in Grafana. Please visit the repository for more information. | +| Metrics for PowerStore | [Container Storage Modules Metrics for PowerStore](https://github.com/dell/csm-metrics-powerstore) | Metrics for PowerStore captures telemetry data about Kubernetes storage usage and performance obtained through the CSI (Container Storage Interface) Driver for PowerStore. The metrics service pushes it to the OpenTelemetry Collector, so it can be processed, and exported in a format consumable by Prometheus. Prometheus can then be configured to scrape the OpenTelemetry Collector exporter endpoint to provide metrics, so they can be visualized in Grafana. Please visit the repository for more information. | +| Metrics for PowerScale | [Container Storage Modules Metrics for PowerScale](https://github.com/dell/csm-metrics-powerscale) | Metrics for PowerScale captures telemetry data about Kubernetes storage usage and performance obtained through the CSI (Container Storage Interface) Driver for PowerScale. The metrics service pushes it to the OpenTelemetry Collector, so it can be processed, and exported in a format consumable by Prometheus. Prometheus can then be configured to scrape the OpenTelemetry Collector exporter endpoint to provide metrics, so they can be visualized in Grafana. Please visit the repository for more information. | +| Metrics for PowerMax | [Container Storage Modules Metrics for PowerMax](https://github.com/dell/csm-metrics-powermax) | Metrics for PowerMax captures telemetry data about Kubernetes storage usage and performance obtained through the CSI (Container Storage Interface) Driver for PowerMax. The metrics service pushes it to the OpenTelemetry Collector, so it can be processed, and exported in a format consumable by Prometheus. Prometheus can then be configured to scrape the OpenTelemetry Collector exporter endpoint to provide metrics, so they can be visualized in Grafana. Please visit the repository for more information. | +| Volume Topology | [Container Storage Modules Topology](https://github.com/dell/karavi-topology) | Topology provides Kubernetes administrators with the topology data related to containerized storage that is provisioned by a CSI (Container Storage Interface) Driver for Dell storage products. The Topology service is enabled by default as part of the Container Storage Modules for Observability Helm Chart [values file](https://github.com/dell/helm-charts/blob/main/charts/karavi-observability/values.yaml). Please visit the repository for more information. | +{{
}} + +## Container Storage Modules for Observability Capabilities + +Container Storage Modules for Observability provides the following capabilities: + +{{}} +| Capability | PowerStore | PowerScale |PowerFlex |PowerMax| Unity XT | +| - | :-: | :-: | :-: | :-: | :-: | +|
Collect and expose Volume Metrics via the OpenTelemetry Collector | Yes | Yes | Yes | Yes | No | +|
Collect and expose File System Metrics via the OpenTelemetry Collector | Yes | No | No | No | No | +|
Collect and expose export (k8s) node metrics via the OpenTelemetry Collector | Yes | No | No | Yes | No | +|
Collect and expose block storage metrics via the OpenTelemetry Collector | Yes | No | Yes | Yes | No | +|
Collect and expose file storage metrics via the OpenTelemetry Collector | Yes | Yes | No | No | No | +|
Non-disruptive config changes | Yes | Yes | Yes | Yes | No | +|
Non-disruptive log level changes | Yes | Yes | Yes | Yes | No | +|
Grafana Dashboards for displaying metrics and topology data | Yes | Yes | Yes | Yes | No | +{{
}} + +## Topology Data + +Container Storage Modules for Observability provides Kubernetes administrators with the topology data related to containerized storage. This topology data is visualized using Grafana: +{{}} +| Field | Description | +| -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | +| Namespace | The namespace associated with the persistent volume claim | +| Persistent Volume Claim | The name of the persistent volume claim associated with the persistent volume | +| Persistent Volume | The name of the persistent volume | +| Storage Class | The storage class associated with the persistent volume | +| Provisioned Size | The provisioned size of the persistent volume | +| Status | The status of the persistent volume. "Released" indicates the persistent volume does not have a claim.
"Bound" indicates the persistent volume has a claim | +| Created | The date the persistent volume was created | +| Storage System | The storage system ID or IP address the volume is associated with | +| Protocol | The storage system protocol type the volume/storage class is associated with | +| Storage Pool | The storage pool name the volume/storage class is associated with | +| Storage System Volume Name | The name of the volume on the storage system that is associated with the persistent volume | +{{
}} + +## TLS Encryption + +Container Storage Modules for Observability deployment relies on [cert-manager](https://github.com/jetstack/cert-manager) to manage SSL certificates that are used to encrypt communication between various components. When [deploying Container Storage Modules for Observability](../../getting-started/installation/kubernetes/powermax/helm/csm-modules/observability/), cert-manager is installed and configured automatically. The cert-manager components listed below will be installed alongside Container Storage Modules for Observability. + +{{}} +| Component | +| --------- | +|
cert-manager | +| cert-manager-cainjector | +| cert-manager-webhook | +{{
}} + +If desired you may provide your own certificate key pair to be used inside the cluster by providing the path to the certificate and key in the Helm chart config. If you do not provide a certificate, one will be generated for you on installation. +> __NOTE__: The certificate provided must be a CA certificate. This is to facilitate automated certificate rotation. + +## Viewing Logs + +Logs can be viewed by using the `kubectl logs` CLI command to output logs for a specific Pod or Deployment. + +For example, the following script will capture logs of all Pods in the CSM namespace and save the output to one file per Pod. + +```bash +#!/bin/bash + +namespace=[CSM_NAMESPACE] +for pod in $(kubectl get pods -n $namespace -o name); do + logFileName=$(echo $pod | tr / -).txt + kubectl logs -n $namespace $pod --all-containers > $logFileName +done +``` diff --git a/content/v1/observability/design/_index.md b/content/v1/concepts/observability/design/_index.md similarity index 53% rename from content/v1/observability/design/_index.md rename to content/v1/concepts/observability/design/_index.md index cb7616fb00..93630edb80 100644 --- a/content/v1/observability/design/_index.md +++ b/content/v1/concepts/observability/design/_index.md @@ -3,10 +3,10 @@ title: Design linktitle: Design weight: 1 description: > - CSM for Observability Design + Container Storage Modules for Observability Design --- -The solution takes the approach that each storage system that Container Storage Modules (CSM) for Observability supports will have their own metrics deployments in the Kubernetes cluster. +The solution takes the approach that each storage system that Container Storage Modules for Observability supports will have their own metrics deployments in the Kubernetes cluster. - Metrics Deployment: Queries the Kubernetes API to gather information about storage resources and then queries the storage system's REST API to gather specific metrics. These metrics are then exported to the [OTEL collector](https://github.com/open-telemetry/opentelemetry-collector). - Each supported storage system will have their own Deployment for metrics. They will each follow a similar pattern of querying the Kubernetes and StorageSystem APIs to gather information about storage resources (ex: volumes, storage pools, etc) and their metrics. Metrics will be exported directly to the OTEL collector. @@ -15,11 +15,11 @@ A single topology deployment will query the Kubernetes API to gather mapping inf ## Required Components -The following prerequisites must be deployed into the namespace where CSM for Observability is located to support the storage system metrics and topology deployments: +The following prerequisites must be deployed into the namespace where Container Storage Modules for Observability is located to support the storage system metrics and topology deployments: - Prometheus for scraping the metrics from the OTEL collector. - Grafana for visualizing the metrics from Prometheus and Topology services using custom dashboards. -- CSM for Observability will use secrets to get details about the storage systems used by the CSI drivers. These secrets should be copied from the namespaces where the drivers are deployed. +- Container Storage Modules for Observability will use secrets to get details about the storage systems used by the CSI drivers. These secrets should be copied from the namespaces where the drivers are deployed. - CSI PowerFlex driver uses the 'vxflexos-config' secret. - CSI PowerStore driver uses the 'powerstore-config' secret. - CSI PowerScale driver uses the 'isilon-creds' secret. @@ -27,12 +27,12 @@ The following prerequisites must be deployed into the namespace where CSM for Ob ## Deployment Architectures -CSM for Observability can be deployed to either direct storage system requests directly to the storage system or through the [CSM for Authorization](../../authorization) proxy. The CSI driver must be configured to route storage system requests through the CSM for Authorization proxy in order for CSM for Observability to do the same. +Container Storage Modules for Observability can be deployed to either direct storage system requests directly to the storage system or through the [Container Storage Modules for Authorization](../../authorization) proxy. The CSI driver must be configured to route storage system requests through the Container Storage Modules for Authorization proxy in order for Container Storage Modules for Observability to do the same. -### Default Deployment of CSM for Observability +### Default Deployment of Container Storage Modules for Observability -![Default Deployment](../obs_architecture1.png) +![Default Deployment](../../../../images/observability/obs_architecture1.png) -### Deployment of CSM for Observability with CSM for Authorization +### Deployment of Container Storage Modules for Observability with Container Storage Modules for Authorization -![CSM for Observability with CSM for Authorization](../obs_architecture2.png) +![Container Storage Modules for Observability with Container Storage Modules for Authorization](../../../../images/observability/obs_architecture2.png) diff --git a/content/v1/concepts/observability/metrics/_index.md b/content/v1/concepts/observability/metrics/_index.md new file mode 100644 index 0000000000..ce386dc0cc --- /dev/null +++ b/content/v1/concepts/observability/metrics/_index.md @@ -0,0 +1,28 @@ +--- +title: Metrics +linktitle: Metrics +weight: 2 +description: > + Container Storage Modules (CSM) for Observability Metrics +no_list: true +--- + +This section outlines the metrics collected by Container Storage Modules for Observability in the areas of I/O Performance and Storage Capacity. All metrics are available from the OpenTelemetry collector endpoint. Please see the [Container Storage Modules for Observability](../) for more information on deploying and configuring the OpenTelemetry collector. + + +{{< cardcontainer >}} + + {{< customcard link="./powerflex" imageNumber="3" title="PowerFlex" >}} + + + + {{< customcard link="./powermax" imageNumber="3" title="PowerMax" >}} + + + + {{< customcard link="./powerscale" imageNumber="3" title="PowerScale" >}} + + + {{< customcard link="./powerstore" imageNumber="3" title="PowerStore" >}} + +{{< /cardcontainer >}} diff --git a/content/v1/observability/metrics/powerflex.md b/content/v1/concepts/observability/metrics/powerflex.md similarity index 80% rename from content/v1/observability/metrics/powerflex.md rename to content/v1/concepts/observability/metrics/powerflex.md index 0b9b11045e..c61144e43c 100644 --- a/content/v1/observability/metrics/powerflex.md +++ b/content/v1/concepts/observability/metrics/powerflex.md @@ -3,10 +3,10 @@ title: PowerFlex Metrics linktitle: PowerFlex Metrics weight: 1 description: > - Dell Container Storage Modules (CSM) for Observability PowerFlex Metrics + Container Storage Modules (CSM) for Observability PowerFlex Metrics --- -This section outlines the metrics collected by the Container Storage Modules (CSM) Observability module for PowerFlex. The [Grafana reference dashboards](https://github.com/dell/karavi-observability/blob/main/grafana/dashboards/powerflex) for PowerFlex metrics can be uploaded to your Grafana instance. +This section outlines the metrics collected by the Container Storage Modules Observability module for PowerFlex. The [Grafana reference dashboards](https://github.com/dell/karavi-observability/blob/main/grafana/dashboards/powerflex) for PowerFlex metrics can be uploaded to your Grafana instance. ## I/O Performance Metrics @@ -14,7 +14,7 @@ Storage system I/O performance metrics (IOPS, bandwidth, latency) are available To disable these metrics, set the ```sdc_metrics_enabled``` field to false in helm/values.yaml. -The following I/O performance metrics are available from the OpenTelemetry collector endpoint. Please see the [CSM for Observability](../../) for more information on deploying and configuring the OpenTelemetry collector. +The following I/O performance metrics are available from the OpenTelemetry collector endpoint. Please see the [Container Storage Modules for Observability](../) for more information on deploying and configuring the OpenTelemetry collector. | Metric | Description | | - | - | @@ -37,7 +37,7 @@ Provides visibility into the total, used, and available capacity for a storage c To disable these metrics, set the ```storage_class_pool_metrics_enabled``` field to false in helm/values.yaml. -The following storage capacity metrics are available from the OpenTelemetry collector endpoint. Please see the [CSM for Observability](../../) for more information on deploying and configuring the OpenTelemetry collector. +The following storage capacity metrics are available from the OpenTelemetry collector endpoint. Please see the [Container Storage Modules for Observability](../) for more information on deploying and configuring the OpenTelemetry collector. | Metric | Description | | - | - | diff --git a/content/v1/observability/metrics/powermax.md b/content/v1/concepts/observability/metrics/powermax.md similarity index 89% rename from content/v1/observability/metrics/powermax.md rename to content/v1/concepts/observability/metrics/powermax.md index e3a7e061ce..7964c64a39 100644 --- a/content/v1/observability/metrics/powermax.md +++ b/content/v1/concepts/observability/metrics/powermax.md @@ -3,10 +3,10 @@ title: PowerMax Metrics linktitle: PowerMax Metrics weight: 1 description: > - Dell Container Storage Modules (CSM) for Observability PowerMax Metrics + Container Storage Modules (CSM) for Observability PowerMax Metrics --- -This section outlines the metrics collected by the Container Storage Modules (CSM) Observability module for PowerMax. The [Grafana reference dashboards](https://github.com/dell/karavi-observability/blob/main/grafana/dashboards/powermax) for PowerMax metrics can be uploaded to your Grafana instance. +This section outlines the metrics collected by the Container Storage Modules Observability module for PowerMax. The [Grafana reference dashboards](https://github.com/dell/karavi-observability/blob/main/grafana/dashboards/powermax) for PowerMax metrics can be uploaded to your Grafana instance. ## Prerequisites @@ -19,7 +19,7 @@ Storage system I/O performance metrics (IOPS, bandwidth, latency) are available To disable these metrics, set the ```performanceMetricsEnabled``` field under ```karaviMetricsPowerMax``` to false in helm/values.yaml. -The following I/O performance metrics are available from the OpenTelemetry collector endpoint. Please see the [CSM for Observability](../../) for more information on deploying and configuring the OpenTelemetry collector. +The following I/O performance metrics are available from the OpenTelemetry collector endpoint. Please see the [Container Storage Modules for Observability](../) for more information on deploying and configuring the OpenTelemetry collector. | Metric | Description | |-------------------------------------------------------------|---------------------------------------------------------------------------------------------------------| @@ -43,7 +43,7 @@ Provides visibility into the total, used, and available capacity for a storage c To disable these metrics, set the ```capacityMetricsEnabled``` field under ```karaviMetricsPowerMax``` to false in helm/values.yaml. -The following storage capacity metrics are available from the OpenTelemetry collector endpoint. Please see the [CSM for Observability](../../) for more information on deploying and configuring the OpenTelemetry collector. +The following storage capacity metrics are available from the OpenTelemetry collector endpoint. Please see the [Container Storage Modules for Observability](../) for more information on deploying and configuring the OpenTelemetry collector. | Metric | Description | |-------------------------------------------------|-------------------------------------------------------------------------| diff --git a/content/v1/observability/metrics/powerscale.md b/content/v1/concepts/observability/metrics/powerscale.md similarity index 82% rename from content/v1/observability/metrics/powerscale.md rename to content/v1/concepts/observability/metrics/powerscale.md index d06d168902..8213cd4b94 100644 --- a/content/v1/observability/metrics/powerscale.md +++ b/content/v1/concepts/observability/metrics/powerscale.md @@ -3,10 +3,10 @@ title: PowerScale Metrics linktitle: PowerScale Metrics weight: 1 description: > - Dell Container Storage Modules (CSM) for Observability PowerScale Metrics + Container Storage Modules (CSM) for Observability PowerScale Metrics --- -This section outlines the metrics collected by the Container Storage Modules (CSM) Observability module for PowerScale. The [Grafana reference dashboards](https://github.com/dell/karavi-observability/blob/main/grafana/dashboards/powerscale) for PowerScale metrics can be uploaded to your Grafana instance. +This section outlines the metrics collected by the Container Storage Modules Observability module for PowerScale. The [Grafana reference dashboards](https://github.com/dell/karavi-observability/blob/main/grafana/dashboards/powerscale) for PowerScale metrics can be uploaded to your Grafana instance. ## I/O Performance Metrics @@ -14,7 +14,7 @@ Storage system I/O performance metrics (IOPS, bandwidth) are available by defaul To disable these metrics, set the ```performanceMetricsEnabled``` field to false in helm/values.yaml. -The following I/O performance metrics are available from the OpenTelemetry collector endpoint. Please see the [CSM for Observability](../../) for more information on deploying and configuring the OpenTelemetry collector. +The following I/O performance metrics are available from the OpenTelemetry collector endpoint. Please see the [Container Storage Modules for Observability](../) for more information on deploying and configuring the OpenTelemetry collector. | Metric | Description | |--------------------------------------------------------------------|-------------------------------------------------------------------------------------| @@ -30,7 +30,7 @@ Provides visibility into the total, used, and available capacity for PowerScale To disable these metrics, set the ```capacityMetricsEnabled``` field to false in helm/values.yaml. -The following storage capacity metrics are available from the OpenTelemetry collector endpoint. Please see the [CSM for Observability](../../) for more information on deploying and configuring the OpenTelemetry collector. +The following storage capacity metrics are available from the OpenTelemetry collector endpoint. Please see the [Container Storage Modules for Observability](../) for more information on deploying and configuring the OpenTelemetry collector. | Metric | Description | |---------------------------------------------------|------------------------------------------------------------------| diff --git a/content/v1/observability/metrics/powerstore.md b/content/v1/concepts/observability/metrics/powerstore.md similarity index 83% rename from content/v1/observability/metrics/powerstore.md rename to content/v1/concepts/observability/metrics/powerstore.md index f9e06ed37f..28a9d1da81 100644 --- a/content/v1/observability/metrics/powerstore.md +++ b/content/v1/concepts/observability/metrics/powerstore.md @@ -3,10 +3,10 @@ title: PowerStore Metrics linktitle: PowerStore Metrics weight: 1 description: > - Dell Container Storage Modules (CSM) for Observability PowerStore Metrics + Container Storage Modules (CSM) for Observability PowerStore Metrics --- -This section outlines the metrics collected by the Container Storage Modules (CSM) Observability module for PowerStore. The [Grafana reference dashboards](https://github.com/dell/karavi-observability/blob/main/grafana/dashboards/powerstore) for PowerStore metrics can be uploaded to your Grafana instance. +This section outlines the metrics collected by the Container Storage Modules Observability module for PowerStore. The [Grafana reference dashboards](https://github.com/dell/karavi-observability/blob/main/grafana/dashboards/powerstore) for PowerStore metrics can be uploaded to your Grafana instance. ## I/O Performance Metrics @@ -14,7 +14,7 @@ Storage system I/O performance metrics (IOPS, bandwidth, latency) are available To disable these metrics, set the ```karaviMetricsPowerstore.volumeMetricsEnabled``` field to false in helm/values.yaml. -The following I/O performance metrics are available from the OpenTelemetry collector endpoint. Please see the [CSM for Observability](../../) for more information on deploying and configuring the OpenTelemetry collector. +The following I/O performance metrics are available from the OpenTelemetry collector endpoint. Please see the [Container Storage Modules for Observability](../) for more information on deploying and configuring the OpenTelemetry collector. | Metric | Description | | - | - | @@ -41,7 +41,7 @@ Provides visibility into the total, used, and available capacity for a storage c To disable these metrics, set the ```enable_powerstore_metrics``` field to false in helm/values.yaml. -The following storage capacity metrics are available from the OpenTelemetry collector endpoint. Please see the [CSM for Observability](../../) for more information on deploying and configuring the OpenTelemetry collector. +The following storage capacity metrics are available from the OpenTelemetry collector endpoint. Please see the [Container Storage Modules for Observability](../) for more information on deploying and configuring the OpenTelemetry collector. | Metric | Description | | - | - | diff --git a/content/v1/observability/troubleshooting/_index.md b/content/v1/concepts/observability/troubleshooting/_index.md similarity index 88% rename from content/v1/observability/troubleshooting/_index.md rename to content/v1/concepts/observability/troubleshooting/_index.md index be4245fff8..43c9df01e3 100644 --- a/content/v1/observability/troubleshooting/_index.md +++ b/content/v1/concepts/observability/troubleshooting/_index.md @@ -1,6 +1,7 @@ --- title: "Troubleshooting" -linkTitle: "Troubleshooting" +linkTitle: "Troubleshooting" +toc_hide: true weight: 4 Description: > Troubleshooting guide @@ -89,7 +90,6 @@ To resolve this issue, we need to configure the client to be aware of the karavi If we supplied a custom certificate during installing karavi-topology, we can simply open the `.crt` and copy the text. However, if it was assigned by cert-manager, you can get a copy of the certificate by running the following `kubectl` command on the clusters. ```console - kubectl -n get secret karavi-topology-tls -o jsonpath='{.data.tls\.crt}' | base64 -d ``` ``` @@ -112,7 +112,7 @@ A workaround on most browsers is to accept the `karavi-topology` certificate by
Deploy certificate with new Grafana instance - Please follow the steps in Sample Grafana Deployment but attach the certificate to your `grafana-values.yaml` before deploying. The file should look like: + Please follow the steps in Sample Grafana Deployment but attach the certificate to your `grafana-values.yaml` before deploying. The file should look like: ```yaml # grafana-values.yaml @@ -199,9 +199,9 @@ extraConfigmapMounts: []
-### How can I diagnose an issue with CSM for Observability? +### How can I diagnose an issue with Container Storage Modules for Observability? -Once you have attempted to install CSM for Observability to your Kubernetes or OpenShift cluster, the first step in troubleshooting is locating the problem. +Once you have attempted to install Container Storage Modules for Observability to your Kubernetes or OpenShift cluster, the first step in troubleshooting is locating the problem. Get information on the state of your Pods. ```console @@ -222,7 +222,7 @@ More information for viewing logs can be found [here](../#viewing-logs). ### How can I create a ServiceMonitor object for Prometheus if I'm using Rancher monitoring stack? -The ServiceMonitor allows us to define how a set of services should be monitored by Prometheus. Please see our [prometheus](../../deployment/helm/modules/installation/observability#prometheus) documentation for creating a ServiceMonitor. +The ServiceMonitor allows us to define how a set of services should be monitored by Prometheus. Please see our [prometheus](v1/getting-started/installation/kubernetes/powermax/helm/csm-modules/observability/postinstallation/#prometheus) documentation for creating a ServiceMonitor. ### How can I debug and troubleshoot issues with Kubernetes? @@ -230,13 +230,13 @@ The ServiceMonitor allows us to define how a set of services should be monitored * For tips on debugging your cluster, please see this [troubleshooting guide](https://kubernetes.io/docs/tasks/debug-application-cluster/debug-cluster/). -### How can I troubleshoot latency problems with CSM for Observability? +### How can I troubleshoot latency problems with Container Storage Modules for Observability? -CSM for Observability is instrumented to report trace data to [Zipkin](https://zipkin.io/). Please see [Tracing](../../deployment/helm/modules/installation/observability#tracing) for more information on enabling tracing for CSM for Observability. +CContainer Storage ModuleSM for Observability is instrumented to report trace data to [Zipkin](https://zipkin.io/). Please see [Tracing](v1/getting-started/installation/kubernetes/powermax/helm/csm-modules/observability/postinstallation/#tracing) for more information on enabling tracing for CSM for Observability. ### Why does the Observability installation timeout with pods stuck in 'ContainerCreating'/'CrashLoopBackOff'/'Error' stage? -Check the pods in the CSM for Observability namespace. If the pod starting with 'karavi-observability-cert-manager-cainjector-*' is in 'CrashLoopBackOff' or 'Error" stage with a number of restarts, check if the logs for that pod show the below error: +Check the pods in the Container Storage Modules for Observability namespace. If the pod starting with 'karavi-observability-cert-manager-cainjector-*' is in 'CrashLoopBackOff' or 'Error" stage with a number of restarts, check if the logs for that pod show the below error: ```console kubectl logs -n $namespace $cert-manager-cainjector-podname ``` @@ -257,7 +257,7 @@ MountVolume.SetUp failed for volume "tls-secret" : secret "otel-collector-tls" n Unable to attach or mount volumes: unmounted volumes=[tls-secret], unattached volumes=[vxflexos-config-params vxflexos-config tls-secret karavi-metrics-powerflex-configmap kube-api-access-4fqgl karavi-authorization-config proxy-server-root-certificate]: timed out waiting for the condition ``` -### Why do I see 'Failed calling webhook' error when reinstalling CSM for Observability? +### Why do I see 'Failed calling webhook' error when reinstalling Container Storage Modules for Observability? This warning can occur when a user uninstalls Observability by deleting the Kubernetes namespace before properly cleaning up by running `helm delete` on the Observability Helm installation. This results in the credential manager failing to properly integrate with Observability on future installations. The user may see the following error in the module pods upon reinstallation: ``` diff --git a/content/v1/concepts/replication/_index.md b/content/v1/concepts/replication/_index.md new file mode 100644 index 0000000000..fe9cf35a53 --- /dev/null +++ b/content/v1/concepts/replication/_index.md @@ -0,0 +1,118 @@ +--- +title: 'Replication' +linkTitle: 'Replication' +weight: 6 +no_list: true +Description: > + Container Storage Modules (CSM) for Replication +--- + +
+
+ +Replication aims to bring Replication & Disaster Recovery capabilities of Dell +Storage Arrays to Kubernetes clusters. It helps you 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 of both planned and unplanned +migration. + +## Replication Capabilities + +Replication provides the following capabilities: + +{{}} + +| Capability | PowerStore | PowerScale | PowerFlex | PowerMax | Unity | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |:----------:| :--------: | :-------: |:--------:| :---: | +|
Replicate data using native storage array based replication | Yes | Yes | Yes | Yes | No | +|
Asynchronous file volume replication | Yes | Yes | No | No | No | +|
Asynchronous block volume replication | N/A | N/A | Yes | Yes | No | +|
Synchronous file volume replication | No | No | No | No | No | +|
Synchronous block volume replication | N/A | N/A | No | Yes | No | +|
Shared NFS Volumes | Yes | N/A | N/A | N/A | N/A | +|
Active-Active (Metro) block volume replication | N/A | N/A | No | Yes | No | +|
Active-Active (Metro) file volume replication | No | No | No | No | No | +|
Create `PersistentVolume` objects in the cluster representing the replicated volume | Yes | Yes | Yes | Yes | No | +|
Create `DellCSIReplicationGroup` objects in the cluster | Yes | Yes | Yes | Yes | No | +|
Failover & Reprotect applications using the replicated volumes | Yes | Yes | Yes | Yes | No | +|
Controller reattach failover PV to PVC automatically in a stretched cluster | Yes | Yes | Yes | Yes | No | +|
Allow PVC creation on target(multi cluster), claimRef update on remote PV (both single & multi cluster) | Yes | Yes | Yes | Yes | No | +|
Online Volume Expansion for replicated volumes | No | No | Yes | Yes | No | +|
Provides a command line utility - [repctl](tools) for configuring & managing replication related resources across multiple clusters | Yes | Yes | Yes | Yes | No | + +{{
}} + +> _**NOTE**_: To add or delete PVs on an existing SYNC Replication Group in +> PowerStore, the user needs to pause, perform the operation and then resume the +> replication group. For more details, please refer to the troubleshooting +> section. + +> _**NOTE**_: To delete the last PV from a SYNC Replication Group in PowerStore, +> the user needs to first unassign the protection policy from the corresponding +> volume group on the PowerStore Manager UI. For more details, please refer to +> the troubleshooting section. + +## Details + +As on the storage arrays, all replication related Kubernetes entities are +required to be created in pairs - + +1. Pair of Kubernetes Clusters +2. Pair of replication enabled Storage classes +3. Pair of PersistentVolumes representing the replicated pair on the storage + array +4. Pair of [DellCSIReplicationGroup](architecture/#dellcsireplicationgroup) + objects representing the replicated protection groups on the storage array + +You can also use a single stretched Kubernetes cluster for protecting your +applications. Even in this [topology](cluster-topologies), the rest of the +objects still exist in source/target pairs. + +### What it does not do + +- Replicate application manifests within/across clusters. +- Stop applications before the planned/unplanned migration. +- Start applications after the migration. +- Replicate `PersistentVolumeClaim` objects within single cluster. +- Replication with METRO mode does not need replicator sidecar and common + replication controller. +- Different namespaces cannot share the same RDF group for creating volumes with + ASYNC mode for PowerMax. +- Same RDF group cannot be shared across different replication modes for + PowerMax. +- Replication support for multiple drivers installed on same Kubernetes cluster. + +### QuickStart + +1. Install all required components: + + - Enable replication during CSI driver installation + - Install Replication Controller & repctl + +2. Create replication enabled storage classes +3. Create `PersistentVolumeClaim` using the replication enabled storage class + +### How it works + +At a high level, the following happens when you create a `PersistentVolumeClaim` +object using a replication enabled storage class - + +1. CSI driver creates protection group on the storage array (if required) +2. CSI driver creates the volume and adds it to the protection group. There will + be a corresponding group and pair on the remote storage array +3. A `DellCSIReplicationGroup` object is created in the cluster representing the + protection group on the storage array +4. A replica of the `PersistentVolume` & `DellCSIReplicationGroup` is created +5. A replica of the `PersistentVolumeClaim` is created on target cluster (only in case of `multi-cluster`) + + +You can refer this [page](architecture) for more details about the architecture. + +Once the `DellCSIReplicationGroup` & `PersistentVolume` objects have been +replicated across clusters (or within the same cluster), you can exercise the +general Disaster Recovery workflows - + +1. Planned Migration to the target cluster/array +2. Unplanned Migration to the target cluster/array +3. Reprotect volumes at the target cluster/array +4. Maintenance activities like - Suspend, Resume, Establish replication \ No newline at end of file diff --git a/content/v1/replication/architecture/_index.md b/content/v1/concepts/replication/architecture/_index.md similarity index 77% rename from content/v1/replication/architecture/_index.md rename to content/v1/concepts/replication/architecture/_index.md index c8ffa05df6..da71adc4d1 100644 --- a/content/v1/replication/architecture/_index.md +++ b/content/v1/concepts/replication/architecture/_index.md @@ -3,17 +3,18 @@ title: Architecture linktitle: Architecture weight: 2 description: > - High level architecture for CSM for Replication + High level architecture for Container Storage Modules for Replication +no_list: true --- ## Replication design and architecture -![arch](../arch.png) +![arch](../../../../images/replication/arch.png) -Container Storage Modules (CSM) for Replication project consists of the following components: +Container Storage Modules for Replication project consists of the following components: * `DellCSIReplicationGroup`, a Kubernetes [Custom Resource](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/). -* CSM Replication controller which replicates the resources across (or within) Kubernetes clusters. -* CSM Replication sidecar container which is part of each CSI driver controller pod. +* Container Storage Modules Replication controller which replicates the resources across (or within) Kubernetes clusters. +* Container Storage Modules Replication sidecar container which is part of each CSI driver controller pod. * repctl - Multi cluster Kubernetes client for managing replication related objects. ### DellCSIReplicationGroup @@ -73,13 +74,13 @@ status: ``` Here is a diagram representing how the _state_ of the CustomResource changes based on actions: -![state](../state.png) +![state](../../../../images/replication/state.png) ### CSM Replication Sidecar -![sidecar](../sidecar.png) +![sidecar](../../../../images/replication/sidecar.png) -CSM Replication sidecar is deployed as sidecar container in _each_ CSI driver's controller pod. This container is similar to Kubernetes CSI Sidecar +Container Storage Modules Replication sidecar is deployed as sidecar container in _each_ CSI driver's controller pod. This container is similar to Kubernetes CSI Sidecar [containers](https://kubernetes-csi.github.io/docs/sidecar-containers.html) and runs a Controller Manager which manages the following controllers: * PersistentVolume(PV) Controller @@ -100,9 +101,9 @@ It is primarily responsible for the following: * Updates to the status sub resource ### CSM Replication Controller -![common](../common.png) +![common](../../../../images/replication/common.png) -CSM Replication Controller is a Kubernetes application deployed independently of CSI drivers and is responsible for +Container Storage Modules Replication Controller is a Kubernetes application deployed independently of CSI drivers and is responsible for the communication between Kubernetes clusters. The details about the clusters it needs to connect to are provided in the form of a ConfigMap with references to secrets @@ -123,8 +124,19 @@ remote protection groups on the backend storage array. This controller can also Both the PV & RG objects in the remote cluster have extra metadata associated with them in form of annotations & labels. This metadata includes information about the respective objects in the source cluster. -The PVC objects are never replicated across the clusters. Instead, the remote PV objects have annotations related to the -source PVC objects. This information can be easily used to create the PVCs whenever required using `repctl` or `kubectl`. +`multi-cluster` The PVC objects are replicated across the clusters (when `allowPvcCreationOnTarget` or `REPLICATION_ALLOW_PVC_CREATION_ON_TARGET` is set to `true`). + +`single cluster` claimRef params is updated on remote PV with `name` and `namespace` as `reserved` by default to prevent the remote PV being available to everyone. +Remote PV can be used by editing/removing the PV claimRef object. +```yaml +claimRef: + apiVersion: v1 + kind: PersistentVolumeClaim + name: reserved + namespace: reserved +``` + +In addition, the remote PV objects have annotations related to the source PVC objects. This information can be easily used to create the PVCs whenever required using `repctl` or `kubectl`. ### Supported Cluster Topologies Click [here](../cluster-topologies) for details for the various types of supported cluster topologies diff --git a/content/v1/replication/architecture/powerscale.md b/content/v1/concepts/replication/architecture/powerscale.md similarity index 89% rename from content/v1/replication/architecture/powerscale.md rename to content/v1/concepts/replication/architecture/powerscale.md index 439d8ce03c..06bcfb3435 100644 --- a/content/v1/replication/architecture/powerscale.md +++ b/content/v1/concepts/replication/architecture/powerscale.md @@ -20,15 +20,15 @@ If irregular Kubernetes cluster/storage array behavior causes the source and tar ### Performing Failover/Failback/Reprotect on PowerScale -Failover, Failback, and Reprotect one-step operations are not natively supported on PowerScale, and are performed as a series of steps in CSM replication. When any of these operations are triggered, through the use of `repctl` or by editing the RG, the steps below are performed on the PowerScale storage arrays. +Failover, Failback, and Reprotect one-step operations are not natively supported on PowerScale, and are performed as a series of steps in Container Storage Modules replication. When any of these operations are triggered, through the use of `repctl` or by editing the RG, the steps below are performed on the PowerScale storage arrays. #### Failover - Halt Replication and Allow Writes on Target -Steps for performing Failover can be found in the Tools page under [Executing Actions.](https://dell.github.io/csm-docs/docs/replication/tools/#executing-actions) There are some PowerScale-specific considerations to keep in mind: +Steps for performing Failover can be found in the Tools page under [Executing Actions.](v1/tooling/repctl/#executing-actions) There are some PowerScale-specific considerations to keep in mind: - Failover on PowerScale does NOT halt writes on the source side. It is recommended that the storage administrator or end user manually **stop writes** to ensure no data is lost on the source side in the event of future failback. - In the case of unplanned failover, the SyncIQ policy on the source PowerScale array will be left enabled and set to its previously defined `When source is modified` sync schedule. Storage admins **must** manually disable this SyncIQ policy when bringing the failed-over source array back online, or unexpected behavior may occur. -The below steps are performed by CSM replication to perform a failover. +The below steps are performed by Container Storage Modules replication to perform a failover. 1. Syncing data from source to target one final time before transition. *(planned failover only)* 2. Disabling the SyncIQ policy on the source PowerScale storage array. *(planned failover only)* @@ -36,7 +36,7 @@ The below steps are performed by CSM replication to perform a failover. #### Failback - Discard Target -Performing failback and discarding changes made to the target is to simply resume synchronization from the source. The steps CSM replication is following to perform this operation are as follows: +Performing failback and discarding changes made to the target is to simply resume synchronization from the source. The steps Container Storage Modules replication is following to perform this operation are as follows: 1. Editing the SyncIQ policy on the source PowerScale array's schedule from `When source is modified` to `Manual`. 2. Performing `Actions > Disallow writes` on the target PowerScale array's Local Target policy that matches the SyncIQ policy undergoing failback. @@ -59,7 +59,7 @@ Information on the methodology for performing a failback while taking changes ma #### Reprotect - Set Original Target as New Source -A reprotect operation is, in essence, doing away with the original source-target relationship and establishing a new one in the reverse direction. This is done **only after** failing over to the original target array is complete, and the original source array is up and ready to be made into a new replication destination. To accomplish this, CSM replication performs the following steps: +A reprotect operation is, in essence, doing away with the original source-target relationship and establishing a new one in the reverse direction. This is done **only after** failing over to the original target array is complete, and the original source array is up and ready to be made into a new replication destination. To accomplish this, Container Storage Modules replication performs the following steps: 1. Deleting the SyncIQ policy on the original source PowerScale array. 2. Creating a new SyncIQ policy on the original target PowerScale array. This policy establishes the original target as a new *source*, and sets its replication destination to the original source (which can be considered the new *target*.) \ No newline at end of file diff --git a/content/v1/concepts/replication/claimRef.md b/content/v1/concepts/replication/claimRef.md new file mode 100644 index 0000000000..2a51bcba45 --- /dev/null +++ b/content/v1/concepts/replication/claimRef.md @@ -0,0 +1,42 @@ +--- +title: Allow PVC creation on target cluster & claimRef update on remote PV +linktitle: Allow PVC creation on target cluster & claimRef update on remote PV +weight: 6 +description: > + Allow PVC creation on target cluster & claimRef update on remote PV +--- + +Enabled: It creates a corresponding PVC on target cluster same as source cluster. + Applicable only on multi cluster scenarios. + +Disabled: It updates `claimRef` on remote PV, so it cannot be claimed unless `claimRef` is removed or updated with expected claim details. +```yaml +claimRef: + apiVersion: v1 + kind: PersistentVolumeClaim + name: reserved + namespace: reserved +``` + +## Prerequisites + +This feature is disabled by default. + +### Users can enable it at the time of installation + +* For installation done via `helm-charts`, user can set the argument `allowPvcCreationOnTarget` to `true` or `false` in `values.yaml`. + You can refer to the following selection: + + ```yaml + allowPvcCreationOnTarget: "true" + ``` + +* For installation done via csm-operator, user can set the argument `REPLICATION_ALLOW_PVC_CREATION_ON_TARGET` to `true` or `false` in sample files. + eg. `storage_csm_powerflex_xxxxx.yaml` You can refer to the following selection: + + ```yaml + - name: "REPLICATION_ALLOW_PVC_CREATION_ON_TARGET" + value: "true" + ``` + +* User can enable/disable this feature by setting the argument `allow-pvc-creation-on-target` to `true` or `false` in `deploy/controller.yaml`. diff --git a/content/v1/replication/cluster-topologies.md b/content/v1/concepts/replication/cluster-topologies.md similarity index 81% rename from content/v1/replication/cluster-topologies.md rename to content/v1/concepts/replication/cluster-topologies.md index 95ecb79a5c..18ebec4bc5 100644 --- a/content/v1/replication/cluster-topologies.md +++ b/content/v1/concepts/replication/cluster-topologies.md @@ -8,7 +8,7 @@ Description: > ## Replication Cluster Topologies -Container Storage Modules (CSM) for Replication project supports the replication of volumes within a single Kubernetes cluster or between two different +Container Storage Modules for Replication project supports the replication of volumes within a single Kubernetes cluster or between two different Kubernetes clusters. The replication controller can support multiple clusters at once, but a single volume can be replicated to a maximum of two clusters. Each cluster should be assigned the unique identifier `clusterId`. The rules for naming are as follows: @@ -38,7 +38,7 @@ Note that the `targets` parameter is left empty since we don't require any targe This also means that you don't need to create any Secrets that contain connection information to such clusters, since in this use case, we are limited to a single cluster. -You can find more info about configs and secrets for cluster communication in [configmaps-secrets](../../deployment/helm/modules/installation/replication/configmap-secrets/). +You can find more info about configs and secrets for cluster communication in [configmaps-secrets](../../../getting-started/installation/helm/modules/replication/configmap-secrets/). #### Storage Class Configuration @@ -48,7 +48,7 @@ be set to `self` to indicate that we want to replicate the volume inside the cur Also, you would need to create another storage class in the same cluster that would serve as a `target` storage class. This means that all replicated volumes would be derived from it. Its `replication.storage.dell.com/remoteClusterID` parameter should be also set to `self`. -You can find out more about replication StorageClasses and replication specific parameters in [storageclasses](../../deployment/helm/modules/installation/replication/storageclasses). +You can find out more about replication StorageClasses and replication specific parameters in [storageclasses](../../../getting-started/installation/helm/modules/replication/storageclasses). #### Replicated Resources @@ -57,7 +57,7 @@ ReplicationGroups) would be created in the same cluster with the `replicated-` p ```shell kubectl get pv ``` -``` +```terminal NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS STORAGECLASS AGE csivol-06d51bfcc5 3Gi RWO Retain Bound powerstore-replication 23s replicated-csivol-06d51bfcc5 3Gi RWO Retain Available powerstore-replication-tgt 23s @@ -65,7 +65,7 @@ replicated-csivol-06d51bfcc5 3Gi RWO Retain Availa ```shell kubectl get rg ``` -``` +```terminal NAME AGE STATE LINK STATE LAST LINKSTATE UPDATE replicated-rg-240721b0-12fb-4151-8dd8-94794ae2493e 34s Ready SYNCHRONIZED 2021-08-03T11:23:18Z rg-240721b0-12fb-4151-8dd8-94794ae2493e 34s Ready SYNCHRONIZED 2021-08-03T11:22:18Z @@ -95,7 +95,7 @@ metadata: ``` Note that target cluster information contains a field called `secretRef`. This field points to a secret available in the current cluster that contains connection information of `cluster-B` in the form of a kubeconfig file. -You can find more information about how to create such secrets in [configmaps-secrets](../../deployment/helm/modules/installation/replication/configmap-secrets/#communication-between-clusters). +You can find more information about how to create such secrets in [configmaps-secrets](../../../getting-started/installation/helm/modules/replication/configmap-secrets/#communication-between-clusters). #### Storage Class Configuration @@ -106,7 +106,7 @@ want to replicate your volumes. For multi-cluster replication, we can choose one of the target cluster ids we specified in ConfigMap. In our example replication parameter, the target cluster id should be equal to `cluster-B`. -You can find more information about other replication parameters available in storage classes [here](../../deployment/helm/modules/installation/replication/storageclasses#common-parameters). +You can find more information about other replication parameters available in storage classes [here](../../../getting-started/installation/helm/modules/replication/storageclasses#common-parameters). #### Replicated Resources @@ -118,14 +118,21 @@ created in both `source` and `target` clusters under the same names. For example ```shell kubectl get pv ``` -``` +```terminal NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS STORAGECLASS AGE csivol-06d51bfcc5 3Gi RWO Retain Bound powerstore-replication 23s ``` ```shell -kubectl get rg +kubectl get pvc +``` +```terminal +NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS VOLUMEATTRIBUTESCLASS AGE +test-pvc Bound csivol-06d51bfcc5 3Gi RWO powerstore-replication 23s ``` +```shell +kubectl get rg ``` +```terminal NAME AGE STATE LINK STATE LAST LINKSTATE UPDATE rg-240721b0-12fb-4151-8dd8-94794ae2493e 34s Ready SYNCHRONIZED 2021-08-03T11:22:18Z ``` @@ -133,14 +140,21 @@ rg-240721b0-12fb-4151-8dd8-94794ae2493e 34s Ready SYNCHRONIZED 2021-08-0 ```shell kubectl get pv ``` -``` +```terminal NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS STORAGECLASS AGE csivol-06d51bfcc5 3Gi RWO Retain Available powerstore-replication 18s ``` ```shell -kubectl get rg +kubectl get pvc ``` +```terminal +NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS VOLUMEATTRIBUTESCLASS AGE +test-pvc Bound csivol-06d51bfcc5 3Gi RWO powerstore-replication 18s +``` +```shell +kubectl get rg ``` +```terminal NAME AGE STATE LINK STATE LAST LINKSTATE UPDATE rg-240721b0-12fb-4151-8dd8-94794ae2493e 30s Ready SYNCHRONIZED 2021-08-03T11:22:18Z ``` diff --git a/content/v1/replication/disaster-recovery.md b/content/v1/concepts/replication/disaster-recovery.md similarity index 93% rename from content/v1/replication/disaster-recovery.md rename to content/v1/concepts/replication/disaster-recovery.md index dda2adb82e..fad7191516 100644 --- a/content/v1/replication/disaster-recovery.md +++ b/content/v1/concepts/replication/disaster-recovery.md @@ -22,7 +22,7 @@ b. Execute "reprotect" action on selected ReplicationGroup which will resume the ```bash ./repctl --rg rg-id reprotect --at new-source-cluster-name ``` -![state_changes1](../state_changes1.png) +![state_changes1](../../../../images/replication/state_changes1.png) ### Unplanned Migration to the target cluster/array This scenario is the typical choice when a site goes down: @@ -41,7 +41,7 @@ c. Execute "reprotect" action on selected ReplicationGroup which will resume the ```bash ./repctl --rg rg-id reprotect --at new-source-cluster-name ``` -![state_changes2](../state_changes2.png) +![state_changes2](../../../../images/replication/state_changes2.png) > _**NOTE**_: When users do Failover and Failback, the tests pods on the source cluster may go "CrashLoopOff" state since it will try to remount the same volume which is already mounted. To get around this problem, bring down the number of replicas to 0 and then after that is done, bring it up to 1. diff --git a/content/v1/concepts/replication/high-availability/_index.md b/content/v1/concepts/replication/high-availability/_index.md new file mode 100644 index 0000000000..1bad279a00 --- /dev/null +++ b/content/v1/concepts/replication/high-availability/_index.md @@ -0,0 +1,20 @@ +--- +title: "High Availability" +linkTitle: "High Availability" +weight: 6 +no_list: true +Description: > + Support for High Availability of Volumes +--- +One of the goals of high availability is to eliminate single points of failure in a storage system. In Kubernetes, this can mean that a single PV represents multiple read/write enabled volumes on different arrays, located at reasonable distances with both the volumes in sync with each other. If one of the volumes goes down, there will still be another volume available for read and write. This kind of high availability can be achieved by using Metro replication mode, supported by PowerMax and PowerStore arrays. + + + +{{< cardcontainer >}} + + {{< customcard link="./powermax-metro" title="PowerMax Metro" imageNumber="3">}} + + {{< customcard link="./powerstore-metro" title="PowerStore Metro" imageNumber="3">}} + + +{{< /cardcontainer >}} \ No newline at end of file diff --git a/content/v3/replication/high-availability.md b/content/v1/concepts/replication/high-availability/powermax-metro.md similarity index 58% rename from content/v3/replication/high-availability.md rename to content/v1/concepts/replication/high-availability/powermax-metro.md index 315f8d888a..daa0cb53f2 100644 --- a/content/v3/replication/high-availability.md +++ b/content/v1/concepts/replication/high-availability/powermax-metro.md @@ -1,26 +1,25 @@ --- -title: High Availability -linktitle: High Availability -weight: 5 +title: PowerMax Metro +linktitle: PowerMax Metro +weight: 2 description: > High Availability support for CSI PowerMax --- -One of the goals of high availability is to eliminate single points of failure in a storage system. In Kubernetes, this can mean that a single PV represents multiple read/write enabled volumes on different arrays, located at reasonable distances with both the volumes in sync with each other. If one of the volumes goes down, there will still be another volume available for read and write. This kind of high availability can be achieved by using SRDF Metro replication mode, supported only by PowerMax arrays. ## SRDF Metro Architecture -![metro architecture diagram](../metro.png) +![metro architecture diagram](../../../../../images/replication/powermax-metro.png) In SRDF metro configurations: * R2 devices are Read/Write accessible to application hosts. -* Application host can write to both the R1 and R2 sides of the device pair. +* The application host can write to both the R1 and R2 sides of the device pair. * R2 devices assume the same external device identity(geometry, device WWN) as the R1 devices. All the above characteristic makes SRDF metro best suited for the scenarios in which high availability of data is desired. -With respect to Kubernetes, the SRDF metro mode works in single cluster scenarios. In the metro, both the arrays—[arrays with SRDF metro link setup between them](../../deployment/helm/modules/installation/replication/powermax/#on-storage-array)—involved in the replication are managed by the same `csi-powermax` driver. The replication is triggered by creating a volume using a `StorageClass` with metro-related parameters. -The driver on receiving the metro-related parameters in the `CreateVolume` call creates a metro replicated volume and the details about both the volumes are returned in the volume context to the Kubernetes cluster. So, the `PV` created in the process represents a pair of metro replicated volumes. When a `PV`, representing a pair of metro replicated volumes, is claimed by a pod, the host treats each of the volumes represented by the single `PV` as a separate data path. The switching between the paths, to read and write the data, is managed by the multipath driver. The switching happens automatically, as configured by the user—in round-robin fashion or otherwise—or it can happen if one of the paths goes down. For details on Linux multipath driver setup, [click here](../../deployment/helm/drivers/installation/powermax#linux-multipathing-requirements). +With respect to Kubernetes, the SRDF metro mode works in single cluster scenarios. In the metro, both the arrays—[arrays with SRDF metro link setup between them](../../../../getting-started/installation/kubernetes/powermax/helm/csm-modules/replication/csi-driver/#on-storage-array)—involved in the replication are managed by the same `csi-powermax` driver. The replication is triggered by creating a volume using a `StorageClass` with metro-related parameters. +The driver on receiving the metro-related parameters in the `CreateVolume` call creates a metro replicated volume and the details about both the volumes are returned in the volume context to the Kubernetes cluster. The Persistent Volume (PV) created in the process represents a pair of metro replicated volumes. When a `PV`, representing a pair of metro replicated volumes, is claimed by a pod, the host treats each of the volumes represented by the single `PV` as a separate data path. The switching between the paths, to read and write the data, is managed by the multipath driver. The switching happens automatically, as configured by the user—in round-robin fashion or otherwise—or when one of the paths goes down. For details on Linux multipath driver setup, [click here](../../../../getting-started/installation/kubernetes/powermax/prerequisite/#linux-multipathing-requirements). -The creation of volumes in SRDF metro mode doesn't involve the replication sidecar or the common controller, nor does it cause the creation of any replication related custom resources; it just needs a `csi-powermax` driver that implements the `CreateVolume` gRPC endpoint with SRDF metro capability for it to work. +The creation of volumes in SRDF metro mode doesn't involve the replication sidecar or the common controller, nor does it cause the creation of any replication related custom resources. It just needs the `csi-powermax` driver that implements the `CreateVolume` gRPC endpoint with SRDF metro capability for it to work. ### Usage The metro replicated volumes are created just like the normal volumes, but the `StorageClass` contains some diff --git a/content/v1/concepts/replication/high-availability/powerstore-metro.md b/content/v1/concepts/replication/high-availability/powerstore-metro.md new file mode 100644 index 0000000000..8777869bc4 --- /dev/null +++ b/content/v1/concepts/replication/high-availability/powerstore-metro.md @@ -0,0 +1,102 @@ +--- +title: PowerStore Metro +linktitle: PowerStore Metro +weight: 2 +description: > + High Availability support for CSI PowerStore +--- + +## PowerStore Metro Architecture + +![metro architecture diagram](../../../../../images/replication/metro.png) + +In PowerStore Metro configurations: +* The application host can write data to both sides of the Metro volume. +* The devices in the Metro volume are configured with the same external device identity, including the geometry and device WWN. +* When Metro is configured on the volume, the PowerStore system from which the metro source is configured is automatically set as preferred and the other is configured as non-preferred. + +With respect to Kubernetes, the PowerStore Metro mode works in single cluster scenarios. When utilizing Metro, both the arrays—[arrays with metro link setup between them](../../../../getting-started/installation/kubernetes/powerstore/helm/csm-modules/replication/csi-driver/#on-storage-array)—involved in the replication are managed by the same `csi-powerstore` driver. The replication is triggered by creating a volume using a `StorageClass` with metro-related parameters. +The driver on receiving the metro-related parameters in the `CreateVolume` call creates a metro replicated volume and the details about both the volumes are returned in the volume context to the Kubernetes cluster. The Persistent Volume (PV) created in the process represents a pair of metro replicated volumes. When a `PV`, representing a pair of metro replicated volumes, is claimed by a pod, the host treats each of the volumes represented by the single `PV` as a separate data path. The switching between the paths, to read and write the data, is managed by the multipath driver. The switching happens automatically, as configured by the user—in round-robin fashion or otherwise—or when one of the paths goes down. For details on Linux multipath driver setup, [click here](../../../../getting-started/installation/kubernetes/powerstore/prerequisite/#linux-multipathing-requirements). + +The creation of volumes in metro mode doesn't involve the replication sidecar or the common replication controller, nor does it cause the creation of any replication related custom resources. It just needs the `csi-powerstore` driver that implements the `CreateVolume` gRPC endpoint with metro capability for it to work. + +### Host Registration for Powerstore Metro +CSM PowerStore supports registering worker nodes as new hosts using `Metro Connectivity`. To enable this, you need to set the `metroTopology` to `Uniform` in the array's secret configuration. + +To manage your setup: + +Label the worker nodes: Add zone labels to the worker nodes. +#### Zone Identification: +* Nodes in the same zone as the array configuration are considered the current system. +* Nodes in different zones are considered the remote system. + + +```yaml +arrays: + - endpoint: "https://11.0.0.1/api/rest" + globalID: "unique1" + username: "user" + password: "password" + skipCertificateValidation: true + blockProtocol: "FC" + metroTopology: Uniform + labels: + topology.kubernetes.io/zone: zone1 + - endpoint: "https://11.0.0.2/api/rest" + globalID: "unique2" + username: "user" + password: "password" + skipCertificateValidation: true + blockProtocol: "FC" + metroTopology: Uniform + labels: + topology.kubernetes.io/zone: zone2 +``` + +* The node that match the array's topology zone key will be registered as `Host is co-located with this system` +* The node that does not match the array's topology zone key will be registered as `Host is co-located with remote system` +* When both worker nodes have the same topology key as the array's topology zone key, then both nodes will be registered as `Co-located with both systems` +* When the node does not have any zone keys in its label, the host is registered as `Local connectivity` + +### Usage +The Metro replicated volumes are created just like the normal volumes, but the `StorageClass` contains some +extra parameters related to metro replication. A `StorageClass` to create metro replicated volumes may look as follows: + +```yaml +apiVersion: storage.k8s.io/v1 +kind: StorageClass +metadata: + name: powerstore-metro +parameters: + arrayID: PS000000000001 + replication.storage.dell.com/isReplicationEnabled: "true" + replication.storage.dell.com/mode: METRO + replication.storage.dell.com/remoteSystem: RT-D0002 +allowVolumeExpansion: true +provisioner: csi-powerstore.dellemc.com +reclaimPolicy: Delete +volumeBindingMode: Immediate +``` + +> _**NOTE**_: Metro support for hosts with Linux operating systems was added from [PowerStoreOS 4.0](https://infohub.delltechnologies.com/en-us/l/dell-powerstore-metro-volume-1/introduction-4503/).
+> _**NOTE**_: Metro at volume group is not supported by the PowerStore driver. + +When a Metro `PV` is created, the volumeHandle will have the format ``. + +### PowerStore Metro volume expansion +When a request is made to increase the size of a Metro `PV`, the metro replication session must be temporarily paused prior to the editing of Kubernetes resources. This can be done from the PowerStore Manager UI or CLI. The size of the local/preferred volume is then increased. The metro session must then be manually resumed. It is important to note that the paths for the remote/non-preferred volume will not become active until the metro session is resumed and the remote/non-preferred volume reflects the updated size. + +### Snapshots on PowerStore Metro volumes +When a VolumeSnapshot object is created for the Metro `PV`, snapshots are created on each side of the Metro session on the PowerStore systems. However, the VolumeSnapshot object only refers to the local/preferred side of the Metro volume. When a Metro `PV` is deleted, the remote/non-preferred volume, along with any snapshots associated with it, is also automatically deleted. + +### Limitations +- PowerStore driver only supports uniform host configuration for Metro volume where the host has active paths to both PowerStore systems. +- Metro configuration needs to be done by the user by adding zone keys as node labels as per the configuration requirements. +- Powerstore driver does only fresh host registration for metro configuration. To modify an existing host entry, the user will have to remove the existing host entry from the array and restart node pods to enable the Powerstore driver to create fresh host entry. +- VolumeGroup Metro support is not currently available for uniform host configuration. +- Metro volume only supports FC and iSCSI protocols for host access. +- Each Kubernetes node is automatically registered as a host object on both PowerStore systems when the node pods are running. However, the connectivity type of the host is set to 'Local Connectivity' by default. It needs to be updated manually with the correct 'Metro connectivity' option on both PowerStore systems using the PowerStore Manager UI. +- Actions that need to be performed on the Metro session, such as pausing, resuming, or changing the preferred side, can only be done through the PowerStore Manager UI. +- Some CSI Driver Capabilities, such as snapshot or clone, are not supported on the remote/non-preferred side of the Metro volume. +- While restoring a Metro snapshot or cloning a Metro volume on the local/preferred side, provide a non-Metro storage class. Configuring Metro on clones is not supported on the PowerStore. +- The following [volume attributes](../../../csidriver/features/powerstore/#configurable-volume-attributes-optional) on PersistentVolumeClaims (PVCs) are not supported for Metro volumes: `csi.dell.com/volume_group_id`, `csi.dell.com/protection_policy_id` if the policy has replication rule. diff --git a/content/v1/concepts/replication/migration/_index.md b/content/v1/concepts/replication/migration/_index.md new file mode 100644 index 0000000000..4a5fff951d --- /dev/null +++ b/content/v1/concepts/replication/migration/_index.md @@ -0,0 +1,17 @@ +--- +title: "Migration" +linkTitle: "Migration" +weight: 6 +no_list: true +Description: > + Support for Array Migration of Volumes +--- + + +{{< cardcontainer >}} + + {{< customcard link="./migrating-volumes-diff-array" imageNumber="6" title="Between Storage Arrays" >}} + + {{< customcard link="./migrating-volumes-same-array" imageNumber="6" title="Between Storage Classes" >}} + +{{< /cardcontainer >}} diff --git a/content/v1/replication/migration/migrating-volumes-diff-array.md b/content/v1/concepts/replication/migration/migrating-volumes-diff-array.md similarity index 95% rename from content/v1/replication/migration/migrating-volumes-diff-array.md rename to content/v1/concepts/replication/migration/migrating-volumes-diff-array.md index 50d343997b..c359b112e8 100644 --- a/content/v1/replication/migration/migrating-volumes-diff-array.md +++ b/content/v1/concepts/replication/migration/migrating-volumes-diff-array.md @@ -61,7 +61,7 @@ migration: migrationPrefix: "migration.storage.dell.com" ``` -Target array configuration and endpoint needs to be updated in the driver's [myvalues.yaml](../../../deployment/helm/drivers/installation/powermax#csi-powermax-driver-with-proxy-in-standalone-mode) file as shown below: +Target array configuration and endpoint needs to be updated in the driver's [myvalues.yaml](../../../../getting-started/installation/kubernetes/powermax/helm/#csi-powermax-driver-with-proxy) file as shown below: ```yaml ########################## @@ -82,7 +82,7 @@ After enabling the migration module the user can continue to install the CSI dri ## PowerMax Support -CSM for PowerMax supports the following migrations: + PowerMax supports the following migrations: - From a VMAX3 array to VMAX All Flash, or PowerMax array. diff --git a/content/v1/replication/migration/migrating-volumes-same-array.md b/content/v1/concepts/replication/migration/migrating-volumes-same-array.md similarity index 95% rename from content/v1/replication/migration/migrating-volumes-same-array.md rename to content/v1/concepts/replication/migration/migrating-volumes-same-array.md index ba4df89ef2..a81af92d5d 100644 --- a/content/v1/replication/migration/migrating-volumes-same-array.md +++ b/content/v1/concepts/replication/migration/migrating-volumes-same-array.md @@ -41,7 +41,7 @@ kubectl patch pv test-pv -p '{"metadata": {"annotations":{"migration.storage.del Patching PV resource will trigger migration sidecar that will call `VolumeMigrate` call from the CSI driver. After migration is finished new PersistentVolume will be created in cluster with name of original PV plus `-to-` appended to it. In our example, we will see this when running `kubectl get pv`: -``` +```terminal NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE test-pv 1Gi RWO Retain Bound default/test-pvc powermax 5m test-pv-to-powermax-replication 1Gi RWO Retain Available powermax-replication 10s @@ -55,7 +55,7 @@ Newly created PV (`test-pv-to-powermax-replication` in our example) is available ## Namespace Considerations For Replication -Replication Groups in CSM Replication can be made namespaced, meaning that one SC will generate one Replication Group per namespace. This is also important when migrating volumes from/to replcation storage class. +Replication Groups in Container Storage Modules Replication can be made namespaced, meaning that one SC will generate one Replication Group per namespace. This is also important when migrating volumes from/to replcation storage class. "When just setting one annotation migration.storage.dell.com/migrate-to migrated volume is assumed to be used in same namespace as original PV and it’s PVC. In the case of being migrated to replication enabled storage class will be inserted in namespaced Replication Group inside PVC namespace." @@ -69,20 +69,18 @@ You can migrate your PVs without disrupting workflows if you use StatefulSet wit Instruction (you can also use `repctl` for convenience): 1. Find every PV for your StatefulSet and patch it with `migration.storage.dell.com/migrate-to` annotation that points to new storage class: - ```shell + ```shell kubectl patch pv -p '{"metadata": {"annotations":{"migration.storage.dell.com/migrate-to":"powermax-replication"}}}' ``` 2. Ensure you have a copy of StatefulSet manifest somewhere ready, we will need it later. If you don't have it, you can get it from cluster: ```shell - kubectl get sts -n -o yaml > sts-manifest.yaml ``` 3. To not disrupt any workflows, we will need to delete StatefulSet without deleting any pods, to do so you can use the `--cascade` flag: - ```shell - + ```shell kubectl delete sts -n --cascade=orphan ``` diff --git a/content/v1/replication/monitoring.md b/content/v1/concepts/replication/monitoring.md similarity index 98% rename from content/v1/replication/monitoring.md rename to content/v1/concepts/replication/monitoring.md index b0cfb4954e..80447a6129 100644 --- a/content/v1/replication/monitoring.md +++ b/content/v1/concepts/replication/monitoring.md @@ -15,7 +15,7 @@ If an RG doesn't have any PVs associated with it, the driver will not receive an This status can be obtained from the RG using a standard `kubectl get` call on the resource name: -``` +```terminal NAME AGE STATE LINK STATE LAST LINKSTATE UPDATE replicated-rg-240721b0-12fb-4151-8dd8-94794ae2493e 51d Ready SUSPENDED 2021-09-10T10:48:09Z ``` diff --git a/content/v1/concepts/replication/pvc-remap.md b/content/v1/concepts/replication/pvc-remap.md new file mode 100644 index 0000000000..83cd892f29 --- /dev/null +++ b/content/v1/concepts/replication/pvc-remap.md @@ -0,0 +1,43 @@ +--- +title: PVC Remap +linktitle: PVC Remap +weight: 6 +description: > + Automated Failover and PVC Attachment on Kubernetes Stretched Clusters +--- + +This feature automatically attaches the Persistent Volume Claim (PVC) to the active volume/Persistent Volume (PV) +without requiring manual intervention for failover scenarios on a Kubernetes stretched cluster using CSM replication. + +## Prerequisites + +This feature is enabled by default. + +### Users can disable it at the time of installation + +* For installation done via `helm-charts`, user can set the argument `disablePVCRemap` to `true` in `values.yaml`. You can refer to the following selection: + + ```yaml + disablePVCRemap: "true" + ``` + +* For installation done via csm-operator, user can set the argument `DISABLE_PVC_REMAP` to `true` in sample files. eg. `storage_csm_powerflex_xxxxx.yaml`. You can refer to the following selection: + + ```yaml + - name: "DISABLE_PVC_REMAP" + value: "true" + ``` + +* User can disable this feature by setting the argument `disable-pvc-remap` to `true` in `deploy/controller.yaml`. + +### Users can disable after the installation is done + +To disable this feature, set the argument `disable-pvc-remap` to `true` in the deployment: + +```shell +kubectl edit dell-replication-controller-manager -n dell-replication-controller +``` + +```shell +disable-pvc-remap=true +``` diff --git a/content/v1/replication/replication-actions.md b/content/v1/concepts/replication/replication-actions.md similarity index 99% rename from content/v1/replication/replication-actions.md rename to content/v1/concepts/replication/replication-actions.md index a04244c53c..a951979389 100644 --- a/content/v1/replication/replication-actions.md +++ b/content/v1/concepts/replication/replication-actions.md @@ -54,7 +54,7 @@ The following table lists the supported maintenance actions and the equivalent o {{}} ### How to perform actions -We strongly recommend using `repctl` to perform any actions on `DellCSIReplicationGroup` objects. You can find detailed steps [here](../tools/#executing-actions). +We strongly recommend using `repctl` to perform any actions on `DellCSIReplicationGroup` objects. You can find detailed steps [here](../../../tooling/repctl/#executing-actions). If you wish to use `kubectl` to perform actions, then use kubectl edit/patch operations and set the `action` field in the Custom Resource. While performing site-specific actions, please consult each driver's documentation to get an exhaustive list of all the supported actions. diff --git a/content/v1/replication/tools.md b/content/v1/concepts/replication/tools.md similarity index 99% rename from content/v1/replication/tools.md rename to content/v1/concepts/replication/tools.md index b39ba2ab9a..44547e9a75 100644 --- a/content/v1/replication/tools.md +++ b/content/v1/concepts/replication/tools.md @@ -3,7 +3,8 @@ title: Tools linktitle: Tools weight: 7 description: > - repctl tool for Replication feature in detail + repctl tool for Replication feature in detail +toc_hide: true --- # repctl diff --git a/content/v1/replication/troubleshooting.md b/content/v1/concepts/replication/troubleshooting.md similarity index 95% rename from content/v1/replication/troubleshooting.md rename to content/v1/concepts/replication/troubleshooting.md index 821c5b9b2e..6b9cb74fb0 100644 --- a/content/v1/replication/troubleshooting.md +++ b/content/v1/concepts/replication/troubleshooting.md @@ -3,9 +3,12 @@ title: Troubleshooting linktitle: Troubleshooting weight: 8 description: > - Troubleshooting guide + Troubleshooting guide +toc_hide: true --- +
+ | Symptoms | Prevention, Resolution or Workaround | | --- | --- | | Persistent volumes don't get created on the target cluster. | Run `kubectl describe` on one of the pods of replication controller and see if event says `Config update won't be applied because of invalid configmap/secrets. Please fix the invalid configuration`. If it does, then ensure you correctly populated replication ConfigMap. You can check the current status by running `kubectl describe cm -n dell-replication-controller dell-replication-controller-config`. If ConfigMap is empty, please edit it yourself or use `repctl cluster inject` command. | @@ -18,5 +21,6 @@ description: > | After upgrading to Replication v1.4.0, if `kubectl get rg` returns an error `Unable to list "replication.storage.dell.com/v1alpha1, Resource=dellcsireplicationgroups"`| This means `kubectl` still doesn't recognize the new version of CRD `dellcsireplicationgroups.replication.storage.dell.com` after upgrade. Running the command `kubectl get DellCSIReplicationGroup.v1.replication.storage.dell.com/ -o yaml` will resolve the issue. | | To add or delete PV s in the existing SYNC Replication Group in PowerStore, you may encounter the error `The operation is restricted as sync replication session for resource is not paused` | To resolve this, you need to pause the replication group, add the PV, and then resume the replication group (RG). The commands for the pause and resume operations are: `repctl --rg exec -a suspend` `repctl --rg exec -a resume` | | To delete the last volume from the existing SYNC Replication Group in Powerstore, you may encounter the error 'failed to remove volume from volume group: The operation cannot be completed on metro or replicated volume group because volume group will become empty after last members are removed' | To resolve this, unassign the protection policy from the corresponding volume group on the PowerStore Manager UI. After that, you can successfully delete the last volume in that SYNC Replication Group. | -| When running CSI-PowerMax with Replication in a multi-cluster configuration, the driver on the target cluster fails and the following error is seen in logs: `error="CSI reverseproxy service host or port not found, CSI reverseproxy not installed properly"` | The reverseproxy service needs to be created manually on the target cluster. Follow [the instructions here](../../deployment/csmoperator/modules/replication#configuration-steps) to create it. | -| When getting the following error for CSI-Powerscale with Replication with encryption enabled: `SyncIQ policy failed to establish an encrypted connection`, the Replication groups and PVC's won't be created at target cluster. | The `encryption required` flag in the SyncIQ settings was set to "yes" by default in OneFS 9.0+. To rectify this error, please follow the following article: | +| When running CSI-PowerMax with Replication in a multi-cluster configuration, the driver on the target cluster fails and the following error is seen in logs: `error="CSI reverseproxy service host or port not found, CSI reverseproxy not installed properly"` | The reverseproxy service needs to be created manually on the target cluster. Follow [the instructions here](v1/getting-started/installation/operator/modules/replication#configuration-steps) to create it. | +| When getting the following error for CSI-Powerscale with Replication with encryption enabled: `SyncIQ policy failed to establish an encrypted connection`, the Replication groups and PVC's won't be created at target cluster. | The `encryption required` flag in the SyncIQ settings was set to "yes" by default in OneFS 9.0+. To rectify this error, please follow the following article: | +
diff --git a/content/v1/replication/volume_expansion.md b/content/v1/concepts/replication/volume_expansion.md similarity index 100% rename from content/v1/replication/volume_expansion.md rename to content/v1/concepts/replication/volume_expansion.md diff --git a/content/v1/concepts/resiliency/_index.md b/content/v1/concepts/resiliency/_index.md new file mode 100644 index 0000000000..0a53c1fde1 --- /dev/null +++ b/content/v1/concepts/resiliency/_index.md @@ -0,0 +1,204 @@ +--- +title: "Resiliency" +linkTitle: "Resiliency" +no_list: true +weight: 6 +Description: > + Container Storage Modules (CSM) for Resiliency +--- + +[Container Storage Modules](https://github.com/dell/csm) for Resiliency is part of the open-source suite of Kubernetes storage enablers for Dell products. + +User applications can have problems if you want their Pods to be resilient to node failure. This is especially true of those deployed with StatefulSets that use PersistentVolumeClaims. Kubernetes guarantees that there will never be two copies of the same StatefulSet Pod running at the same time and accessing storage. Therefore, it does not clean up StatefulSet Pods if the node executing them fails. + +For the complete discussion and rationale, you can read the [pod-safety design proposal](https://github.com/kubernetes/design-proposals-archive/blob/main/storage/pod-safety.md). + +For more background on the forced deletion of Pods in a StatefulSet, please visit [Force Delete StatefulSet Pods](https://kubernetes.io/docs/tasks/run-application/force-delete-stateful-set-pod/#:~:text=In%20normal%20operation%20of%20a,1%20are%20alive%20and%20ready). + +Container Storage Modules for Resiliency and [Non graceful node shutdown](https://github.com/kubernetes/enhancements/tree/master/keps/sig-storage/2268-non-graceful-shutdown) are mutually exclusive. One shall use either Resiliency or Non graceful node shutdown feature provided by Kubernetes. + +## Container Storage Modules for Resiliency High-Level Description + +Resiliency is designed to make Kubernetes Applications, including those that utilize persistent storage, more resilient to various failures. The first component of the Resiliency module is a pod monitor that is specifically designed to protect stateful applications from various failures. It is not a standalone application, but rather is deployed as a _sidecar_ to CSI (Container Storage Interface) drivers, in both the driver's controller pods and the driver's node pods. Deploying Container Storage ModuleResiliency as a sidecar allows it to make direct requests to the driver through the Unix domain socket that Kubernetes sidecars use to make CSI requests. + +Some of the methods Resiliency invokes in the driver are standard CSI methods, such as NodeUnpublishVolume, NodeUnstageVolume, and ControllerUnpublishVolume. Resiliency also uses proprietary calls that are not part of the standard CSI specification. Currently, there is only one, ValidateVolumeHostConnectivity that returns information on whether a host is connected to the storage system and/or whether any I/O activity has happened in the recent past from a list of specified volumes. This allows for Resiliency to make more accurate determinations about the state of the system and its persistent volumes. Resiliency is designed to adhere to pod affinity settings of pods. + +Accordingly,Resiliency is adapted to and qualified with each CSI driver it is to be used with. Different storage systems have different nuances and characteristics for Resiliency must take into account. + +## Container Storage Modules for Resiliency Capabilities + +Container Storage Modules for Resiliency provides the following capabilities: + +{{}} +| Capability | PowerStore | PowerScale | PowerFlex | PowerMax | UnityXT | +| --------------------------------------- | :--------: | :------: | :--------: | :-------: | :------: | +|
Detect pod failures when: Node failure, K8S Control Plane Network failure,
K8S Control Plane failure, Array I/O Network failure | Yes | Yes | Yes | Yes | Yes | +|
Cleanup pod artifacts from failed nodes | Yes | Yes | Yes | Yes | Yes | +|
Revoke PV access from failed nodes | Yes | Yes | Yes | Yes | Yes | +{{
}} + +## PowerFlex Support +PowerFlex is highly scalable and well-suited for Kubernetes deployments. The Container Storage Modules for Resiliency leverages these features: +- Quick detection of Array I/O Network Connectivity status changes (1-2 seconds). +- Robust mechanism to detect if Nodes are doing I/O to volumes (sampled over 5 seconds). +- Low latency REST API for fast CSI provisioning and de-provisioning. +- Proprietary network protocol via the SDC component, which can run over the same or separate IP interface as the K8S control plane. + +## Unity XT Support +Unity XT is ideal for mid-sized deployments, remote/branch offices, and cost-sensitive mixed workloads. It supports all-Flash and is available in: +- **Purpose-built**: 12 All Flash models and 12 Hybrid models. +- **Converged (VxBlock)**: Available in Dell VxBlock System 1000. +- **Virtual (UnityVSA)**: Deployable on VMware ESXi servers, available in: + - **Community Edition**: Free 4 TB solution for non-production use. + - **Professional Edition**: Subscription-based, available in 10 TB, 25 TB, and 50 TB, with support and ESRS. + +All three deployment options, Unity XT, UnityVSA, and Unity-based VxBlock, enjoy one architecture, one interface with consistent features and rich data services. + +## Support for PowerScale, PowerStore, and PowerMax +These arrays provide robust and scalable solutions for Kubernetes deployments, ensuring high performance, reliability, and ease of management. + +### Array Highlights: +- **PowerScale**: Highly scalable NFS array, ideal for large-scale file storage needs. +- **PowerStore**: Versatile and scalable, suitable for a wide range of workloads with advanced data services. +- **PowerMax**: The highest performing block storage array, delivering exceptional performance for critical applications. + +### Key Features: +- **Detection of Array I/O Network Connectivity Status Changes**: All three arrays quickly detect changes in network connectivity, ensuring minimal disruption to operations. +- **Robust Mechanism to Detect Node I/O Activity**: They all have mechanisms to detect if nodes are performing I/O to volumes, sampled over a short period. +- **Low Latency REST API**: Each array offers a low latency REST API, facilitating fast CSI provisioning and de-provisioning. + +## Limitations and Exclusions + +This file contains information on Limitations and Exclusions that users should be aware of. Additionally, there are driver specific limitations and exclusions that may be called out in the [Deploying Container Storage Modules for Resiliency](../../getting-started/installation/kubernetes/powermax/helm/csm-modules/resiliency/) page. + +### Supported and Tested Operating Modes + +The following provisioning types are supported + +* Dynamic PVC/PVs of accessModes "ReadWriteOnce, ReadWriteMany" and volumeMode "FileSystem". +* Dynamic PVC/PVs of accessModes "ReadWriteOnce, ReadWriteMany" and volumeMode "Block". +* Use of the above volumes with Pods created by StatefulSets. +* Up to 12 or so protected pods on a given node. +* Failing up to 3 nodes at a time in 9 worker node clusters, or failing 1 node at a time in smaller clusters. Application recovery times are dependent on the number of pods that need to be moved as a result of the failure. See the section on "Testing and Performance" for some of the details. +* Multi-array are supported. In case of CSI Driver for PowerScale and CSI Driver for Unity, if any one of the array is not connected, the array connectivity will be false. CSI Driver for Powerflex connectivity will be determined by connection to default array. + +>Note: + +The following scenarios are not supported. + +* Pods that use persistent volumes from multiple CSI drivers. This _cannot_ be supported because multiple controller-podmons (one for each driver type) would be trying to manage the failover with conflicting actions. + +* When using ReadWriteMany volumes, issues occur if multiple pods on the same node access the same volume. During pod cleanup, the volume is fenced on that node, making it unavailable to any other pods on the same node that are using it. + +* Multiple instances of the same driver type (for example two CSI driver for PowerFlex deployments.) + +* PowerFlex with Resiliency is not supported for the NFS protocol. + +## Deploying and Managing Applications Protected by Container Storage Modules for Resiliency + + The first thing to remember about _CSM for Resiliency_ is that it only takes action on pods configured with the designated label. This functionality extends to VM workloads running on OpenShift Virtualization, as long as the Virtual Machine is labeled correctly. Both the key and the value have to match what is in the podmon helm configuration. CSM for Resiliency emits a log message at startup with the label key and value it is using to monitor pods: + + ```yaml + labelSelector: {map[podmon.dellemc.com/driver:csi-vxflexos] + ``` + The above message indicates the key is: podmon.dellemc.com/driver and the label value is csi-vxflexos. To search for the pods that would be monitored, try this: + ```bash + kubectl get pods -A -l podmon.dellemc.com/driver=csi-vxflexos + ``` +``` +NAMESPACE NAME READY STATUS RESTARTS AGE +pmtu1 podmontest-0 1/1 Running 0 3m7s +pmtu2 podmontest-0 1/1 Running 0 3m8s +pmtu3 podmontest-0 1/1 Running 0 3m6s + ``` + +### Applying Labels for VM Workloads +To enable resiliency monitoring for a VM, you must ensure the correct label is applied to the VM manifest. This label will automatically propagate to the virt-launcher pod created by OpenShift Virtualization. + +``` +apiVersion: kubevirt.io/v1 +kind: VirtualMachine +metadata: + labels: + kubevirt.io/vm: vm-alpine + name: vm-alpine + namespace: vmns +spec: + running: true + template: + metadata: + labels: + kubevirt.io/vm: vm-alpine + podmon.dellemc.com/driver: csi-vxflexos +``` +Once the VM is up and running, verify the virt-launcher pod is being tracked by CSM for Resiliency: + +kubectl get pods -A -l podmon.dellemc.com/driver=csi-vxflexos + +Example output: +```bash +NAMESPACE NAME READY STATUS RESTARTS AGE +default virt-launcher-vm-alpine-xyz 1/1 Running 0 5d13h +``` +If the virt-launcher pod appears in this list, the VM is successfully protected by CSM for Resiliency. + +If Container Storage Modules for Resiliency detects a problem with a pod caused by a node or other failure that it can initiate remediation for, it will add an event to that pod's events: + ```bash + kubectl get events -n pmtu1 + ``` + ``` + ... + 61s Warning NodeFailure pod/podmontest-0 podmon cleaning pod [7520ba2a-cec5-4dff-8537-20c9bdafbe26 node.example.com] with force delete +... + ``` + + Container Storage Modules for Resiliency may also generate events if it is unable to clean up a pod for some reason. For example, it may not clean up a pod because the pod is still doing I/O to the array. + +Similarly, the label selector for csi-powerscale, csi-unity, csi-powerstore and csi-powermax would be as shown respectively. + ```yaml + labelSelector: {map[podmon.dellemc.com/driver:csi-isilon] + labelSelector: {map[podmon.dellemc.com/driver:csi-unity] + labelSelector: {map[podmon.dellemc.com/driver:csi-powerstore] + labelSelector: {map[podmon.dellemc.com/driver:csi-powermax] + ``` + + #### Important + Before putting an application into production that relies on Container Storage Modules for Resiliency monitoring, it is important to do a few test failovers first. To do this take the node that is running the pod offline for at least 2-3 minutes. Verify that there is an event message similar to the one above is logged, and that the pod recovers and restarts normally with no loss of data. (Note that if the node is running many Container Storage Modules for Resiliency protected pods, the node may need to be down longer for Container Storage Modules for Resiliency to have time to evacuate all the protected pods.) + + ### Application Recommendations + + 1. It is recommended that pods that will be monitored by Container Storage Modules for Resiliency be configured to exit if they receive any I/O errors. That should help achieve the recovery as quickly as possible. + + 2. Container Storage Modules for Resiliency does not directly monitor application health. However, if standard Kubernetes health checks are configured, that may help reduce pod recovery time in the event of node failure, as Container Storage Modules for Resiliency should receive an event that the application is Not Ready. Note that a Not Ready pod is not sufficient to trigger Container Storage Modules for Resiliency action unless there is also some condition indicating a Node failure or problem, such as the Node is tainted, or the array has lost connectivity to the node. + + 3. As noted previously in the Limitations and Exclusions section, Container Storage Modules for Resiliency has not yet been verified to work with ReadWriteMany or ReadOnlyMany volumes. Also, it has not been verified to work with pod controllers other than StatefulSet. + + ### Storage Array Upgrades +To avoid application pods getting stuck in a Pending state, Container Storage Modules for Resiliency should be disabled for storage array upgrades; even if the storage array upgrade is advertised as non-distruptive. If the container orchestrator platform nodes lose connectivity with the array, which is more likely during an upgrade, then Resiliency will delete the application pods on the affected nodes and attempt to move them to a healthy node. If all of the nodes are affected, then the application pods will be stuck in a Pending state. + +## Recovering From Failures + +Normally Container Storage Modules for Resiliency should be able to move pods that have been impacted by Node Failures to a healthy node. After the failed nodes have come back online, Container Storage Modules for Resiliency cleans them up (especially any potential zombie pods) and then automatically removes the Container Storage Modules for Resiliency node taint that prevents pods from being scheduled to the failed node(s). There are a few cases where this cannot be fully automated and operator intervention is required, including: + +1. Container Storage Modules for Resiliency expects that when a node failure occurs, all Container Storage Modules for Resiliency labeled pods are evacuated and rescheduled on other nodes. This process may not complete however if the node comes back online before Container Storage Modules for Resiliency has had time to evacuate all the labeled pods. The remaining pods may not restart correctly, going to "Error" or "CrashLoopBackoff". We are considering some possible remediation for this condition but have not implemented them yet. + + If this happens, try deleting the pod with "kubectl delete pod ...". In our experience this normally will cause the pod to be restarted and transition to the "Running" state. + +2. Podmon-node is responsible for cleaning up failed nodes after the nodes' communication has been restored. The algorithm checks to see that all the monitored pods have terminated and their volumes and mounts have been cleaned up. + + If some of the monitored pods are still executing, node-podmon will emit the following log message at the end of a cleanup cycle (and retry the cleanup after a delay): + + ```yaml + pods skipped for cleanup because still present: + ``` + If this happens, __DO NOT__ manually remove the Container Storage Modules for Resiliency node taint. Doing so could possibly cause data corruption if volumes were not cleaned up, and a pod using those volumes was subsequently scheduled to that node. + + The correct course of action in this case is to reboot the failed node(s) that have not removed their taints in a reasonable time (5-10 minutes after the node is online again.) The operator can delay executing this reboot until it is convenient, but new pods will not be scheduled to it in the interim. This reboot will cancel any potential zombie pods. After the reboot, node-podmon should automatically remove the node taint after a short time. + +## Testing Methodology and Results + +A three tier testing methodology is used for Container Storage Modules for Resiliency: + +1. Unit testing with high coverage (>90% statement) tests the program logic and is especially used to test the error paths by injecting faults. +2. An integration test describes test scenarios in Gherkin that sets up specific testing scenarios executed against a Kubernetes test cluster. The tests use ranges for many of the parameters to add an element of "chaos testing". +3. Script based testing supports longevity testing in a Kubernetes cluster. For example, one test repeatedly fails three different lists of nodes in succession and is used to fail 1/3 of the cluster's worker nodes on a cyclic basis and repeat indefinitely. This test collect statistics on length of time for pod evacuation, pod recovery, and node cleanup. diff --git a/content/v1/resiliency/design.md b/content/v1/concepts/resiliency/design.md similarity index 76% rename from content/v1/resiliency/design.md rename to content/v1/concepts/resiliency/design.md index 241b9ecfeb..e9fb323b8c 100644 --- a/content/v1/resiliency/design.md +++ b/content/v1/concepts/resiliency/design.md @@ -3,10 +3,10 @@ title: Design linktitle: Design weight: 1 description: > - CSM for Resiliency Design + Container Storage Modules for Resiliency Design --- -This section covers CSM for Resiliency's design. The detail is sufficient that you should be able to understand what CSM for Resiliency is designed to do in various situations and how it works. CSM for Resiliency is deployed as a sidecar named _podmon_ with a CSI driver in both the controller pods and node pods. These are referred to as controller-podmon and node-podmon respectively. +This section covers Container Storage Modules for Resiliency's design. The detail is sufficient that you should be able to understand what Container Storage Modules for Resiliency is designed to do in various situations and how it works. Resiliency is deployed as a sidecar named _podmon_ with a CSI driver in both the controller pods and node pods. These are referred to as controller-podmon and node-podmon respectively. Generally controller-podmon and the driver controller pods are deployed using a Deployment. The Deployments support one or multiple replicas for High Availability and use a standard K8S leader election protocol so that only one controller @@ -19,14 +19,14 @@ Node-podmon and the driver node pods are deployed in a DaemonSet, with a Pod dep Controller-podmon is responsible for: -* Setting up a Watch for CSM for Resiliency labeled pods, and if a Pod is Initialized but Not Ready and resident on a Node with a NoSchedule or NoExecute taint, calling _controllerCleanupPod_ to cleanup the pod so that a replacement pod can be scheduled. +* Setting up a Watch for Container Storage Modules for Resiliency labeled pods, and if a Pod is Initialized but Not Ready and resident on a Node with a NoSchedule or NoExecute taint, calling _controllerCleanupPod_ to cleanup the pod so that a replacement pod can be scheduled. -* Periodically polling the arrays to see if it has connectivity to the nodes that are hosting CSM for Resiliency labeled pods (if enabled.) If an array has lost connectivity to a node hosting CSM for Resiliency labeled pods using that array, _controllerCleanupPod_ is invoked to cleanup the pods that have lost I/O connectivity. +* Periodically polling the arrays to see if it has connectivity to the nodes that are hosting Container Storage Modules for Resiliency labeled pods (if enabled.) If an array has lost connectivity to a node hosting Container Storage Modules for Resiliency labeled pods using that array, _controllerCleanupPod_ is invoked to cleanup the pods that have lost I/O connectivity. * Tainting nodes that have failed so that a) no further pods will get scheduled to them until they are returned to service, and b) podmon-node upon seeing the taint will invoke the cleanup operations to make sure any zombie pods (pods that have been replaced) cannot write to the volumes they were using. -* If a CSM for Resiliency labeled pod enters a CrashLoopBackOff state, deleting that pod so it can be replaced. +* If a Container Storage Modules for Resiliency labeled pod enters a CrashLoopBackOff state, deleting that pod so it can be replaced. _ControllerCleanupPod_ cleans up the pod by taking the following actions: 1. The VolumeAttachments (VAs) are loaded, and all VAs belonging to the pod being cleaned up are identified. The PVs for each VolumeAttachment are identified and used to get the Volume Handle (array identifier for the volume.) @@ -55,6 +55,6 @@ _NodeModeCleanupPod_ cleans up the pod remnants by taking the following actions There are some limitations with the current design. Some might be able to be addressed in the future- others are inherent in the approach. 1. The design relies on the array's ability to revoke access to a volume for a particular node for the fencing operation. The granularity of access control for a volume is per node. Consequently, it isn't possible to revoke access from one pod on a node while retaining access to another pod on the same node if we cannot communicate with the node. -The implications of this are that if more than one pod on a node is sharing the same volume(s), they all must be protected by CSM for Resiliency, and they all must be cleaned up by controller-podmon if the node fails. If only some of the pods are cleaned up, the other pods will lose access to the volumes shared with pods that have been cleaned, so those pods should also fail. +The implications of this are that if more than one pod on a node is sharing the same volume(s), they all must be protected by Container Storage Modules for Resiliency, and they all must be cleaned up by controller-podmon if the node fails. If only some of the pods are cleaned up, the other pods will lose access to the volumes shared with pods that have been cleaned, so those pods should also fail. 2. The node-podmon cleanup algorithm purposefully will not remove the node taint until all the protected volumes have been cleaned up from the node. This works well if the node fault lasts long enough that controller-podmon can evacuate all the protected pods from the node. However, if the failure is short-lived, and controller-podmon does not clean up all the protected pods on the node, or if for some reason node-podmon cannot clean a pod completely, the taint is left on the node, and manual intervention is required. The required intervention is for the operator to reboot the node, which will ensure that no zombie pods survive. Upon seeing the reboot, node-podmon will then remove the taint. 3. If the node failure is short-lived and controller-podmon has not evacuated some of the protected pods on the node, they may try and restart on the same pod. This has been observed to cause such pods to go into CrashLoopBackoff. We are currently considering solutions to this problem. diff --git a/content/v1/resiliency/troubleshooting.md b/content/v1/concepts/resiliency/troubleshooting.md similarity index 74% rename from content/v1/resiliency/troubleshooting.md rename to content/v1/concepts/resiliency/troubleshooting.md index af18c13414..88331ca2ee 100644 --- a/content/v1/resiliency/troubleshooting.md +++ b/content/v1/concepts/resiliency/troubleshooting.md @@ -3,11 +3,12 @@ title: Troubleshooting linktitle: Troubleshooting weight: 4 description: > - Dell Container Storage Modules (CSM) for Resiliency - Troubleshooting + Container Storage Modules (CSM) for Resiliency - Troubleshooting +toc_hide: true --- Some tools have been provided in the [tools](https://github.com/dell/karavi-resiliency/blob/main/tools) directory that will help you understand the system's state and facilitate troubleshooting. -If you experience a problem with CSM for Resiliency it is important you provide us with as much information as possible so that we can diagnose the issue and improve CSM for Resiliency. Some tools have been provided in the [tools](https://github.com/dell/karavi-resiliency/blob/main/tools) directory that will help you understand the system's state and facilitate sending us the logs and other information needed to diagnose a problem. +If you experience a problem with Container Storage Modules for Resiliency it is important you provide us with as much information as possible so that we can diagnose the issue and improve Container Storage Modules for Resiliency. Some tools have been provided in the [tools](https://github.com/dell/karavi-resiliency/blob/main/tools) directory that will help you understand the system's state and facilitate sending us the logs and other information needed to diagnose a problem. ## Monitoring Protected Pods and Node Status @@ -32,7 +33,7 @@ For systems with many protected pods, the [monx.sh](https://github.com/dell/kara ## Collecting Logs -If you have a problem with CSM for Resiliency it's best to collect the logs to help with diagnosis. This tool can also be used to collect logs to submit as part of an [issue](https://github.com/dell/csm/issues) to help us diagnose. Please use the [collect_logs.sh](https://github.com/dell/karavi-resiliency/blob/main/tools/collect_logs.sh). Type "collect_logs.sh --help" for help on the arguments. +If you have a problem with Container Storage Modules for Resiliency it's best to collect the logs to help with diagnosis. This tool can also be used to collect logs to submit as part of an [issue](https://github.com/dell/csm/issues) to help us diagnose. Please use the [collect_logs.sh](https://github.com/dell/karavi-resiliency/blob/main/tools/collect_logs.sh). Type "collect_logs.sh --help" for help on the arguments. The script collects the following information: * A list of the driver pods. diff --git a/content/v1/concepts/resiliency/usecases.md b/content/v1/concepts/resiliency/usecases.md new file mode 100644 index 0000000000..28fde53f31 --- /dev/null +++ b/content/v1/concepts/resiliency/usecases.md @@ -0,0 +1,42 @@ +--- +title: Use Cases +linktitle: Use Cases +weight: 2 +description: > + Container Storage Modules for Resiliency Use Cases +--- + +Container Storage Modules for Resiliency is primarily designed to detect pod failures due to some kind of node failure or node communication failure. The diagram below shows the hardware environment that is assumed in the design. + +![Container Storage Modules for Resiliency Hardware Model](../../../../images/resiliency/resiliency_model.jpg) + +A Kubernetes Control Plane is assumed to exist that provides the K8S API service used by Container Storage Modules for Resiliency. There is an arbitrary number of worker nodes (two are shown in the diagram) that +are connected to the Control Plane through a K8S Control Plane IP Network. + +The worker nodes (e.g. Node1 and Node2) can run a mix of Container Storage Modules for Resiliency monitored Application Pods as well as unmonitored Application Pods. Monitored Pods are designated by a specific label that is applied to each monitored pod. The label key and value are configurable for each driver type when Container Storage Modules for Resiliency is installed and _must_ be unique for each driver instance. + +The Worker Nodes are assumed to also have a connection to a Storage System Array (such as PowerFlex.) It is often preferred that a separate network be used for storage access from the network used by the K8S control plane, and Container Storage Modules for Resiliency takes advantage of the separate networks when available. + +## Anti Use-Cases + +Container Storage Modules for Resiliency does not generally try to handle any of the following errors: + +* Failure of the Kubernetes control plane, the _etcd_ database used by Kubernetes, or the like. Kubernetes is generally designed to provide a highly available container orchestration system, and it is assumed clients follow the standard and/or best practices in configuring their Kubernetes deployments. + +* Container Storage Modules for Resiliency is generally not designed to take action upon a failure solely of the Application Pod(s). Applications are still responsible for detecting and providing recovery mechanisms should their application fail. There are some specific recommendations for applications to be monitored by Container Storage Modules for Resiliency that are described later. + +## Failure Model + +Container Storage Modules for Resiliency's design is focused on detecting the following types of hardware failures, and when they occur, moving protected pods to hardware that is functioning correctly: + +1. Node failure. Node failure is defined to be similar to a Power Failure to the node which causes it to cease operation. This is differentiated from Node Communication Failures which require different treatments. Node failures are generally discovered by receipt of a Node event with a NoSchedule or NoExecute taint, or detection of such a taint when retrieving the Node via the K8S API. + + Generally, it is difficult to distinguish from the outside if a node is truly down (not executing) versus if it has lost connectivity on all its interfaces. (We might add capabilities in the future to query BIOS interfaces such as iDRAC, or perhaps periodically writing to file systems mounted in node-podmon to detect I/O failures, in order to get additional insight as to node status.) However, if the node has simply lost all outside communication paths, the protected pods are possibly still running. We refer to these pods as "zombie pods". Container Storage Modules for Resiliency is designed to deal with zombie pods in a way that prevents them from interfering with replacement pods it may have made by fencing the failed nodes and when communication is re-established to the node, going through a cleaning procedure to remove the zombie pod artifacts before allowing the node to go back into service. + +2. K8S Control Plane Network Failure. Control Plane Network Failure often has the same K8S failure signature (the node is tainted with NoSchedule or NoExecute). However, if there is a separate Array I/O interface, Container Storage Modules for Resiliency can often detect that the Array I/O Network may be active even though the Control Plane Network is down. + +3. Array I/O Network failure is detected by polling the array to determine if the array has a healthy connection to the node. The capabilities to do this vary greatly by array and communication protocol type (Fibre Channel, iSCSI, NFS, NVMe, or PowerFlex SDC IP protocol). By monitoring the Array I/O Network separately from the Control Plane Network, Container Storage Modules for Resiliency has two different indicators of whether the node is healthy or not. + +4. K8S Control Plane Failure. Control Plane Failure is defined as failure of kubelet in a given node. K8S Control Plane failures are generally discovered by receipt of a Node event with a NoSchedule or NoExecute taint, or detection of such a taint when retrieving the Node via the K8S API. + +5. CSI Driver node pods. Container Storage Modules for Resiliency monitors CSI driver node pods.If for any reason the CSI Driver node pods fail and enter the Not Ready state, it will taint the node with NoSchedule value. This will disable kubernetes scheduler to schedule new workloads on the given node, hence avoid workloads that needed CSI Driver pods to be in Ready state. diff --git a/content/v1/snapshots/_index.md b/content/v1/concepts/snapshots/_index.md similarity index 87% rename from content/v1/snapshots/_index.md rename to content/v1/concepts/snapshots/_index.md index e514e64ed7..8859909946 100644 --- a/content/v1/snapshots/_index.md +++ b/content/v1/concepts/snapshots/_index.md @@ -2,6 +2,7 @@ title: "Snapshots" linkTitle: "Snapshots" weight: 8 +no_list: true Description: > Snapshot module of Dell CSI drivers --- @@ -35,9 +36,9 @@ After the VolumeSnapshot has been successfully created by the CSI driver, a Volu >Note: VolumeSnapshots can be listed using the command `kubectl get volumesnapshot -n ` -### (Optional) Volume Snapshot Requirements +### (Helm Optional) Volume Snapshot Requirements -Applicable only if you decide to enable the snapshot feature in `values.yaml`. +Applicable only if you decide to enable the snapshot feature in `values.yaml` via helm. ```yaml snapshot: @@ -46,7 +47,7 @@ snapshot: #### Volume Snapshot CRD's -The Kubernetes Volume Snapshot CRDs can be obtained and installed from the external-snapshotter project on Github. For installation, use [v8.1.x](https://github.com/kubernetes-csi/external-snapshotter/tree/v8.1.0/client/config/crd) +The Kubernetes Volume Snapshot CRDs can be obtained and installed from the external-snapshotter project on Github. For installation, use [v8.2.x](https://github.com/kubernetes-csi/external-snapshotter/tree/v8.2.0/client/config/crd) #### Volume Snapshot Controller @@ -55,7 +56,7 @@ The CSI external-snapshotter sidecar is split into two controllers to support Vo - A common snapshot controller - A CSI external-snapshotter sidecar -The common snapshot controller must be installed only once in the cluster, irrespective of the number of CSI drivers installed in the cluster. On OpenShift clusters 4.4 and later, the common snapshot-controller is pre-installed. In the clusters where it is not present, it can be installed using `kubectl` and the manifests are available here: [v8.1.x](https://github.com/kubernetes-csi/external-snapshotter/tree/v8.1.0/deploy/kubernetes/snapshot-controller) +The common snapshot controller must be installed only once in the cluster, irrespective of the number of CSI drivers installed in the cluster. On OpenShift clusters 4.4 and later, the common snapshot-controller is pre-installed. In the clusters where it is not present, it can be installed using `kubectl` and the manifests are available here: [v8.2.x](https://github.com/kubernetes-csi/external-snapshotter/tree/v8.2.0/deploy/kubernetes/snapshot-controller) *NOTE:* @@ -70,12 +71,12 @@ You can install CRDs and the default snapshot controller by running the followin ```bash git clone https://github.com/kubernetes-csi/external-snapshotter/ cd ./external-snapshotter -git checkout v8.1.0 +git checkout v8.2.0 kubectl kustomize client/config/crd | kubectl create -f - kubectl -n kube-system kustomize deploy/kubernetes/snapshot-controller | kubectl create -f - ``` *NOTE:* -- It is recommended to use the 8.1.x version of snapshotter/snapshot-controller. +- It is recommended to use the 8.2.x version of snapshotter/snapshot-controller. - The CSI external-snapshotter sidecar is still installed along with the driver and does not involve any extra configuration. diff --git a/content/v1/cosidriver/installation/_index.md b/content/v1/cosidriver/installation/_index.md deleted file mode 100644 index b82a377fcd..0000000000 --- a/content/v1/cosidriver/installation/_index.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: "Installation" -linkTitle: "Installation" -weight: 4 -description: Process of installation ---- \ No newline at end of file diff --git a/content/v1/csidriver/Architecture_Diagram.png b/content/v1/csidriver/Architecture_Diagram.png deleted file mode 100644 index 05454d691981c89b2c18d67a78a8ce10ed894f05..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42686 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 -| Features | PowerMax | PowerFlex | Unity XT | PowerScale | PowerStore | -|--------------------------|:--------:|:---------:|:---------:|:----------:|:----------:| -| CSI Driver version | 2.13.0 | 2.13.0 | 2.13.0 | 2.13.0 | 2.13.0 | -| Static Provisioning | yes | yes | yes | yes | yes | -| Dynamic Provisioning | yes | yes | yes | yes | yes | -| Expand Persistent Volume | yes | yes | yes | yes | yes | -| Create VolumeSnapshot | yes for LUN
no for NFS | yes | yes | yes | yes | -| Create Volume from Snapshot | yes for LUN
no for NFS | yes | yes | yes | yes | -| Delete Snapshot | yes for LUN
no for NFS | yes | yes | yes | yes | -| [Access Mode](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#access-modes) for [volumeMode: Filesystem](https://kubernetes.io/docs/concepts/storage/persistent-volumes/#volume-mode)| RWO, RWOP

ROX, RWX **with NFS ONLY**| RWO, ROX, RWOP

RWX **with NFS ONLY** | RWO, ROX, RWOP

RWX **with NFS ONLY** | RWO, RWX, ROX, RWOP | RWO, RWOP

ROX, RWX **with NFS ONLY** | -| Access Mode for `volumeMode: Block`| RWX, ROX, RWOP | RWX, ROX, RWOP | RWO, RWX | Not Supported | RWO, RWX, ROX, RWOP | -| CSI Volume Cloning | yes for LUN
no for NFS | yes for LUN
no for NFS | yes | yes | yes | -| CSI Raw Block Volume | yes | yes | yes | no | yes | -| CSI Ephemeral Volume | no | yes | yes | yes | yes | -| Topology | yes | yes | yes | yes | yes | -| Multi-array | yes | yes | yes | yes | yes | -| Volume Health Monitoring | yes | yes | yes | yes | yes | -| Storage Capacity Tracking | yes | yes | yes | yes | yes | -| Volume Limit | yes | yes | yes | yes | yes | -{{}} - -### Storage Platform Details -{{}} -| Features | PowerMax | PowerFlex | Unity XT | PowerScale | PowerStore | -|---------------|:----------------:|:------------------:|:----------------:|:----------------:|:----------------:| -| Fibre Channel | yes | N/A | yes | N/A | yes | -| iSCSI | yes | N/A | yes | N/A | yes | -| NVMeTCP | yes | N/A | N/A | N/A | yes | -| NVMeFC | N/A | N/A | N/A | N/A | yes | -| NFS | yes - SDNAS only (not eNAS) | yes | yes | yes | yes | -| Other | N/A | ScaleIO protocol | N/A | N/A | N/A | -| Supported FS | ext4 / xfs / NFS | ext4 / xfs / NFS | ext4 / xfs / NFS | NFS | ext3 / ext4 / xfs / NFS | -| Thin / Thick provisioning | Thin | Thin | Thin/Thick | N/A | Thin | -| Platform-specific configurable settings | Service Level selection
iSCSI CHAP | - | Host IO Limit
Tiering Policy
NFS Host IO size
Snapshot Retention duration | Access Zone
NFS version (3 or 4);Configurable Export IPs | iSCSI CHAP | -| Auto RDM(vSphere) | Yes(over FC) | N/A | N/A | N/A | N/A | -|Internet Protocol| IPv4 | IPv4 | IPv4 | IPv4 | IPv4 | -{{
}} - -> **Note:** Please note Dual-Stack or IPv6 is not supported. - -
diff --git a/content/v1/csidriver/features/_index.md b/content/v1/csidriver/features/_index.md deleted file mode 100644 index 6089280f02..0000000000 --- a/content/v1/csidriver/features/_index.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: "Features" -linkTitle: "Features" -weight: 4 -tags: - - pod-deploy - - csi-driver -description: Description of CSI Driver features ---- diff --git a/content/v1/csidriver/flex.jpeg b/content/v1/csidriver/flex.jpeg deleted file mode 100644 index f93555f1c1a648731574f33890307185138216c7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 260546 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 diff --git a/content/v1/csidriver/isilon.jpeg b/content/v1/csidriver/isilon.jpeg deleted file mode 100644 index 67a930fcf9a8fd9b9f6dc46a4f2dd6068d397837..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74381 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Ȅ^@7S9x5% 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 SVgNCK7(fjC{|uo2G5Jr3Amu6m diff --git a/content/v1/csidriver/powermax.jpeg b/content/v1/csidriver/powermax.jpeg deleted file mode 100644 index 0615b2cd8ec012c31ae53f291274a19ad310cc4c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 230224 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�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�JUT1vItrq^317AqC#&}yN=^q|1kRhR zl?D>a3feVtQ0CYE2q)3W*iCYDWuN?0UrEr(=N?mk|-k_N;>FXz_Wz zptZ8YiUcWg|Gz<@%PNu*CG)IshdXTy6zx^C|JbGP5883p=5{(x^QY*apy7s5mG>nf zzD`yL=InQh{u)kEZFDs}yG)F-Kid8^y4!Vr+mQGSJ`vNL!mR=MwgrEV<41FGbt~%v z&gsZ0kl=qHb>2N$VpB4=D?0R4PN(OJ@k*@x`SMG-m7-t(Hs6NuloAG72C^7AZe6BI z083LBmTm|;xhDJ0@TbRxH707daygF_C3p7z*%dQiU|B#C zoD#zOj2<8b7&^ul*2lIQTR)*!{@ARL$%2ghnX6|UHfL%iW3deZ46LR`l7vFOn@{61 zpE(O#Nczi+Tb^cxU1r6V*3BYK@H+H-c^nx!WGJ9v3K7EG(%=G5bD?n$p8UF++3JJh zxi!o1eIU@t8?;>m(@S(E8dJrTqmxmA-7pYJqiijU!syGz4^lr;=T}~-kqjAbiY7^# z@7gzl1TD0%-O%bcJKeF*?z&hxoBdjR$E#<(gaww|D44!)fQ6`KbM6>NwJIA_7B4jC z+dA9;J;3CW5#lFb3jaLE+p`aB;cR}+ups2lPPESURA*yLs4~i?l71^8Cc z18`>6Y63K3Gj-ulnqLO`y@Y-2bT>Jdjfp}tF=C9CWcp5a` z_X!WKQV@pukqi23@1#SzUiX`f&9Sz%^dp$KKQ$_LEG}Ig2>HC`t7Mnu?1+QQ8Ca_VM zKsF)9x}-9;~6a4oc;8QfzJt}AUzBz(tl{@H6Zke3Na`cCr<4ahf{vL z)BV_KH6Tz)UB6sUZC?Xv++`G(Z}~}VJC&Iw$QU{<39`Q$6xg=W zI#p9pn0}dueZTgSiZORjNbp+VHWhr|aCOovvp>8--7Ifq2T5C&PSdS9`=Ms5173b0 zTgIs0M0j@X zdR(~sF3U~ea4-d*ljB7Tfx4#D*|uE%LeMDe94sewhhvn@T4&P2*YQ(a#O|!FK#}LL z?cck#kUgol*)Ll{@A;12>c7}HegprBEmaiWr6{u&6N&eoxahxdcsisR8?9vL#7w+X z^3W{zMz_ke#{qXpq?p!bNcj+Cp`&uhJvEr1z%iw=)kDcQDY*&~Qh{dqe@v(N26ckQ zdMz_dUYf)*wKp0=s?360B|f|h7JjxxdOSzmFiMg0tSZLzr~2IO9QvT^%kblFDShGj zD}L;Y#Adg(PDS7x>Aufz1xzcxtqL=N?-3!lq8GDX@M>7v!(k=z@IkQ`0pwgyi^UJs zPPt*%N4$BVyY_%}cHz)!Z%2T|BN?#55UUW3+ni2L@(& z3+BKs8VvE#oth1oY$~vLqiz-MX#9z}aIaD)tNsI-1DICd?$wjwfMj5n9g84P4^)%b zdGNmv_yf51x;R;&DjPG(=P?@Dr*OrArvKM>#GMbmbJoN{4MgB`;;W-gMQrkb@*o5PAr9S(o`d?QiYUOAH&}J8=@@(Kb2YRz5@(~Hg!L?XgAzIo~;xg2%)Oynq+8K3sUdj12tK) z+v62aafK`y?%r<@AgmS*cCC-}PG@RjUqI>h{vI}0Tk!3zW=Mf~7THnoth*dda?H|M~BUs$_%wyLIS$R=OYQ@!-$}3w|#2v7GkQ@Bn!PsQ=-*~1O7^6z5 z_wRH4^c!mFl7f0~J)##3mAcH>dV~qQ-R%I3k5Qi2#Xo9^v{UX7<1d?MH7oW%BB;_>W@d43}a=! zZ;&yf4z{zFKILlVrB=S}zv)0R8(+1P0uF|FTV=h6ltT}%d<*{_%|sfiH>+21NesN5 ztgOxP%StT;3U*q5UhQ5h2_I6CYtzvtwBE~9C0`)u&_~`^V1^oQ-o@SzNn%@Ldk_Z-Q!-|CI-0*m_Eaxvq|AdSu~A}c zHH-^484c*Z87~px^LaG8=e9nq9y4790aT#*wqj_kPhW(;N;yWpDgMqlu*PVf1=AaS z&bsm39}xbe6>$snsQYN*sq&6UJzJ~lG|X(%o<(5 zVG0{dItTC4ooa`+mwMR3-zKOg2**hrQ*7urb3E9)>AM*yORB&>F>l!;I#B#FD*GMO z&}S<=HkpyG74RH1#@c#;tK=(nr}ZF?@I-S=#wIjW^F$qI%zHX#ij7vrC*C zGK8ms5#Bk*tA}N?m6l)S58u>k(_BWGE3JNWZ$eNm6_hSmKKf%NF$(s%65ZupYa{6V z#{TnXR_G(w`h|ghh##rP*qSoAi3vKaV9u^iV0YZqHr?J)pQq_7C8UddR436wY}J3GjxpET?FUC8biZ(hz`Aq90M zk$gD($HtUs6?p__C+3^shL^%rJgPA8y?Tcr5WYZ~K9@|IHuer)rjr0ZQdZfyek+WQ z+HYH9Nr{tVBC+!HWh``CyCF(lBh;;}wfP~g1DSgV&J4oh2MNo!m)CVdzPQBS+VEpz zY&Qw$kZ4V;Jh2Q%;5~^5PMNE?iK>iN{AAJYNRvu6^kN_|<%`7q0{L9&2uaqXA#4Nx zSzh}%o=)Hk!Gp=?O6<+n@VeWLp%olN3AYn$Dy93FpXon+G{8Wtg3H00 zvY{^~yoVKdbRMHx>T2k*!FEsfHg7}ir}VDw`@(NpwgXMRwy*}YUALz>-^5E`547aX zI{ct3!Eg=eKjm)?*il1kD;Ta;8XsPyXNl#{qj)b0ov5f;i&XT?459jDvbC+9d$tyyLdc6-q@B;#gdwJ^%=-&Sl$2+k)k2b1p5KD?S z%CD=(W$WD{l8vC-8Do}OERe1c9wF^C!fjPMKPN9N3$VOS~5HfdC|0(*|$Wm{Og-dacf{`uIh zNA^{nJu44Vl%oz69_@0U^N27n+1a~qNs>8cr&Vdg+;9CkdlXQQrN-e()x@5Qb8vyx zLwK#%UrK**aL5%ybzw;V@v0U=_(f}K#eWx1*GPU@Sm~by2*qF#GjUx&%ebxf^WDqH zCroY!Q#EGe3tHnC5B_f-Q=esN|BAy+)zc9SQH0*!l$(>eswpb5JEeMkjGA&{Fxih` zwmE;atE!40C}{epbibqe#`rE?er?Zkzi2?RpwZDYcAX^4sXMJsC!u_gRUcAhO8U`j z>_Pnr&7LuN;ksYby{4hSKK0o45W^GL2exB-B`W!B!-SRK-O9T+05;o;KgAd{#aToGu@kkeR3^t8#u&@ud4+ zzWyL{m31l18F#I_q5|p=^Kf6$`~JlZN@nRYtTxLw_?R76NL)_vo+s~AF|^2H@%NJO zVyd$$g6+IBcyYVo^Y%VJ47oRb@q|%3_t~CVNy&=BKj`O`uiWb=G;*J77c3o%d57MI zZiSvH!QIdsvMJYj-m$NGGqeq2b3qh^Tc+Y2Z4uF@cO9u$Nu9+-i?CZ%J6;<5*D>du zjdCFkso9g5W;46hG17ghnTZv;-;RV7LJjS@+WRUX3g3TCRYR(M!z*=dy}4^`Buc9e zVpjLRiV;73_noamA^aG^om0B=wqVC{kv0H(Z?fN*d6~VuO1C^(E?_dZ0rCXL>Z6NU zW&pCuOcB6!$hx)nA6IgqUY8n)39f!5eW)e25#O)BzhxQ|CWk+fy@GAqQ?14#)JJ%- z3{^=U8|gSA1^h)>iw~QnK}#3@!d}-y4hcU<`(-%wE*D(HFup3N#%PUs%({Za8Qw~P;37By_%e? z@Pk3+pQ*E8wr;K=KHbgC^I-H0nM{_44AQK? z6+&X%pFLo0$?eE_SxK~c$3Bs&IzhwNZL+Rfg|EEYK?Y&A+VVv{`7^oqNn%`zEjL|E z2A5rA5a;V4icNwV*P;18vsY0|joDvi%TJp}qqk4W5X(ET0&&q-1vpd&GueUo!=^$z_mH&XoxuSsoQ7pR}j^Z;uc>3u&!J#V_-$qkQvh9wYnN)J2* z2#5BnCA3!;R=2JxhN}9hCks{DL*FwH2ZgySN9LT0^cd^eBIK-Ich3b z8pez>ePl}An{1a_{DI>EHAm9=$x88p`YMC$i&1lrP5GWp=?kOV=>lRRwari9H`zUJ zSs=n+;msK}jhMLB4deQZwF`6FBnj*4D2{K+TH(@w<#ZJY{6Dpb$e(t!KXQ1Iq-%ud znYyonuW+_WezX8J-tw2WDl#Lh6TYcZZ9j$Snxn4~RnU)Z;oL6n*yoKgOm;6jJ~8nr zsKfv?dr+KgUiM54gE;=;P25XUD~6(8_>&Vj5r&AO3;xi^<_qnT!?|O=cGs}d$f%H9 zJMJ8D@_Jx=4%%t8MZqwk7x^NC*D?V(hWrSv2rRxLm~0%5BLG=JwGZu9+vX$IyRlI8 zk94z?jgGY?Qu>rBJX6!;2pC#B#&6@koOUy5CV$^rF(Wgrao*&gg+iYPluT^{r^p)y&sNb-vV?Sl5kYCOy->ytaPDH=~(!WPsE)jXY+SUj5sDh%*0c+R+c zrOu7gV;2ku7+*^NUO02GrwH8BnSWa+SUQm@;Q#P50~w$@Gc4tdao_(V)>5|bJAKxV z>}pm`L3pOU*&MS$msgm;`YMKqpGx=GL4ug$MHf%hYlW?POAyY3tAi@%us|70F&>6U5-cPuQc$lWHdE zq8gs~BbD;EFzrORz*?MV)=~%Crq!>b^uyVCjJKNZnLY1a~72l(q)95AJ_j&3lB#pR-(ywP6 zer;QEPc^y!>Q70@zFjd9jzV(-`dv8b{LDMuNe`#RKejYr?t)Fk$OH*1t}jqZ zrZktX)RBigCND$btf6G9I4t#-b@500tvR2>ocgpcD{3tNW5e3}KUZryA>Y?B6I7R# z6gL^x6zrGeghdeS2aLetup?kvYjol&;gjh_7BBS&^M{+Cwd0on%hUs0xU-$j;3yJ; z?x;UEajL&rxN1QYw~{nQ^sq7;)Q+FHkd0*Gm3mHYgyb+kbkgYdL+!x8_qka1Jw}h( z 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�B_y)M??6 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
WA!`gA7<<4 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 diff --git a/content/v1/csidriver/release/_index.md b/content/v1/csidriver/release/_index.md deleted file mode 100644 index dd420bc632..0000000000 --- a/content/v1/csidriver/release/_index.md +++ /dev/null @@ -1,6 +0,0 @@ ---- -title: "Release Notes" -linkTitle: "Release Notes" -weight: 6 -description: Release Notes for all the CSI Drivers and deployment ---- diff --git a/content/v1/csidriver/release/powerflex.md b/content/v1/csidriver/release/powerflex.md deleted file mode 100644 index de399d6b17..0000000000 --- a/content/v1/csidriver/release/powerflex.md +++ /dev/null @@ -1,40 +0,0 @@ ---- -title: PowerFlex -description: Release notes for PowerFlex CSI driver ---- - -## Release Notes - CSI PowerFlex v2.13.1 - -### New Features/Changes - -- [#1560 - [FEATURE]: CSM support for OpenShift 4.18](https://github.com/dell/csm/issues/1560) -- [#1561 - [FEATURE]: Added support for Kubernetes 1.32 ](https://github.com/dell/csm/issues/1561) -- [#1612 - [FEATURE]: Multi-Availability Zone (AZ) support with multiple storage systems - dedicated storage systems in each AZ](https://github.com/dell/csm/issues/1612) -- [#1613 - [FEATURE]: CSI PowerFlex must have the ability to connect a subset of the worker nodes to a storage array for multi-array support](https://github.com/dell/csm/issues/1613) - -### Fixed Issues - -- [#1562 - [BUG]: Documentation for PowerFlex nasName states it is not a required field](https://github.com/dell/csm/issues/1562) -- [#1608 - [BUG]: Volume Size Rounding Issue in PowerFlex: Rounds Down Instead of Up for Multiples of 8GB](https://github.com/dell/csm/issues/1608) -- [#1639 - [BUG]: CSM PowerFlex entering boot loop when array has long response times](https://github.com/dell/csm/issues/1639) -- [#1641 - [BUG]: NodeGetVolumeStats will cause panic when called w/ an Ephemeral volume ](https://github.com/dell/csm/issues/1641) -- [#1667 - [BUG]: Labels versions and maintainer update for CSM images ](https://github.com/dell/csm/issues/1667) -- [#1782 - [BUG]: Pods Stuck in Terminating State After PowerFlex CSI Node Pod Restart When Deployments Share Same Node](https://github.com/dell/csm/issues/1782) - -### Known Issues - -| Issue | Workaround | -|-------|------------| -| Delete namespace that has PVCs and pods created with the driver. The External health monitor sidecar crashes as a result of this operation.| Deleting the namespace deletes the PVCs first and then removes the pods in the namespace. This brings a condition where pods exist without their PVCs and causes the external-health-monitor sidecar to crash. This is a known issue and has been reported at https://github.com/kubernetes-csi/external-health-monitor/issues/100 | -| When a node goes down, the block volumes attached to the node cannot be attached to another node | This is a known issue and has been reported at https://github.com/kubernetes-csi/external-attacher/issues/215. Workaround:
1. Force delete the pod running on the node that went down
2. Delete the volumeattachment to the node that went down.
Now the volume can be attached to the new node. | -| sdc:3.6.0.6 is causing issues while installing the csi-powerflex driver on ubuntu,RHEL8.3 | Workaround:
Change the powerflexSdc to sdc:3.6 in values.yaml https://github.com/dell/csi-powerflex/blob/72b27acee7553006cc09df97f85405f58478d2e4/helm/csi-vxflexos/values.yaml#L13
| -| sdc:3.6.1 is causing issues while installing the csi-powerflex driver on ubuntu. | Workaround:
Change the powerflexSdc to sdc:3.6 in values.yaml https://github.com/dell/csi-powerflex/blob/72b27acee7553006cc09df97f85405f58478d2e4/helm/csi-vxflexos/values.yaml#L13
| -A CSI ephemeral pod may not get created in OpenShift 4.13 and fail with the error `"error when creating pod: the pod uses an inline volume provided by CSIDriver csi-vxflexos.dellemc.com, and the namespace has a pod security enforcement level that is lower than privileged."` | This issue occurs because OpenShift 4.13 introduced the CSI Volume Admission plugin to restrict the use of a CSI driver capable of provisioning CSI ephemeral volumes during pod admission. Therefore, an additional label `security.openshift.io/csi-ephemeral-volume-profile` in [csidriver.yaml](https://github.com/dell/helm-charts/blob/csi-vxflexos-2.10.0/charts/csi-vxflexos/templates/csidriver.yaml) file with the required security profile value should be provided. Follow [OpenShift 4.13 documentation for CSI Ephemeral Volumes](https://docs.openshift.com/container-platform/4.13/storage/container_storage_interface/ephemeral-storage-csi-inline.html) for more information. | -| If the volume limit is exhausted and there are pending pods and PVCs due to `exceed max volume count`, the pending PVCs will be bound to PVs and the pending pods will be scheduled to nodes when the driver pods are restarted. | It is advised not to have any pending pods or PVCs once the volume limit per node is exhausted on a CSI Driver. There is an open issue reported with kubernetes at https://github.com/kubernetes/kubernetes/issues/95911 with the same behavior. | -| Resource quotas may not work properly with the CSI PowerFlex driver. PowerFlex is only able to assign storage in 8Gi chunks, so if a create volume call is made with a size not divisible by 8Gi, CSI-PowerFlex will round up to the next 8Gi boundary when it provisions storage -- however, the resource quota will not record this size but rather the original size in the create request. This means that, for example, if a 10Gi resource quota is set, and a user provisions 10 1Gi PVCs, 80Gi of storage will actually be allocated, which is well over the amount specified in the resource quota. | For now, users should only provision volumes in 8Gi-divisible chunks if they want to use resource quotas. | -| After restarting a PowerFlex CSI node pod, any deployment whose pods are scheduled on the same node as the restarted CSI node pod will experience pods stuck indefinitely in the Terminating state. This occurs when the deployment is restarted via a command such as 'oc rollout restart'. | Upgrade CSM to v1.13.1 or later. | - -### Note: - -- Support for Kubernetes alpha features like Volume Health Monitoring will not be available in Openshift environment as Openshift doesn't support enabling of alpha features for Production Grade clusters. -- For fixing [#1210 - [BUG]: Helm deployment of PowerFlex driver is failing](https://github.com/dell/csm/issues/1210), a new helm-chart has been released. In order to install this helm chart, we need to pass the flag `--helm-charts-version` during helm installation and flag `-v` during offline bundle installation with value `csi-vxflexos-2.11.0`. diff --git a/content/v1/csidriver/release/powermax.md b/content/v1/csidriver/release/powermax.md deleted file mode 100644 index 2e898dd447..0000000000 --- a/content/v1/csidriver/release/powermax.md +++ /dev/null @@ -1,60 +0,0 @@ ---- -title: PowerMax -description: Release notes for PowerMax CSI driver ---- - -## Release Notes - CSI PowerMax v2.13.0 - ->Note: Auto SRDF group creation is currently not supported in PowerMaxOS 10.1 (6079) Arrays. - -> Note: Starting from CSI v2.4.0, Only Unisphere 10.0 REST endpoints are supported. It is mandatory that Unisphere should be updated to 10.0. Please find the instructions [here.](https://dl.dell.com/content/manual34878027-dell-unisphere-for-powermax-10-0-0-installation-guide.pdf?language=en-us&ps=true) - ->Note: File Replication for PowerMax is currently not supported - - - - - - - - - - -### New Features/Changes - -- [#1560 - [FEATURE]: CSM support for OpenShift 4.18](https://github.com/dell/csm/issues/1560) -- [#1561 - [FEATURE]: Added support for Kubernetes 1.32 ](https://github.com/dell/csm/issues/1561) - -### Fixed Issues - -- [#1549 - [BUG]: The NVMeCommand constant needs to use full path](https://github.com/dell/csm/issues/1549) -- [#1566 - [BUG]: Inconsistent naming convention of secret is misleading in Installation of PowerMax ](https://github.com/dell/csm/issues/1566) -- [#1568 - [BUG]: Examples provided in the secrets of install driver for the Primary Unisphere and Back up Unisphere is lacking clarity in ConfigMap](https://github.com/dell/csm/issues/1568) -- [#1569 - [BUG]: Unused variable "X_CSI_POWERMAX_ENDPOINT" resulting in driver not to start in PowerMax](https://github.com/dell/csm/issues/1569) -- [#1570 - [BUG]: Stale entries in CSM operator samples and helm-charts for PowerMax ](https://github.com/dell/csm/issues/1570) -- [#1571 - [BUG]: SubjectAltName needs to be updated in the tls.crt ](https://github.com/dell/csm/issues/1571) -- [#1584 - [BUG]: Driver should not be expecting a secret which is not used at all for PowerMax when authorization is enabled ](https://github.com/dell/csm/issues/1584) -- [#1589 - [BUG]: Automation for reverseproxy tls secret and powermax-array-config does not present in E2E](https://github.com/dell/csm/issues/1589) -- [#1593 - [BUG]: Update the cert-manager version in Powermax Prerequisite](https://github.com/dell/csm/issues/1593) -- [#1638 - [BUG]: CSM Docs Multiple fixes for CSI-Powermax installation](https://github.com/dell/csm/issues/1638) -- [#1644 - [BUG]: Cannot create PowerMax clones](https://github.com/dell/csm/issues/1644) -- [#1650 - [BUG]: PowerMax - X_CSI_IG_MODIFY_HOSTNAME fails to rename a host with same name in different case](https://github.com/dell/csm/issues/1650) -- [#1663 - [BUG]: Pod filesystem not resized while volume gets successfully expanded](https://github.com/dell/csm/issues/1663) -- [#1667 - [BUG]: Labels versions and maintainer update for CSM images ](https://github.com/dell/csm/issues/1667) -- [#1634 - [BUG]: CSM PowerMax wrong error message](https://github.com/dell/csm/issues/1634) - -### Known Issues - -| Issue | Workaround | -|-------|------------| -| Unable to update Host: A problem occurred modifying the host resource | This issue occurs when the nodes do not have unique hostnames or when an IP address/FQDN with same sub-domains are used as hostnames. The workaround is to use unique hostnames or FQDN with unique sub-domains| -| When a node goes down, the block volumes attached to the node cannot be attached to another node | This is a known issue and has been reported at https://github.com/kubernetes-csi/external-attacher/issues/215. Workaround:
1. Force delete the pod running on the node that went down
2. Delete the volumeattachment to the node that went down.
Now the volume can be attached to the new node | -| If the volume limit is exhausted and there are pending pods and PVCs due to `exceed max volume count`, the pending PVCs will be bound to PVs and the pending pods will be scheduled to nodes when the driver pods are restarted. | It is advised not to have any pending pods or PVCs once the volume limit per node is exhausted on a CSI Driver. There is an open issue reported with kubernetes at https://github.com/kubernetes/kubernetes/issues/95911 with the same behavior. | -| Automatic SRDF group creation is failing with "Unable to get Remote Port on SAN for Auto SRDF" for PowerMaxOS 10.1 arrays | Create the SRDF Group and add it to the storage class | -| [Node stage is failing with error "wwn for FC device not found"](https://github.com/dell/csm/issues/1070)| This is an intermittent issue, rebooting the node will resolve this issue | -| When the driver is installed using CSM Operator , few times, pods created using block volume are getting stuck in containercreating/terminating state or devices are not available inside the pod. | Update the daemonset with parameter `mountPropagation: "Bidirectional"` for volumedevices-path under volumeMounts section.| -| When running CSI-PowerMax with Replication in a multi-cluster configuration, the driver on the target cluster fails and the following error is seen in logs: `error="CSI reverseproxy service host or port not found, CSI reverseproxy not installed properly"` | The reverseproxy service needs to be created manually on the target cluster. Follow [the instructions here](v1/deployment/csmoperator/modules/replication#configuration-steps) to create it.| -| When using Helm charts to install the driver with multiple PowerMax arrays, the `powermax-array-config` ConfigMap is incorrectly created, resulting in multiple `X_CSI_POWERMAX_ENDPOINT` entries. This causes the driver pods to crash with the error `"mapping key "X_CSI_POWERMAX_ENDPOINT" already defined"`. | This issue has been reported at https://github.com/dell/csm/issues/1760. Workaround:
1. Edit the ConfigMap `powermax-array-config` and remove all instances of `X_CSI_POWERMAX_ENDPOINT`.
`kubectl edit configmaps powermax-array-config -n `
2. Restart the driver pods.
`kubectl rollout restart deployment,daemonset -n `
Note: Users may also need to delete any old ReplicaSets in order to bring the new controllers up. | -### Note: - -- Support for Kubernetes alpha features like Volume Health Monitoring will not be available in Openshift environment as Openshift doesn't support enabling of alpha features for Production Grade clusters. diff --git a/content/v1/csidriver/release/powerscale.md b/content/v1/csidriver/release/powerscale.md deleted file mode 100644 index a5605847f9..0000000000 --- a/content/v1/csidriver/release/powerscale.md +++ /dev/null @@ -1,48 +0,0 @@ ---- -title: PowerScale -description: Release notes for PowerScale CSI driver ---- - - -## Release Notes - CSI Driver for PowerScale v2.13.0 - - - - - - - - - - - - - -### New Features/Changes - -- [#1560 - [FEATURE]: CSM support for OpenShift 4.18](https://github.com/dell/csm/issues/1560) -- [#1561 - [FEATURE]: Added support for Kubernetes 1.32 ](https://github.com/dell/csm/issues/1561) -- [#1611 - [FEATURE]: Added support for PowerScale 9.10](https://github.com/dell/csm/issues/1611) - -### Fixed Issues - -- [#1514 - [BUG]: snapshot restore failed with Message = failed to get acl entries: Too many links](https://github.com/dell/csm/issues/1514) -- [#1620 - [BUG]: PowerScale - handle panic error in ParseNormalizedSnapshotID](https://github.com/dell/csm/issues/1620) -- [#1667 - [BUG]: Labels versions and maintainer update for CSM images ](https://github.com/dell/csm/issues/1667) - -### Known Issues - -| Issue | Resolution or workaround, if known | -|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| Storage capacity tracking does not return `MaximumVolumeSize` parameter. PowerScale is purely NFS based meaning it has no actual volumes. Therefore `MaximumVolumeSize` cannot be implemented if there is no volume creation. | CSI PowerScale 2.9.1 is compliant with CSI 1.6 specification since the field `MaximumVolumeSize` is optional. | -| If the length of the nodeID exceeds 128 characters, the driver fails to update the CSINode object and installation fails. This is due to a limitation set by CSI spec which doesn't allow nodeID to be greater than 128 characters. | The CSI PowerScale driver uses the hostname for building the nodeID which is set in the CSINode resource object, hence we recommend not having very long hostnames in order to avoid this issue. This current limitation of 128 characters is likely to be relaxed in future Kubernetes versions as per this issue in the community: https://github.com/kubernetes-sigs/gcp-compute-persistent-disk-csi-driver/issues/581

**Note:** In kubernetes 1.22 this limit has been relaxed to 192 characters. | -| If some older NFS exports /terminated worker nodes still in NFS export client list, CSI driver tries to add a new worker node it fails (For RWX volume). | User need to manually clean the export client list from old entries to make successful addition of new worker nodes. | -| Delete namespace that has PVCs and pods created with the driver. The External health monitor sidecar crashes as a result of this operation. | Deleting the namespace deletes the PVCs first and then removes the pods in the namespace. This brings a condition where pods exist without their PVCs and causes the external-health-monitor sidecar to crash. This is a known issue and has been reported at https://github.com/kubernetes-csi/external-health-monitor/issues/100 | -| fsGroupPolicy may not work as expected without root privileges for NFS only
https://github.com/kubernetes/examples/issues/260 | To get the desired behavior set "RootClientEnabled" = "true" in the storage class parameter | -| Driver logs shows "VendorVersion=2.3.0+dirty" | Update the driver to csi-powerscale 2.4.0 | -| PowerScale 9.5.0, Driver installation fails with session based auth, "HTTP/1.1 401 Unauthorized" | Fix is available in PowerScale >= 9.5.0.4 | -| If the volume limit is exhausted and there are pending pods and PVCs due to `exceed max volume count`, the pending PVCs will be bound to PVs and the pending pods will be scheduled to nodes when the driver pods are restarted. | It is advised not to have any pending pods or PVCs once the volume limit per node is exhausted on a CSI Driver. There is an open issue reported with kubernetes at https://github.com/kubernetes/kubernetes/issues/95911 with the same behavior. | - -### Note - -- Support for Kubernetes alpha features like Volume Health Monitoring will not be available in Openshift environment as Openshift doesn't support enabling of alpha features for Production Grade clusters. diff --git a/content/v1/csidriver/release/powerstore.md b/content/v1/csidriver/release/powerstore.md deleted file mode 100644 index c62fcfe565..0000000000 --- a/content/v1/csidriver/release/powerstore.md +++ /dev/null @@ -1,49 +0,0 @@ ---- -title: PowerStore -description: Release notes for PowerStore CSI driver ---- - -## Release Notes - CSI PowerStore v2.13.0 - - - - - - - - - - - - - -### New Features/Changes -- [#1560 - [FEATURE]: CSM support for OpenShift 4.18](https://github.com/dell/csm/issues/1560) -- [#1561 - [FEATURE]: Added support for Kubernetes 1.32 ](https://github.com/dell/csm/issues/1561) -- [#1610 - [FEATURE]: Added support for PowerStore 4.1 ](https://github.com/dell/csm/issues/1610) - -### Fixed Issues - -- [#1549 - [BUG]: The NVMeCommand constant needs to use full path](https://github.com/dell/csm/issues/1549) -- [#1582 - [BUG]: CSI-PowerStore Fails to Apply 'mountOptions' Passed in StorageClass](https://github.com/dell/csm/issues/1582) -- [#1586 - [BUG]: Snapshot from metro volume restore as non-metro even if metro storage class is chosen](https://github.com/dell/csm/issues/1586) -- [#1667 - [BUG]: Labels versions and maintainer update for CSM images ](https://github.com/dell/csm/issues/1667) - -### Known Issues - -| Issue | Resolution or workaround, if known | -|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| Delete namespace that has PVCs and pods created with the driver. The External health monitor sidecar crashes as a result of this operation | Deleting the namespace deletes the PVCs first and then removes the pods in the namespace. This brings a condition where pods exist without their PVCs and causes the external-health-monitor sidecar to crash. This is a known issue and has been reported at https://github.com/kubernetes-csi/external-health-monitor/issues/100
| -| fsGroupPolicy may not work as expected without root privileges for NFS only
https://github.com/kubernetes/examples/issues/260 | To get the desired behavior set "allowRoot: "true" in the storage class parameter | -| If the NVMeFC pod is not getting created and the host looses the ssh connection, causing the driver pods to go to error state | remove the nvme_tcp module from the host in case of NVMeFC connection | -| When a node goes down, the block volumes attached to the node cannot be attached to another node | This is a known issue and has been reported at https://github.com/kubernetes-csi/external-attacher/issues/215. Workaround:
1. Force delete the pod running on the node that went down
2. Delete the volumeattachment to the node that went down.
Now the volume can be attached to the new node. | -| When driver node pods enter CrashLoopBackOff and PVC remains in pending state with one of the following events:
1. failed to provision volume with StorageClass ``: error generating accessibility requirements: no available topology found
2. waiting for a volume to be created, either by external provisioner "csi-powerstore.dellemc.com" or manually created by system administrator. | Check whether all array details present in the secret file are valid and remove any invalid entries if present.
Redeploy the driver. | -| If an ephemeral pod is not being created in OpenShift 4.13 and is failing with the error "error when creating pod: the pod uses an inline volume provided by CSIDriver csi-powerstore.dellemc.com, and the namespace has a pod security enforcement level that is lower than privileged." | This issue occurs because OpenShift 4.13 introduced the CSI Volume Admission plugin to restrict the use of a CSI driver capable of provisioning CSI ephemeral volumes during pod admission https://docs.openshift.com/container-platform/4.13/storage/container_storage_interface/ephemeral-storage-csi-inline.html . Therefore, an additional label "security.openshift.io/csi-ephemeral-volume-profile" needs to be added to the CSIDriver object to support inline ephemeral volumes. | -| In OpenShift 4.13, the root user is not allowed to perform write operations on NFS shares, when root squashing is enabled. | The workaround for this issue is to disable root squashing by setting allowRoot: "true" in the NFS storage class. | -| If the volume limit is exhausted and there are pending pods and PVCs due to `exceed max volume count`, the pending PVCs will be bound to PVs, and the pending pods will be scheduled to nodes when the driver pods are restarted. | It is advised not to have any pending pods or PVCs once the volume limit per node is exhausted on a CSI Driver. There is an open issue reported with Kubernetes at https://github.com/kubernetes/kubernetes/issues/95911 with the same behavior. | -| If two separate networks are configured for ISCSI and NVMeTCP, the driver may encounter difficulty identifying the second network (e.g., NVMeTCP). | This is a known issue, and the workaround involves creating a single network on the array to serve both ISCSI and NVMeTCP purposes. | -| When a PV/PVC is deleted in Kubernetes, it will trigger the deletion of the underlying volume and snapshot on the array as a default behaviour. This can result in a situation where the VolumeSnapshot and VolumeSnapshotContent will still show "readyToUse: true", but leaves them unusable because it is no longer backed by underlying storage snapshot. This will not allow the creation of a PVC from snapshot and this could also lead to a data loss situations. | This is a known issue, and the workaround is use of **retain** policy on the various PV, VolumeSnapshot and VolumeSnapshotContent that you wish to use for cloning. | - -### Note: - -- Support for Kubernetes alpha features like Volume Health Monitoring will not be available in Openshift environment as Openshift doesn't support enabling of alpha features for Production Grade clusters. diff --git a/content/v1/csidriver/release/unity.md b/content/v1/csidriver/release/unity.md deleted file mode 100644 index cefd1fa71f..0000000000 --- a/content/v1/csidriver/release/unity.md +++ /dev/null @@ -1,44 +0,0 @@ ---- -title: Unity XT -description: Release notes for Unity XT CSI driver ---- - -## Release Notes - CSI Unity XT v2.13.0 - - - - - - - - - - - - - -### New Features/Changes - -There are no new features in this release. - -### Fixed Issues - -- [#1654 - [BUG]: Helm installation still check snapshot CRD even though snapshot enabled is set to false](https://github.com/dell/csm/issues/1654) -- [#1667 - [BUG]: Labels versions and maintainer update for CSM images ](https://github.com/dell/csm/issues/1667) - -### Known Issues - -| Issue | Workaround | -|-------|------------| -| Nodes not getting registered on Unity XT. | Creating wrapper around `hostname` command inside the node pod's driver container, that fails when `-I` flag is used. This will triggrer fallback behaviour in driver and should fix the issue. | -| Topology-related node labels are not removed automatically. | Currently, when the driver is uninstalled, topology-related node labels are not getting removed automatically. There is an open issue in the Kubernetes to fix this. Until the fix is released, remove the labels manually after the driver un-installation using command **kubectl label node - - ...** Example: **kubectl label node csi-unity.dellemc.com/array123-iscsi-** Note: there must be - at the end of each label to remove it.| -| NFS Clone - Resize of the snapshot is not supported by Unity XT Platform, however, the user should never try to resize the cloned NFS volume.| Currently, when the driver takes a clone of NFS volume, it succeeds but if the user tries to resize the NFS volumesnapshot, the driver will throw an error.| -| Delete namespace that has PVCs and pods created with the driver. The External health monitor sidecar crashes as a result of this operation.| Deleting the namespace deletes the PVCs first and then removes the pods in the namespace. This brings a condition where pods exist without their PVCs and causes the external-health-monitor sidecar to crash. This is a known issue and has been reported at https://github.com/kubernetes-csi/external-health-monitor/issues/100| -| When a node goes down, the block volumes attached to the node cannot be attached to another node | This is a known issue and has been reported at https://github.com/kubernetes-csi/external-attacher/issues/215. Workaround:
1. Force delete the pod running on the node that went down
2. Delete the VolumeAttachment to the node that went down.
Now the volume can be attached to the new node. | -| A CSI ephemeral pod may not get created in OpenShift 4.13 and fail with the error `"error when creating pod: the pod uses an inline volume provided by CSIDriver csi-unity.dellemc.com, and the namespace has a pod security enforcement level that is lower than privileged."` | This issue occurs because OpenShift 4.13 introduced the CSI Volume Admission plugin to restrict the use of a CSI driver capable of provisioning CSI ephemeral volumes during pod admission. Therefore, an additional label `security.openshift.io/csi-ephemeral-volume-profile` in [csidriver.yaml](https://github.com/dell/helm-charts/blob/csi-unity-2.8.0/charts/csi-unity/templates/csidriver.yaml) file with the required security profile value should be provided. Follow [OpenShift 4.13 documentation for CSI Ephemeral Volumes](https://docs.openshift.com/container-platform/4.13/storage/container_storage_interface/ephemeral-storage-csi-inline.html) for more information. | -| If the volume limit is exhausted and there are pending pods and PVCs due to `exceed max volume count`, the pending PVCs will be bound to PVs and the pending pods will be scheduled to nodes when the driver pods are restarted. | It is advised not to have any pending pods or PVCs once the volume limit per node is exhausted on a CSI Driver. There is an open issue reported with Kubernetes at https://github.com/kubernetes/kubernetes/issues/95911 with the same behavior. | -| fsGroupPolicy may not work as expected without root privileges for NFS only [https://github.com/kubernetes/examples/issues/260](https://github.com/kubernetes/examples/issues/260) | To get the desired behavior set “RootClientEnabled” = “true” in the storage class parameter | -| Controller publish is taking too long to complete/ Health monitoring is causing Unity array to panic by opening multiple sessions/ There are error messages in the log `context deadline exceeded`, when health monitoring is enabled | Disable volume health monitoring on the node and keep it only at the controller level. Refer [here](https://dell.github.io/csm-docs/docs/csidriver/features/unity/#volume-health-monitoring) for more information about enabling/disabling volume health monitoring| -### Note: - -- Support for Kubernetes alpha features like Volume Health Monitoring will not be available in the Openshift environment as Openshift doesn't support enabling of alpha features for Production Grade clusters. diff --git a/content/v1/csidriver/test/_index.md b/content/v1/csidriver/test/_index.md deleted file mode 100644 index 8f01a68a25..0000000000 --- a/content/v1/csidriver/test/_index.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: "Testing Drivers" -linkTitle: "Testing Drivers" -description: "Tests to validate CSI Driver Installation" ---- diff --git a/content/v1/csidriver/unity.jpeg b/content/v1/csidriver/unity.jpeg deleted file mode 100644 index aaf16e91e113070db40050bedf6ab02eb075d3b5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 146859 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%0DK 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 AO#lD@ diff --git a/content/v1/csidriver/unity_architecture.png b/content/v1/csidriver/unity_architecture.png deleted file mode 100644 index 69402a7ad8a1466f7d2c7809e8f8742d9a66b099..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42010 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≫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 SrW-Co;AOTQZ<=A^a^??b>b{x) diff --git a/content/v1/csm_hexagon.png b/content/v1/csm_hexagon.png deleted file mode 100644 index 9f999800cff104ca9ff51e711a7cb28afbc346de..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 423322 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 pML!+EFFc07RyBM#P7@l9 zk2CrVMqcZ;3EQ!`)=^PsqT{^PtYLNx z*V?2UvpY!dT}_9>wgS!M5B^3TsHBp3#uSX3zlhOJ=}@#X7mb$YR@v=PTi5QJ4~lfN z$g2qJ6WK=!MUUZGr0RIBNHyvJ-N$<2%T8tS0AF&B%31d!VRhbvL%Si`Thq!6AB{tI zQam0u(HQYPtVj>a>e3OLgJy0Ki5XvzN^O4CMKo$|5nitlj@{Q{)du=QU}`i^q8GV| zUJwdq$?df*{?gHKNrqSM=`;y6GW8<0?rQ=Ko2w2DDb}Wj^0q&T(;OJgc^_hVK<=P? z@JUmdGv?zOMZ~$S{%qqPv2Tsd;_gOC6k-6f*X5$A>}B~tV=AAdBgp#uHMG^qYbrG~A-9EbudO+tMdj5k;)c za<9IlQJ@-54hI@@I7G0yQ{I=TI{V!4TAz^Rk}|C0@&mnZWB0q?TiR`)KAE1oyII}pKrfGbpP6$CHA zNy~j{C;<#jSu|3{1z1cPH+i*Qv6mP7y=d9rMqJIk6vwEuItXqhBKgXXuPRz3(944N zvc*#6;3@B}szl9#^+ljz5#QYr!rmf=D>Ybu9oS82%IZ$VZYGOBOF`D7bbM6NQsZZ- z=LkObf7La3y#Py!Kj{m6j?Bw4=hlef%2KvJ7Lfn8liRE{lR0@HOKeMtGu5udgnyk{ zG*U*>lm$@mu@fu5YVU>GYxGp6bO-Bdd!_c$KO>b&>@4dxyShmAVPf+a9hhO*Us>5{ z-Q1C91&Cm^fo56u)e@~*)PHPn@{8;*M*(dOEqk4I!t7}-%0EX zcw8{DRc%Xv6VML*i>2Q-{u_utg8jBbn#t9>V1o6T?xSQwB0sKJXTClyCC=xT!z4u` z`CKQs$T%*8DHBZ8J>a;(?rRZh#BBF#Ui*mrL!O67daTfY3bqU5z@Vyvk$=wEQ@Gll zW0aOpIH}bu=^};UL`(C?}4NmDzuXn-D3!VK=#a?MI2+ekyteAJ6 z6sxAbVH4sAK|0kw@pgv+t;y?@@Kl!X571pG)nPrwOeOaCrz=wo(W#Ape49=D7$0(@LP%{Wu+&S?{zb#pPw-~@guXz1~ zM7v$E=K{Nucc;>+(iFpVcxC-Vr?h_JtA@bs)s6O+Mb`Csf%B1eG!G+tN{2KhM$3&G zO)sd~nY=9rqlj3gWI4+R*|1MX^+DoPbHUo4?GuJUZULdBf`l>V70q{r{KK$6qf-o@ zv%ln=Iyouqv!6Vi;flTMK=PTK_pzVEOyFBlxr5u|bgOf3PZd1F>d0G_?2}4T@Di_QOQUggRKfLISb8mKkRd=L{y$kN&5Jp01M|7VuGBc6R(o>!PRM7Yp%Xzv6Pevn276;K zf}5V;plR~Z7ly@>iO+`T#xyi`xvg%q(cMQ>-=7>r%rZulPMH4H&?<1>kz;%>vA}_4 zK^&_$BKo5L>=?OPfTcey$aB^q_Az5zNrB0&sK3Z*Nl$9iAeYRDmy9yIYYg{#W-5wl z`Q$hA1cNrp;^firm9an`jQY>MA z2HI;3HAVE^k8S=jwO)?3x0G2BS;H-peUGtwkQgNY3gs42Sodt(lhXT;OWDLrwO~D@ z|6R_rk0 zf7@r5OFXyy%S*5Ot$ucv9iL|nQsTB%UZI>fA_ek(B@xp|)TS2B!)Lkr<2LnOAbrSs zl>DXJO$?N>0Ecl?SGU@{-Ah!jObNf8X?z$gbRzN9mHmaN>hAWo5noso@t0}SyH!{4 zZAA4Wu7*#NGzS3_klkLci4E~Xth9I-NW0pl5j7ZX{(wIEaZ?C$wr zJrLuQsQWat2^haeSi>L5s7)-tq?;1v+;}iOETXjbb$8U6f@eO(HDZ`OCe-?^o?FDN z>2%zxrO>(Bvd?m8p{08TFui?=KQO(MZd;qSQ9z)})%CFFwjLU!9@m4AU=XVgqX?6~ z8xqFIe@uHmi`ML-w9UJ(Ky<8}WPRR|Qjeh*Y=gBh;C3Ujz%`s?*vzH9{q48CM9D8{o#RiSw?5C_ zNkb&%G12qYCTqoZ^Ogn_WRGw!E=i)v$6qQUTSi_AF68|6buV>piyh{KhtB+f`oN=i zrilChwZ(zjn2UVinsgo5?_Ufu?zOm9HalF4C12rskuw}SjY}Q6!|Sp%%cTy&@M{ev z{U&&-&kf1stC+t&APkCEr?ZKFli{1=SOvf$QeFWz>;RFa)n%gXEm7MmzR^v97_(p+m|v%ITM$@_CvU5eTj8@V$YdERNZqEje5*lp)3GJJUi`GS-f`2 z4iUpD6qO0`21YQqss?KthIS4{i*H8^33IGI=HcFt530s~Ud6H9hINpTn~ppoCa2JmFif2z(l1(ZGU>rqvjdO|R;)Tmh?RU5B$W2G5psz($8Q^g;KXg_ z@;mZva;OZo=)H*kXd0>|+$hu(ZWU_L^svaq5s{R4XpHw}JfSJWbjFQtGJoVV$weIL zH6NFbU|lOjPe{GysrTydkU~?%H6`&Gw@6}5;BsM zF`XQq>}hzojmau;-M?0N1i0wxDg1O~tH2KNL!aSLM%x#C0{5vrM}VO(5(Tfdqy+*$ z+(L?=vydJ{`*Z_hpFWV96+`8b$Hh(T4J2E#X=$5yGWay+ZsK03D<AD)>a6Ciggg+R~#=)q8lvU}z^(`?5u-0{+~cy5U5;Y+9Z0PFmdSXcHq~|uawN2&W&-U+ zPZUi98mMcrawF0|@(Q4(+WDZRK93T^H!NB7fyL7G)#_%OgSx~q2)#K$=o$;+&v_HK z)T1H8p))ycI`;NZZAg-F2B&yLs>Zpon!te0^(PM5nxX_ec4^xMby6U?oVW0n{TnHo zf>&5*3uX&#A&bZ4R6QF`uVul8VyPUxL_p8_DY&<;1R4mqP@5AE!1clB|9JMKnU{QL z>{V}ne|tQ-@Fy5q^9Cw8e21r@VK9EWaEwxVh3?o5D@3`}q&o^9rImTrL!O0MN?r(j zxRIff9ZBSe(l^Bx6lqFEC}Kd?3a3^|-&aF_I&iFz>LbfE2yQ;mkDZVQjWk%K5JDQRzFcB zh^9$~1z-|NR6Opj{2oqAZizL;LPIrclO(q#iITgLB*sP>1RJ&}i}_9Ywx6Tr^j$mh zG;e_r*|E`_YfFaAuM_hn2$S))8|d7<*jTUMPQT5l<-&$A6SMa-cue}Kg$UTf$3kdo zZUMASo9(Q)fc-xnQ@jzf@-z5-Nq3u@sY>dqQHN{&xN20vnfi=GA^H8s)I*JE_{8=J zw|Y$@!Y$*E(Tve20!x-w7q)w}_!$H<8Ick&qtCChl2mcbC=;i0k4c8P*l3BLmgKaA zE?=Y%A*GY>A^DuMyjvy{(ijHsntUueV#vJb9UDz1Y zKoi???61PzQ?xOP`yc6vE#+er*LuA~;gt!5yqnMbJL+Fdo2BXnf*`fbDOqwS(9+6t zu3Qi9ec49B3B#cz`C8Hol2pQ?zoZQ*3zulgd0Mjzae?uyt#tD|9CilS(a6pPt-(CgjR%$#FHL-wDQR| zT~cg&@E~p8i`FB{w_3>WsO}6S^WKtO&u2)sIAu1R27hrUH3s<&_}!AzW=Rd7Izt)`=R6NZSKQS}5E=W}pzp$X6J1@PrRj`8 z%+ez!t48dD7{7O#EBc1B|H-uAmgTM@mZhnNW0i9z40r-{goz^V{>`43moZK3nYMHg zZj55kFbi954JAn@90wt&fwq)Y?1zi5AdAN&mfTop2}I6^3^AnB(X$B|oLwWe-%vge zRdools@Rr`ed`<8P~!78x-5YauML$?^_=-xtHo-FNXGyxUAK!KL)pqSluajH=gCjc z?YIRAwZ;b$gv?IN9}3rSO-C{ug+V-op#tm`;fEk2v-n0J3{p1_M$?4<3j8{(I90n<&ET5ZWx))!xq>4gT2i$tReMx_@cZF#vB9C zxiDU14fUwa;v~pcu^m=yqVx~2wVTb8|4k4D>+d99(Stn;Ai9uAX7#L*x7sQP36!DIU@)vR1>9?~uISXcF46Ht5NS zJnl+Y$t@>W$wswR$^w6*apYNVe;uN$iR18?G)9at6)k9TCxXd+CL^=2_#%ff{1}Ft ztJRC`&(G_}PR}CJjE|w1ktCFl1j9ukC634iS48cxFy!Kx<`5SrmzWQo3PMfd`%V2M zcR2g&45|G!w+zM->3Zxk)qzCR+X@knOkqqG_*r(KF#uS?N_T zgRei7$C2E~nx!!k4X!1;AtOO}nuC2iDp;inHSvrSv<4$3g96mZY@R@qI&*{UabvVm zuyN=^Fk&|Ab5yTU1?6p2!@?Qh2_Mt3j5blb!C0FPx}aXQS@<(idIF%~&Q$j@G_*N6 zKe8BlJVtS&s@9EBPVk_Z)|Z0Cf428w2lo*&j1QrhOW7fUAn`^JUVVKNr7;8#YGC90 zv3}fWNi*^1(rh358Q9-T&p6M%?DDD{M4>7cI zjB0*%qzSZ&;E$-LitzZkcVA>wopP>*}`wdb+Tb0M7_9 zNUc^4Zi{86BZ+*>rA7(0A#WIZWu&o%UkM)(cSIj)wD2;lq4lqK8ww=lWM5)cP)HoRiF-1nphWN+dw)h9`~v4ECGd-1horU@sQM5&SH za?yIEKhCim1tMM&j$DN)su^y~GxGtfUq< z6ck-^qu22=j^N*>c_ebMH=$z;_0?%r(PI{z#bDu)#bFKs+v%3t=y!mGoi82IlFi&2G8>8U zLj=4MXbkaeq5R~IsNBJk(%W=$*zqLa}HB7TsF9M1(V zc8HnC{cj}&SU2<8u7t8{U=?ykn~?19n9h}YP;7ZrZ)!9ll*3qj|itnm}lmmSL$p=d!N_P_Iikg{L8cQcVm_& zj;A?6?R54f<$r?lcpOGUp_Ch&8m-|2dig(bv$i678(PrL+otR|N<4pz6@1s!7bh z6qb{!LgD`7Y=&z;(DzJHbCQpIe?kWe=ZPIK)4)*|(TH2fpOL0xs3$j_@iUQt?6Bpj z-B_2mmdog;(kI0*zw(L(H`yJ$FQrHl{V=Y}J3O4iVh)2Yg2ZZ$*Yb#zV^se9k#xct zcZ9U|+Ff-*m55vjy~TXPItZm1=_qiZDIt*K;jg%l|HokVkK#)xd`vvwvThQvxa3J3 zO?ojYMA5Kn2`4qvr61|l@)=e6Zqg6e+SLgSqQydJhRxXQR>F8sabc1=wlLnAbdxUJ zveHo$u7<3-?!1{tl;+=wSf1}brs_WgBwFB3jZRQtZj+yl7-7joZwm7K0l~%u^hl1= zV|^>%8?k)2ac~JiE+)(#+0Y-t6DQKoP0o5cq4VG#uUR%|27mz654OhYoxuctCN*yv zsJF0oB@{!MsJI>!f~slclBCI%Ivqxa^+=Z52$jWFW}agjv0d3C-Bj5Edv@)H{vci~ z8q^&*i{#C>>5*vaYQG1A`Dfc)0YOa;Ykfe}&keLx zmN%1RlcXBjA``-bY3(kj^6{iAP!f@TIax$*Vo^~C(A1<~7SiS%M7in9ZB@IgwXl55 z($$awL_djdxt0_z-hShB9U7uYt6Tu&(H$(kb@k!0PpY!tNrI~!ZD=i#9&wl_Mtc5C z;BLKXsUzj7Lm^{sI_TnfE=-Zinm{UZ3n*P4D&uL^|2|6x@qaFk9D`(oV_Y!rr*b&k zKVp~4uyC7u+su1qprMo87yBY=BY`3Mtr*I%*&h9}FjsoCBFrvhCeq0sxn!;$b=ij| zVdSvnMJqNO<|^?RXkBiz=et~X&6_Y16DsS0k`R=whhQ##jC)H*L=4m8K24?m9Qp zN90SZ$y0|`6YymY%kn@-q&m|jiBE}W6;nZ&crwA2R(X&Z|H?au&Huu(5)sFW5Gr4!!KK;J=2T$!mm`dB17GhJ96srVO%L z&+9FdzcqXDm5=pP>em*HwhDVnM;ZXs+&WlH6fjnshD^@$6G1H?BWkh=jiMa&=N@eD9)0H_C?s7=y zw%NE*_?8|Np*{nZ7fyAj5}v)sem(4ba&w3cRv3+|RjO0w)m&|;kSBKLXePXo`OO zcZ`A*Q{Pj^uSE>fV|r&(1I~Ol35#`NiFD#$@A?GmNdL2{Q}f_=k%H|Rq90h#?8 z+P>xX%}%yn@$8~Pr9m>dwS%bhk~PlQGnK}PMV;x)0YEQ$giiXd#G4AybZ_BX#!`g;a4e(a zPD?r!a8I!*ub(Vg>e!M!RzB7fY^{*nap2k&jN4M@3dkAQs|?aQtEbmNSKOCzI&CIb z8{4lyePG+;<#e<)(_z4E)6vq_e;+BhPR5i>!nm)G_L8qv${@|!SH4m5FRbqdNZ1utMh>EJ1^&#Jhtxqsd`fYccq9y%=mi{v?Bhv1 z7u*l!7{5vIjvkJT#r*ITT480+2?U_FTSKc_Zr-iQ)-T-}(DZd8H9U7U{fL$4-!_Q( z640X(*3p^OTV7mvgVhm0h*GD|GF1#ZQ0`7r92mg2f_vvXtceaf$jUT-Ii=h=ayz^@ z3h1FP76`IXA%?X6T=Kr;qn=(HsX2ROu1L^F6;zW=SN>AgPkV#at(M=m7<+#sSK9q` zNk$8aP3vNG7Cn}q^+cvMu_}*`aR%8Vf#@K{@*TubJQG}fr5IDRX)-o#gvxunbvEm# zvwmPwff-Ty=PrR;1?>ppRTI|OQ^AJB>vTbqgNT#7JUPMC13GTvxh^LQ+k_hfry0~w zuZs2B%A3tcc=yP^uI&G}|(gssq))kziIDn!80DfqBCeTmOzg*ucv_nvv4kRRH zfG_A-Su5bbi95`csG4c@Q~#RS(vo7t2j$Xk(rcB2@F|?Dq_FvhBYkR$*6aR?B+Q!e zk#M`Ah~CuY`?E1zG63mnA9G;`)Zk*gWE9RFc;JBuKXXqvxLVR^b`I_^zdG!r|ycrI>*(Lbh?WHesQ=n7^>@ zY;dDYznYL>abPH^Q5JFqIGofjq#OqoO*a;K^VG6{dIHo*ksH;vwXx$N(B7Ze>D;BR zT9uV-MzAk$e$hX3UeU&r4$!d&Nfed0$EPxUq@8zpb3xAS@ld*=t zY;b-jE8)tfx%@Nh&Z6R_9#b?|N%f&F zTY1-q3`cNcC_ua9lfxS1R27`tWF!%f+qZweC2cvXbn$zOP8-yfJU7VT+N@xdqDfD% zAXe!z(Q5!QX{!+_1Sc6{bg+%Da&!d93N1$t!n=m%^VZfYR>T6F4lBCCn357UHK_OF zMe>@ev-s{;2T@+%KS^l~+33BkJN9E;r-eQCYyEI__@q+^2)A~X_Bz77%eNWnh|$lO&eu{(&%7{HO{ zzBU86J6vH)q^A@bBF2urTREs{YPrwz7)3Tu3X=~rq&^7vij(R6v_`CHwY&jv!hq~@ ztku8(@-4Q?X$=ywiUE{|V4_qwTX^`XA+c^p&+=7ByIRxpn5cBM46d7}>GPS17XE}1 zw%~4vpSAYvUNEyDnkYRxrR8T;R}Dxy%5FKbI*ss;0v_?YAnG|JG}9>7a@FnuU!10d(kf0aTrD+&Tk2$K^;nT!9-$ez`V42p1uMYwEtL}*q!=5?I;7|r!g0maPZf+r zDKdx_BdBwpo-(tAzk-nd=EhozCedGa9k4C1TgEo-srv9BJYZK^3EDX)4jUaikBSz9 z>uM;}bFU3lGC=lRx`ft^-4j0ZWY%0l4_bpGUrmyR60dS|5}-p?(HS$1RPQxb z%eB1Y;oGh{EzE%$gtxilImOsFM zC;N=nK#SvMEEUj2foY+*`QIMDyA9$^V>yF`8wNNOqm$eL>Ojwha+_}%IV{w_&Hqm3 zB#d#dbWiX`ajIjb-#@Ktlo)CxG|@&d@DQj!Gv9LnGQN2^h!z=#N2!tCe(?Wz(Fx}SHbR<{Kf@GUme*>0F?$C)UO-! z7N7awo@0X?9^3x?9}ZJ`ZW4Mw>8-3fdJQd3W3hGqQ>h{Yfd*=#=hHZ-`xje1;^C@@ z<@}2uD*%T0T*^pgq7W~H#*DTl@3pMsL~JIc7$*VUVOG6#2kHCW?>Y)VpXAv3$$ym$ z^yr{3YM|+$xCHF8({UNx($=OriMJbQ8qGUdGGJ68d0G-K#xnM4WgFjJl1el|HHkT| zt|EOS+bhT>N-s_Y!U02Qpb6}k(cnum#gDk4y}VWg632nCsPoGj712?KH|!swk*1&8 z6noA9Ik^wRP2+-{bN~93%E3_IR%MiR^*J zV!nS7_eQqAns8Uj1)k2oo@90ZOw;_QTSqi7yAC8qomg%%gkhl_h@&UKN~_SIeL%t@ zO&PZ+(-O;$LpjDb5a4A4#cLK}tR6KLwwk1?pHw8MtM>kjTov-m>>|Bx9)rUMfw0#3%}m;GHTbb_hy|(o0jf02fxS zrJ@ZN9$hCr`P&L>xBwzSk;+lasycLFq3g{#L&h!3`NgYjDw5yL+ST?j2{Yvv>+}5! z{YKe=YQ|mZ<;l32rgft3`A>auh6@V3Wa$2%TW)Y6VXlYQ-nGO~pil?eg^8lL(OFCh zz_@LV>B;mzxM-I7Y}Sug?{1I`bj!>HZLhsmv6qS;CAoib(j$uZ4=m#(#$jUG?-UOj zh?S}N3&%Cph4L;Qi|B+-Spv$)6lLh%L+U`MKB?y=%!&-c&f8 z)^~V*(LubuPZRrbRfeu3fnDBUO1h!a4>HRsPLh`Jy5q*af522O%PI;q-_6kC2oqJ{ zednjklVXrl#oe>(I5%$P5R6fZ)_@u5AC>--74lP@3_lzt+)@$MWo{q9l@V&wj1S1G zh*QhsSw0#bgc-_w{-GBFI6a4LKWR@{)+!c z*O$jbo&WIfQVbBhQ~a?Pl=wvg#^<(Nvc3?}4e zW;#&L4nmF*8H{5v7{eUD*9Yyc{r!G_?c>qbd)~+Ec)p&m<8x~5YodN0BT{sUpVqg6 z+UY?FqpNj7lGpg2O>KIEW_-ebmn=U7*|bT}YUH?7b0f(+zob}AzgcQ-Sn5>5Yq5SF zD^esFOY7@a$QZ*Q4-8&`VfDT;pv-h zTGg|}&rLR)COB6{_UwX7P@DXiCh{L_8b}Hwo}2#Smt(THBUgL6^cgs6?6YUael}R?mY>45^z)7sfdoUx7%i(H#f50c1LYt?-LH`HJM*MTg3}31|`8dECNSmL3o?i$c-8cY2@%5QD>6vpHxyTelNGi$+rxF)xnv=#cb_&}5O2WA)zF_Js-Jy+}gqae-&H9DPC1Jo@%< zT4^5wL|^D$ng~M7c_`^bP}4A^+cJqrW+q93 zu5`eWTQ#r-m7m*8NuA_nOXeO_d^)k{uCY>x;z-YOx*_do?%*ZM9o{nwU0zVCrOhw1 zX5pw5BX9z;RXR2d0D#%kqe6M@0S#B;a4#_{r2Ez$cHc$kdqftUD<~3!R;D$B zKAW06mX?5sE$CKJD6M4LsOm0-S3-H}1*L6wX0r#s zqhb$aQ_P1X&f2eoPbRIfd7<#1eVL}+SF@3eo|TuJX)t!mR95&{Sv`l}+CH@G?N|>| z4}_~nZF}oPqC8lntCDerw$OzQ#aM30PDjx0UMg#^OmOzgXV!GC7A24l>sirZy<}_b z?-c%&Y4On*+cFMjDBi1Bo#uv$b;)LsMMT0%*cwhog|`teLn{3PUxqv--wysDof=BM z@76y0#I0*;p^Fbnu{@MP0BH%OWf93^F0KEoJ4mfnCnQ zjJUI95ciXc=m1V?ZtP6!Ar5nD@<>`}b7vzLEqaoAF-p^$$cyLw^nGZe8v9qm?$@P% zmB`WG`zb;CA1q8SFUwGJm*-Qu@I;V>QwiJu7_y@@B297Rw+teKXSBW@^XveWlbU~3 zf}L2@Ty6-yQKWkw5Rb#!IJ8WBEW zvY`6M`|W@->S9i;Y~yO57uU?WHROrRD`Y?&OGGZ2SL**={-q+hfAr7CH`JoI?J~ji z$IpsEB$#}>hzMw+6_atmSn$@I-6)URi>+00OUvY@ zx_g3BLRFk5W*mtd%ceyiDdG#bBGj)XJCrSX8`*E*i4ICpPRdX;JHwaL>olesYSu#M z=(pYiC@>`ZA9a0og38(yV#DAL<3vQHk0DAON>>=sOw31Kt6Z2?eH!&dqZ7S5m(- zTM|QEi8{HAw_(>Fr=)Sb48wuReexe`*ByWK{cX+8piH8U85$4hKzW2}%P^5*yffzO zDifmAkP04LF6!3;B+>72F(Ig@>{ei=Q#(y%gz3wPIW{kP7o6DpsLZQk zTSjGn??)=j++bpZqs-B-#RFN@TUVm`CM%&@=&fLxUkYDiDoUC-1-mlTtgrkkTuWPc zaj?v9iH%%{!g8lYU$*uHfdZ$6q6h9MUx?Z=TljPCuJ`=rEE_*^X6udDpzT31F^{(|#wD3#T>amx~^d~#;P(n8KiZ-q>6>E!_b0%MJ z36ha~ko^DnojJoBVvfdV5V?vYTd4?#-AHBis*D$Ab^YQy>;L3X<12X^cbPcRt!-a` zMhY~hx^|8`Qai(2Z2Xmi&qhX?F9?Dwby6%Jo$R;OKo*f&uRP}@${+-fkqsh15SadXNQWdaf$F7D6R> zLHB4mh#7?sKfd!ndTGAoHX;!~%;=Gn!-rRnSkRSag28esj--LfvSsw9QqX4}iQ0P0 z{-XXe>!57aP}@q88cL7+*QGa$aydK4D{Wucn*Rocea0V`Q#)mqAte*s{&}GWnIDyT z`Hadc0rf_10Aw3d)8jMihBXdvoDDzaWKh?Y{eIbncN)$}xDJH~V`uu3|4_N`6EGR9 zB#6WRt}2K6(aJ3;(x;oH>7dvCL)t*N7>k7F=>9avo;Q18wNhiL(7f;f%S2sW|7i2y z0FqN`Q!%NJfcH}1*6f%+x91Ar1-kDXz5Faa6tBHDkU|s>zV7dxGhsN9v0vq%7nL^M z(Fy({A3%^sc_{OK+2!se&d9i;LqRskInxJ~ABrR8XZj$_b0vZR7gplLb=c1p+0dTw=wu&moCYMa$Q_wDMg`O!GAo{$BV-z zCBM}#AuROV)7D{EF+D-)q2%q4t(pGwcPhN90k75EK>(x(JrAdC)#p&Bt2Amr*)PSw z!%6<)2Flt*MX5MR{id=!e2o7HcV$w3_#3mb{A|9|Y3#9V}{uQ^5mP>Ps|cje{D? zR3_MWB8W5212yClxxYDHJNy+%m~35vI?0ILnijCa@AnCfsqr&?K{Rlu#F@nF3uSh| zN@FnsSrkVsjIHIS0N5I&Qt-c{*}_eZu5Vgd;>l8NsnGW~1(u2Wx_>&Yza`!|e&>Vc z&@a2Z3pOwCs`eDi)94fot~WnB>E*S+uoq}Y-93eo0tE}czeFTArM49j zvVfj(9?}+)HP$WSl1R8)C}zcMIpMCW>w(+a%R2)|rSVMPR=>P^4Z`+?Rf^t@8mccw zr5_!VVr-F{dXY+DG!Di&mYaMH#|xcimlAx4q2EvVO&8Q`Nl2nJoeEh7R_#LO=u?XI zj~R9%97q({EFq_n+ulSn2OY-A)(>bHb&Oo!^EK~(D9=))+08Lmjs3CD>^GJ-_%88( zkGMJN3LKH)uvt@ir2HtOQ6?B99UxD}MhAV7u$yuTYui5>1dR>>s?w-6I&3q-%JSg! zr0c|#P@3OQ)5S8uzwG*RkIq6dy=STWPMx(0EOh6`dUS9A;gmZNDN>B-X>J+32IL%7 zX$RmnLIl-#v%2KK)JLSLeDso#1%cA1C)SHIG+0)%=OchDLQ|8YYo!jf$9yHg;gVv} zjd6;8XA41=G&8cU&{jf$Zv<$~f437)IjVaCV3`BcM3AK2X={d7kqPF0tf$Pxh8I^w zA}xObO46wKEo^hb=JEs%>8I%)X<`XHzyjC9v(oqu_(_+PP%eN6f{5P*`X_B{Bm2}G z%|H?-(3^54E2kT2Nx@x1G1)f-R*6S+Q=M>HV9>NXos%*ZM_LlL%1u2o`;DUU#fov8vNs&2O5MdLfvZu1&S>~D=N zioCNuJIBki7U2`F!zq!N!T4A^UtCj(z>Y+XZmIoN7|{KTY0dWL&wwt2kGr~^x&^xW5JXi zkYW{yXFzILzV(ZWm8Bjnq8|aeLcWAI}rgx45q77a*)u8bW3wRa-7N|8% z`5#~bBjDl7#4~a54oFM4ZP92FzjO=D7AD$9Wb^f4n4wzpjp>v3uiee;8*G zD&MRoxgjA;ke4H8TsL^vV2S8i(`7Q&KCbMopfr1-7cIRn7mA^Ras}U)Ym_FAOt83+ zLCv!4PN!y7dB8md>c*t!YOtG*N~r+w1u=gC;K*m)l-ieYX*$eAlL>yZGidLT+TL3W zO%prC8ugE~nY=#_UJ5ue3Xxb8suC>XD}?m@7SJPwve#i-5^UfKjLm+-D~|LJFyVx0 z;GpKBE%D}FUd85x`e&(uvQZkTc736iB_Z}(Q9feMI*>#Y|EyLnOvlL*2~w0=7`qB$ zFj~5FA@_o8?#X;GNedA1?dy%7QQzHYyYTV&w^h#K%GcWKFA3Srx>$Lp4}8Bnk~?Hp zs^q}%MJ??w3!oU-y~~ovi`A4yk_*MNb;h=FKG4<3Cdi^9$g$>)aY}xk7%7s_U<9f_ z;GkL%o_=#z@fzT+{45PdAa%~QU_$3i(*!F>33%b$x&SBJxX~>CvaK`&)T!Xt!Rd7w zNc)?mluGI&9l5EKGGI@_!R}>f0yU}xc5m_UFS}CrXfH6s@%KJlmH?=SpRVFxkYf0X zAV`g&Nx(!@a+r`UziA#22)}dFJb2?jzZ2_R-E$e>_YvX-vfe+tfoU%v^M%7XZus1y&oR$bG3z1fLjFa$_x5x(PgJMqI z)W;+`>ekyJSIgoeuSIuwX)6!O_?7;5A2h957_r_m?++#AghHh*0MIJ_o0eVjQ`aUR zRpQ!U&G#xIi+|S4^i0Zxd~(xe@J=usl@ce1d@cutY7Pecy@v8ZO7anR0Jz=u z<_#11-i{#Wg^nsaZS4rC>sA0AiX%Z#G%@wJuL_2oWphVR@1F#vRkV;H4_@FRRE2E~ zm9sd!DBt&|X}xY!;yNJ0xfxfuR?L3_G0#FUzPFC|pOU1HmDw>(&cH__s+&k~(DMFX zg?w`c%gHvtXQI)zxAA*a1TEIKarH{Sb19)@%t(Ngir>g3DV3(npb7y$pr1j`n?2dL z(3WPauj^AeiD;Px6LbKgFdq@WQAUU*2gAanmlcA4rtJn@D=$s2dlu`_KdY|bw3UL} zkr?_d#L)k*CC!nr5d=kTMO_vmt59&)eWCOqLf%NOR2Nr;n+JET2*{H{b#G;32-nLU z!Ug%3ObS*5S-B{bOIY`}_nE(dUnRF?f_taA2(*~dQXVO}sEjBB;0*2O6u}^nF3Nk_ z&i{rx2Vxr*fJr>9+Y~K773-HKZ5$u2t1`24ggji+(&$&P^B$Pzq4x_JSZ6DPcMK^R zAu`AW<8T0=54UIjLeunD@-o3R2<`2qpti$wN7228w)G(kwP|qou+S zL%3W%!Aib=k}jTEHwi}B&cUZ#DIgP$ti!e;M3)EKYj<|<9B*mc3lCokH9yzIUxq4@ ztfeRi=b6+sI$#OAE%o2w)jPYVpBu?f8G$`)A|X064a7TCKcgElcBN29P``BvY86Sh zAU#);-8$==z!N#h(oLiQ56tubp-Z9+w$Xjk*7o6Tr6ip$Qj!r9bQ<;fRG$g@f$dMI zZDJ=cj61fb;KHmq1&#Y@dV|~)1}V)V8!s@SYhpg^6VFDQI#FC7qt@=(P5J!P@fh$9 zdNNg~Uqfq_3ylJyWW?GxVpsCC*lkCpNNyBqW4sJY{a*%ujrQy@4c-7tnH)^BVj|3( zj1cn191Sfx(#7$wRWkjN&4GGRAuj=Qna}J7L&Qp6=xi%eE`*ZaNE10A{Zt`{fn!Pc zIL{sI@LCz+i^(kL;nunI1ql3bq&2YSUw3C;Qv_rVXqT=mkS(6Z6$yj(Omy)M?-EE< z_4@e|$-Do15mI7|jL>)WvkqyoO;G)yh9+^+owS>_19fWVh5(azMz>dSWY)HAs{oc_ zk9Nu;A-ts84;r&P4Vs9!2-w|0I2T0fUQpLqQWb{Gs0e_;kgX;)G|sVbeK1wvc5?+W zwJ*#-t+RQuXW@1J^k+Z)25Elz>E@0Z82ez&rcz zq{S@g=)SAc4B`hVo)WpKLUB-WC<8_l^=oXULmfXGQ&FLDlt0ePqCCE>l43xvRzWe( zc8iOS7$u$M9B$8guy4?L_o2DxYJ&Qr0Var1;s6r@(b2!b&77>m@8B_X1?|q{!+lsL zy!zzloTs)b+bS+&@^4ZSC=((3rSv{uZHH*R#BZ0|O8 zCnCn(uBIr~A91BtOj`i{Pz7*s6!(kBI8tMwr~>Q}EmH);SvkQ1_A~}B&dJK@nqf(Z zIM)bV;)gS3H*?gFiYHd_H!iDqUr6$@B&R+wuq>du-LAcqSw-r5ZZ&^>jnc;KFQCje zx1`1I6N^d$m&UkV*wW7ZqPEbv=&G-SgF?Z<>+t=j&Vwf^IIcW`G)UN5jKaK{?KIs( z9?8)3QXP17%13AU>9x0JdN)s8N>AHFC^`Fm%bO+*0&DM)nrx0|ctGmBQ0XE@3|Uy^ z3@k_jrwVhYijRgN0a3s;T?30hfM%(1&rHRw|G&?1>r!S{Z;U9qN8d#GJc|0sp5A}R{_pNOI28?d~;i5 zg~;z-pkZUfonpsbS0l#q(*3UAN&JO_Tt@G=f;+mJg@Uo zl5O7@(`yJoInw`-2$_tk%Ww)=s1KS=9NdMe43KR-ol$RRX2e)VZKz(&wjS@s{qj=p zvpOZdftT*KBZWxX_3eoZESc_pC+3}B_a^WP&Xxv$fk2aKL=|f$S`W)ae?`(OiYk!v z7?X1j`B1+l@pRZ|y4uj6*k$+vp%wGh2;i@lV`(h>-}jLs4~9HTqf;eG?cZK!BdkBJ zzV02QOz+?z-utdcTKokp<7`}e#HXFm)T31Kc}ebch*3{a%Qn^Eb#j+hB}o%i(Uz3 zQB8KgRH&%DW|)ii{VFV(@_vPZQ9sw#G!#~Fcb`IvRL6;;AZ6Z+S zwPEp$T~rG3V&)G60h)xA;oJunH}!22&*^d@ALbtU5SY!8{@&eT3&;;L1Sr!8>%)*1 z4;sq|5z1kU<9GyYdv=@$Y&&t|mYk05sWHW_9Y4QPw6yr&Q*lt@>uyIfG>r9Rq_$}; zwojj|vRhyMke?|GYzm1O^&{l}ITk`Y$T6m_ep1)HcJpY$^#Bz_bBk&7M*Mm}X1XQ1 zqBlRsp`XylA~crgHPSo zh`b}{m|@TR1_#Zb*k)t?vX4A?=Ki$zE0@gjk7`7J4G(p?{D3;fYV~9`+-6u)U~E%X zvyG)B^FdxZuXxF4w>@WrZZw3+4(x8Wh+^Ay+k)VAuJ7;Oolb0Atik2ncTTQ( z=GvtuS3|^_zPI6vRCd2IjNS(W3B6v?3$ESLTxP|`97o4zmwnP52DJ^DHwu=$d7L~W zdPf)Eg)2OyK4p-_J)pyv2=dK& z_e);=WpBpMZ8_-l#4D~4OFp-14fK38!(qh9T;lyGY~NO$63j!P6;nh}Zwb^af=0_Bmz8`cI z)W-iEp~DQ7CX8k9fIX{fYs8mEE!OVhP}+>%bXt%~vRPu&WK87vYJQZSBtl9F;R^dssARXB9ooZCqR; z$;u6h4BY&BPM~!820R`1DTrd&so%DSoqsyUJ{jQ-is%Z+JETG`;!ZE7c?t60bBrU2 zDfMlNrlXOmfBG==1OW=Ad zowOOX)Zw5#5p$N`Z2nE15t0V6o~(z`V*UD%(_rq9F>2s}OAW5I9J;TCvFJ!4`tNG| zK=W*de#DS##boslw9cQ#3t?XarFcSBe#21u>hVI3Vf34yU(vlq9|m+&iTMeqJFXhE zmIvnl`R3udT;wXR4tq2=k#ddqT!Vk`_ggmxm~8-;#QAF`uxVFSuipP}gR_xnlTN4q z5b+d*JwoNuLh6%3WWoU=dq*2iSG}D$EE+yLt%N3oC2u6i*A@5JFq(dU=i$K5R)ia? zd&sBO4OsJyRL0vjUacxV-BEB@ST`0@F<{$fLStcieLi7&M<;{KWsRbXX(1=M&OZ=_ zlMlC_+XYk9X3la9oBqA+iO=6tEekTAW?6X3Ub7(DTwgW^MAQ+79ZCpjsa;9z>uR~i zRt;J?>_0ku?W!^tTlllDOa03aZdV zg2QVk1r22^-1ka$1o@KvKBUq5!gF`jnmPA9udX+L;)PYVETBE56w|z2n)z8Ldi`J5 z1Hw6{PZ&%G1u_gzPg3nX1k+}Mo!qG69*65Xhpnp1hP;~-quqldDmJ|HzMi0fEm%|u3rg4IJh zRuQ=z=bcQvrQwin$tZb1RJCk>=^g7^bi0^x7Cs7Okuho7?(3;&$zUYhQnQ;$o1tg= z?>*M;zUyj(xB9Qd?JWN735L2fGVr1?!;Z~nn9_dV&Ias*uRX%Z>%Ll*w69Y4gLJFq>h7uQ?X zra5}DDc5l&r&Rk+-m3C$)ApzH=-q(U_^{XNaC`oP(+vThSH;bb>Owr9Gz42A^gMIv z3fG{FmH5xOBN0Om&lT?V^fqC2CD*4mT{U%6HmkxfMK!01X_n&Ok|cYp6sxH3hNm{1 zqpq${%dg+p`spG6tdZr`PUnvDw(4Gd&5PJSb(NhVu#X5>?YD#NUh_USRoB*;o^)H4 zJ(Q)XOLAUXX&70wmZ#6YpqpFmhm3J=K4wmFEbLL;A@9Bp9x@keT>9KyTw#5rtUD+8 zrx{iRW-NOeO)5g2N>x)SWJO4e_cq?`LS}375F=AndP~z$j!=~hSmw;^X)Bw!grg#% z-ExL=X8neS07lbB0=j2B=p3ii`;NuQdLCHorm;$S_0f`zg!SBqi$CKyhO~YB_tk;u zJsSw|^N?U3_&=Ms>pJe4t^3xcc`z$W!;50-(Ev>cf00)aKavFVsSgN#@p~na)oIeq zi$3q)%A=Pz9l$?`lcc275k9Zz$-ST&lquGz_UO7lAu#;`buS~hlUODrbclxhB)U3X zTCA!Q@D`0R4MVy&X3e||>){noMb63*kzAcYPjjH$hXzs9M=s%~gLmwXxAi`|b~3Rt zd*#*P0+xqWZ^(fE%;^S!V;SyaL%mJz`q7|)QuHggce^cnceSL~A3yxJv`%=UF<>fo zWK5LC5WGt6c)<`-jGxwWo;Dk2EC~Z&`51g+G6TnTe^m>^zj`!eM5U-f+9Eu*M0Z62AX1Ns_(C zg~8LenxPrfe5PB6l~Y2*f1yHeU3^cMO}b>^er@JuHCQF%+dY)@o}9%oDMs?7q@J*F z_m%5|z6@WB6Q)4ft)=mK#%dX1LAq)=!a_iBIKo*;T$5=gSkaOt6Wn~mch_?M-l`AY z$sbG;`RCqw?2P~*e{b3`yZs6HygV=aHF=JTtDm2XfC%{S_vMt@Bnvf{QtK{$9vEHn zd8vtD^|5*6>@?iNGY4nf`hs&;q;Dk~DYm>naBEQ|-A=ozQVs8@Ehd*49i1M`#$5^* zd6$?Nl7*|KP#(*uZRA0m9_dWI@cpJBHX}~sj_c0;gdCEac*tjHs*p$&uS78~+QM}!7UC4|=?b|%3SXvpyMkBJSls(qhlOPWoeE?sL>I`Evz z&5D%`HP(*9>P>XDyO#>zBndpM4rY5EVl!5!rZIlM_$5-%DvfHz2$-TniX;4*v3pnp zI3RBPG0ny_%sXVjepaSkkGmvS$24${rBDp&T_NH>!QX{9J!IkLWgVEt3ycVyF%?Dn zrZaRVcJwTsnc5A#e2W7;2{@9BFvoy~X+MWxl24E8@-ZRk0YloYm2>{U)sHI{2q9g_ zeuNzFu!DOD=efuF=4R4_DF|tZf5LE?gB|ye3rRe&vr3Y|`P%y7&!h=#mXQK8vH)yN zL`vMX81R21=;%pJ;lq+2qqW}F2pO8SHIjls39k6k#TR-0sOHEj*ZF`Lj` z$_r>#)2&R;)nYr=lm&~+*IF|dF*kc85C`eEM3qT<2%XI&%4gD`eVS$97Wbmt=;@gj ziKsYDWKvK5$nDixhdP#ZvY);)cjRu05s&lw=;$q{})9Q+-|HPo|p_Z8X@ z<`?2ZliUM7&$d)ErNx4JlGvT9TE1jY8wje$Jq-uT7B#}r%r_665dU(NBd)@lA5kKE zocLk)u|TD#X_WSi@tpTu`=g00>?*eVz^ciRND8^~cA)tlYN*Nu7?eFsOV|g|&bfKW zxw^+A3c#ob;JxS+aghE%fMg(SE{gr8i}9zwyh1nViO%uk4bBf@u;O$(z3R?mL+I%^ zP1}PTSbCxdQ(hp1tZOC8Zuf`p-4-a|OM||g66Z@Z^|q=M(tsw_g*qnmF4KBxaR7|# z!&{sF9a5&*|8J>A)hCUK63f-k<^17P07>eKyNF$RSu^w}9|p?O{V4J0Hn9qbmW_F!8g&EP1tXCG+}yb&j};^85k6F*McuTx-N^mE~gyz+MLkXV@pvB_=% zo8os-=N|auw)>6vn8!L628b^%Viu~y8COC#r;4oDIl57+lN+lFlnzYs5V62t{vFm! zKRs;mIihMCBj~mPjNpk~@1l6H%dT8>=(_sXAftK%+Iu%DFLrlV-n#L?3KES+S4gh& zTj#cBUHL_QPNns37ysw&MO)Q(u4n3B21UEEDHp(XRHz3*zZS@9B~Lh%~D@r8KLvjp~&fJuG_Z-2%_+#av94o)LL}Vx@JjNX4ezS8swF zzIdjPQ|kX})xj5zy%Xe&gNZZipO>Y4gFlB8d#(KAS54%f!1QKcZ(!)84)d_Ix$te) zg*q**NU1WbUe42HyVO)a4khdV#M{X}ON06ameL4n@TAYt@idVw{*&JM@%rNG(=82y z=t-RxG>cNEtlYt_W2|7=L%m1opqo7UIRe!;?ci~7pLa;gtg%~HB*Y2o9ZKE5Txni9 z2BmQoFaDC7asv>da_|*^h}HF%Doj96XWP_Yo-8qNJ$}amnoPo8`9dVO_LHSr%5drf z+(9Sd%wb{2#-6crT2+h!TT4#q@GH9UD9@+llG&Xu{gw4Wx4R}q+XtP~sb)WX)*&R} zu^i)cfPAbr6Ewthm&|@PL$$ zq*}XVupPvHw(>k;;)v3=vYaHRr)Ij=X6^f_UUyclKGZ&QJk2VnF@)%vHk0-=27uF! z2;e*V`D+JC=^g>M;L18Cs}T5CyX{bR$P(U9i<5^%OYi<8{Yf7m!nu3P>}dv!WIV?> z#^T1D&B`g-^H(Uj2&>iU9hYLqv^7UVmheRJ8C-&#OPJ?fGVr3wCKMH-0SLHVT-Na9T=rYvn-mn@g4aJ|Ko_Wf2B1& zs&h`CIay`Nw>qwq9DFRfkY>PtKQOWGS_7AQFVFC4gUEWv?*}hEsvB6jdR%Xy!`uZJ z0$0e5%yAe%PNnk__LoMdwZ`P)UWv1$7?ZI@|lQvwDp8boL9FFhB3gQD)e$cHt`y{=mmWNFsktE({&PImKG=CtjpF3WjsI0)4`Yi|Xl z!#z~S8J{2T01?0$mspq9_XXsd8hpU}n$E!GC||@9{>>?WRdqoFL3;K-06r4JGr+O?#*}AGxC17^G;VibCh#&O_Twx-L0&WaJ1Bb+j=PG zGNJ07FQ>Fu-F~zMfY>cw?`B{g=97VH1&tG6AWshLE@=6;6Nj_44canU8^fj7hrWG& zzOgpdtb~0T;-nBwOhZ-V8wxzQeQ|9fX^S?LW>qH{mz=K-_os}GrNjwHhn3Pc4!r%4 zB;c-#izB^K&6W4r_C0F1rJyr}0q+`0P#Td{SYP_w&Qdt0Bk_fU)Y&LrJNU_x{%5Az z@`30Z@q%WK@zYyGGR(wD*4))}wwdp4bX{x4r z1`@j_SNI{TL?yhsS?ZaUV`-4MGIB7EH2NXwn)%Z(t2-8M5c=RvKS;uH+ZZyz*m>PTvb-9E&r!hbk+A! z&Z7>8um%eDmgg!w^alqDEXZeKo80cFumj<%JQ@Qbn#pb7ZzA9r#M$%$`CG_dl$q7L zYu%(DuGc5VimxAGImd!2`{`7NP)_LL)uCF^`5zLs-0yijLEFo8gWb4Ga&cVVtWnD zlE8$6qkF=(`!p}les+h}V~1y0pr4+`#~U!vM7QMfZZn`wKb0h2w>WpT-1&%z4_pn~ zN7D8LJoua@T6j|l!#Yu?(F(8V{`MP?+(4pll{z^BvA{SPVTYzJ+B;sAod)80^P}ES zUt;Q{O3=aRfsbHc{gJ?kKQ2x-HyF)oYSUodN5$@pNw^?s>G3G7mmJAcRB92{;NyGx z&69$DUHe2T)Iv>#$;B{Dq<%d3E7ZQ&F)NRSNpA@IgDw*sEn7P1sxw2(`)dlm?m=l< zwISQH_Uezd^&F+-D-d2*){#C zb=@~2sseF5&OpL+obPm*4w8dyx1EoK)?{Zs9d)-|egMHk@#G4*BE zQW9tEv=XG68)6Fx^3Wx}cgxzT+SXkFG#>-dq+~=>H~#kZ6}+U;5IdEjMc*T}?Fa3o z0OqhMzzDyhkz-1aHrhXs_`L17mTK7lCwGPF|4a^{iedDm#AsGcbvwpIUObJWb zSD?Pd3td%d2s~#l{uK^e544ScMZM?secZ~w@Z3Vi>HNz$nqOkmvnFSi3$0U$m{*=# z23mIShiuw>#{RE!gxGUG=R~uXarbfP>DcNJn(bUggfdT?5`>OZWuK~f6$|xP&Sn** z5k;$cxoVxxSx=#d0D+#K@_QJS-oq^*;C?^JMv9>SNC|5aDL&&Yd9Pf#T50U~lF*^w z&$xXl1;~j%dOvBSa}*LNUVK~g5-WHrkMgk4W^H<F^5@@Cxk#EfD zqT)qoaju?OY95abHSTI$2$QUYEagV8O;Hq+iEQtR?%|1* z)1v9Jj`9J+NJ?UtuB{4R56$-3_4^t%+{e7IRvYe~sLUUERD+LBb>*eiy*P$6(L6eq zf_|XNK2y`UA_q!poi@Y3kyYjh3FioO#zUXZX4{f#EBIP4!b8OZs_NO&AxgJr+ph;I z=Z+DNjHvD2w8vI187o?ch6R4S2_G}fZ+W&wE3%jcJl_TSy5JH6=`Rw#z+#|Gyprs#DocHI=dVpc*K)1WFMq z>=Yl}5}D}Kjm@OJw05~V)?abi17{FYP*AQqf?8z@ggdtgcnIYfH@0L0)+@~Os!J=^ zpIoCUELIvtElzWwn}i_+&;yDiTikDMe1w2X)~4#R+%}zR5qYitSRHIB8~hG!JL*)P z^%q=ipiMJvzPc%)lnCtPU_aBQWSI< z={vO84mBmg!x;Igy)H$L(XlbQdz^_Ko53_ws_tq)^J4~JhXGA-9ppYbo6TJX+_(F! zUF5d|hR6ejHg;~hoQ&)+)AxOUs-zM;>lTDW{$hPueftks$lq+J9?)*j{ZTd;^)Lp; z4X?Ha7T|>9NI~85@_iP}dN=S!a@W;5xk)|an*1tXmZq%A#9tx~}Ru7)OE zOulU{wEKPA?{4nOu_9$8wTLJiRF?5_pnl8{id}TQorlG#n#haq?|z<~nYO61BT3`e zgB2TKtHkF(nyP-}2ipsMHlgCrfTC%K`L|fa#YtjjQ9&yB5UF*jzcgZC_BQC(uW$!- zmfD@>$VG6YQ((488&V+l7u;k2aqlYR9&LI*bMLTbM3N|$6AvoUk@72D?$~VjA;3Z< zDgBdrXSLrN)b0jw+j}z+-q!M3>Ki?9=Glw~#^(nIgI9ciYLnyk-1D3}an~sJKw1ap zJW-4r(Hz1~xlGn8qY6Q!-847-Loa9ZAy5fs~Q=cS-4l^qWf3 z>`n^1(PC$uJL=hrhBA5(<8_E<)VJbF2V*XH7+oD_uL_CzO23`#GvF4ApcL=a$K&ht zE=n}L-;OEV+;8O)ZYto$Xn^wumxC7*ZUuI3{ z-W-i~TiM~~!hb2yDQVfiwn6HYyN1deE|6LM=aX0c?s7zFBnZ*@5*H*mgONnyeRi?x&DNaG)B zUY1xMOujK*2X?BJJeY*uBTZ+Qx~yA=kw$Q#0(1s|Qennmtzq9$H{U6=j6$a$fKHG>n)iD99XvsTE@7^px`1 zCe9D2Q(I1YNTHYZ1l=gYB)aOda`XYzI|Dx)5wOZ{^di;?z<{RQl)ZaDh8Z)*MEvrU z>odOe)*=%f3hY$pZqJi9OW!tJPNo1SH(A;rMAwS+K%L0jnR~tiA{6qIssqcgzahR! z{IKUu&5LV7=kJ+cx2n_t-)Mmv*XT^vD?A?kIFwSmT;{jDP=;;v)WFy^7<}`h{;%kj z$amFnXHd_qp2$t&ZhFwkrh@hJwa~GC0wkFRb?LB2Lv_=ddMJgBQq7X!3PNQ=Kbw`d zHu~NANJcz+A0?&g@SQ}2FX_+^nck&Pjn+Up7?!*<-0oLFx|OpHyD{v|G`ROXAoH7C zDcOY=H=yoi2LFm)Is#L6z};y~seSi&)r~8s3`_yPszG^Zb7G2Gr#E85hNJ(^sHP_P zR&AoD9Q+!@n!({bz#0f^JV?1#8GMblO`|)yH?uKkBg=z9epNwegLEap_!&kN73!EG zvVaH$z!R9cV>ZkAw0mVs_L#*16v1M}dKlxd!_mNk>;_*}-xe&%p33_EnV(}$Z>K)6 zA1sRIl7lYK!667ij!8u>^&;n)|GD7Pcr0(wjw-)W_8oOgO6@_x`=}zunULi2ftQN`c%$+g}x@B zTQ3w@tQ8)PZgtaFHC2@N!xA-3=lHi}?pA`gn(i(|lH8<;3=e8g`4$)}Qu-McI;zA= zH+bcgRUTa33!XnVXdWyXVV%H4MIb&48Zbbv%00E~Jy3nV0~Ec${Yak5MIfr^&8 z2Eys4BjXXE3-4WP8h56?#EijCT_YP=R$!+V_GSdR-|kxvOL}i*F1o3A>O1D7jqyWZcc3~Oz}@z01$QutahkQ77CYNE zmu!E z(C(+h#PLqZ^ff&_3i^yk%;(Hae})D+L|@Maj6$>a?teG6=(5K2 zAwFT_Y8ZRnZ-PnEowJ%Exl5@O*@w{;;)2B1X3}7RRm!6q5!!&1MDH8K$-TWQMxjGP zZ-%e&$l%|*&$evY==>l~P@pqpd`V66zeUf=?kjKH$vcF;~v25fr{+1vzL94VH*?BH}OwzlQ9d4F#ZEa4nZFP)Gt80 zPApXy4_Vm4}2lpqK?FqYPgzeIKnS8#` zIU0O@@lxT(q{-(B)}|5gkwV5*R_c zg0}-~XDR^Yz_Wws-RL|?UldksZ1H{A8+NbvPf%%aX*$U}+*D2~q9CPAo(%Of=N)ru zV1IFO*JxT`nZ#XjJGyp8KvNdn=3!{4IG}q1tU3U3$ww#^cnf0iyPN)Os_%-tHpCwP z?YnC+oJooG5P%(5=4B!HJ)&q8lCwcxoB};@5Lupdoo2od+5@D?Z_zYWxnGyHaKJsb zTBWMwp_Z&NS57R2NwGmIaoM2KLoS!MY-}|~s*m0ncS}@F*Zv`W$}mb{5ZbgJ{{g)U z*>*Z%SMA+yZrqUNzNRTJ@$K@aqB6(my)J@LP5*k|z~~^?BJb#HvWA^fF&NW`+2IG} z(9X1lZB4jXZWvw^U0;A;d#7(V2^UC)9wQbP;%_ z_pP|2TPIHTPNG-7pXxRZ%~Wc-4k{&%@4pLMo-OcVTyp!86VvXwVX3CnHskBiK%R$F zl=TsPhPF%}$5ypflWyu+i%4@iWa^;2CyTtM>1~+=KHb-brbe%(OugPRmJa^Xq$ZV9 z6Ikb$#A7%o_4s8%Ukc)sbR}T}j7l)1CujQ?K_H|%`g^4={sqWckX<2m)_FUY=8_FB zz6sdgQ`5}sTpoEhlWkYn@=`&oR?~2gT%on@mW_MWc`9_5`WN9kpZQF^sqdJdwyJc_ z+EQb=E1>fq*(+!Jo2_zQ6TG0sxtGvM8M~kAV5POA13ppO^LHyNVYFNszk;Vp@hHoZ zte;aO`1e5Z_%#nO7H!+-MV#giCK{iw^;-k(k>(Nyd(%d!Xdhs0-P=4z{kuxmGTDVs z0wgV)Ah&W`yX%09Y;TCkWQ}C}U@B$3Y&^87gP%M+XW_dZLYKN)r+FQS>8*kGL!%Hg zJ2qWL_a^w^thIJzm5x=Fa=;2Lo1S9%_m%#A4O2|$uIu^TPSoq0)&r*jFAdTLWpUCZ9 z7WWL8kQetkFO$sL? zOrYeaNpaV0a-u82EzX6;h$)(l-403N=^&VmFq{E|#4ui}`MOt70X6k0UnRuSLB#<3 z;pUsyNJOs#H3XA2@mj%p^lqt$I$*r&tH$=EJwATmi7f0dy$=l%7n2iMMTDK6tZL)OAU90vc;V}>x_LD5owgQELn!JP8f#geffMp z-{13lo`1aDal77gp2vBd$GKeBB@1>U;5QZ+n*NBxX0SlIJH4_6rR=wb4)mjGYSnjA z)1-va84fe!v5P&X_mqWun*TFNHJ{doQE%D?9BCrP*4|3LE#FwK46xh#Da}oO5?UJr z=^X=3zN6ernG`e@dx+yw%bR1TM+E{dKhd zIM}iYr9o@AG8xLkcU~STUHeQ=jSW8l)2%zCS0%^6efofhvLEN$((hMDZFPCCNNx3a zuhwn!?UsE1&!Yn*|IecXEPKm>K~9X_;eH|m?a8EtLidS2l|8)Gd65G3K{+8ux89vd z690YOIqDvm%x!@N19xZ>W9jA8UYWN(&i#9p1q#5`CQxrisw9xQr1iF#{b{^~#@GMc zJ_iKg?wmOHi({CtfFc8HnRd5ULW3)ZqJy^xlV6}G8K}r(&7WNO^M4;_kqVvEu(4%flnw{)v2N56!MK9{oD{*Gy~xE_@YoIOqhNghdeaPVnM?3edTmkIi%tuMg|Ii^0rdbhNcYR z9XCK`iGPeRIWNL7C~y_dXy4T$dVW{%&gmT0=<`>EqMr(%DrcFB6pCZWe>cyZEtK%W z+>S;dY0Qy7to&QNIQ!OizmY_>+h|Dsgtixw!-5g$_C9i?4aie+~lfVbjug;?DaJT9?>;(1g3k+$y&mYv(2?ea}0V$NiGP zxJU$>)=2Ec5-aCwA|3AO@Znh&l~=1LF+uM%z~4?>J5EX>=+gCvc5Vl3?X2)>mSi3z zpyif!R)l^{CuHhD*XJwv&3`YqeD>qsUUQ;5xCmULUgM>7x~jvd;`TdHctpe}@pMgm zVmED&!v*{}-B8XeTP`(wff1gQKK})ibj0CU!}qzSIq?3J$rMzr7hq}n#c(z)20qPF z!CJR7MCn4iW|cf}<+Tm+#$=h`!=qSAIp0xJ26#>^?`yor$k)d^gF}yZsws}~4!oki zhMc0QUIGRT@XB+ax})}U)B1`o-19EMJH|Qi-ecZSY-AC*e7{G!EI+19xTUFKd%fiKDS8W3qa<7Jh)4-iriEy`&7W{LHB(ig6XT`tw zR7bzk?w(&^Q904PiBn5Ib^TBG@FS&5b$|EX|6VUS7X!TU&As7SC-Q_#B%9X6>d82a zOwI>8=V-Y|hcqt(cuJ$ofbI@0OaVHHGB}C;k)+k)r^8P3aPDLcdco5h3RiUO2zBJ~Q=USMz&K@X6@U_Yr?|gDkIywl#lP&&q)CL zu9HqSp3Ijb3m(n5w+05GmN-_~;V&I*?u&ytAHaGq47x zmM1S9noG5Gzs8M&C{bwHjL+@t?*S<8TbOI?+1|+qU!z9Ep;Iv-JqhM2iZ-?imuxUY zuN*PEf~OaFZk&4au~ zO(dD^{JAElv0~sk0d1_xTS|CYy(+apjebAPDPiZeq$;^)I^imCG(a>x5$0#oqVk+_ z0pb}4f!07#;7ag}vjagz%tYWmp|JYQY6P1?M^2UP?%!KgK5>~VNCha2mMrjIEtiL< zty0(q`_Ekd472K*$t=&|2Hus;P3%)Q)1R}HGMtkaOa_R$61ZV!$d8s5T{AF<{;;2yBEHCji&5skgjzNU3;l9ou2-YC?fBaB1bnOBu^y>Gj~UD{ z2&ySR9zd?0J0<{~%qL?mGqk}&TC4QN4(XLD##ZwHh0XLF-k4+uKVH5UC0nfIRTI1o z_^40icRL7v9Rn95R#p>KwcpKp1~{#y#b}pVh=tOt6`$bB#{wFTs~|pUeXp*h3~x;6bgC&n5>i&&t4-<|J|RjsWl- zIpworYwzE`OJvsyOxIGWZtFj=YIy;yG-=*7LzZ&R>sJrxQJ%jJE@duxgw3ca``*K& zFvUpQjN>qs$o+TWEGomV1VO*Y?A>)JSM)vk{hWtbsLenWE3{}1bcxUGq;e}_8U{8d zb(#onvfx)P%fCcz$%D6fdPCkIrAQwDxT{*63<4JE3d$+rOTY3CaMj+>8( zYl?|S0sPIoGM-NlD1M4n1p)R9dsaJ>iC_C*=~MqnD=5Ae&VhQqpF})=9b7cYNr2j5XRN#b;B08G)0t-0fX zcKTUej7qFH4gs3-8Q1TxjX7N`$q27++WX@B8re0|U*&S9Rj&8yAMA4<@?uNmxBGOt zAgoTZOCPs^;4&`1$;KMUtez1&`k0w^l>Xe~DoM>g&4azG@lcefA1B2VP73({dY0Kv zJyU35Ha%C?SE+!>IF|)t?}U!NTD@kfrC)8)J0qhw z!wD|m^dYgk{?Bli8~3BPdP+>dIA^U+MxSTkT*Wg1Ok_GUhwMM{3>wwDp|LYFj5@mB zd$IpSAmpA0n#lWOmGmTbBBIc=Sp^_tvdxsx*)I%!$RX$Tc_cluJU5oM*YWZ;UveTqG+ zX$qM|{-2sRyy)um{iEslv{`?icbXrdg8ez8{li8Wm`p47 zsPwOKnQalLdHE_O;I4@v@IL5Q@Gi-cI*$26f1yi@k)+c^c&PekdJ+f3Bwbg^Z2v|Y z6u9qP(PVwo0y%@v;9*VhMudc$d|3>e0`6RG^AKaZG5MVJImjN5J{K`vtfhqy8UgNq z%6&W_BT(iKdheYzO$oBO=(QE_#iU4j#GIREWQlp1f}$8tK5> zkzl9fX>vMMlkKI2mi`B2nflhi=f?Z)+Gh^WbpxKV8+8!c^E`eXcKWj%JYrMDilye5 zAp23EvEYI&9bdDpZ(`qf#=|?Pi}ITn6V%qb$|ZH~l-LT014f1CprLlvYxK!xAh^Vl z*v;*LLQ7tf1PG}NhyNTCpozg>9b-#0_60gnpW&eDTP0^yq>I=+oQ}LB6N>e8BwssAJE; zc_KvSn(1MM!25+tNWU-&{eOGg?)mW4%K(pUl>D79_s$-dK6EOSgnHD6tlEcw$C~IyR8-Gq> zx;?E~B?5|0{AAe;hkB?iH1dOz3VJIjdu;=JrcLz%36igYOV2Ri_t1(Hhd!;%DbM|A zK05gnI_GN_hd^p4;PNMVONZx_UDyk0_wg7I8&tLTK>&?#(Tdyk=!&5~pSCP&m5nps zYmiP8kj7TSC@Y>(Y3tJ~Slmu~jom_6|4L~qOXgz)<6+u83(5N!RwAn#syQ$mErtxu z*%g3@q|gFcQtIJAYf%v$UqMcek^Kt8y$FzeU9gTUpS1yrXRJTe+B_QKwm0v%fpm=` zS!(Hvj07qWBud2y=5G&twF;xadt&ucr*lw3SdEvjO^fLj8xG0>qWNTa(<}ZVxI&eKF=*VygDtWW94boxD>IUgbI=|lEd-sOT zDP#Zz!YKv3m$HN$mWduT5Tgxpi5_-sZb3@C!+!knFh`**@_raa7Yh_Ih;P#W#1h2R zZt)%cgku@&>1>0kIihx3`?q|T9~Ar^w8&dMM4@Pb`@+k2!JJwx$V(EMfQBdEx1WZr z2?N#)1+A1}sS($XzH2|lA`(5W_8gb~UHKH0Df1`WkhTk9ew|-Em*&(lmnp)i)w`Ob z)Sm(?j@&|4R=u{>_X0yE$cym(8z_% zGYYlCFBZmL>+sLXlYv_9;Fo5#0a6~+cmxzE*8zf@3T5$3N?X~4UjxshJ=*pn7&-5i z*wn6bS-u?ua^RU2bVee7^?ySNv|Hjb{Rop~`|S%D&t9z#9B&dC;VmC7_Z_&w(;Gi?C_<%`< zrSY6*&}QVtG6{VK`1Es0w(Cu?5q^il{tnMx5ba&hV#?OugcWK-($^tm5QI8NeBIjtP%1w8V(70@ zov@+}^<^f#^n2jf*3FycvvxPSaIB{d)!-*U-{YdR^5MUSf?kX%u;Rbjq9(0*=Rs|* zXm$R)5VzD(kc9o1>wTJ?{_Tv!TwV_+w`}cPtNwillehh|qn`zH0kygkda%ptGt0OR zj(g(8;SuKs^k7BSs%(XlNV_ofNg%KOuUI+-4hs4Z2H?ebnzG|7#ZRkeQ~^@d+pRT9 z$wk^fy&YU@f<4ol4kP9=K&e4v!wUb)Agz;cKmnVR)=e8vR)F&K5kz`uZ~vgv<=$-J zDBybzY4(bz)gpD@>9A|{ywkBBT5*(+RG1H+#~*s9P&Cip4d}p`doyAyK6IbKlv_}o z8(cUiOZyrd76YUZ+Wa zfqllUl(!v546B6tWrvyy>zg}_e8$}O)}wg7?W7t*nV^-~`P9M~4Ptw*h4HWP+Mpft zjGGZiMBG#0dO%A6pmi%jd+$acGikzB0ZKpYbnl))#f0sF-6fVwpaNr4I7Os)8*d5> zLnDxO5Sbr({5=5ZOP@w3+KW+|%&`g7MW7LOyC--13x1)m!k{p7LEz4n@^pQD$ z;zM$oFr1nIk3X^Gu>PHYYMr~2qimAaYx_fFZc2mD=@Li6#uS~_rrKGZ)ES9f5+WZ%2;fcE65X10yhlCS3<>sht)3G}%vLRW=w_#2K#ZOKAT3S~VSSqK z)7(jV_+R&z$~pzbY8B`Lreeg7jf4Ls!v7Vz*-ExF!5%u^0&r_MTF^?c;iW!93tmH`Qc!N$w!5DZfRgK=IOk|?nZKnfRcTn zVd-0-;>EsdHFK>B{f3J^-Z*In2l<=V47K`ZH%Vr@0P_(43#+-my+Y8MUHn+W@)Gjq z)NLZ2U(xC?7G^KNNaO_PQOO4E!UEU@s>pT##P~#=hcQ6r7x8_@?YnnFR=8K1{23=3 z+B!7)xX4KVz_<3u3|tFM*ZBG>5sBKCf^{0k;g^sJQhNG%xFXnn9Oo zAuOsXQD(b(_h*yolFWAf-;tiBumkXBbv9QXV4-kk;&He1Ch9Y^2-36=08DcbIPrh8 z34k1*ChWs5khu64L#rcqK}=rIY^**38RX(uWo4uc2n(PYf8uUJE=vv z)ladH0lCWe{cIR+b&w9!9l1<^o1@g3_Qx@WGTY0v`TNbG!(5WkJ9OUJ0%tKRAX� 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

rVR3Lp4Ucb8 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

(Uz)80VNU5I9IGUu~elo}|91|CBZH%qh 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 a+m>ZoF$UJ+psye3fU9qE@ipxFz5fFw;1}} - Dell CSM 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. -[...More on installation instructions](csmoperator/) - {{< /card >}} -{{% /cardpane %}} -The Container Storage Modules and the required CSI Drivers can each be deployed following the links below: - - -{{% cardpane %}} - {{< card header="[Dell CSI Drivers Installation via Helm](helm/drivers)" - footer="Installs [PowerStore](helm/drivers/installation/powerstore/) [PowerMax](helm/drivers/installation/powermax/) [PowerScale](helm/drivers/installation/isilon/) [PowerFlex](helm/drivers/installation/powerflex/) [Unity XT](helm/drivers/installation/unity/)">}} - Dell CSI Helm installer installs the CSI Driver components using the provided Helm charts. - [...More on installation instructions](helm/drivers/installation/) - {{< /card >}} - {{< card header="[CSM Installation Wizard](csminstallationwizard/)" - footer="Generates manifest file for installation">}} - CSM Installation Wizard generates manifest files to install Dell CSI Drivers and supported modules. - [...More on installation instructions](csminstallationwizard) - {{< /card >}} - {{< card header="[Dell CSI Drivers Installation via offline installer](offline/)" - footer="[Offline installation for all drivers](offline/) [Offline installation with Operator](csmoperator/#offline-bundle-installation-on-a-cluster-without-olm)">}} - Both Helm and Dell CSM operator supports offline installation of the Dell CSI Storage Providers via `csi-offline-bundle.sh` or `csm-offline-bundle.sh` script, respectively, by creating a usable package. - [...More on installation instructions](offline/drivers) - {{< /card >}} -{{% /cardpane %}} -{{% cardpane %}} - {{< card header="[Dell Container Storage Modules for Observability](helm/modules/installation/observability/)" - footer="Installs Observability Module">}} - CSM for Observability can be deployed either via Helm/CSM operator/CSM for Observability Installer/CSM for Observability Offline Installer - [...More on installation instructions](helm/modules/installation/observability/) - {{< /card >}} - {{< card header="[Dell Container Storage Modules for Authorization](helm/modules/installation/authorization-v2.0/)" - footer="Installs Authorization Module">}} - CSM Authorization can be installed by using the provided Helm v3 charts on Kubernetes platforms or CSM operator. - [...More on installation instructions](helm/modules/installation/authorization-v2.0/) - {{< /card >}} -{{% /cardpane %}} -{{% cardpane %}} - {{< card header="[Dell Container Storage Modules for Resiliency](helm/modules/installation/resiliency)" - footer="Installs Resiliency Module">}} - CSI drivers that support Helm chart installation allow CSM for Resiliency to be _optionally_ installed by variables in the chart. It can be updated via _podmon_ block specified in the _values.yaml_. It can be installed via CSM operator as well. - [...More on installation instructions](helm/modules/installation/resiliency) - {{< /card >}} - {{< card header="[Dell Container Storage Modules for Replication](helm/modules/installation/replication)" - footer="Installs Replication Module">}} - Replication module can be installed by installing repctl,Container Storage Modules (CSM) for Replication Controller,CSI driver after enabling replication. It can be installed via CSM operator as well. - [...More on installation instructions](helm/modules/installation/replication) - {{< /card >}} -{{% /cardpane %}} diff --git a/content/v1/deployment/csminstallationwizard/_index.md b/content/v1/deployment/csminstallationwizard/_index.md deleted file mode 100644 index 48d351c724..0000000000 --- a/content/v1/deployment/csminstallationwizard/_index.md +++ /dev/null @@ -1,135 +0,0 @@ ---- -title: "CSM Installation Wizard" -linkTitle: "CSM Installation Wizard" -description: Container Storage Modules Installation Wizard -weight: 1 ---- -{{% pageinfo color="primary" %}} -{{< message text="1" >}} -{{% /pageinfo %}} - -The [Dell Container Storage Modules Installation Wizard](./src/index.html) is a webpage that generates a manifest file for installing Dell CSI Drivers and its supported CSM Modules, based on input from the user. It generates a single manifest file to install both Dell CSI Drivers and its supported CSM Modules, thereby eliminating the need to download individual Helm charts for drivers and modules. The user can enable or disable the necessary modules through the UI, and a manifest file is generated accordingly without manually editing the helm charts. - ->NOTE: The CSM Installation Wizard supports Helm and Operator based manifest file generation. - -## Supported Dell CSI Drivers - -| CSI Driver | Version | Helm | Operator | -| ------------------ | --------- | ------ | --------- | -| CSI PowerStore | 2.13.0 |✔️ |✔️ | -| CSI PowerStore | 2.12.0 |✔️ |✔️ | -| CSI PowerStore | 2.11.1 |✔️ |✔️ | -| CSI PowerStore | 2.10.1 |✔️ |✔️ | -| CSI PowerMax | 2.13.0 |✔️ |✔️ | -| CSI PowerMax | 2.12.0 |✔️ |✔️ | -| CSI PowerMax | 2.11.0 |✔️ |✔️ | -| CSI PowerMax | 2.10.1 |✔️ |✔️ | -| CSI PowerFlex | 2.13.1 |✔️ |❌ | -| CSI PowerFlex | 2.12.0 |✔️ |❌ | -| CSI PowerFlex | 2.11.0 |✔️ |❌ | -| CSI PowerFlex | 2.10.1 |✔️ |❌ | -| CSI PowerScale | 2.13.0 |✔️ |✔️ | -| CSI PowerScale | 2.12.0 |✔️ |✔️ | -| CSI PowerScale | 2.11.0 |✔️ |✔️ | -| CSI PowerScale | 2.10.1 |✔️ |✔️ | -| CSI Unity XT | 2.13.0 |✔️ |❌ | -| CSI Unity XT | 2.12.0 |✔️ |❌ | -| CSI Unity XT | 2.11.0 |✔️ |❌ | -| CSI Unity XT | 2.10.1 |✔️ |❌ | - ->NOTE: The Installation Wizard currently does not support operator-based manifest file generation for Unity XT and PowerFlex drivers. - -## Supported Dell CSM Modules - -| CSM Modules | Version | -| ---------------------| --------- | -| CSM Observability | 1.8.0+ | -| CSM Replication | 1.8.0+ | -| CSM Resiliency | 1.8.0+ | - -## Installation - -1. Open the [CSM Installation Wizard](./src/index.html). -2. Select the `Installation Type` as `Helm`/`Operator`. -3. Select the `Array`. -4. Enter the `Image Repository`. The default value is `dellemc`. -5. Select the `CSM Version`. -6. Select the modules for installation. If there are module specific inputs, enter their values. -7. If needed, modify the `Controller Pods Count`. -8. If needed, select `Install Controller Pods on Control Plane` and/or `Install Node Pods on Control Plane`. -9. Enter the `Namespace`. The default value is `csi-`. -10. Click on `Generate YAML`. -11. A manifest file, `values.yaml` will be generated and downloaded. -12. A section `Run the following commands to install` will be displayed. -13. Run the commands displayed to install Dell CSI Driver and Modules using the generated manifest file. - -## Installation Using Helm Chart - -**Steps** - ->NOTE: Ensure that the namespace and secrets are created before installing the Helm chart. - -1. Add the Dell Helm Charts repository. - - On your terminal, run each of the commands below: - - ```terminal - helm repo add dell https://dell.github.io/helm-charts - helm repo update - ``` - -2. Copy the downloaded `values.yaml` file. - -3. Look over all the fields in the generated `values.yaml` and fill in/adjust any as needed. - - >NOTE: The CSM Installation Wizard generates `values.yaml` with the minimal inputs required to install the CSM. To configure additional parameters in values.yaml, you can follow the steps outlined in [PowerStore](../helm/drivers/installation/powerstore/#install-the-driver), [PowerMax](../helm/drivers/installation/powermax#install-the-driver), [PowerScale](../helm/drivers/installation/isilon#install-the-driver), [PowerFlex](../helm/drivers/installation/powerflex#install-the-driver), [Unity XT](../helm/drivers/installation/unity#install-csi-driver), [Observability](../csmoperator/modules/observability/), [Replication](../csmoperator/modules/replication/), [Resiliency](../csmoperator/modules/resiliency/). - -4. When the PowerFlex driver is installed using values generated by installation wizard, the user needs to update the secret for driver by patching the MDM keys, as follows: - - ```terminal - echo -n '' | base64 - kubectl patch secret vxflexos-config -n vxflexos -p "{\"data\": { \"MDM\": \"\"}}" - ``` - -5. If Observability is checked in the wizard, refer to [Observability](../csmoperator/modules/observability#post-installation-dependencies) to export metrics to Prometheus and load the Grafana dashboards. - -6. If Authorization is checked in the wizard, only the sidecar is enabled. Refer to [Authorization](../../deployment/helm/modules/installation/authorization-v2.0/) to install and configure the CSM Authorization Proxy Server. - -7. If Replication is checked in the wizard, refer to [Replication](../../deployment/helm/modules/installation/replication/) on configuring communication between Kubernetes clusters. - -8. If your Kubernetes distribution doesn't have the Volume Snapshot feature enabled, refer to [this section](../../snapshots) to install the Volume Snapshot CRDs and the default snapshot controller. - -9. Install the Helm chart. - - On your terminal, run this command: - - ```terminal - helm install dell/container-storage-modules -n --version -f - Example: helm install powerstore dell/container-storage-modules -n csi-powerstore --version 1.4.0 -f values.yaml - ``` - -## Installation Using Operator - -**Steps** - ->NOTE: Ensure that the csm-operator is installed and that the namespace, secrets, and `config.yaml` are created as prerequisites. - -1. Copy the downloaded `values.yaml` file. - -2. Look over all the fields in the generated `values.yaml` and fill in/adjust any as needed. - - >NOTE: The CSM Installation Wizard generates `values.yaml` with the minimal inputs required to install the CSM. To configure additional parameters in values.yaml, you can follow the steps outlined in [PowerStore](../csmoperator/drivers/powerstore), [PowerMax](../csmoperator/drivers/powermax), [PowerScale](../csmoperator/drivers/powerscale), [Resiliency](../csmoperator/modules/resiliency). - -3. If Observability is checked in the wizard, refer to [Observability](../csmoperator/modules/observability) to export metrics to Prometheus and load the Grafana dashboards. - -4. If Authorization is checked in the wizard, only the sidecar is enabled. Refer to [Authorization](../csmoperator/modules/authorizationv2-0) to install and configure the CSM Authorization Proxy Server. - -5. If Replication is checked in the wizard, refer to [Replication](../csmoperator/modules/replication) for the necessary prerequisites required for this module. - -6. Install the Operator. - - On your terminal, run this command: - - ```terminal - kubectl create -f values.yaml - ``` diff --git a/content/v1/deployment/csminstallationwizard/release/_index.md b/content/v1/deployment/csminstallationwizard/release/_index.md deleted file mode 100644 index e2025f3a62..0000000000 --- a/content/v1/deployment/csminstallationwizard/release/_index.md +++ /dev/null @@ -1,35 +0,0 @@ ---- -title: Release Notes -linkTitle: "Release notes" -weight: 5 -description: Release notes for CSM Installation Wizard ---- - -## Release Notes - CSM Installation Wizard 1.5.0 - - - - - - - - - - - -### New Features/Changes - -- [#1560 - [FEATURE]: CSM support for OpenShift 4.18](https://github.com/dell/csm/issues/1560) -- [#1561 - [FEATURE]: Added support for Kubernetes 1.32 ](https://github.com/dell/csm/issues/1561) -- [#1610 - [FEATURE]: Added support for PowerStore 4.1 ](https://github.com/dell/csm/issues/1610) -- [#1611 - [FEATURE]: Added support for PowerScale 9.10](https://github.com/dell/csm/issues/1611) - -### Fixed Issues - -There are no issues fixed in this release. -### Known Issues - -There are no known issues in this release - - - diff --git a/content/v1/deployment/csmoperator/_index.md b/content/v1/deployment/csmoperator/_index.md deleted file mode 100644 index 41903be010..0000000000 --- a/content/v1/deployment/csmoperator/_index.md +++ /dev/null @@ -1,453 +0,0 @@ ---- -title: "CSM Operator" -linkTitle: "CSM Operator" -description: Container Storage Modules Operator -weight: 2 ---- -{{% pageinfo color="primary" %}} -{{< message text="1" >}} -{{% /pageinfo %}} -The Dell Container Storage Modules 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 CSM Components - -The table below lists the driver and modules versions installable with the CSM Operator: - -| CSI Driver | Version | CSM Authorization 1.x.x , 2.x.x | CSM Replication | CSM Observability | CSM Resiliency | -| ------------------ |---------|---------------------------------|-----------------|-------------------|----------------| -| CSI PowerScale | 2.13.0 | ✔ 1.13.0 , 2.1.0 | ✔ 1.11.0 | ✔ 1.11.0 | ✔ 1.12.0 | -| CSI PowerScale | 2.12.0 | ✔ 1.12.0 , 2.0.0 | ✔ 1.10.0 | ✔ 1.10.0 | ✔ 1.11.0 | -| CSI PowerScale | 2.11.0 | ✔ 1.11.0 , ❌ | ✔ 1.9.0 | ✔ 1.9.0 | ✔ 1.10.0 | -| CSI PowerFlex | 2.13.1 | ✔ 1.13.0 , 2.1.0 | ✔ 1.11.0 | ✔ 1.11.0 | ✔ 1.12.0 | -| CSI PowerFlex | 2.12.0 | ✔ 1.12.0 , 2.0.0 | ✔ 1.10.0 | ✔ 1.10.0 | ✔ 1.11.0 | -| CSI PowerFlex | 2.11.0 | ✔ 1.11.0 , ❌ | ✔ 1.9.0 | ✔ 1.9.0 | ✔ 1.10.0 | -| CSI PowerStore | 2.13.0 | ❌ , ❌ | ❌ | ❌ | ✔ 1.12.0 | -| CSI PowerStore | 2.12.0 | ❌ , ❌ | ❌ | ❌ | ✔ 1.11.0 | -| CSI PowerStore | 2.11.1 | ❌ , ❌ | ❌ | ❌ | ✔ 1.10.0 | -| CSI PowerMax | 2.13.0 | ✔ 1.13.0 , 2.1.0 | ✔ 1.11.0 | ✔ 1.11.0 | ✔ 1.12.0 | -| CSI PowerMax | 2.12.0 | ✔ 1.12.0 , 2.0.0 | ✔ 1.10.0 | ✔ 1.10.0 | ✔ 1.11.0 | -| CSI PowerMax | 2.11.0 | ✔ 1.11.0 , ❌ | ✔ 1.9.0 | ✔ 1.9.0 | ✔ 1.10.0 | -| CSI Unity XT | 2.13.0 | ❌ , ❌ | ❌ | ❌ | ❌ | -| CSI Unity XT | 2.12.0 | ❌ , ❌ | ❌ | ❌ | ❌ | -| CSI Unity XT | 2.11.1 | ❌ , ❌ | ❌ | ❌ | ❌ | - -These CR will be used for new deployment or upgrade. In most case, it is recommended to use the latest available version. - -The full compatibility matrix of CSI/CSM versions for the CSM Operator is available [here](../../prerequisites/#csm-operator-compatibility-matrix) - -## Installation - -Dell CSM Operator can be installed manually or via Operator Hub. - -Once installed you will be able to deploy [drivers](drivers) and [modules](modules) from the Operator. - -### OpenShift Installation via Operator Hub - ->NOTE: You can update the resource requests and limits when you are deploying operator using Operator Hub - -`dell-csm-operator` can be installed via Operator Hub on upstream Kubernetes clusters & Red Hat OpenShift Clusters. - -The installation process involves the creation of a `Subscription` object either via the _OperatorHub_ UI or using `kubectl/oc`. While creating the `Subscription` you can set the Approval strategy for the `InstallPlan` for the operator to: - -* _Automatic_ - If you want the operator to be automatically installed or upgraded (once an upgrade is available). -* _Manual_ - If you want a cluster administrator to manually review and approve the `InstallPlan` for installation/upgrades. - -![OpenShit Operator Hub CSM install](operator_hub_install.gif) - -### Certified vs Community - -Dell CSM Operator is distributed as both `Certified` & `Community` editions. - -Both editions have the same codebase and are supported by Dell Technologies, the only differences are: - -* The `Certified` version is officially supported by Redhat by partnering with software vendors. -* The `Certified` version is often released couple of days/weeks after the `Community` version. -* The `Certified` version is specific to Openshift and can only be installed on specific Openshift versions where it is certified. -* The `Community` can be installed on any Kubernetes distributions. - -### Manual Installation on a cluster without OLM - ->NOTE: You can update the resource requests and limits when you are deploying operator using manual installation without OLM - -1. Install volume snapshot CRDs. For detailed snapshot setup procedure, [click here](../../snapshots/#volume-snapshot-feature). -2. Clone and checkout the required csm-operator version using -```bash -git clone -b v1.8.1 https://github.com/dell/csm-operator.git -``` -3. `cd csm-operator` -4. _(Optional)_ If using a local Docker image, edit the `deploy/operator.yaml` file and set the image name for the CSM Operator Deployment. -5. _(Optional)_ The Dell CSM Operator might need more resources if users have larger environment (>1000 Pods). You can modify the default resource requests and limits in the files `deploy/operator.yaml`, `config/manager/manager.yaml` and increase the values for cpu and memory. More information on setting the resource requests and limits can be found [here](https://sdk.operatorframework.io/docs/best-practices/managing-resources/). Current default values are set as below: - ```yaml - resources: - limits: - cpu: 200m - memory: 512Mi - requests: - cpu: 100m - memory: 192Mi - ``` -6. _(Optional)_ If **CSM Replication** is planned for use and will be deployed using two clusters in an environment where the DNS is not configured, and cluster API endpoints are FQDNs, in order to resolve queries to remote API endpoints, it is necessary to edit the `deploy/operator.yaml` file and add the `hostAliases` field and associated `:` mappings to the CSM Operator Controller Manager Deployment under `spec.template.spec`. More information on host aliases can be found, [here](https://kubernetes.io/docs/tasks/network/customize-hosts-file-for-pods/). - ```yaml - # example config - apiVersion: apps/v1 - kind: Deployment - metadata: - name: dell-csm-operator-controller-manager - spec: - template: - spec: - hostAliases: - - hostnames: - - "remote.FQDN" - ip: "255.255.255.1" - ``` -7. Run `bash scripts/install.sh` to install the operator. - ->NOTE: Dell CSM Operator will be installed in the `dell-csm-operator` namespace. - -{{< imgproc install.JPG Resize "2500x" >}}{{< /imgproc >}} - -8. Run the command to validate the installation. -```bash -kubectl get pods -n dell-csm-operator -``` -If installed successfully, you should be able to see the operator pod in the `dell-csm-operator` namespace. - -{{< imgproc install_pods.jpg Resize "2500x" >}}{{< /imgproc >}} - -### Offline Bundle Installation on a cluster without OLM - -The `csm-offline-bundle.sh` script can be used to create a package usable for offline installation of Dell CSI Drivers via CSM Operator - -#### Dependencies - -Multiple Linux-based systems may be required to create and process an offline bundle for use. - -* One Linux-based system, with Internet access, will be used to create the bundle. This involves the user cloning a git repository hosted on github.com and then invoking a script that utilizes `docker` or `podman` to pull and save container images to file. -* One Linux-based system, with access to an image registry, to invoke a script that uses `docker` or `podman` to restore container images from file and push them to a registry -* RedHat credentials to pull `openshift4/ose-kube-rbac-proxy-rhel9` image from `registry.redhat.io` (This registry does not support unauthenticated access) - -If one Linux system has both Internet access and access to an internal registry, that system can be used for both steps. - -Preparing an offline bundle requires the following utilities: - -| Dependency | Usage | -| --------------------- | ----- | -| `docker` or `podman` | `docker` or `podman` will be used to pull images from public image registries, tag them, and push them to a private registry. | -| | One of these will be required on both the system building the offline bundle as well as the system preparing for installation. | -| | Tested version(s) are `docker` 24.0.5 and `podman` 4.4.1 | -| `git` | `git` will be used to manually clone one of the above repositories in order to create an offline bundle. | -| | This is only needed on the system preparing the offline bundle. | -| | Tested version(s) are `git` 2.39.3 but any version should work. | - -#### Workflow - -To perform an offline installation, the following steps should be performed: - -1. Build an offline bundle -2. Unpack the offline bundle created in Step 1 and prepare for installation -3. Perform operator installation using the files obtained after unpacking in Step 2 -4. Perform driver installation using the files obtained after unpacking in Step 2 - ->NOTE: It is recommended to use the same build tool for packing and unpacking of images (either docker or podman). - -#### Building an offline bundle - ->NOTE: Login to the `registry.redhat.io` registry using RedHat credentials before you proceed with offline bundle creation. - -This needs to be performed on a Linux system with access to the Internet as a git repo will need to be cloned, and container images pulled from public registries. - -To build an offline bundle, the following steps are needed: - -1. Clone and checkout the required csm-operator version using -```bash -git clone -b v1.8.1 https://github.com/dell/csm-operator.git -``` -2. `cd csm-operator` -3. Run the `csm-offline-bundle.sh` script which will be found in the `scripts` directory with an argument of `-c` in order to create an offline bundle -```bash -bash scripts/csm-offline-bundle.sh -c -``` - -The script will perform the following steps: - -* Determine required images by parsing CSM Operator configuration files -* Perform an image `pull` of each image required -* Save all required images to a file by running `docker save` or `podman save` -* Build a `tar.gz` file containing the images as well as files required to install the Operator and drivers. - -Here is the output of a request to build an offline bundle for the Dell CSM Operator: - -```bash -* Building image manifest file - - Processing file /root/csm-operator/operatorconfig/driverconfig/common/default.yaml - Processing file /root/csm-operator/bundle/manifests/dell-csm-operator.clusterserviceversion.yaml - -* Pulling and saving container images - - quay.io/dell/container-storage-modules/csi-isilon:v2.13.0 - quay.io/dell/container-storage-modules/csi-metadata-retriever:v1.10.0 - quay.io/dell/container-storage-modules/csipowermax-reverseproxy:v2.12.0 - quay.io/dell/container-storage-modules/csi-powermax:v2.13.0 - quay.io/dell/container-storage-modules/csi-powerstore:v2.13.0 - quay.io/dell/container-storage-modules/csi-unity:v2.13.0 - quay.io/dell/container-storage-modules/csi-vxflexos:v2.13.0 - quay.io/dell/container-storage-modules/csm-authorization-sidecar:v1.13.0 - quay.io/dell/container-storage-modules/csm-metrics-powerflex:v1.11.0 - quay.io/dell/container-storage-modules/csm-metrics-powerscale:v1.8.0 - quay.io/dell/container-storage-modules/csm-topology:v1.11.0 - quay.io/dell/container-storage-modules/dell-csi-replicator:v1.11.0 - quay.io/dell/container-storage-modules/dell-replication-controller:v1.11.0 - quay.io/dell/storage/powerflex/sdc:4.5.2.1 - quay.io/dell/container-storage-modules/dell-csm-operator:v1.8.1 - registry.redhat.io/openshift4/ose-kube-rbac-proxy-rhel9:v4.16.0-202409051837.p0.g8ea2c99.assembly.stream.el9 - nginxinc/nginx-unprivileged:1.27 - otel/opentelemetry-collector:0.42.0 - registry.k8s.io/sig-storage/csi-attacher:v4.7.0 - registry.k8s.io/sig-storage/csi-external-health-monitor-controller:v0.13.0 - registry.k8s.io/sig-storage/csi-node-driver-registrar:v2.12.0 - registry.k8s.io/sig-storage/csi-provisioner:v5.1.0 - registry.k8s.io/sig-storage/csi-resizer:v1.12.0 - registry.k8s.io/sig-storage/csi-snapshotter:v8.1.0 - -* Copying necessary files - - /root/csm-operator/deploy - /root/csm-operator/operatorconfig - /root/csm-operator/samples - /root/csm-operator/scripts - /root/csm-operator/README.md - /root/csm-operator/LICENSE - -* Compressing release - -dell-csm-operator-bundle/ -dell-csm-operator-bundle/deploy/ -dell-csm-operator-bundle/deploy/operator.yaml -dell-csm-operator-bundle/deploy/crds/ -dell-csm-operator-bundle/deploy/crds/storage.dell.com_containerstoragemodules.yaml -dell-csm-operator-bundle/deploy/olm/ -dell-csm-operator-bundle/deploy/olm/operator_community.yaml -... -... -dell-csm-operator-bundle/README.md -dell-csm-operator-bundle/LICENSE - -* Complete - -Offline bundle file is: /root/csm-operator/dell-csm-operator-bundle.tar.gz -``` - -The resulting offline bundle file can be copied to another machine, if necessary, to gain access to the desired image registry. - -#### Unpacking the offline bundle and preparing for installation - -This step needs to be performed on a Linux system with access to an image registry that will host container images. If the registry requires `login`, that should be done before proceeding. - -To prepare for Operator installation, the following steps need to be performed: - -1. Copy the offline bundle file created from the previous step to a system with access to an image registry available to your Kubernetes/OpenShift cluster -2. Expand the bundle file by running `tar xvfz ` -```bash -tar xvfz dell-csm-operator-bundle.tar.gz -``` -Here is the output of untar -```bash -dell-csm-operator-bundle/ -dell-csm-operator-bundle/deploy/ -dell-csm-operator-bundle/deploy/operator.yaml -dell-csm-operator-bundle/deploy/crds/ -dell-csm-operator-bundle/deploy/crds/storage.dell.com_containerstoragemodules.yaml -dell-csm-operator-bundle/deploy/olm/ -dell-csm-operator-bundle/deploy/olm/operator_community.yaml -... -... -dell-csm-operator-bundle/README.md -dell-csm-operator-bundle/LICENSE -``` -3. Run the `csm-offline-bundle.sh` script and supply the `-p` option as well as the path to the internal registry with the `-r` option -```bash -cd dell-csm-operator-bundle -``` - -```bash -bash scripts/csm-offline-bundle.sh -p -r localregistry:5000/dell-csm-operator/ -``` - -The script will then perform the following steps: - - - Load the required container images into the local system - - Tag the images according to the user-supplied registry information - - Push the newly tagged images to the registry - - Modify the Operator configuration to refer to the newly tagged/pushed images - -Here is the output for preparing the bundle for installation (`localregistry:5000` refers to an image registry accessible to Kubernetes/OpenShift. `dell-csm-operator` refers to the folder created within the registry.): - -```bash -Preparing a offline bundle for installation - -* Loading quay.io images - -Loaded image: quay.io/dell/container-storage-modules/csi-powerstore:v2.13.0 -Loaded image: quay.io/dell/container-storage-modules/csi-isilon:v2.13.0 -... -... -Loaded image: registry.k8s.io/sig-storage/csi-resizer:v1.12.0 -Loaded image: registry.k8s.io/sig-storage/csi-snapshotter:v8.1.0 - -* Tagging and pushing images - - quay.io/dell/container-storage-modules/csi-isilon:v2.13.0 -> localregistry:5000/dell-csm-operator/csi-isilon:v2.13.0 - quay.io/dell/container-storage-modules/csi-metadata-retriever:v1.10.0 -> localregistry:5000/dell-csm-operator/csi-metadata-retriever:v1.10.0 - ... - ... - registry.k8s.io/sig-storage/csi-resizer:v1.12.0 -> localregistry:5000/dell-csm-operator/csi-resizer:v1.12.0 - registry.k8s.io/sig-storage/csi-snapshotter:v8.1.0 -> localregistry:5000/dell-csm-operator/csi-snapshotter:v8.1.0 - -* Preparing files within /root/dell-csm-operator-bundle - - changing: quay.io/dell/container-storage-modules/csi-isilon:v2.13.0 -> localregistry:5000/dell-csm-operator/csi-isilon:v2.13.0 - changing: quay.io/dell/container-storage-modules/csi-metadata-retriever:v1.10.0 -> localregistry:5000/dell-csm-operator/csi-metadata-retriever:v1.10.0 - ... - ... - changing: registry.k8s.io/sig-storage/csi-resizer:v1.12.0 -> localregistry:5000/dell-csm-operator/csi-resizer:v1.12.0 - changing: registry.k8s.io/sig-storage/csi-snapshotter:v8.1.0 -> localregistry:5000/dell-csm-operator/csi-snapshotter:v8.1.0 - -* Complete -``` - -#### Perform Operator installation - -Now that the required images are available and the Operator configuration updated, you can proceed to install the operator by executing `install.sh` script. - -```bash -bash scripts/install.sh -``` - ->NOTE: Dell CSM Operator would install to the 'dell-csm-operator' namespace by default. - -## Uninstall - -### Operator uninstallation on a cluster without OLM - -To uninstall a CSM operator, run `bash scripts/uninstall.sh`. This will uninstall the operator in `dell-csm-operator` namespace. - -{{< imgproc uninstall.jpg Resize "2500x" >}}{{< /imgproc >}} - -## Upgrade - -### Dell CSM Operator - -Dell CSM Operator can be upgraded in 2 ways: - -1. Using Operator Lifecycle Manager (OLM) - -2. Using script (for non-OLM based installation) - -#### Using OLM - -The upgrade of the Dell CSM Operator is done via Operator Lifecycle Manager. - -The `Update approval` (**`InstallPlan`** in OLM terms) strategy plays a role while upgrading dell-csm-operator on OpenShift. This option can be set during installation of dell-csm-operator on OpenShift via the console and can be either set to `Manual` or `Automatic`. - -- If the **`Update approval`** is set to `Automatic`, OpenShift automatically detects whenever the latest version of dell-csm-operator is available in the **`Operator hub`**, and upgrades it to the latest available version. -- If the upgrade policy is set to `Manual`, OpenShift notifies of an available upgrade. This notification can be viewed by the user in the **`Installed Operators`** section of the OpenShift console. Clicking on the hyperlink to `Approve` the installation would trigger the dell-csm-operator upgrade process. - ->NOTE: The recommended version of OLM for Upstream Kubernetes is **`v0.25.0`**. - ->NOTE: The recommended **`Update approval`** is **`Manual`** to prevent the installation of non-qualified versions of operator. - -#### Using Installation Script - -1. Clone and checkout the required csm-operator version using - - ```bash - git clone -b v1.8.1 https://github.com/dell/csm-operator.git - ``` -2. `cd csm-operator` -3. Execute `bash scripts/install.sh --upgrade` . This command will install the latest version of the operator. - ->NOTE: Dell CSM Operator would install to the 'dell-csm-operator' namespace by default. - -### Upgrading Drivers with Dell CSM Operator - -You can update CSI Drivers installed by the Dell CSM Operator like any Kubernetes resource: - -1. Get the driver-object details using kubectl command:
- -```bash -kubectl get -n -``` - -2. Replace `` with the appropriate namespace:
-```bash -kubectl get csm -n -``` - -Use the object name in the kubectl edit command:
- -```bash -kubectl edit csm -n -``` - -For example, if the object name is powerstore:
- -```bash -kubectl edit csm powerstore -n -``` - -Modify the installation as needed, typically updating driver versions, sidecars, and environment variables. - -3. Refer how to [upgrade](https://infohub.delltechnologies.com/en-us/p/best-practices-for-deployment-and-life-cycle-management-of-dell-csm-modules-1/#:~:text=Upgrades%20with%20Operator) guide if you have more questions
- -> Note: Starting with CSM 1.12, use images from [quay.io](https://quay.io/organization/dell). From CSM 1.14 (May 2025), editing the CSM object will fail if using images from [Docker Hub](https://hub.docker.com/r/dellemc/). - -### Upgrade Modules using Dell CSM Operator - -* Refer [Upgrade Obsevability Module](./modules/observability/#upgrade-observability) to upgrade the Observability Module via Operator - -* Refer [Upgrade Authorization Module](./modules/authorizationv1-x/#upgrade-csm-authorization) to upgrade the Authorization Module via Operator - -## Custom Resource Definitions - -As part of the Dell CSM Operator installation, a CRD representing configuration for the CSI Driver and CSM Modules is also installed. -`containerstoragemodule` CRD is installed in API Group `storage.dell.com`. - -Drivers and modules can be installed by creating a `customResource`. - -### Custom Resource Specification - -Each CSI Driver and CSM Module installation is represented by a Custom Resource. - -The specification for the Custom Resource is the same for all the drivers.Below is a list of all the mandatory and optional fields in the Custom Resource specification - -#### Mandatory fields - -**configVersion** - Configuration version - refer [here](#supported-csm-components) for appropriate config version. - -**replicas** - Number of replicas for controller plugin - must be set to 1 for all drivers. - -**dnsPolicy** - Determines the dnsPolicy for the node daemonset. Accepted values are `Default`, `ClusterFirst`, `ClusterFirstWithHostNet`, `None`. - -**common** - This field is mandatory and is used to specify common properties for both controller and the node plugin. - -* image - driver container image -* imagePullPolicy - Image Pull Policy of the driver image -* envs - List of environment variables and their values - -#### Optional fields - -**controller** - List of environment variables and values which are applicable only for controller. - -**node** - List of environment variables and values which are applicable only for node. - -**sideCars** - Specification for CSI sidecar containers. - -**tlsCertSecret** - Name of the TLS cert secret for use by the driver. If not specified, a secret *-certs must exist in the namespace as driver. - -**tolerations** - List of tolerations which should be applied to the driver StatefulSet/Deployment and DaemonSet. It should be set separately in the controller and node sections if you want separate set of tolerations for them. - -**nodeSelector** - Used to specify node selectors for the driver StatefulSet/Deployment and DaemonSet. - ->NOTE: The `image` field should point to the correct image tag for version of the driver you are installing. diff --git a/content/v1/deployment/csmoperator/drivers/_index.md b/content/v1/deployment/csmoperator/drivers/_index.md deleted file mode 100644 index 962fed03f6..0000000000 --- a/content/v1/deployment/csmoperator/drivers/_index.md +++ /dev/null @@ -1,101 +0,0 @@ ---- -title: "CSI Drivers" -linkTitle: "CSI Drivers" -description: Installation of Dell CSI Drivers using Dell CSM Operator -weight: 1 ---- -{{% pageinfo color="primary" %}} -{{< message text="1" >}} -{{% /pageinfo %}} - -## (Optional) Volume Snapshot Requirements - -On Upstream Kubernetes clusters, ensure that to install - -* VolumeSnapshot CRDs - Install v1 VolumeSnapshot CRDs -* External Volume Snapshot Controller - -For detailed snapshot setup procedure, [click here.](../../../snapshots/#optional-volume-snapshot-requirements) - ->NOTE: This step can be skipped with OpenShift. - -## Installing CSI Driver via Operator - -Refer [PowerScale Driver](../drivers/powerscale) to install the driver via Operator
-Refer [PowerFlex Driver](../drivers/powerflex) to install the driver via Operator
-Refer [PowerMax Driver](../drivers/powermax) to install the driver via Operator
-Refer [PowerStore Driver](../drivers/powerstore) to install the driver via Operator
-Refer [Unity XT Driver](../drivers/unity) to install the driver via Operator
- ->NOTE: If you are using an OLM based installation, example manifests are available in `OperatorHub` UI. -You can edit these manifests and install the driver using the `OperatorHub` UI. - -### Verifying the driver installation - -Once the driver `Custom Resource (CR)` is created, you can verify the installation as mentioned below - -* Check if ContainerStorageModule CR is created successfully using the command below: - ```bash - kubectl get csm/ -n -o yaml - ``` -* Check the status of the CR to verify if the driver installation is in the `Succeeded` state. If the status is not `Succeeded`, see the [Troubleshooting guide](../troubleshooting/#my-dell-csi-driver-install-failed-how-do-i-fix-it) for more information. - -## Upgrading Drivers with Dell CSM Operator - -You can update CSI Drivers installed by the Dell CSM Operator like any Kubernetes resource: - -1.
Modify Installation via kubectl edit:
- -```bash -kubectl get -n -``` -2. Replace `` with the appropriate namespace. For example, to get the CSI PowerStore driver object:
-```bash -kubectl get csm -n -``` -Use the object name in the kubectl edit command:
- -```bash -kubectl edit csm / -n -``` -For example, if the object name is powerstore:
- -```bash -kubectl edit csm powerstore -n -``` - -Modify the installation as needed, typically updating driver versions, sidecars, and environment variables. - -3. Refer how to [upgrade](https://infohub.delltechnologies.com/en-us/p/best-practices-for-deployment-and-life-cycle-management-of-dell-csm-modules-1/#:~:text=Upgrades%20with%20Operator)guide if you have more questions
- -> Note: Starting with CSM 1.12, use images from [quay.io](https://quay.io/organization/dell). From CSM 1.14 (May 2025), editing the CSM object will fail if using images from [Docker Hub](https://hub.docker.com/r/dellemc/). - -#### Supported modifications - -* Changing environment variable values for driver -* Updating the image of the driver -* Upgrading the driver version - -**NOTES:** -1. If you are trying to upgrade the CSI driver from an older version, make sure to modify the _configVersion_ field if required. - ```yaml - driver: - configVersion: v2.13.0 - ``` ->NOTE: Avoid updating the operator by modifying the original CustomResource manifest file and running `kubectl apply -f`. This can overwrite important annotations set by the Operator, leading to failures in workflows like driver upgrades. - -### Uninstall CSI Driver - -The CSI Drivers and CSM Modules can be uninstalled by deleting the Custom Resource. - -For e.g. - -```bash -kubectl delete csm/powerscale -n -``` - -By default, the `forceRemoveDriver` option is set to `true` which will uninstall the CSI Driver and CSM Modules when the Custom Resource is deleted. Setting this option to `false` is not recommended. - -### SideCars - -Although the sidecars field in the driver specification is optional, it is **strongly** recommended to not modify any details related to sidecars provided (if present) in the sample manifests. The only exception to this is modifications requested by the documentation, for example, filling in blank IPs or other such system-specific data. Any modifications not specifically requested by the documentation should be only done after consulting with Dell support. diff --git a/content/v1/deployment/csmoperator/drivers/powerflex.md b/content/v1/deployment/csmoperator/drivers/powerflex.md deleted file mode 100644 index 5b6aeef8a9..0000000000 --- a/content/v1/deployment/csmoperator/drivers/powerflex.md +++ /dev/null @@ -1,189 +0,0 @@ ---- -title: PowerFlex -linkTitle: PowerFlex -description: > - Installing the CSI Driver for Dell PowerFlex via Dell CSM Operator ---- -{{% pageinfo color="primary" %}} -{{< message text="1" >}} -{{% /pageinfo %}} -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. - -### Listing installed drivers - -To query for all Dell CSI drivers installed with the ContainerStorageModule CRD use the following command: - -```bash -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. - ->NOTE: This step can be skipped with OpenShift. - -#### SDC Deployment for Operator - -- This feature deploys the sdc kernel modules on all nodes with the help of an init container. -- Powerflex can be deployed with or without SDC. SDC deployment can be enabled and disabled by setting `X_CSI_SDC_ENABLED` value in CR file. By default, driver is deployed with SDC enabled. -- 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. - - 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**, leave the enabled field set to false. - -##### Example CR: [samples/storage_csm_powerflex_v2120.yaml](https://github.com/dell/csm-operator/blob/main/samples/storage_csm_powerflex_v2120.yaml) - -```yaml - sideCars: - # sdc-monitor is disabled by default, due to high CPU usage - - name: sdc-monitor - enabled: false - image: quay.io/dell/storage/powerflex/sdc:4.5.2.1 - envs: - - name: HOST_PID - value: "1" - - name: MDM - value: "10.xx.xx.xx,10.xx.xx.xx" #provide the same MDM value from secret -``` - -#### Manual SDC Deployment - -For detailed PowerFlex installation procedure, see the [Dell PowerFlex Deployment Guide](https://docs.delltechnologies.com/bundle/VXF_DEPLOY/page/GUID-DD20489C-42D9-42C6-9795-E4694688CC75.html). Install the PowerFlex SDC using this procedure: - -**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 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 vxflexos` to create the `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 'vxflexos' - ->NOTE: This step can be skipped with OpenShift CoreOS nodes. - -#### Create Secret - -1. Create namespace: - Execute `kubectl create namespace vxflexos` to create the `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 'vxflexos' -2. Prepare the secret.yaml for driver configuration. - - Example: secret.yaml - - ```yaml - # Username for accessing PowerFlex system. - # If authorization is enabled, username will be ignored. - - username: "admin" - # Password for accessing PowerFlex system. - # If authorization is enabled, password will be ignored. - password: "password" - # System name/ID of PowerFlex system. - systemID: "1a99aa999999aa9a" - # Previous names used in secret of PowerFlex system. - allSystemNames: "pflex-1,pflex-2" - # REST API gateway HTTPS endpoint for PowerFlex system. - # If authorization is enabled, endpoint should be the HTTPS localhost endpoint that - # the authorization sidecar will listen on - 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 - # 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 - # 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. - # Default value: none - mdm: "10.0.0.1,10.0.0.2" - # NFS is only supported on PowerFlex storage system 4.0.x - # nasName: name of NAS server used for NFS volumes - # nasName value must be specified in secret for performing NFS (file) operations. - # Allowed Values: string - # Default Value: "none" - nasName: "nas-server" - - username: "admin" - password: "Password123" - systemID: "2b11bb111111bb1b" - endpoint: "https://127.0.0.2" - skipCertificateValidation: true - mdm: "10.0.0.3,10.0.0.4" - ``` - - If replication feature is enabled, ensure the secret includes all the PowerFlex arrays involved in replication. - - After editing the file, run this command to create a secret called `vxflexos-config`. - - ```bash - kubectl create secret generic vxflexos-config -n vxflexos --from-file=config=secret.yaml - ``` - - Use this command to replace or update the secret: - - ```bash - kubectl create secret generic vxflexos-config -n vxflexos --from-file=config=secret.yaml -o yaml --dry-run=client | kubectl replace -f - - ``` - -### Install Driver - -1. Follow all the [prerequisites](#prerequisites) above - -2. Create a CR (Custom Resource) for PowerFlex using the sample files provided - - a. Install the PowerFlex driver using default configuration using - the sample file provided - [here](https://github.com/dell/csm-operator/tree/main/samples/minimal-samples). This file can be modified to use custom parameters if needed. - - b. Install the PowerFlex driver using the detailed configuration using the sample file provided - [here](https://github.com/dell/csm-operator/tree/main/samples). - -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 | - | --------- | ----------- | -------- |-------- | - | namespace | Specifies namespace where the driver will be installed | Yes | "vxflexos" | - | 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`. In OCP <= 4.16 and K8s <= 1.29, fsGroupPolicy is an immutable field. | No | "File" | - | 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. | Yes | 1 | - | storageCapacity.enabled | Enable/Disable storage capacity tracking | No | true | - | storageCapacity.pollInterval | Configure how often the driver checks for changed capacity | No | 5m | - | enableQuota | a boolean that, when enabled, will set quota limit for a newly provisioned NFS volume | No | none | - | maxVxflexosVolumesPerNode | Specify default value for maximum number of volumes that controller can publish to the node.If value is zero CO SHALL decide how many volumes of this type can be published by the controller to the node | Yes | 0 | - | ***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 | - | 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 | - | INTERFACE_NAMES | A mapping of node names to interface names. Only necessary when SDC is disabled. | No | none | - | ***Controller parameters*** | - | X_CSI_POWERFLEX_EXTERNAL_ACCESS | allows specifying additional entries for hostAccess of NFS volumes. Both single IP address and subnet are valid entries | No | empty | - | X_CSI_HEALTH_MONITOR_ENABLED | Enable/Disable health monitor of CSI volumes from Controller plugin - volume condition | No | false | - | ***Node parameters*** | - | X_CSI_RENAME_SDC_ENABLED | Enable this to rename the SDC with the given prefix. The new name will be ("prefix" + "worker_node_hostname") and it should not exceed 31 chars. | Yes | false | - | X_CSI_APPROVE_SDC_ENABLED | Enable this to to approve restricted SDC by GUID during setup | Yes | false | - | X_CSI_HEALTH_MONITOR_ENABLED | Enable/Disable health monitor of CSI volumes from Node plugin - volume condition | No | false | - | X_CSI_SDC_ENABLED | Enable/Disable installation of the SDC. | Yes | true | - | ***Sidecar parameters*** | - | volume-name-prefix | The volume-name-prefix will be used by provisioner sidecar as a prefix for all the volumes created | Yes | k8s | - | monitor-interval | The monitor-interval will be used by external-health-monitor as an interval for health checks | Yes | 60s | - -4. Execute this command to create PowerFlex custom resource: - ```bash - kubectl create -f - ``` - 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) - -6. Refer https://github.com/dell/csi-powerflex/tree/main/samples for the sample files. - -**Note** : - - 1. Snapshotter and resizer sidecars are installed by default. diff --git a/content/v1/deployment/csmoperator/drivers/powermax.md b/content/v1/deployment/csmoperator/drivers/powermax.md deleted file mode 100644 index 1d85f9ae19..0000000000 --- a/content/v1/deployment/csmoperator/drivers/powermax.md +++ /dev/null @@ -1,693 +0,0 @@ ---- -title: PowerMax -linkTitle: PowerMax -description: > - Installing the CSI Driver for Dell PowerMax via Dell CSM Operator ---- -{{% pageinfo color="primary" %}} -{{< message text="1" >}} -{{% /pageinfo %}} -The CSI Driver for Dell PowerMax 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. - -### Listing installed drivers - -To query for all Dell CSI drivers installed with the ContainerStorageModule CRD use the following command: - -```bash -kubectl get csm --all-namespaces -``` - -## Prerequisites - -The following requirements must be met before installing the CSI Driver for Dell PowerMax: - -- A Kubernetes or OpenShift cluster (see [supported versions](../../../../csidriver/#features-and-capabilities)). -- If enabling CSM for Authorization, please refer to the Authorization deployment steps first -- If enabling CSM Replication, both source and target storage systems must be locally managed by Unisphere. - - _Example_: When using two Unisphere instances, the first Unisphere instance should be configured with the source storage system as locally - managed and target storage system as remotely managed. The second Unisphere configuration should mirror the first — locally managing the target storage system and - remotely managing the source storage system. -- Refer to the sections below for protocol specific requirements. -- For NVMe support the preferred multipath solution is NVMe native multipathing. The [Dell Host Connectivity Guide](https://elabnavigator.dell.com/vault/pdf/Linux.pdf) describes the details of each configuration option. -- Linux multipathing requirements (described later). -- PowerPath for Linux requirements (described later). -- Mount propagation is enabled on the container runtime that is being used. -- If using Snapshot feature, satisfy all Volume Snapshot requirements. -- Insecure registries are defined in Docker or other container runtime for CSI drivers that are hosted in a non-secure location. -- Ensure that your nodes support mounting NFS volumes if using NFS. -- Auto RDM for vSphere over FC requirements - -### CSI PowerMax Reverse Proxy - -The CSI PowerMax Reverse Proxy is a component that will be installed with the CSI PowerMax driver. For more details on this feature, see the related [documentation](../../../../csidriver/features/powermax/#csi-powermax-reverse-proxy). - -Create a TLS secret that holds an SSL certificate and a private key. This is required by the reverse proxy server. - -Create the Configuration file (openssl.cnf) which includes the subjectAltName: -```bash -[ req ] -default_bits = 2048 -distinguished_name = req_distinguished_name -req_extensions = req_ext -prompt = no - -[ req_distinguished_name ] -C = XX -L = Default City -O = Default Company Ltd - -[ req_ext ] -subjectAltName = @alt_names - -[ alt_names ] -DNS.1 = "csipowermax-reverseproxy" -IP.1 = "0.0.0.0" -``` -Use a tool such as `openssl` to generate this secret using the example below: - -```bash -openssl genrsa -out tls.key 2048 -openssl req -new -key tls.key -out tls.csr -config openssl.cnf -openssl x509 -req -in tls.csr -signkey tls.key -out tls.crt -days 3650 -extensions req_ext -extfile openssl.cnf -kubectl create secret -n tls csirevproxy-tls-secret --cert=tls.crt --key=tls.key -``` - -### Fibre Channel Requirements - -The following requirements must be fulfilled in order to successfully use the Fiber Channel protocol with the CSI PowerMax driver: - -- Zoning of the Host Bus Adapters (HBAs) to the Fibre Channel port director must be completed. -- Ensure that the HBA WWNs (initiators) appear on the list of initiators that are logged into the array. -- If the number of volumes that will be published to nodes is high, then configure the maximum number of LUNs for your HBAs on each node. See the appropriate HBA document to configure the maximum number of LUNs. - -### iSCSI Requirements - -The following requirements must be fulfilled in order to successfully use the iSCSI protocol with the CSI PowerMax driver. - -- Ensure that the necessary iSCSI initiator utilities are installed on each Kubernetes worker node. This typically includes the _iscsi-initiator-utils_ package for RHEL or _open-iscsi_ package for Ubuntu. -- Enable and start the _iscsid_ service on each Kubernetes worker node. This service is responsible for managing the iSCSI initiator. You can enable the service by running the following command on all worker nodes: `systemctl enable --now iscsid` -- Ensure that the unique initiator name is set in _/etc/iscsi/initiatorname.iscsi_. -- To configure iSCSI in Red Hat OpenShift clusters, you can create a `MachineConfig` object using the console or `oc` to ensure that the iSCSI daemon starts on all the Red Hat CoreOS nodes. Here is an example of a `MachineConfig` object: - -```yaml -apiVersion: machineconfiguration.openshift.io/v1 -kind: MachineConfig -metadata: - name: 99-iscsid - labels: - machineconfiguration.openshift.io/role: worker -spec: - config: - ignition: - version: 3.2.0 - systemd: - units: - - name: "iscsid.service" - enabled: true -``` - -Once the `MachineConfig` object has been deployed, CoreOS will ensure that the `iscsid.service` starts automatically. You can check the status of the iSCSI service by entering the following command on each worker node in the cluster: `sudo systemctl status iscsid`. - -- Ensure that the iSCSI initiators are available on all the nodes where the driver node plugin will be installed. -- Ensure that the unique initiator name is set in _/etc/iscsi/initiatorname.iscsi_. -- If your worker nodes are running Red Hat CoreOS, make sure that automatic iSCSI login at boot is configured. Please contact RedHat for more details. -- Kubernetes nodes must have network connectivity to an iSCSI director on the Dell PowerMax array that has IP interfaces. Manually create IP routes for each node that connects to the Dell PowerMax if required. -- Ensure that the iSCSI initiators on the nodes are not a part of any existing Host (Initiator Group) on the Dell PowerMax array. -- The CSI Driver needs the port group name containing the required iSCSI director ports. These port groups must be set up on each Dell PowerMax array. All the port group names supplied to the driver must exist on each Dell PowerMax with the same name. - -Refer to the [Dell Host Connectivity Guide](https://elabnavigator.dell.com/vault/pdf/Linux.pdf) for more information. - -### NVMe Requirements - -The following requirements must be fulfilled in order to successfully use the NVMe/TCP protocols with the CSI PowerMax driver: - -- Modules including the nvme, nvme_core, nvme_fabrics, and nvme_tcp are required for using NVMe over Fabrics using TCP. Load the NVMe and NVMe-OF Modules using the below commands: -```bash -modprobe nvme -modprobe nvme_tcp -``` -- The NVMe modules may not be available after a node reboot. Loading the modules at startup is recommended. - -> Starting with OCP 4.14 NVMe/TCP is enabled by default on RCOS nodes. - -**Cluster requirements** - -- All OpenShift or Kubernetes nodes connecting to Dell storage arrays must use unique host NVMe Qualified Names (NQNs). - -> The OpenShift deployment process for CoreOS will set the same host NQN for all nodes. The host NQN is stored in the file /etc/nvme/hostnqn. One possible solution to ensure unique host NQNs is to add the following machine config to your OCP cluster: - -```yaml -apiVersion: machineconfiguration.openshift.io/v1 -kind: MachineConfig -metadata: - labels: - machineconfiguration.openshift.io/role: worker - name: 99-worker-custom-nvme-hostnqn -spec: - config: - ignition: - version: 3.4.0 - systemd: - units: - - contents: | - [Unit] - Description=Custom CoreOS Generate NVMe Hostnqn - - [Service] - Type=oneshot - ExecStart=/usr/bin/sh -c '/usr/sbin/nvme gen-hostnqn > /etc/nvme/hostnqn' - RemainAfterExit=yes - - [Install] - WantedBy=multi-user.target - enabled: true - name: custom-coreos-generate-nvme-hostnqn.service -``` - -- The driver requires the NVMe command-line interface (nvme-cli) to manage the NVMe clients and targets. The NVMe CLI tool is installed in the host using the following command on RPM oriented Linux distributions. - -```bash -sudo dnf -y install nvme-cli -``` - -- Support for NVMe requires native NVMe multipathing to be configured on each worker node in the cluster. Please refer to the [Dell Host Connectivity Guide](https://elabnavigator.dell.com/vault/pdf/Linux.pdf) for more details on NVMe multipathing requirements. To determine if the worker nodes are configured for native NVMe multipathing run the following command on each worker node: - -```bash -cat /sys/module/nvme_core/parameters/multipath -``` - - >If the result of the command displays Y then NVMe native multipathing is enabled in the kernel. If the output is N then native NVMe multipating is disabled. Consult the [Dell Host Connectivity Guide](https://elabnavigator.dell.com/vault/pdf/Linux.pdf) for Linux to enable native NVMe multipathing. - -**Configure the IO policy** - -- The default NVMeTCP native multipathing policy is "numa". The preferred IO policy for NVMe devices used for PowerMax is round-robin. You can use udev rules to enable the round robin policy on all worker nodes. To view the IO policy you can use the following command: - -```bash -nvme list-subsys -``` - -To change the IO policy to round-robin you can add a udev rule on each worker node. Place a config file in /etc/udev/rules.d with the name 71-nvme-io-policy.rules with the following contents: - -```text -ACTION=="add|change", SUBSYSTEM=="nvme-subsystem", ATTR{iopolicy}="round-robin" -``` - -In order to change the rules on a running kernel you can run the following commands: - -```bash -/sbin/udevadm control --reload-rules -/sbin/udevadm trigger --type=devices --action=change -``` - -On OCP clusters you can add a MachineConfig to enable this rule on all worker nodes: - -```yaml -apiVersion: machineconfiguration.openshift.io/v1 -kind: MachineConfig -metadata: - name: 99-workers-multipath-round-robin - labels: - machineconfiguration.openshift.io/role: worker -spec: - config: - ignition: - version: 3.2.0 - storage: - files: - - contents: - source: data:text/plain;charset=utf-8;base64,QUNUSU9OPT0iYWRkfGNoYW5nZSIsIFNVQlNZU1RFTT09Im52bWUtc3Vic3lzdGVtIiwgQVRUUntpb3BvbGljeX09InJvdW5kLXJvYmluIg== - verification: {} - filesystem: root - mode: 420 - path: /etc/udev/rules.d/71-nvme-io-policy.rules -``` - -**Array requirements** - -Once the NVMe endpoint is created on the array, follow the following steps to update the endpoint name to adhere to the CSI driver requirements. - - - Run ```nvme discover --transport=tcp --traddr= --trsvcid=4420```. is the placeholder for actual IP address of NVMe Endpoint. - - Fetch the _subnqn_, for e.g., _nqn.1988-11.com.dell:PowerMax_2500:00:000120001100_, this will be used as the subnqn holder while updating NVMe endpoint name. - - Update the NVMe endpoint name as ```:

>```. Here is an example how it should look, _nqn.1988-11.com.dell:PowerMax_2500:00:000120001100:OR1C000_ - -### NFS Requirements - -CSI Driver for Dell PowerMax supports NFS communication. Ensure that the following requirements are met before you install CSI Driver: - -- Configure the NFS network. Please refer [here](https://dl.dell.com/content/manual57826791-dell-powermax-file-protocol-guide.pdf?language=en-us&ps=true) for more details. -- PowerMax Embedded Management guest to access Unisphere for PowerMax. -- Create the NAS server. Please refer [here](https://dl.dell.com/content/manual55638050-dell-powermax-file-quick-start-guide.pdf?language=en-us&ps=true) for more details. - -### Linux Multipathing Requirements - -Dell PowerMax supports Linux multipathing (DM-MPIO) and NVMe native multipathing. Configure Linux multipathing before installing the CSI Driver. - -> For NVMe connectivity native NVMe multipathing is used. The following sections apply only for iSCSI and Fiber Channel connectivity. - -Configure Linux multipathing as follows: - -- Ensure that all nodes have the _Device Mapper Multipathing_ package installed. - You can install it by running `dnf install device-mapper-multipath` or `apt install multipath-tools` based on your Linux distribution. -- Ensure that the multipath command `mpathconf` is available on all Kubernetes nodes. -- Enable multipathing using the `mpathconf --enable --with_multipathd y` command. A default configuration file, `/etc/multipath.conf` is created. -- Enable `user_friendly_names` and `find_multipaths` in the `multipath.conf` file. -- As a best practice, use these options to help the operating system and the mulitpathing software detect path changes efficiently: - -```text -path_grouping_policy multibus -path_checker tur -features "1 queue_if_no_path" -path_selector "round-robin 0" -no_path_retry 10 -``` - -The following is a sample multipath.conf file. You may have to adjust these values based on your environment. - -```text -defaults { - user_friendly_names yes - find_multipaths yes - path_grouping_policy multibus - path_checker tur - features "1 queue_if_no_path" - path_selector "round-robin 0" - no_path_retry 10 -} - blacklist { -} -``` - -On some distributions the multipathd service for changes to the configuration and dynamically reconfigures itself. If you need to manually trigger a reload you can run the following command: -`sudo systemctl reload multipathd` - -To enable multipathd on RedHat CoreOS nodes you need to prepare a working configuration encoded in base64. For example you can run the following command to encode the above multipath.config file. - -```text -echo 'defaults { - user_friendly_names yes - find_multipaths yes - path_grouping_policy multibus - path_checker tur - features "1 queue_if_no_path" - path_selector "round-robin 0" - no_path_retry 10 -} - blacklist { -}' | base64 -w0 -``` - -The output of the above command follows: - -```text -ZGVmYXVsdHMgewogIHVzZXJfZnJpZW5kbHlfbmFtZXMgeWVzCiAgZmluZF9tdWx0aXBhdGhzIHllcwogIHBhdGhfZ3JvdXBpbmdfcG9saWN5IG11bHRpYnVzCiAgcGF0aF9jaGVja2VyIHR1cgogIGZlYXR1cmVzICIxIHF1ZXVlX2lmX25vX3BhdGgiCiAgcGF0aF9zZWxlY3RvciAicm91bmQtcm9iaW4gMCIKICBub19wYXRoX3JldHJ5IDEwCn0KICBibGFja2xpc3Qgewp9Cg== -``` - -Use the base64 encoded string output in the following `MachineConfig` yaml file (under source section) - -```yaml -apiVersion: machineconfiguration.openshift.io/v1 -kind: MachineConfig -metadata: - name: 99-workers-multipath-conf-default - labels: - machineconfiguration.openshift.io/role: worker -spec: - config: - ignition: - version: 3.2.0 - storage: - files: - - contents: - source: data:text/plain;charset=utf-8;base64,ZGVmYXVsdHMgewogIHVzZXJfZnJpZW5kbHlfbmFtZXMgeWVzCiAgZmluZF9tdWx0aXBhdGhzIHllcwogIHBhdGhfZ3JvdXBpbmdfcG9saWN5IG11bHRpYnVzCiAgcGF0aF9jaGVja2VyIHR1cgogIGZlYXR1cmVzICIxIHF1ZXVlX2lmX25vX3BhdGgiCiAgcGF0aF9zZWxlY3RvciAicm91bmQtcm9iaW4gMCIKICBub19wYXRoX3JldHJ5IDEwCn0KICBibGFja2xpc3Qgewp9Cg== - verification: {} - filesystem: root - mode: 400 - path: /etc/multipath.conf -``` - -After deploying this`MachineConfig` object, CoreOS will start the multipath service automatically. -Alternatively, you can check the status of the multipath service by running the following command on each worker node. -`sudo multipath -ll` - -Refer to the [Dell Host Connectivity Guide](https://elabnavigator.dell.com/vault/pdf/Linux.pdf) for more information. - -### PowerPath for Linux requirements - -The CSI Driver for Dell PowerMax supports PowerPath for Linux. Configure Linux PowerPath before installing the CSI Driver. - -Follow this procedure to set up PowerPath for Linux: - -- All the nodes must have the PowerPath package installed . Download the PowerPath archive for the environment from [Dell Online Support](https://www.dell.com/support/home/en-in/product-support/product/powerpath-for-linux/drivers). -- `Untar` the PowerPath archive, Copy the RPM package into a temporary folder and Install PowerPath using `rpm -ivh DellEMCPower.LINUX--..x86_64.rpm` -- Start the PowerPath service using `systemctl start PowerPath` - ->Note: Do not install Dell PowerPath if multi-path software is already installed, as they cannot co-exist with native multi-path software. - -### Auto RDM for vSphere over FC requirements - -The CSI Driver for Dell PowerMax supports auto RDM for vSphere over FC. These requirements are applicable for the clusters deployed on ESX/ESXi using virtualized environment. - -Set up the environment as follows: - -- Requires VMware vCenter management software to manage all ESX/ESXis where the cluster is hosted. - -- Add all FC array ports zoned to the ESX/ESXis to a port group where the cluster is hosted . - -- Add initiators from all ESX/ESXis to a host(initiator group)/host group(cascaded initiator group) where the cluster is hosted. -- Create a secret which contains vCenter privileges. Follow the steps [here](#support-for-auto-rdm-for-vsphere-over-fc) to create the same. - -## Installation - -### Create secret for client-side TLS verification (Optional) - -Create a secret named powermax-certs in the namespace where the CSI PowerMax driver will be installed. This is an optional step and is only required if you are setting the env variable X_CSI_POWERMAX_SKIP_CERTIFICATE_VALIDATION to false. See the detailed documentation on how to create this secret [here](../../../helm/drivers/installation/powermax#certificate-validation-for-unisphere-rest-api-calls). - -### Install Driver - -1. Create namespace: - Run `kubectl create namespace ` using the desired name to create the namespace. -2. Create PowerMax credentials: - Create a file called powermax-creds.yaml with the following content: - ```yaml - apiVersion: v1 - kind: Secret - metadata: - name: powermax-creds - # Replace driver-namespace with the namespace where driver is being deployed - namespace: - type: Opaque - data: - # set username to the base64 encoded username - username: - # set password to the base64 encoded password - password: - # Uncomment the following key if you wish to use ISCSI CHAP authentication (v1.3.0 onwards) - # chapsecret: - ``` - Replace the values for the username and password parameters. These values can be obtained using base64 encoding as described in the following example: - ```bash - echo -n "myusername" | base64 - echo -n "mypassword" | base64 - # If mychapsecret is the iSCSI CHAP secret - echo -n "mychapsecret" | base64 - ``` - Run the `kubectl create -f powermax-creds.yaml` command to create the secret. -3. Create a configmap using sample [here](https://github.com/dell/csm-operator/tree/master/samples/csireverseproxy). Fill in the appropriate values for driver configuration. - Example: config.yaml - ```yaml - port: 2222 # Port on which reverseproxy will listen - logLevel: debug - logFormat: text - config: - storageArrays: - - storageArrayId: "000000000001" # arrayID - primaryURL: https://primary-1.unisphe.re:8443 # primary unisphere for arrayID - backupURL: https://backup-1.unisphe.re:8443 # backup unisphere for arrayID - proxyCredentialSecrets: - - primary-unisphere-secret-1 # credential secret for primary unisphere, e.g., powermax-creds - - backup-unisphere-secret-1 # credential secret for backup unisphere, e.g., powermax-creds - - storageArrayId: "000000000002" - primaryURL: https://primary-2.unisphe.re:8443 - backupURL: https://backup-2.unisphe.re:8443 - proxyCredentialSecrets: - - primary-unisphere-secret-2 - - backup-unisphere-secret-2 - managementServers: - - url: https://primary-1.unisphe.re:8443 # primary unisphere endpoint - arrayCredentialSecret: primary-unisphere-secret-1 # primary credential secret e.g., powermax-creds - skipCertificateValidation: true - - url: https://backup-1.unisphe.re:8443 # backup unisphere endpoint - arrayCredentialSecret: backup-unisphere-secret-1 # backup credential secret e.g., powermax-creds - skipCertificateValidation: false # value false, to verify unisphere certificate and provide certSecret - certSecret: primary-certs # unisphere verification certificate - - url: https://primary-2.unisphe.re:8443 - arrayCredentialSecret: primary-unisphere-secret-2 - skipCertificateValidation: true - - url: https://backup-2.unisphe.re:8443 - arrayCredentialSecret: backup-unisphere-secret-2 - skipCertificateValidation: false - certSecret: primary-certs - ``` - After editing the file, run this command to create a secret called `powermax-reverseproxy-config`. If you are using a different namespace/secret name, just substitute those into the command. - ```bash - kubectl create configmap powermax-reverseproxy-config --from-file config.yaml -n powermax - ``` -4. Create a configmap using the sample file [here](https://github.com/dell/csi-powermax/blob/main/samples/configmap/powermax-array-config.yaml). Fill in the appropriate values for driver configuration. - ```yaml - # Copyright © 2024 Dell Inc. or its subsidiaries. All Rights Reserved. - # - # Licensed under the Apache License, Version 2.0 (the "License"); - # you may not use this file except in compliance with the License. - # You may obtain a copy of the License at - # http://www.apache.org/licenses/LICENSE-2.0 - # Unless required by applicable law or agreed to in writing, software - # distributed under the License is distributed on an "AS IS" BASIS, - # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - # See the License for the specific language governing permissions and - # limitations under the License. - # To create this configmap use: kubectl create -f powermax-array-config.yaml - apiVersion: v1 - kind: ConfigMap - metadata: - name: powermax-array-config - namespace: powermax - data: - powermax-array-config.yaml: | - # List of comma-separated port groups (ISCSI only). Example: PortGroup1, portGroup2 Required for iSCSI only - X_CSI_POWERMAX_PORTGROUPS: "" - # Choose which transport protocol to use (ISCSI, FC, NVMETCP, auto) defaults to auto if nothing is specified - X_CSI_TRANSPORT_PROTOCOL: "" - # IP address of the Unisphere for PowerMax (Required), Defaults to https://0.0.0.0:8443 - X_CSI_POWERMAX_ENDPOINT: "https://10.0.0.0:8443" - # List of comma-separated array ID(s) which will be managed by the driver (Required) - X_CSI_MANAGED_ARRAYS: "000000000000,000000000000," - ``` - -5. Create a CR (Custom Resource) for PowerMax using the sample files provided - - a. Install the PowerMax driver using default configuration using - the sample file provided - [here](https://github.com/dell/csm-operator/tree/main/samples/minimal-samples). This file can be modified to use custom parameters if needed. - - b. Install the PowerMax driver using the detailed configuration using the sample file provided - [here](https://github.com/dell/csm-operator/tree/main/samples). - -> NOTE: -> [Replication module](https://github.com/dell/csm-operator/blob/main/samples/storage_csm_powermax_{{< version-docs key="sample_sc_pmax" >}}.yaml#L283) must be enabled to use the Metro volume - -Example: -```yaml - - name: replication - enabled: true -``` -> [Target clusterID](https://github.com/dell/csm-operator/blob/main/samples/storage_csm_powermax_{{< version-docs key="sample_sc_pmax" >}}.yaml#L316) should be set as self - -Example: -```yaml - - name: "TARGET_CLUSTERS_IDS" - value: "self" -``` - -6. Users should configure the parameters in CR. The following table lists the primary configurable parameters of the PowerMax driver and their default values: - - | Parameter | Description | Required | Default | - |-----------|-------------|----------|---------| - | namespace | Specifies namespace where the driver will be installed | Yes | "powermax" | - | dnsPolicy | Determines the DNS Policy of the Node service | Yes | ClusterFirstWithHostNet | - | replicas | Controls the number of controller Pods you deploy. If controller Pods are greater than the number of available nodes, excess Pods will become stuck in pending. The default is 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`. In OCP <= 4.16 and K8s <= 1.29, fsGroupPolicy is an immutable field. | No | "ReadWriteOnceWithFSType" | - | ***Common parameters for node and controller*** | | | | - | X_CSI_K8S_CLUSTER_PREFIX | Define a prefix that is appended to all resources created in the array; unique per K8s/CSI deployment; max length - 3 characters | No | CSM | - | X_CSI_POWERMAX_PROXY_SERVICE_NAME | Name of CSI PowerMax ReverseProxy service. | Yes | csipowermax-reverseproxy | - | X_CSI_IG_MODIFY_HOSTNAME | Change any existing host names. When nodenametemplate is set, it changes the name to the specified format else it uses driver default host name format. | No | false | - | X_CSI_IG_NODENAME_TEMPLATE | Provide a template for the CSI driver to use while creating the Host/IG on the array for the nodes in the cluster. It is of the format a-b-c-%foo%-xyz where foo will be replaced by host name of each node in the cluster. | No | - | - | X_CSI_POWERMAX_DRIVER_NAME | Set custom CSI driver name. For more details on this feature see the related [documentation](../../../../csidriver/features/powermax/#custom-driver-name) | No | - | - | X_CSI_HEALTH_MONITOR_ENABLED | Enable/Disable health monitor of CSI volumes from Controller and Node plugin. Provides details of volume status, usage and volume condition. As a prerequisite, external-health-monitor sidecar section should be uncommented in samples which would install the sidecar | No | false | - | X_CSI_VSPHERE_ENABLED | Enable VMware virtualized environment support via RDM | No | false | - | X_CSI_VSPHERE_PORTGROUP | Existing portGroup that driver will use for vSphere | Yes | "" | - | X_CSI_VSPHERE_HOSTNAME | Existing host(initiator group)/host group(cascaded initiator group) that driver will use for vSphere | Yes | "" | - | X_CSI_VCenter_HOST | URL/endpoint of the vCenter where all the ESX are present | Yes | "" | - | ***Node parameters*** | | | | - | X_CSI_POWERMAX_ISCSI_ENABLE_CHAP | Enable ISCSI CHAP authentication. For more details on this feature see the related [documentation](../../../../csidriver/features/powermax/#iscsi-chap) | No | false | - | X_CSI_TOPOLOGY_CONTROL_ENABLED | Enable/Disable topology control. It filters out arrays, associated transport protocol available to each node and creates topology keys based on any such user input. | No | false | - | ***CSI Reverseproxy Module*** | | | | - | X_CSI_REVPROXY_TLS_SECRET | Name of TLS secret defined in config map | Yes | "csirevproxy-tls-secret" | - | X_CSI_REVPROXY_PORT | Port number where reverseproxy will listen as defined in config map | Yes | "2222" | - | X_CSI_CONFIG_MAP_NAME | Name of config map as created for CSI PowerMax | Yes | "powermax-reverseproxy-config" | - | ***Sidecar parameters*** | - | volume-name-prefix | The volume-name-prefix will be used by provisioner sidecar as a prefix for all the volumes created | Yes | pmax | - | monitor-interval | The monitor-interval will be used by external-health-monitor as an interval for health checks | Yes | 60s | - -7. Execute the following command to create the PowerMax custom resource:`kubectl create -f `. The above command will deploy the CSI-PowerMax driver. -8. The mandatory module CSI PowerMax Reverseproxy will be installed automatically with the same command. -9. Refer https://github.com/dell/csi-powermax/tree/main/samples for the sample files. - -## Other features to enable - -### Dynamic Logging Configuration - -This feature is introduced in CSI Driver for powermax version 2.0.0. - -As part of driver installation, a ConfigMap with the name `powermax-config-params` is created using the manifest located in the sample file. This ConfigMap contains an attribute `CSI_LOG_LEVEL` which specifies the current log level of the CSI driver. To set the default/initial log level user can set this field during driver installation. - -To update the log level dynamically user has to edit the ConfigMap `powermax-config-params` and update `CSI_LOG_LEVEL` to the desired log level. - -```bash -kubectl edit configmap -n powermax powermax-config-params -``` - -### Volume Health Monitoring - -This feature is introduced in CSI Driver for PowerMax version 2.2.0. - -Volume Health Monitoring feature is optional and by default this feature is disabled for drivers when installed via CSM operator. - -To enable this feature, set `X_CSI_HEALTH_MONITOR_ENABLED` to `true` in the driver manifest under controller and node section. Also, install the `external-health-monitor` from `sideCars` section for controller plugin. -To get the volume health state `value` under controller should be set to true as seen below. To get the volume stats `value` under node should be set to true. - -```yaml - # Install the 'external-health-monitor' sidecar accordingly. - # Allowed values: - # true: enable checking of health condition of CSI volumes - # false: disable checking of health condition of CSI volumes - # Default value: false - controller: - envs: - - name: X_CSI_HEALTH_MONITOR_ENABLED - value: "true" - node: - envs: - # X_CSI_HEALTH_MONITOR_ENABLED: Enable/Disable health monitor of CSI volumes from node plugin - volume usage - # Allowed values: - # true: enable checking of health condition of CSI volumes - # false: disable checking of health condition of CSI volumes - # Default value: false - - name: X_CSI_HEALTH_MONITOR_ENABLED - value: "true" -``` - -### Support for custom topology keys - -This feature is introduced in CSI Driver for PowerMax version 2.3.0. - -Support for custom topology keys is optional and by default this feature is disabled for drivers when installed via CSM operator. - -X_CSI_TOPOLOGY_CONTROL_ENABLED provides a way to filter topology keys on a node based on array and transport protocol. If enabled, user can create custom topology keys by editing node-topology-config configmap. - -1. To enable this feature, set `X_CSI_TOPOLOGY_CONTROL_ENABLED` to `true` in the driver manifest under node section. - - ```yaml - # X_CSI_TOPOLOGY_CONTROL_ENABLED provides a way to filter topology keys on a node based on array and transport protocol - # if enabled, user can create custom topology keys by editing node-topology-config configmap. - # Allowed values: - # true: enable the filtration based on config map - # false: disable the filtration based on config map - # Default value: false - - name: X_CSI_TOPOLOGY_CONTROL_ENABLED - value: "false" - ``` - -2. Edit the sample config map "node-topology-config" as described [here](https://github.com/dell/csi-powermax/blob/main/samples/configmap/topologyConfig.yaml) with appropriate values: - Example: - ```yaml - kind: ConfigMap - metadata: - name: node-topology-config - namespace: powermax - data: - topologyConfig.yaml: | - allowedConnections: - - nodeName: "node1" - rules: - - "000000000001:FC" - - "000000000002:FC" - - nodeName: "*" - rules: - - "000000000002:FC" - deniedConnections: - - nodeName: "node2" - rules: - - "000000000002:*" - - nodeName: "node3" - rules: - - "*:*" - - ``` - | Parameter | Description | - |-----------|--------------| - | allowedConnections | List of node, array and protocol info for user allowed configuration | - | allowedConnections.nodeName | Name of the node on which user wants to apply given rules | - | allowedConnections.rules | List of StorageArrayID:TransportProtocol pair | - | deniedConnections | List of node, array and protocol info for user denied configuration | - | deniedConnections.nodeName | Name of the node on which user wants to apply given rules | - | deniedConnections.rules | List of StorageArrayID:TransportProtocol pair | -
- -3. Run following command to create the configmap - ```bash - kubectl create -f topologyConfig.yaml - ``` - >Note: Name of the configmap should always be `node-topology-config`. - -### Support for auto RDM for vSphere over FC - -This feature is introduced in CSI Driver for PowerMax version 2.5.0. - -Support for auto RDM for vSphere over FC feature is optional and by default this feature is disabled for drivers when installed via CSM operator. - -1. To enable this feature, set `X_CSI_VSPHERE_ENABLED` to `true` in the driver manifest under controller and node section. - - ```yaml - # VMware/vSphere virtualization support - # set X_CSI_VSPHERE_ENABLED to true, if you to enable VMware virtualized environment support via RDM - # Allowed values: - # "true" - vSphere volumes are enabled - # "false" - vSphere volumes are disabled - # Default value: "false" - - name: "X_CSI_VSPHERE_ENABLED" - value: "false" - # X_CSI_VSPHERE_PORTGROUP: An existing portGroup that driver will use for vSphere - # recommended format: csi-x-VC-PG, x can be anything of user choice - # Allowed value: valid existing port group on the array - # Default value: "" - - name: "X_CSI_VSPHERE_PORTGROUP" - value: "" - # X_CSI_VSPHERE_HOSTNAME: An existing host(initiator group)/ host group(cascaded initiator group) that driver will use for vSphere - # this host/host group should contain initiators from all the ESXs/ESXi host where the cluster is deployed - # recommended format: csi-x-VC-HN, x can be anything of user choice - # Allowed value: valid existing host(initiator group)/ host group(cascaded initiator group) on the array - # Default value: "" - - name: "X_CSI_VSPHERE_HOSTNAME" - value: "" - ``` -2. Edit the `Secret` file vcenter-creds [here](https://github.com/dell/csi-powermax/blob/main/samples/secret/vcenter-secret.yaml) with required values. -Example: - ```yaml - apiVersion: v1 - kind: Secret - metadata: - name: vcenter-creds - # Set driver namespace - namespace: powermax - type: Opaque - data: - # set username to the base64 encoded username - username: YWRtaW4= - # set password to the base64 encoded password - password: YWRtaW4= - ``` -These values can be obtained using base64 encoding as described in the following example: -```bash -echo -n "myusername" | base64 -echo -n "mypassword" | base64 -``` -where *myusername* and *mypassword* are credentials for a user with vCenter privileges. -3. -4. Run following command to create the configmap - ```bash - kubectl create -f vcenter-secret.yaml - ``` ->Note: Name of the secret should always be `vcenter-creds`. diff --git a/content/v1/deployment/csmoperator/drivers/powerscale.md b/content/v1/deployment/csmoperator/drivers/powerscale.md deleted file mode 100644 index bf208644d7..0000000000 --- a/content/v1/deployment/csmoperator/drivers/powerscale.md +++ /dev/null @@ -1,177 +0,0 @@ ---- -title: PowerScale -linkTitle: PowerScale -description: > - Installing the CSI Driver for Dell PowerScale via Dell CSM Operator ---- -{{% pageinfo color="primary" %}} -{{< message text="1" >}} -{{% /pageinfo %}} -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. - -### Listing installed drivers - -To query for all Dell CSI drivers installed with the ContainerStorageModule CRD use the following command: - -```bash -kubectl get csm --all-namespaces -``` - -### Prerequisite - -1. Create namespace. - Execute `kubectl create namespace isilon` to create the 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 'isilon'. - -2. Create *isilon-creds* secret by creating a yaml file called secret.yaml with the following content: - - ```yaml - 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. - - If replication feature is enabled, ensure the secret includes all the PowerScale clusters involved in replication. - - After creating the secret.yaml, the following command can be used to create the secret, - - ```bash - kubectl create secret generic isilon-creds -n isilon --from-file=config=secret.yaml - ``` - - Use the following command to replace or update the secret - - ```bash - 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](../../../../deployment/helm/drivers/installation/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 - - a. Install the PowerScale driver using default configuration using - the sample file provided - [here](https://github.com/dell/csm-operator/tree/main/samples/minimal-samples). This file can be modified to use custom parameters if needed. - - b. Install the PowerScale driver using the detailed configuration using the sample file provided - [here](https://github.com/dell/csm-operator/tree/main/samples). - -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 | - | --------- | ----------- | -------- |-------- | - | namespace | Specifies namespace where the driver will be installed | Yes | "isilon" | - | replicas | Controls the number of controller pods you deploy. If the number of controller pods is greater than the number of available nodes, the excess pods will be in pending state until new nodes are available for scheduling. Default is 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`. In OCP <= 4.16 and K8s <= 1.29, fsGroupPolicy is an immutable field. | No | "ReadWriteOnceWithFSType" | - | storageCapacity | Enable/Disable storage capacity tracking feature | No | false | - | ***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 | - | X_CSI_ISI_AUTH_TYPE | Indicates the authentication method to be used. If set to 1 then it follows as session-based authentication else basic authentication. If CSM Authorization is enabled, this value must be set to 1. | No | 0 | - | ***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 | - | ***Sidecar parameters*** | - | volume-name-prefix | The volume-name-prefix will be used by provisioner sidecar as a prefix for all the volumes created | Yes | k8s | - | monitor-interval | The monitor-interval will be used by external-health-monitor as an interval for health checks | Yes | 60s | - -5. Execute the following command to create PowerScale custom resource: - - ```bash - kubectl create -f - ``` - - This command will deploy the CSI-PowerScale driver in the namespace specified in the input YAML file. - -6. [Verify the CSI Driver installation](../#verifying-the-driver-installation) - -7. Refer https://github.com/dell/csi-powerscale/tree/main/samples for the sample files. - -**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. diff --git a/content/v1/deployment/csmoperator/drivers/powerstore.md b/content/v1/deployment/csmoperator/drivers/powerstore.md deleted file mode 100644 index 7c5b7c4685..0000000000 --- a/content/v1/deployment/csmoperator/drivers/powerstore.md +++ /dev/null @@ -1,491 +0,0 @@ ---- -title: PowerStore -linkTitle: PowerStore -description: > - Installing the CSI Driver for Dell PowerStore via Dell CSM Operator ---- -{{% pageinfo color="primary" %}} -{{< message text="1" >}} -{{% /pageinfo %}} -The CSI Driver for Dell PowerStore 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. - -## Listing installed drivers - -To query for all Dell CSI drivers installed with the ContainerStorageModule CRD use the following command: - -```bash -kubectl get csm --all-namespaces -``` - -## Prerequisites - -The following requirements must be met before installing the CSI Driver for Dell PowerStore: - -- A Kubernetes or OpenShift cluster (see [supported versions](../../../../csidriver/#features-and-capabilities)). -- Refer to the sections below for protocol specific requirements. -- If you want to use pre-configured iSCSI/FC hosts be sure to check that they are not part of any host group. -- Linux multipathing requirements (described later). -- Mount propagation is enabled on the container runtime that is being used. -- If using the Snapshot feature, satisfy all Volume Snapshot requirements. -- Insecure registries are defined in Docker or other container runtime for CSI drivers that are hosted in a non-secure location. -- Ensure that your nodes support mounting NFS volumes if using NFS. -- For NVMe support the preferred multipath solution is NVMe native multipathing. The [Dell Host Connectivity Guide](https://elabnavigator.dell.com/vault/pdf/Linux.pdf) describes the details of each configuration option. - -### Fibre Channel Requirements - -The following requirements must be fulfilled in order to successfully use the Fiber Channel protocol with the CSI PowerStore driver: - -- Zoning of the Host Bus Adapters (HBAs) to the Fibre Channel ports on the PowerStore arrays must be done. -- If the number of volumes that will be published to nodes is high, then configure the maximum number of LUNs for your HBAs on each node. See the appropriate HBA document to configure the maximum number of LUNs. - -### iSCSI Requirements - -The following requirements must be fulfilled in order to successfully use the iSCSI protocol with the CSI PowerStore driver: - -- Ensure that the necessary iSCSI initiator utilities are installed on each Kubernetes worker node. This typically includes the _iscsi-initiator-utils_ package for RHEL or _open-iscsi_ package for Ubuntu. -- Enable and start the _iscsid_ service on each Kubernetes worker node. This service is responsible for managing the iSCSI initiator. You can enable the service by running the following command on all worker nodes: `systemctl enable --now iscsid` -- Ensure that the unique initiator name is set in _/etc/iscsi/initiatorname.iscsi_. -- To configure iSCSI in Red Hat OpenShift clusters, you can create a `MachineConfig` object using the console or `oc` to ensure that the iSCSI daemon starts on all the Red Hat CoreOS nodes. Here is an example of a `MachineConfig` object: - -```yaml -apiVersion: machineconfiguration.openshift.io/v1 -kind: MachineConfig -metadata: - name: 99-iscsid - labels: - machineconfiguration.openshift.io/role: worker -spec: - config: - ignition: - version: 3.2.0 - systemd: - units: - - name: "iscsid.service" - enabled: true -``` - -Once the `MachineConfig` object has been deployed, CoreOS will ensure that the `iscsid.service` starts automatically. You can check the status of the iSCSI service by entering the following command on each worker node in the cluster: `sudo systemctl status iscsid`. - -- Ensure that the iSCSI initiators are available on all the nodes where the driver node plugin will be installed. -- Ensure that the unique initiator name is set in _/etc/iscsi/initiatorname.iscsi_. -- Kubernetes nodes must have network connectivity to an iSCSI port on the Dell PowerStore array that -has IP interfaces. -- Ensure that the iSCSI initiators on the nodes are not a part of any existing Host or Host Group on the Dell PowerStore arrays. The driver will create host entries for the iSCSI initiators which adheres to the naming conventions required by the driver. - -Refer to the [Dell Host Connectivity Guide](https://elabnavigator.dell.com/vault/pdf/Linux.pdf) for more information. - -### NVMe Requirements - -The following requirements must be fulfilled in order to successfully use the NVMe protocols with the CSI PowerStore driver: - -- All OpenShift or Kubernetes nodes connecting to Dell storage arrays must use unique host NVMe Qualified Names (NQNs). - -> The OpenShift deployment process for CoreOS will set the same host NQN for all nodes. The host NQN is stored in the file /etc/nvme/hostnqn. One possible solution to ensure unique host NQNs is to add the following machine config to your OCP cluster: - -```yaml -apiVersion: machineconfiguration.openshift.io/v1 -kind: MachineConfig -metadata: - labels: - machineconfiguration.openshift.io/role: worker - name: 99-worker-custom-nvme-hostnqn -spec: - config: - ignition: - version: 3.4.0 - systemd: - units: - - contents: | - [Unit] - Description=Custom CoreOS Generate NVMe Hostnqn - - [Service] - Type=oneshot - ExecStart=/usr/bin/sh -c '/usr/sbin/nvme gen-hostnqn > /etc/nvme/hostnqn' - RemainAfterExit=yes - - [Install] - WantedBy=multi-user.target - enabled: true - name: custom-coreos-generate-nvme-hostnqn.service -``` - -- The driver requires the NVMe command-line interface (nvme-cli) to manage the NVMe clients and targets. The NVMe CLI tool is installed in the host using the following command on RPM oriented Linux distributions. - -```bash -sudo dnf -y install nvme-cli -``` - -- Support for NVMe requires native NVMe multipathing to be configured on each worker node in the cluster. Please refer to the [Dell Host Connectivity Guide](https://elabnavigator.dell.com/vault/pdf/Linux.pdf) for more details on NVMe multipathing requirements. To determine if the worker nodes are configured for native NVMe multipathing run the following command on each worker node: - -```bash -cat /sys/module/nvme_core/parameters/multipath -``` - - >If the result of the command displays Y then NVMe native multipathing is enabled in the kernel. If the output is N then native NVMe multipating is disabled. Consult the [Dell Host Connectivity Guide](https://elabnavigator.dell.com/vault/pdf/Linux.pdf) for Linux to enable native NVMe multipathing. - -**Configure the IO policy** - -- The default NVMeTCP native multipathing policy is "numa". The preferred IO policy for NVMe devices used for PowerStore is round-robin. You can use udev rules to enable the round robin policy on all worker nodes. To view the IO policy you can use the following command: - -```bash -nvme list-subsys -``` - -To change the IO policy to round-robin you can add a udev rule on each worker node. Place a config file in /etc/udev/rules.d with the name 71-nvme-io-policy.rules with the following contents: - -```text -ACTION=="add|change", SUBSYSTEM=="nvme-subsystem", ATTR{iopolicy}="round-robin" -``` - -In order to change the rules on a running kernel you can run the following commands: - -```bash -/sbin/udevadm control --reload-rules -/sbin/udevadm trigger --type=devices --action=change -``` - -On OCP clusters you can add a MachineConfig to enable this rule on all worker nodes: - -```yaml -apiVersion: machineconfiguration.openshift.io/v1 -kind: MachineConfig -metadata: - name: 99-workers-multipath-round-robin - labels: - machineconfiguration.openshift.io/role: worker -spec: - config: - ignition: - version: 3.2.0 - storage: - files: - - contents: - source: data:text/plain;charset=utf-8;base64,QUNUSU9OPT0iYWRkfGNoYW5nZSIsIFNVQlNZU1RFTT09Im52bWUtc3Vic3lzdGVtIiwgQVRUUntpb3BvbGljeX09InJvdW5kLXJvYmluIg== - verification: {} - filesystem: root - mode: 420 - path: /etc/udev/rules.d/71-nvme-io-policy.rules -``` - -**Configure the control loss timeout** - -To reduce the impact of PowerStore non disruptive software upgrades you must set the control loss timeout. This can be done using udev rules on each worker node. More information can be found in the [Dell Host Connectivity Guide](https://elabnavigator.dell.com/vault/pdf/Linux.pdf). To configure the control loss timeout place a config file in /etc/udev/rules.d with the name 72-nvmf-ctrl_loss_tmo.rules with the following contents: - -```text -ACTION=="add|change", SUBSYSTEM=="nvme", KERNEL=="nvme*", ATTR{ctrl_loss_tmo}="-1" -``` -In order to change the rules on a running kernel you can run the following commands: - -```bash -/sbin/udevadm control --reload-rules -/sbin/udevadm trigger --type=devices --action=change -``` - -On OCP clusters you can add a MachineConfig to enable this rule on all worker nodes: - -```yaml -apiVersion: machineconfiguration.openshift.io/v1 -kind: MachineConfig -metadata: - name: 99-nvmf-ctrl-loss-tmo - labels: - machineconfiguration.openshift.io/role: worker -spec: - config: - ignition: - version: 3.2.0 - storage: - files: - - contents: - source: data:text/plain;charset=utf-8;base64,QUNUSU9OPT0iYWRkfGNoYW5nZSIsIFNVQlNZU1RFTT09Im52bWUiLCBLRVJORUw9PSJudm1lKiIsIEFUVFJ7Y3RybF9sb3NzX3Rtb309Ii0xIgo= - verification: {} - filesystem: root - mode: 420 - path: /etc/udev/rules.d/72-nvmf-ctrl_loss_tmo.rules -``` - -**Requirements for NVMeTCP** - -> Starting with OCP 4.14 NVMe/TCP is enabled by default on RCOS nodes. - -- Modules including the nvme, nvme_core, nvme_fabrics, and nvme_tcp are required for using NVMe over Fabrics using TCP. Load the NVMe and NVMe-OF Modules using the below commands: -```bash -modprobe nvme -modprobe nvme_tcp -``` -- The NVMe modules may not be available after a node reboot. Loading the modules at startup is recommended. - -**Requirements for NVMeFC** -- NVMeFC Zoning of the Host Bus Adapters (HBAs) to the Fibre Channel port must be done. - -> Do not load the nvme_tcp module for NVMeFC - -### Linux Multipathing Requirements - -Dell PowerStore supports Linux multipathing (DM-MPIO) and NVMe native multipathing. Configure Linux multipathing before installing the CSI Driver. - -> For NVMe connectivity native NVMe multipathing is used. The following sections apply only for iSCSI and Fiber Channel connectivity. - -Configure Linux multipathing as follows: -- Ensure that all nodes have the _Device Mapper Multipathing_ package installed. - You can install it by running `dnf install device-mapper-multipath` or `apt install multipath-tools` based on your Linux distribution. -- Enable multipathing using the `mpathconf --enable --with_multipathd y` command. A default configuration file, `/etc/multipath.conf` is created. -- Enable `user_friendly_names` and `find_multipaths` in the `multipath.conf` file. -- Ensure that the `multipath` command for `multipath.conf` is available on all Kubernetes nodes. - -The following is a sample multipath.conf file: - -```text -defaults { - polling_interval 5 - checker_timeout 15 - disable_changed_wwids yes - find_multipaths no -} -devices { - device { - vendor DellEMC - product PowerStore - detect_prio "yes" - path_selector "queue-length 0" - - path_grouping_policy "group_by_prio" - path_checker tur - failback immediate - fast_io_fail_tmo 5 - no_path_retry 3 - rr_min_io_rq 1 - max_sectors_kb 1024 - dev_loss_tmo 10 - hardware_handler "1 alua" - } - device { - vendor .* - product dellemc-powerstore - uid_attribute ID_WWN - prio ana - failback immediate - path_grouping_policy "group_by_prio" - path_checker "none" - path_selector "queue-length 0" - detect_prio "yes" - fast_io_fail_tmo 5 - no_path_retry 3 - rr_min_io_rq 1 - max_sectors_kb 1024 - dev_loss_tmo 10 - } -} -``` - -On some distributions the multipathd service for changes to the configuration and dynamically reconfigures itself. If you need to manually trigger a reload you can run the following command: -`sudo systemctl reload multipathd` - -On OCP clusters you can add a MachineConfig to configure multipathing on the worker nodes. - -You will need to first base64 encode the multipath.conf and add it to the MachineConfig definition. - -```bash -echo 'defaults { - polling_interval 5 - checker_timeout 15 - disable_changed_wwids yes - find_multipaths no -} -devices { - device { - vendor DellEMC - product PowerStore - detect_prio "yes" - path_selector "queue-length 0" - - path_grouping_policy "group_by_prio" - path_checker tur - failback immediate - fast_io_fail_tmo 5 - no_path_retry 3 - rr_min_io_rq 1 - max_sectors_kb 1024 - dev_loss_tmo 10 - hardware_handler "1 alua" - } - device { - vendor .* - product dellemc-powerstore - uid_attribute ID_WWN - prio ana - failback immediate - path_grouping_policy "group_by_prio" - path_checker "none" - path_selector "queue-length 0" - detect_prio "yes" - fast_io_fail_tmo 5 - no_path_retry 3 - rr_min_io_rq 1 - max_sectors_kb 1024 - dev_loss_tmo 10 - } -}' | base64 -w0 -``` - -Use the base64 encoded string output in the following `MachineConfig` yaml file (under source section) - -```yaml -apiVersion: machineconfiguration.openshift.io/v1 -kind: MachineConfig -metadata: - name: workers-multipath-conf-default - labels: - machineconfiguration.openshift.io/role: worker -spec: - config: - ignition: - version: 3.2.0 - storage: - files: - - contents: - source: data:text/plain;charset=utf-8;base64,ZGVmYXVsdHMgewogIHBvbGxpbmdfaW50ZXJ2YWwgNQogIGNoZWNrZXJfdGltZW91dCAxNQogIGRpc2FibGVfY2hhbmdlZF93d2lkcyB5ZXMKICBmaW5kX211bHRpcGF0aHMgbm8KfQpkZXZpY2VzIHsKICBkZXZpY2UgewogICAgdmVuZG9yIERlbGxFTUMKICAgIHByb2R1Y3QgUG93ZXJTdG9yZQogICAgZGV0ZWN0X3ByaW8gInllcyIKICAgIHBhdGhfc2VsZWN0b3IgInF1ZXVlLWxlbmd0aCAwIgoKICAgIHBhdGhfZ3JvdXBpbmdfcG9saWN5ICJncm91cF9ieV9wcmlvIgogICAgcGF0aF9jaGVja2VyIHR1cgogICAgZmFpbGJhY2sgaW1tZWRpYXRlCiAgICBmYXN0X2lvX2ZhaWxfdG1vIDUKICAgIG5vX3BhdGhfcmV0cnkgMwogICAgcnJfbWluX2lvX3JxIDEKICAgIG1heF9zZWN0b3JzX2tiIDEwMjQKICAgIGRldl9sb3NzX3RtbyAxMAogICAgaGFyZHdhcmVfaGFuZGxlciAiMSBhbHVhIgogIH0KICBkZXZpY2UgewogICAgdmVuZG9yIC4qCiAgICBwcm9kdWN0IGRlbGxlbWMtcG93ZXJzdG9yZQogICAgdWlkX2F0dHJpYnV0ZSBJRF9XV04KICAgIHByaW8gYW5hCiAgICBmYWlsYmFjayBpbW1lZGlhdGUKICAgIHBhdGhfZ3JvdXBpbmdfcG9saWN5ICJncm91cF9ieV9wcmlvIgogICAgcGF0aF9jaGVja2VyICJub25lIgogICAgcGF0aF9zZWxlY3RvciAicXVldWUtbGVuZ3RoIDAiCiAgICBkZXRlY3RfcHJpbyAieWVzIgogICAgZmFzdF9pb19mYWlsX3RtbyA1CiAgICBub19wYXRoX3JldHJ5IDMKICAgIHJyX21pbl9pb19ycSAxCiAgICBtYXhfc2VjdG9yc19rYiAxMDI0CiAgICBkZXZfbG9zc190bW8gMTAKICB9Cn0K - verification: {} - filesystem: root - mode: 400 - path: /etc/multipath.conf -``` - -After deploying this`MachineConfig` object, CoreOS will start the multipath service automatically. -Alternatively, you can check the status of the multipath service by running the following command on each worker node. -`sudo multipath -ll` - -Refer to the [Dell Host Connectivity Guide](https://elabnavigator.dell.com/vault/pdf/Linux.pdf) for more information. - -### Volume Snapshot Requirements (Optional) -For detailed snapshot setup procedure, [click here.](../../../../snapshots/#optional-volume-snapshot-requirements) - -### Replication Requirements (Optional) - -Applicable only if you decided to enable the Replication feature in `sample.yaml` - -```yaml -replication: - enabled: true -``` -#### Replication CRDs - -The CRDs for replication can be obtained and installed from the csm-replication project on Github. Use `csm-replication/deploy/replicationcrds.all.yaml` located in csm-replication git repo for the installation. - -CRDs should be configured during replication prepare stage with repctl as described in [install-repctl](../../../helm/modules/installation/replication/install-repctl) -### Namespace and PowerStore API Access Configuration - -1. Create namespace. - Execute `kubectl create namespace powerstore` to create the powerstore namespace (if not already present). Note that the namespace can be any user-defined name, in this example, we assume that the namespace is 'powerstore'. - -2. Create a file called `config.yaml` that has Powerstore array connection details with the following content - ```yaml - arrays: - - endpoint: "https://10.0.0.1/api/rest" # full URL path to the PowerStore API - globalID: "unique" # unique id of the PowerStore array - username: "user" # username for connecting to API - password: "password" # password for connecting to API - skipCertificateValidation: true # indicates if client side validation of (management)server's certificate can be skipped - isDefault: true # treat current array as a default (would be used by storage classes without arrayID parameter) - blockProtocol: "auto" # what SCSI transport protocol use on node side (FC, ISCSI, NVMeTCP, NVMeFC, None, or auto) - nasName: "nas-server" # what NAS should be used for NFS volumes - nfsAcls: "0777" # (Optional) defines permissions - POSIX mode bits or NFSv4 ACLs, to be set on NFS target mount directory. - # NFSv4 ACls are supported for NFSv4 shares on NFSv4 enabled NAS servers only. POSIX ACLs are not supported and only POSIX mode bits are supported for NFSv3 shares. - ``` - Change the parameters with relevant values for your PowerStore array. - Add more blocks similar to above for each PowerStore array if necessary. - - If replication feature is enabled, ensure the secret includes all the PowerStore arrays involved in replication. - - #### User Privileges - The username specified in `config.yaml` must be from the authentication providers of PowerStore. The user must have the correct user role to perform the actions. The minimum requirement is **Storage Operator**. - -3. Create Kubernetes secret: - - Create a file called `secret.yaml` in same folder as `config.yaml` with following content - ```yaml - apiVersion: v1 - kind: Secret - metadata: - name: powerstore-config - namespace: powerstore - type: Opaque - data: - config: CONFIG_YAML - ``` - - Combine both files and create Kubernetes secret by running the following command: - ```bash - - sed "s/CONFIG_YAML/`cat config.yaml | base64 -w0`/g" secret.yaml | kubectl apply -f - - ``` - -## Install Driver - -1. Follow all the [prerequisites](#prerequisites) above - -2. Create a CR (Custom Resource) for PowerStore using the sample files provided - - a. Install the PowerStore driver using default configuration using - the sample file provided - [here](https://github.com/dell/csm-operator/tree/main/samples/minimal-samples). This file can be modified to use custom parameters if needed. - - b. Install the PowerStore driver using the detailed configuration using - the sample file provided - [here](https://github.com/dell/csm-operator/tree/main/samples). - -3. Users should configure the parameters in CR. The following table lists the primary configurable parameters of the PowerStore 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, the excess pods will be in pending state until new nodes are available for scheduling. Default is 2 which allows for Controller high availability. | Yes | 2 | -| namespace | Specifies namespace where the driver will be installed | Yes | "powerstore" | -| fsGroupPolicy | Defines which FS Group policy mode to be used. Supported modes `None, File and ReadWriteOnceWithFSType`. In OCP <= 4.16 and K8s <= 1.29, fsGroupPolicy is an immutable field. | No |"ReadWriteOnceWithFSType"| -| storageCapacity | Enable/Disable storage capacity tracking feature | No | false | -| ***Common parameters for node and controller*** | -| X_CSI_POWERSTORE_NODE_NAME_PREFIX | Prefix to add to each node registered by the CSI driver | Yes | "csi-node" -| X_CSI_FC_PORTS_FILTER_FILE_PATH | To set path to the file which provides a list of WWPN which should be used by the driver for FC connection on this node | No | "/etc/fc-ports-filter" | -| ***Controller parameters*** | -| X_CSI_POWERSTORE_EXTERNAL_ACCESS | allows specifying additional entries for hostAccess of NFS volumes. Both single IP address and subnet are valid entries | No | empty | -| X_CSI_NFS_ACLS | Defines permissions - POSIX mode bits or NFSv4 ACLs, to be set on NFS target mount directory. | No | "0777" | -| ***Node parameters*** | -| X_CSI_POWERSTORE_ENABLE_CHAP | Set to true if you want to enable iSCSI CHAP feature | No | false | -| ***Sidecar parameters*** | -| volume-name-prefix | The volume-name-prefix will be used by provisioner sidecar as a prefix for all the volumes created | Yes | csivol | -| monitor-interval | The monitor-interval will be used by external-health-monitor as an interval for health checks | Yes | 60s | - -4. Execute the following command to create PowerStore custom resource: - ```bash - kubectl create -f - ``` - This command will deploy the CSI PowerStore driver in the namespace specified in the input YAML file. - - - Next, the driver should be installed, you can check the condition of driver pods by running - ```bash - kubectl get all -n - ``` - -5. [Verify the CSI Driver installation](../#verifying-the-driver-installation) - -6. Refer https://github.com/dell/csi-powerstore/tree/main/samples for the sample files. - -**Note** : - 1. "Kubelet config dir path" is not yet configurable in case of Operator based driver installation. - 2. Snapshotter and resizer sidecars are not optional. They are defaults with Driver installation. - -## Dynamic secret change detection - -CSI PowerStore supports the ability to dynamically modify array information within the secret, allowing users to update -_credentials_ for the PowerStore arrays, in-flight, without restarting the driver. -> Note: Updates to the secret that include adding a new array, or modifying the endpoint, globalID, or blockProtocol parameters -> require the driver to be restarted to properly pick up and process the changes. - -To do so, change the configuration file `config.yaml` and apply the update using the following command: - -```bash -sed "s/CONFIG_YAML/`cat config.yaml | base64 -w0`/g" secret.yaml | kubectl apply -f - -``` diff --git a/content/v1/deployment/csmoperator/drivers/unity.md b/content/v1/deployment/csmoperator/drivers/unity.md deleted file mode 100644 index 4ac66ab8a1..0000000000 --- a/content/v1/deployment/csmoperator/drivers/unity.md +++ /dev/null @@ -1,104 +0,0 @@ ---- -title: Unity XT -linkTitle: Unity XT -description: > - Installing the CSI Driver for Dell Unity XT via Dell CSM Operator ---- -{{% pageinfo color="primary" %}} -{{< message text="1" >}} -{{% /pageinfo %}} -The CSI Driver for Dell Unity XT 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. - -### Listing installed drivers - -To query for all Dell CSI drivers installed with the ContainerStorageModule CRD use the following command: - -```bash -kubectl get csm --all-namespaces -``` - -### Prerequisites - -1. Create namespace. - Execute `kubectl create namespace unity` to create the unity namespace (if not already present). Note that the namespace can be any user-defined name, in this example, we assume that the namespace is 'unity'. - -2. Create a file called `secret.yaml` that has Unity XT array connection details with the following content - ```yaml - storageArrayList: - - arrayId: "APM00******1" # unique array id of the Unisphere array - username: "user" # username for connecting to API - password: "password" # password for connecting to API - endpoint: "https://10.1.1.1/" # full URL path to the Unity XT API - skipCertificateValidation: true # indicates if client side validation of (management)server's certificate can be skipped - isDefault: true # treat current array as a default (would be used by storage classes without arrayID parameter) - ``` - Change the parameters with relevant values for your Unity XT array. - Add more blocks similar to above for each Unity XT array if necessary. - -3. Use the following command to create a new secret unity-creds from `secret.yaml` file. - - `kubectl create secret generic unity-creds -n unity --from-file=config=secret.yaml` - - Use the following command to replace or update the secret: - - `kubectl create secret generic unity-creds -n unity --from-file=config=secret.yaml -o yaml --dry-run | kubectl replace -f -` - -### Install Driver - -1. Follow all the [prerequisites](#prerequisite) above - -2. Create a CR (Custom Resource) for Unity XT using the sample files provided - - a. Install the Unity driver using default configuration using - the sample file provided - [here](https://github.com/dell/csm-operator/tree/main/samples/minimal-samples). This file can be modified to use custom parameters if needed. - - b. Install the Unity driver using the detailed configuration using the sample file provided - [here](https://github.com/dell/csm-operator/tree/main/samples). - -3. Users should configure the parameters in CR. The following table lists the primary configurable parameters of the Unity XT 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, the excess pods will be in pending state until new nodes are available for scheduling. Default is 2 which allows for Controller high availability. | Yes | 2 | -| namespace | Specifies namespace where the driver will be installed | Yes | "unity" | -| fsGroupPolicy | Defines which FS Group policy mode to be used. Supported modes `None, File and ReadWriteOnceWithFSType`. In OCP <= 4.16 and K8s <= 1.29, fsGroupPolicy is an immutable field. | No |"ReadWriteOnceWithFSType"| -| storageCapacity.enabled | Enable/Disable storage capacity tracking | No | true | -| storageCapacity.pollInterval | Configure how often the driver checks for changed capacity | No | 5m | -| ***Common parameters for node and controller*** | -| X_CSI_UNITY_ALLOW_MULTI_POD_ACCESS | To enable sharing of volumes across multiple pods within the same node in RWO access mode | No | false | -| X_CSI_UNITY_SYNC_NODEINFO_INTERVAL | Time interval to add node info to array. Default 15 minutes. Minimum value should be 1 | No | 15 | -| CSI_LOG_LEVEL | Sets the logging level of the driver | true | info | -| TENANT_NAME | Tenant name added while adding host entry to the array | No | | -| CERT_SECRET_COUNT | Represents the number of certificate secrets, which the user is going to create for SSL authentication. (unity-cert-0..unity-cert-n). The minimum value should be 1. | false | 1 | -| X_CSI_UNITY_SKIP_CERTIFICATE_VALIDATION | Specifies if the driver is going to validate unisphere certs while connecting to the Unisphere REST API interface.If it is set to false, then a secret unity-certs has to be created with an X.509 certificate of CA which signed the Unisphere certificate | No | true | -| ***Controller parameters*** | -| X_CSI_HEALTH_MONITOR_ENABLED | Enable/Disable health monitor of CSI volumes from Controller plugin - volume condition | No | false | -| ***Node parameters*** | -| X_CSI_HEALTH_MONITOR_ENABLED | Enable/Disable health monitor of CSI volumes from Controller plugin - volume condition | No | false | -| X_CSI_ALLOWED_NETWORKS | Custom networks for Unity export. List of networks that can be used for NFS I/O traffic, CIDR format should be used "ip/prefix, ip/prefix" | No | empty | -| ***Sidecar parameters*** | -| volume-name-prefix | The volume-name-prefix will be used by provisioner sidecar as a prefix for all the volumes created | Yes | csivol | -| monitor-interval | The monitor-interval will be used by external-health-monitor as an interval for health checks | Yes | 60s | - -4. Execute the following command to create Unity XT custom resource: - ```bash - kubectl create -f - ``` - This command will deploy the CSI Unity XT driver in the namespace specified in the input YAML file. - - - Next, the driver should be installed, you can check the condition of driver pods by running - ```bash - kubectl get all -n - ``` - -5. [Verify the CSI Driver installation](../#verifying-the-driver-installation) - -6. Refer https://github.com/dell/csi-unity/tree/main/samples for the sample files. - -**Note** : - 1. "Kubelet config dir path" is not yet configurable in case of Operator based driver installation. - 2. Snapshotter and resizer sidecars are not optional. They are defaults with Driver installation. diff --git a/content/v1/deployment/csmoperator/install_olm.jpg b/content/v1/deployment/csmoperator/install_olm.jpg deleted file mode 100644 index 977acb9063b49f4bbaaabdeaeb40994189124116..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 182304 zcmeFZXH=72*De}Gq$w!9M=63LAV^U_BKjaA4y(8>)hlAr^?|=FL zt5g4@|L23%X}~e|8@ns2XeIc+`hV^N9Eth>0MsNOP6KWNjvhJk=k-4?4o;3g*YRV= zI5@eEb8-D?+&p|d+}ym}TwJ^-d3pIxurDqieu0xG`2Y0({EjXC!_n$ld zz3cEZ;57G9KTamc5jnuo(?>W?A35v>0NGE<$sUP6gYiGFBS$%oaUN$s5-%V7hK5t@ z$LHWU%6?eRV{CJegt31QICh#-@T`W>aUrXRTynm`ny=pGbIaeT=@79Vp(tE_*^aCo0?l%JG;7jdi%cge;pkgpP0n` zn8Gg*NsCL%KUY@QsM|Zge$#g8d;5RvIs)MMA7=fRW&bC;PP6Sg%ASK`Tz~93ax|FT zI8GnqJgaeB(8!AGp|6mf<|}UD8*lS#I(XzSTT?_H`Hk?3DrhYzQvaCtFU$VF85aH@ zS@vIs{V%)lfD>%TJbIerGynu(Cewot0o;cGrV?I>shBqnq{N3|1jxx7$?A-o8;D1H z1os_e@XwIYMxVW4R|7W;`JnI+@c0n$V|c-2!*%`;5T~d5lYCXXugA>X4a5VU8_cf- z&)I|C7|xYRrbm`M2DJn~%EqjIMh%xU%xJ@hfHXry?;+s#4heX0)x@HSfyv%cL^OKZ zG1KD;nJ@y>%<}eEGpb|WCHhU8H$9fh+h^SR-GGB+?uYA69rP+PFI@@N)mTgEysY(H z^Q>U~1HrHFE^u9`4(^pbIcX>h%VqpUJ)T3J0$HDY{4AM&|=? z1pH6(WfE!%%i@MoG%b(7vTZ0y`BgBSbKFnsQE$mfW|wp}Gd+hpFfk9R7tXQwl>d4M zXujIz%!Jk8$Xm5nmW zGe1=AX%A**{GfQEskXIo>!x^rtG6vK!x}={*t^JZStX3qhr5BbNoyxY zgevqmB`>Y+5a8uZ_uH1yA9%)zyjFOcd{tcklfMg!!Gr8jGe9zY9O)6(jic~~`E(yM z%3OYxN9&A>SPP~Gr$&A*W*K$Y>O`&1l9a;_VR={SSG#t}pr?Ew`gu^ep#dy)p|mFt zAG&Y|NHox0xOUT-Di+SX7bruBK=ghR->j$0#XOQ5XutneWZR5$A&w4Yp2{Zu>^7#N zx(UZuFf#hEw0Gu2=FkP~lq zWo9&r`yB;dBb{b;zclnVCALe^+^JkWKGPL6BHbq6^AI3xU>-v3*KP|9Q*xo6%h#zn z7iDd!4~IS{w|U&?ycih-kapMJZ)b=w?@&NJD0~-@tCP->L;QdUHN;;7+Ki$t1(NVX zKAg2Nxw=91J_K+SLeBYP_Zxw)=6bQc5oMEOL7N{^nOWu=+2CI>Uk!2TE2v}4_t}ub z+I26l;zNMmAz=O;vetcLi{Z9{Pks%z38fZv5qqlB%b^Bi<;@?&y zIH){7w|tFk+LDT0Jot+7bn#vZRye&!9P56?EbywjzF!CHWE=4QA)w<9_VI8esBSCV z@C3bWL1e321$B~X``tV6Eiit$E_5BK_E54~)%Cv1V&d?0?gSBAm)r?D#WbV8at$eF zYE#{NP6CbE8(Svp69p$%@ypZS2Cnab3+rV)D?X%3NWb9``8CWG9_l3e{LrOojEhQS zeWssd{cw7HPUyni(UGmy=3u8qyJTd?WsKtb+>wJ8L!s$a!!wgwU>Vom7pjXz& z-{-n$KVF%Jf8zhgP5fDc&^q|R>dvDasYAd(zcB>t=%rHHdS|Z0W^GzPvXOB*wK2Ox zmrhs?X+%*D0k&+^8M{x}ea#d=;nyp$F-%TZ!bEKr+=C%+~F0p^Zj88 zSk81l$ibYULl%hiwtE!yg!(O>hK@SPiOG0>{`c-DzC2>wJd+H2@?^U0srU{3$>%(2c*sO`rNPO0f(UGM|Eszok#J+wTU+8o@|C%D zUJaXm4h2_jfkYNR47-q-($DVlQDcFU2n2RoEshc@>ep z`A>$m&x7I+ItMvy_m0GaVhm5MyPRReQZ?MHt%=%L_hC@6fn46_nfEwyQ|@5V>eSsu z&7;FjIX~I!f#QG_gbnmUJ|%DXSHQ0`Tw!hZzX!%w?5Pn?J2{DEOcZ8aXHT1ii5uv$ z*u{`@ts1hV`WIJ>*=YRTzxCHNRkMph!`kRz$^CvT{k-=RzwI`%8RBs5=7X#T^(3Gy z(~5}YXI^!Nuujhkm{F?GLQsq%hG*Gq@!cW7U)oB^4#D%~>zjO*4XWAj!irs<7LBrQtEo~6UlLc6DOiAp@VhcnZL!-6Uw+{qBJ}FQ#kJz_umQ>UC&$!=~X=# z-tzdxUG4cP+639DnF4tMk&ha~KK6Ni2x!P7BPj$n;%@vV5+rppN&P2uD@ago*Kq@b zkxdT?{7j5DS4yH>%$G$@1);3zg93~ot5;T-vYTK4nn%U}rHiRsQF1vKe_wMot;y_~ zJJT91|20;Q&!6|p=W=u*-~0DT7!Hc;F43+78;>|a4Sp3sIPE|$k%}5e>-$1W`Y+Fk z2ZtmIK9hTV#OcbBOz-&_H_R5DgXF`>Uegb=iEfcpj(K1>^EAnvt4l94hK)B5VQM_} zuz>aE`^|cZE$&GW?OpE>Dc`OKM}tcO@7OvvZZxf z5l^n)%tQv;G`4xeXr+gMW0RC(9P{+LG5w%u4RbELZw%sO_R+&fOQ00#eiKPMuaKm1 zDoqbPSyb~jN&;i`=C3@8^%ngcD&i3ENMI^@emJ&14AR{i9nXB63WgQT?Gt$}KJ$6l z)Rp5V`C% zT(J4M@1ae??h|dxC(6u*xTRkngmHUFh|zE`S*-kkWI3rO`U`q=TqDxk>=gcDCOC&H&1!aQMbu5~juUqwDlJ{!{OVEakC~_8zG-t(IKxl3S}IpZ9TGEG#=(ZoO1^wYYrA zB{S_F(!VJ+ctyD{tMUvDPSC$$ZMJ2$eFZtK&*IsFQl`5P0VjT2hU4ZG=sEMqM8|;E z=+}=VT}`V)-ZT!xU;Pkiu~%@VKk+(9_v_I``k%RX^NE!epa)?tO<;g9f*B=yU{S3p zB;VPnR4e=IGqDrl*QUp-b=}V-6=3fpA7A6$S#Tmy%n4lUlXVXCBrm(}xw8!IPT}0q zq1BuZU-RDC8teC6_noUjKE@^!BoXS!jyr}1aD94JC9HgFA>jou)(dXBKsNiv>iJ$z z&;JK3zVPJq^qHe)lH!WTBX-=ibDnIBk2~)<+oJGU7Pzg7L`KE>WEsfg>k@9N)O#nb zAg4_$tqO1JJUoDm%;SVVp^iaPO(~YI(dHx>YjN}Lj2E(*hWXFmh9B{JQ*r6;Z3%hl zxM6DPEA8PZ)`hn3Xybx4Jbz0mHa)O(O((^177TJm3BT0KH95vHh{!{9=AAMGBG}<8 z<<=FnRRt6XL|^7dkr>%X!F42eac#qdYH^Y{Yk+g<+oC~GkGKf;*ApqH5R{YiNQ&(i z9@PPC2t##vnRUK^^zx`_$%vBfn|(xYRiCS9D%mc;jx{>&7&sTKuym+~5k+(tm1AQUe^uRqihDVNxfL?5 z*JwsuOjOBuv-Hm?9=!0$;UBhqkf}@-Prq3AFcAKTe!$KR0Q9CFoTwfmf|B^54hwB2 zCdv{wX*Wb}a(7lgOa+CsOzpUO2knev!Vf-z=93AcSa&QZ zOu%sreU>WLQv=KEtbrwi!9K@b{=x|Tv$=C|(*gd?z_ab2=7g6aMw6J7LqPZ(Y-p#0 z9ZRGkl<2yS^oo3X#!gr3dma34YzY`BVZftcXy!cZY4>x=;GYYA)=nvAIw8aK3s|xT zHKL1f6yyd@)FrxiSIFr0f_POGCKVf~A{%$1nZ`Npx}1;s42m6YX3lh9;tIduXQ(8r`jbn z@Yyq0$@Qw|!frjicV(uZy-yEI$crQshmWtz9;Ir}#aFNDWyDvmZindFiqTMBfzJ*B zv#^=twu{fN8{i1C!t_E?@)VB6eRBbIim5o!faRTo5(L#%nNO-=2=@j|qU-Chl=I$l zhL3&oGJ%>$?bW#b+r(JBzsuHTb?E90WmsL`jRn?uSbT>N@RVh!KzdlPkIdXfx18rZ zZi(-sy}_x@8YMZf(Um1`tV37s`iRH!@9oQ_YENfrX_-at{qDKVjeo;uUF;wT zWQQNtGdYIEj@`o3U~R@DOfO;>mnj8p%Twa8>X406D1K@lS64)b+FQhwT-m*E)jUuVnt@Tsg?h<(fo`_6B;U_C{jTuUTkiBiK*s(4 zyH|VsF_$RbHI$w1UA$6^R*u=t$@;0k#WEx#EAX?9U-XLJHlIki#(f;a!ht;UWDtXF zu(}C(l>+1I#-m;bo`m+cZrJH%q&}Z)S{7dVoSC#gKy@|!F8R3|KH)J`WE&U=%KwT(hWjaQh*2x`Ms2lK3=8tJT^A=C(iP=xgF)Jz^OnCaoOs?+X&2)4%2xI|-U;XzyS* zmKf&n>j&k(e5SKIF*;P+vMLzZlA>1gaWzY^JIY-5R?6fGpRdOeeXmjNyGQ$8ZHN2a zg7WnD3hZSz{5qIGtt@6Y(!vJMdfZWkYtkTl*6YiuE_Tkz1A1hv+tw?|VKRui-U$(a zgO;jMM6!j94v)gIzT>p6JM^EA)P6qmZ!q`O{;kVAZPF`=3Z{8eDG3e;uo4$UKg4Qo% zfBzEGm|6lI^fj<6q_YT}HI6)wM33XmK-Y5K^eug54Cx#p| zJ0S*<@>)*P7}fSNc+=j>5w~+t2tz`{p78o1%qJ4S&S~irtq!~TOXe5|ex2^LSnd)(@Mt8hK| z){(EWJo~r_LM=PCMSea6h=Jw{fkK9o^i&8nvZ)KgHw|`LaV(A;tbdVIq|R&!m>>FX zD&*aC`EqSRLZ@%jCN7RWEIi016)ZP)eVd)Y-&TXJZ_$;o{}p+t>NLS@;6;Ww9(HNMK2`X7kYX8x&9G{hBoR= z)*bg4?1qy6A)wH)J($H4ypYFFA7JsGrTCap9|!F`)y+L$XS&dQ_xlX!pA%Ni1|lJU zc^b_}$#WIEW*Xt{f0(OXvisdwdh3beEt@AIMIrUSFwsYdkSQNxaD<^Wm_A@n_b0V0 zb?SOZzkz0Ean49S8&KM>Z8|BQ7=h$DIqVtn?;#=r4Vz~1DpF7j1hO&Jtjkcb`Je^u zRlU}@U!7P<7Xn9^Vk!Gw3f`3uKPCP3bm6bA!k(tZF2Rl@#A6)xzd#cCsusr8jc(e1?%gtI??r-OPf!=}zbgDCqRmm5FUmS;R2{A8)? z_wnMbnU_4P4lHhZAWDKeG*<7WQ-^+qhkk=2W1Z z3_Ap{A=;TfQ2{@}UK){zVXXLve`a9s&>RasBA!B=r!o0{ZOqZd2SRe^x;~3vS#>T= zVhOJ1)rcixJ=O6-CXiaXe^0J#WAsAUz!CA5%x>!52JH|)cAP#azAXdLzPJ2Z@qAdO zwR)45^9SsvLUqcjdy6pns<8?Af*)idqZUacdbFdK#&&Qtf4UJ-Jr;PXvbr7{g}6x1 zD|#x{xGOoAT;S-eKLZYV_f!@No1NdWapoY&ryP-M$%}nsEXEFbjlC8aDBjN2oUc9k zGo}i4E9=XjM5{*u8`KkL)i?x;-tZg0*kuao6J6TpfzzoA*D$HXldi@!lLqbu(`#0a z5L2&{8z8S3;eS*Bt5FZ5zH}Hi3?c9t{`QC&py=7=xZ7^YeUi@c(p!$0vNveY6J{Z_0<9Hvc5gY)ae z&O;2((vkx*1-rsZpNiSpjwxb} zZPc1b*q-)wUIeDfUm0|zk1cS;BcxWc&Xp3?`RMURV{kJc+MwK))tFmDgiQosuW?H* zGX2um;Is0}(mRkU0_AT=e6AuL$xvqXII2ZgtvOm`6H#%kvyCXus)5d|G+xE-%baIS zWt|!)k9pf%yDzz-<$Ol~5BZGb+C(UOs-ishgUR zkDndGSHiDS=TaA>>XUA34-6jNJgM^}^}qofm2j&A`#S1pgVBP(R2xyLTSZ26{W?V; zQF{O)XsO-!RwpliW~Q&)jQiWj=P$4CjJ!0v@c5%N5$j^$#ReNex*cVURzNRa$P=7F z%*^TF0>NQ+w?6D(|<~dbh|8Il>Fy{#00&N*&esE9hRwvE|`Y?hO78 zX^B)EkVmmW;>So_(U@b1Z%vXuY!9^6^GQGmJDOISL5V6qKH${i^@hB8zlet1sf|`| ziFqJ!%*J*(Q6;R{s)OcrA%4?acdHh&d*AC{$sp*O6L2oAYC6~}d5BlJ;NzQuIAy^9 z&l-p80wMV~GE&xX#K3BSf!#O=?#iTiz6cynOF76TN{HSjxJKQ=f8`fH+jANsBO7|e)|mX~yFyQ&S&Pea0*d&r0@Ywui~ z;?~Wn0h{U^ZGxp?J}}6MI?a#qaZIZ~Uld)yqIR^NkMZ$ zCLUE9l#-5>QqQe?t}?h%`fY3(JPXRQwVY5DTB-lxR6e=thB2Q--TDo!7~i)eB{M|@ zXekGU7@=7huoooU;C!!3ccfC+_RS9m2kjYGx?%>mwSzDzJ?Ly(gv(`$3W<;aVpDhf zJ_$@NlnczK8*l3B73Ni6d)&IRvXWP?Hih@o1*1i~v&PC82me0Afro~ae)@+d?-buyKHTVtE}>dToV zBd+&xNpWg>2c`HimsT%Srjdi+b^y*IYisxSW|#yKNLSG%A0ZBl!1SHR(JwNy2rsKy zvjuB{D|!!G!;y*~G|kkfcAYd5W6t@XGwt7NLFv+c8TRn&bW?v)3mSwv1i1H8FPpcF z8r(*7d8yOVtGax$K)E{GySn-XKe}o}eg;_A24lg8fW>~L-J;aZ6w8N)fX_@R=%!c0 zRFf;&lCIE1b|_^H;e8Uk9v>8;9T)~{Sw(M5IlsB^LqwmpCfpIflJdPm(wpkRCTGGA{saA!!>@ETuh$CoL>f1I<6GjGv1JFC)6lDN9Pf1yxG=27=(XzmEr zmBlMVtso)$oCS!GSj1UqFh-X$G*YzoJf?Em9FQ7Q7%8a5rSzPa`1oT77 z!|i51OY2{fsWD+EcTe*qV1#*8Btm8_s}GNsna_@|s1mbeDDcqEtJxcnm&3HjXvMgi>pRy+wEJsvxIiSbJT+ab`;=)iYI&`)5?4)O})4|5f+|X zJs%7W9e}31!w;V9_A_Y-J|*Qn&m++TI}ou-1q&&cw*1cAaA$;iO7<~DloqyneUfr@ z#~Zlo+pqVRt&2VH_odxFCUl|b`SsV85A$M(3Cb5Oj+<5z@LVk35$ZIt=@r_TGKD!0 z%_N-I+}u3VRCns;i6+r=b{d_#vevT(#@rA!Q|{?Vc@B=HeU+=mcQhjKx??5iHk6u; zkF8^>b=rO#6ldX$fe#%5l|Xh%*Ztr(b7FZX0c$2G*?Hf~3!_6ch^_VReubO{z&g!n@P*1PSJjCC>Kk8Tn%F$Sagy4`tn2(V<6$*ASoEhhBZyqsaXoE-QD;; z9Wv)+Du~z=zTJCT7+!uk;eCqv3#E+;w##3nFENB*?$#p+apv`L1MR}Kv9JQ-7rY|@ zyw{9>{8w|FapD(%Xu|mi6)8apFlP~sUAv0`V0asc=@ceAL^h9c9l<8<*^H$C%*Tu# zNnGC&airg#ZOp)Z>Y~M%kB2)9eEX=7R`=3hMMM1aXJT9OYY@eTfajaH{9I-zL5C2v zmy%yCHs*fwNL_8Ts}R2Iy(4d`6uFpaL0b?9*uRZ{7+Br=+Tx^V7C5qBUAPSY8fH6O z{%a!?xRJ*;;3&O^!9QHq)Jc%`lod^O!25Xhw6`x+b*b|%OT{cE!=!!q+N9k@`r+_{ zLZ&~%3U1y^&FmHs@^n$ADvp+GFOdXh3sP*aj9kA>I+k);`lYv{u(r7bIv(^$_uS-1loQUX(l;6xc+dWKb@)eb+ZBJ24$mq?k- zZ?t?X-fWouurK&!W7T6vCo@dxI9ld}mJ~q>3YoTZkr?qpUn{}>m~UigCt|kFN#BT( z@?PG{zUV(7x$yMkk|}tM;#9Gj6kj{`sCo+t>6ty)vYTCRwrfRv#Zs(?lOQ#^QGu#r z3(4IlZ+1BvR_Wr^E+!UN{l;b|mi%QFQ)EB$^2pQ94Bi%{r+twlwnd{JflBE**(;$# zZ1D%D9-Ul8ANy=5KW=!2;OV&AC9$Q3)3{NDjRjmt+Hd z!QKZ5Vk}M^*19EUYxNM2vW8jSYzyE`8Qlc)ef$}2dNxZ;&_v;xP2mGSZuvJxKjjJw zs&sO`XPGT~6ez>uH=hTJz-`&Y8=vzH)oQQEhAK3!=16#|ld<5i=BI_% zN$gs)b|yoa&0<+1t|GcvyyFJ?6l@<`MYghEygIH{bqJ`bXApG!;$;tTr*3yG8H*p| z*K^mN54c-2<`qa7#x*;xDvkN5Tl9_PodV6*0_&rD)MGFwsc!95De~MII?~rS@Pjk* zfroEcxLFMP9rzLWSZV!UACz$zxE^iJI&U%?%-$$-4*@W~2q`v5;|;_X^w)Dt?u=pjj~-+YN$>Io?+aqKO#HYWsKgeerFb<> z;&$pU^Bw3^TB@v+{FDS!vy-QEEDY_oVkQODl z)ilj6cEwn6c+C(lKS>I4b;Ppk+|Pz%^TZKH>7a$=SOXj1a+uiXXOJ7CbCcYYU)~IS ziwSqQRQVO-+W7spxU}6rRu(SX9vicS?DkFO<}_w^T)xmez}Dr?WK(g9ExtSB|8a=e zG)BEUnL&lp8Yq~=Lgr1XH7o^ZlxFFn&}yD0cFPEui2=vto0fRB|6RS9YhkHPO0)65 zW{|^zqCTq1OfqDm`;wClFCLU2&aWYKsJ#^jO++u(uZ$;KQ~8ZM=;joKgBj(w33AGN z_uVC~Dr9Z^OP)wq7VB025fo;Q5v7yvQtDp}jfHxvlDAa7C17@!W=s@9Ka*h2KS)P`NNP9)^IA(E!)2c_U0f84e85=wdmPodQgN?$gNMe-B4vo9uclBVA-DqNyL~r5lpS zE*Y1w;4TfM+tk28b|`3n%8#m%8HCs<9uGSD5r(4m(%+Jhk>>L`X5FLa3mH^{IZejJ zAX`f9+Gv!ZGmo`)nou+IRXBhCEzXd15xdDl0B(v65Uz)SmwmNz{T>H_>`!cLdS$q= zAJLshaRlNcdI;Pl6rDn9s7o{D_r$wT|45k`w`U3R*0vKn)xc-on5Lx&DB$Ag|3-qu zUU{bHro+6D`uY{SbrT_LS5{J-b+%jUn##wo8{=jx8`&B5%l~fwJqG`~eL%}VeZl-*pX5PxYQbu2R86@{<3OmsN^o;? z&L@l0r$k*}S^!p5M%gQLimy8Z!p)MVr`~BAM;m>F-w1P-A9)rq^`xzaHS|vI%_pZi zcLXU?>c)Fq77Xf$rfkJrMAaYM_-Tr%fA=JuHfI+Hw&RKwNnN&X_d`>A5U&xFAd3A% z#&y=9p#t5QExql_3QLagdR9p3i*wxnikLp@$rfI=JC5?DoCZf&Pf7Zb}W!@k}oeBw_L9IPEGsr*~&+zZ=M08~pNJDZ}pEPph^> zh5K%C%FO0*_|hiF^N;?YS<{62?mTHMG=5ly9^99!JznWk9Bn;XtsT#Jr_Q`I8kxS4 za_dotSFwAdqO>w1g0)S4vH`rVW6&Qbu_4$K15ue>~m@vTTB@;Jria6_`Xm2FUx1v%*2b~(MtB3BrAS2WxP!b_OU6+D{R;b%PrHHNX`m41VpgZ zCW^n48YoRM)p^|vc6c|bs^hNLIEnvt zp|w@nc-N8v)!AfPK)-Ng_)@n1uCy{L4IyFq={vox>50EStvTBC z)*$^A4*^k>sMM^ z<5xytP>{v9z3Mm``5w)RHGYtZk)qdi>9{E3&<-SXGwZrM^ZIDAS?$!zd%{+I%kB~v z%`VYINUeu}=-&doP&-HOGS`rjH63g5YE|$2r*5zMYyuug-2Nr6oh#30{kp|d?JdGK z%~hLj3aQiSSQgf>qgmRwoNJxaeEuQ`?VM+wBQg%fa-g9LNbZ|N8M6+S@>o6J%S6%A zz+%gj?_aSN92{=Q%zg?X--ioONZsu72(~rsig6VzYES4JG)%J>++u@7+iEMx(m&F) zuO8&7V4=`msf#vTTsG!@RkIVB6+e0k+SGaB@>t6xNv;T{Rmr;K$=>{Oy!{;5X}Y0m zkw@!e(Z*Z9s)kzK^D(R#GBQ*T0a}&{w+HztmH9Pq`vJs{&M=d^Y*u1=5NJdhs**XF z_%(uGv89>?hj>M~(!$!{eNV?v`RT%o-druCU0#ZZc(keL|Jtr=->94(nZrYTs_xk+ z9%qRJZC17iwvK@tpn+G{R0<{#r(tzBD6bJ`FcfS|sS3{o)49PH zx+I2-etl$eQtH^ESrK)2Hai)uy(Q>`FU{6+bjedCb-wFewx5WRASuPA-|}{f)u%PK zLAG(yNJ&+>-<;IS_A>j%kZx+U2KNOoHBK2c zKIdTT=4a+9P}u@2kEyJ&GKsz{{`D`)D0VD9pM|BEv$-omo{Yh@;>J`WS$$!4Vtizc zrBXMd)KXh_>V_Na7z3W3^ZBp4gB|G>lMCiZx-xEqIuD#8^&)^Z6kr7MDU#c9ZhC0< zCJ~c-Jlprhmj#=R?%UY~fSjHvBbCu~OWz)|5U*9jPcPomt(_|eIm7RjtG9ZQwLiNF z(Xt#(RJ$02G=0m6(ldYac+JNZv7knwEk?FGtlO)tQ7U&LaURLu4(QoW0{s`Te6aX# zQQGBc{LDa!N1byq8prS2l=#i_2D+NJ;Jw&`8;fI0!AoneR$6lV^w|tP`(Q~jTTiQ( zn3IOU*A5iSGMlr;lWUc|Ba3B+%{qt zg72A-5($(ftrwhQCy}0;KDDQT`?tiF4P7?)Us%y*^eWWf7ZhQSzk-UW?J}h-H$C2~ zij2Vg+0|jV>p66mNhH&_92;3x)IOOpY@X#`WF*m@GQ)Xqu|QTL4A^mS&I1EqfNbwR6T6p+gRLT&3lSwvUw#3)dM%4^2xZRDV;VKltAH;T*{53ysoi~^u)uoo+ls3{AV+cTS%~Z4&4cfjcPjLY z2@m~M;Z0ZYD(eFH2p0DNJLwOl*uDH+rQZoW4F`+GGF8N4em68yo-CRzTus{299qi! z*410l5+C!0D@_Jkz-FGFu=?}ru;lDQPs7txo2}k>fq2nY+p@~ObLl$o#G=jHE6?2? ze zZOP5moP;YA^J+dI9ZLeWT^_RvryD3cYo} zW4jK(M5R9SdtGxv6hkbu9O8+)w8|1{3@6DGA;KxRI)w^%E~AU}ItIVS&rc${GlPuHqrn&I*Eq}vq&Vw#)1p+-y;O_B_CDf_*9kHFbHxa)U9S9AT(NHx8xp zu6H3t>ZNiXn-KRZ=k^H$|J#c;V+u_Mw>zRIV;yj3Y3Tl6X+_ z5$3l&*~NeT=1=q^&_8du2KxU=W<`}NGAX1>xcW#uRbDZj+Z4c^l=N!O_Y@xUVnffTX(^)*ynIMZRi zZT5z|b`_?r$jM`Lrk8(orA{v6F6_%O_c+DP{u|&1Bxe2B3m=?YxZy9SjQ;7(rahEe zc8OnrT{ZJI{aO`V?jYyc1FBtzk0i{lTZ~O0=LsYzbme5H!$nv04}73RxP zYS&c~3$=UU=jjq8pQQcv-n@Av7p$V!F_IlM)9|9HhJ{+^-?N=ly!>av+c?#bE7f^R z!Mo26^d0I7kdrhfvMS)Jqe@95{X9v95KHPfMK|dlgN>Bx6ka!13z|5QA1u!LCN?-H zEY#%fJLrT%y8FZ!iqT;hwQ(jNNmako>-n?ZhQNZEu2P9EO>xZkFYZPcaw&g?MT%26})o6tN)JS|LFFjAekGwctH{bkO}xU1RQ=A#zZY)&flc`I+N5q_m(6(YJ05kngj)uUdh zM{H>e=y&DHH0Q2c)^E!}>iRXlRiTxGWiVv({_xxu4O`9;Q4=Ko|~W@1u~_eOwnb@uq3(1lqx$D_+~{ zqWG3-$`y8uSl_?XCo5rLueYu^`!F?1 zF=-JPqR+h9jE;awipD3cqr`BYo%>P&_ z*88=4fuUYFdSsrYD_!H`1$xP}O9)1xDP^F1#^DQ(3J1lw@>!3x@}f%0bNhY@ zs9POx(n}D*sNi9QZoS{VWyDaPvnlxP+mEb{L^kz`YFkN`H|gJ)Pch|E(n0GpZ0L+m zq=dF5aFul?6e$WtJjbFL3MXZLWFI_2UyKsH*MYwWczOL8htsdicQo=1v^MwNA8gg9 z-kE*TuvM`xI`P{b@ubWCy@gzon)KU%g7yK7iK3zkDA>Lj!Ito-m}Qzt0Y9-1;%h^A zS>uNQ0rEzm*G=>KakyDYPpC}$SeMK=(&M`A^`hfWf|sVGvwnl7Zq1ol(p4HN{d%eW z!1&)bj|1^vk)zFW7<zzMwOKy{8;ikxQY@jVQ7d^fdl5;_`YY3~oGXAsHbXJ$I z%CXKVu}acw-D`-srPxh$Mph`Z_S4E5r_J@v(pSa4p;Yu69#^Akwg|^D+Vncoa5$R* z9F*$DFKw0t3&}6+PQ(v>2xL@Nq0B+WZ3iOJqb9##utO->XRK4Jh%=2o3HaSk{q*rFwWb$f}+ znPWODIyI)RrlSGy7Ky5DW^m){r{mf8XiiDNaltlDo9~N-$86)#sdXNZznJg=xm-aJ zmC;fOBb(O~+7eo$C1v&FXO*z%tb_*BhW1tz{k%>MQQ#D72vpb3{;wF3eM|*0yyEX3 zlBIZ(hePgh2Wj7(+Vn@33N=b8P}2Us7>#vMTn|ZlfqETa$-joj#nxkw+Yj=sw-&jn zB)Y8;Avz&w^vT#}z=xMFl3oh!OoX&dz$W`_%D4jN7=)68uovtiCeK69h3)eD6*tov zLz4|@rRNpBv$P8*p8Ymt>$)T0hF4&?zYf~rD)Vh1aah4{$L?fn`_fP(e}%z|C*36T ze_~x`bTfudJiRHRAnXDY`ONBoh%${B_x@GUDek@F=GAd{2o<3tT&tDEbQLN|$3 zd^RDEM}Cr07&PnL zy~_vAe%#p5m_<8t$u*0poZ^uleL^8ffa!pep}6-Ai!u%ARwMzAmHnn4Omz~;EpT1E zwo7T6)h}=6!|1)K5GwNzi<}wsd`j9*RnJ>^R*Thr7J+H(@zPrZ1fC% z1@*PEjcEwpaHo$Ev2h3myaSjX-;Ftgn;&zutxvWZKi6t@@BGR03Aek?`jvylXYLEV zw*wiAluS!B&Q%^*vaK})b!1!8&-o;w3=Pbl8ys<^-n*T3TTm=RY9Oz!pffe{*dCxJ z#pn%hugO*XB+#CoT!QTAL!QJDqpIA)+*&&YxXnvZnT3t6XTOaWs9yWDZin}oI^$!wsW2st@wjgW~>rlRJwkqj+*r{ZH0`L2_Q?OzwF2A`^tKk~IuM{nM}SevEAw4#d~0**78DwBqiYb-g+ zH-8wxreX4T6~BY(mZ~b=LGsFA_X7is{tIeEnP5%1_di8;klo4ji+N;KYVe(ji*RG= zEylf?$$I@{ewS&(^apQ-T@4M!e|+K;)R{Q`;8?RbAxVW}UVtegKe8GYeCQ#X=YG)>_m>vyL5k>3gk}Y2Cd~TC-6FS^r(@3xH+<^P9%F3Z_YdBN zTC}4H_sd;M8ya`sXR-MyZBCzCDEc1IpLuia|6uPuqnhmgHGizAhzL@oqci~lQJPYs zC;}oPARsmR08&DT^Z+4Ik=_IZ1cazGsgV*QEs-uDM7q>K5RjfwLNFoD{meOQUd;NR znV--4pIPh7_#!S|fJyFq?|bj>cVE}_DMPBU20#>3Mc3K$C=Y63tm=<}*45%q{IeDj zfR&1#CY<*`>V#jLFEHuy(H{=I({ggQ& zWCAodhXp15oj9NSNE#fI5fxJ;$ed0)?z<~YU7%%BcUHBik7hd@wW&7&={%pk=Px$X zj5PHpXS&WCoxT^&o2=Jf{3iKor%Yqk@0=?Sr((?Gav|zV^?ul!*_b&9wCtx~-;R8{ zshzyX9?Z0?VTY8D)v2EWw9$QgMj}G1ZOAonN)}y+gfE6w*K! zz3UVjqMaSqudGjXtSddfAkL6SPKxuR{!;Y4JE+S~A26rnjaAA!wu#)Gv~yVP9gsSe z+xn$G>$tVgnx>>o1;HIQh9dNqDn(x&jO!Ah+c^k}t z74K&L+c9kROVVgfn(pn}jILE&j2i6K!ug{+7}=skwZ_$7Y?$Tl`iXukLR|<@CH$6= zXp4Qt!c{GjDPjucY&E~GiaLe;)Oj}5Mb~BhZV=`fRB7%*T>@MxS@5m5l+VpJTXlAc zXO|C(`6&EIJPE9sHUu{=et1dK*joPVV8bx;P#|qp;BNZ00nWiwyNdggZIHyenK;jD zmohHiG41K`wG|tO2KD%tYq`O+~g}yIuRJr9n{<}wy zy-8*(zkS|buKg0wXYh{Q^iE0pspV0+Q&(k0dRJXrD0h8#PP)I#EDkZW6=(-(q|u0U z1)a!NuF()$0X-1o{)_m6_O#M;W&8aY8A>WJ?G{hGo0HQ07v3`c zY^O2Tfu*m6HH<#3twWKdxqKWz${=o43?Q5+@A^&tvIBEFwjHkZvl;e%Y<0D&%kt&r z&@b27;Aiot=(~*T@DafJk`Xe?6(x3dP}_`ba#h|qDBz}^^5hNueUjHwp6go*Y64qw z)8AF2+%oeDD;&w_R7$HJQ3zmd)K}G8d#sfEmB^LV-m_aq`ELT}o?i6|C9=-MJk&ok zNc)4P@ibdl6#f{i8-JlnOgD4Zo-&o|2}AfF=OD*+yA?crqtSDM`}I-#q9w~Fsj5?8 zN!IUc9MyhT?^@l4+%W3Mjb*$ckJv4(<)qo#-EfWEQSKQtUQbS5h1fVi0?W2t`_L2% zEskiy1JbvSyZ0YK4oqh;9{QYob-M)4VL&LDney1o^I2j zGuP^jzNv;@{I< zo-nBt2>MXiw0;utXb+1NrW;%x&ZVHEFid^Vw7UGZkLe8g`{*y5h=NZ^1Km{6Q_Kg(0ea74hcFI@5E4Qf3$7x{DI5|wB5 zrqmOpIb?%_77kpTDB!({Sh8@}_8bjr+k8G5bNIc3fJJpx&4BDcg>2?A;rry>FlJMN z;Wox#1T!dgddH_F~^pw|`|=|)xN7b~R{8tmKrOXYI1G>-erxZo3a%ZxytJRTDh z1G$+=jm823MJhRP5!X;wHjH0VO{}-eQNA%fvR5}A?7tD%Kkh-a2R?`ZGk_iqnO%<& zJ34@X&R)-TM;+HT2z>V=V65>o7Dw18C{u&89;;e^^x$*-Mr&9yge)G55^D&elB}=| zR8qXQ!>q!p?xjQ3KWP~6_dTA^zrR!MZL<#4JS|v=I6?o#Hmf{ZMb1Ib!VW-oazv;% z(|U(@hMSC)w&j<)KIN9kNtDQ$bDgbA93#?Z>G=#FdX~|!t{gm<#S?FQ9ShNtBUC}p zBVJ|fq>jUQJxD6O_fM_g$)D3SEj9wBq|~jEE;^{%ZOJQ2YnGi#fy}=v1x_|ctZ^0- zED7M8PKUJ5g$7uvTj!SbMZ$c>CKR#o4iDKYf*s+Rk$sB&^TjKqtUe{m+6p zzORqQ(!SG+7$Texbw%mLCMU+h-0^z-5Dtf%{Xg1`4BV97r712a9|%9bPf}CLimtD2`pEbn=k z7rA=*bEQO94fGf%O>W`8^d9TVX0@dE7^Bx9+3v&RxmzhsKXWQ(VdKE^LLw7IIU?!# zWMwYL{}Bly`1*d&m1&+H;mao`a54=fn$KPVUIIB3tg+fN0~Ust+#7CCETjwEAN1?t zAzzot$~A)c9r{@PB)eu&=>0yYPrKJHOR7=Qav32^$6jyV?#;J=`D=qUJ>E1P>UvU9IVy!IhaFLTnPRHZfub=);l)bwyk4s z2d|ko;vYNn+Dp(y|A1uvV^pOnGaKBZ%n(+^?46GxJOE7>2-xaoP@HJ56KRm4VNf)` zt|Y^{-9UXUb9Fdf3U$$@>#_dJ^8tpEj(VSsAEZc;^A-of_4gPUCVxt3u5bN`iJ>gvT~gGtQnjF$KfO*>mh?_t20%5*2Hf&n!>Yzq^0qN*h8dg0WBjrPS((YD%;(W$w< z;#?J}Pc$($bmH47I)-(`fx-{H*t>i;5%7hS-*><^n8+q+e{*y4p?2{{Z}5QE^FmIY&hEZ;L@Z@wkXcP{0%CiXXX48%$ov#g{3=U)Y$@g2C_G{F z=0}Gsb5?=TD*kg(Hm}NcEjkbG8>{`-qqFu5_mWv4ggYH*b{#rLr&89*H5KF%LWIf> zB#?e28;MoE#1POMAV)m(bP9iI;Q8dpvn%rH=3G6mhm}|4s0U_t0Hrq2k8z4^6RN48 zGFmPyu|TyrsuGS8W2fL?K6Za5api-feed-SPqU|Y>0LY1mNA4vvsJ1Hz|At4<|_Okjr z*-PW^WUq@k!6y}phEOibF}7SSmel;67O=PtUFV%mL_H|7e0Jcr=T&RQ^_!AoMr@+r zE@Qru#E@Ubfv8+B)c64HN^~_WW@Jn!e9WybqMoW@QYC=A5bkAJ+R}3{LLvW@Ky;@W z`qKQA5$4EVJpn2{mcyXc(6KWPA#Et`(%fVd^XB#D3Lx`!)Z1OyMbC;TX7t>a*&Ldo z!06fCEuND-tvv7L9~b3 z9?pm6(Oa%lrqX8`uiFmze{4|p4RtDa7@Jl?AAj>s&>7mLUiIPJ&GyR&ddhV7PaqD^ zJ7=xc<;lYEvwLWYI; z0lLcphOjB!fvhkopjR`rhU|tS`8ABn%7$pAGo!CAoMVUcEP?&bm zEQp`p%P@@_A17j#c7)<;KHs?|d3(juxA*X2$gRrnWqh2q79&gxFsd#c5>#WNxoMV? z#_VxtomSf=Xp!C-5P%8$o2jE4*`YXKU|#z0F^k5z7w3N{;?W1)ql6lPGe@6y;ht27 z{PYqXxy(nE)-SvAf@RZ#csT|Re`=hWeR(HNyr)frKA}+mJN9}YMVVquI8G022UEKU0>Ln7alU8cIfQ`r)p=)Gw10<>nM8xJO4B_DB!*{5tAUe?oj^ z^WyV#_vsZ`_OejGXLe91t5vA5!&KNUGajE3LJ_!2*;=Il)AYcHxp+T#gAR_r(sp)EtJ&qV zc<8Of)RX(MMO_@brF$B6+fYZH{`8F{vz^^_8f3 zg2D7UcvmLRMvR-e#h5_Z567P{mu2Z6mDAA5F0e0nBEVJF6y?b;kkLMWA!# z1g5JG*i#~-uvyV72-Cd9os0H=O$9}aBEGiUS4fae^4L@yBY~M_y;r7t0Uk1Ku+r^a zz`RXQbt<5D%;@K3w$|X!HpX!J{HQ9OpDums`m*Gl593t?8%6)2x#_n_cO|4Xa`9dt za~6|nq>c&A!}dHw%)4Zc#+V=zn(a-*_+f4OdVvD=O}*run#dE-%ZOD^<*<%j>CAMyEY zqj56|M`|M;K=%J6wsR`9pR!@E{yJr7iORP&j$NpR0r zn+5J-Qm`zB!cOH!8zeY_uG=jKB^iODW;336r_+drsi3_!(Bsf zHnRh&U*xtnPj*dvg+1JN(sj<>a)>bfmT(%oo-oDvcgyLrSA*{~r>>~7-jK^c>FCNT z*@j=ud847$kf$>})gdduNcM1pV+^8q$-xN{WMgB8O>qyn=He=ru(OFT-&^Y^gox`S zZU7J6DpntuU-!@iLJf#QR|JM|6VB|F*LfBZ3Iqu87=^F#NN1BTcck_6j)%8@W&4i$ z4V!jDLX6ptop(QDH^#`AJW{lXuI^ZkrCy@7(!*fn#Ascm!3NW^(Hj!jOv{8Rts9*6 zo@RPQA}E#4Z@IE5nOg)A;N$#-a)(8u4q|jgmq~ovWyZ~!;plHl(`o$!tJZh9BNB`& zPS!qdiI_Zd{wTXd5?IyDIMpWvR5e~Wp@nzREx~{rmRW}oA=Jo~9xBL$ihi=aOymUW z`}0stSxws2F3Z%^rv_H$*Q^d1YR4?0AfWL?a{6jF87g}ps9Y22x6~9*43(}FuzIR1 zHvV#*vW5cru85Ay4@?__ba?01?Xv8kbBo_3*QO=|H@9^F=^2yn)GTpjfug%JLkMG? z0lVXm5E96Oszucdt#7kNEk~1Oas=S1JGE!k&1z#q$tG}4UNc4K`JK?J zkqYZn+t}kZo=TLeSshqAvZ&-wKo-7rBVbJv5o!#rCDJj!$q)wUQ}7-$IH#!4&c?3! z=S%9WEBbLo^qjtY-p!5EO>E%@A0c>X9`kKEx*`!Af$0IJ_=hZ0tC}Ztwoy{ z-EmZ_<=$NtoaL?#XS>J7R+6amE*e6x0}@QYK79eU2mQu@wM&%6Y9!k1y&`y-#-J-c z4WF7J#pHcm#ZpfXD$0Do4nmdUoL>e!Tax>0s#Zet?kAp0&-DEWRfYd{RkM7_M|H&! zdJPmN@*E-M-e6e-+ST7(Z7^~n<3XlCjD{!MZI1@|gcvr8kUU^-MyBn$7Z${tN}0-I z%K&quE~_pZ-9a1^ZYN*`TDwW75m%}FZ^?-~9{bGgx+^boBbUyeJ1TVi^;!A%ou9ss z6eG?6lcb#W6}%sL$cRD&vM;$Y=Mh}e)ikHuXp_pu`){)XGlYz^m8CoaaYsJwZ;cb$ zCC3m`eXa!TI41)9?zAxryYc22ET$Pf4X1M>Oaw57~BOc|U9G#B8Kz~YByxt}zHMl;T^?0I%^Q|xDNj4gFUAyw^j!8BZta*fF}Sg_`Cp|`@aJ>>@mBt;W8jY`@{cF- zk0-Qe57;j5iPOJAHQaPO}nZcY^?NLDSheoD|d50~8_fVS1G<71V@D97)SH z7*sl&Fn+({dXOk~sJg{Hkr?$^_i??E>|FEayMoF4{mU}xxykcJv`*SMJKiyhi`2l0KNhP(P<%zV; z989}-p+%$X;*o_yvpb2n#Fj#q363e&zELo1{f!W_is*-J4b%gMKRi$gK1)Y6sUgG} zCy`%3hY=>ZODyR@ZSbsA=6D+u2pYe=~=v6Por z+QwPJ-4>e5M~Hc;zu5S(D{I+b|2PQ$I0*kZ2>&<;|G(XI|F63Y|F{YNxC#Hb3IDhW z|F{YNxC#Hb3I8v46Eb{f@#+3lfxq$Tl9qkYH8l?LNS4aT7Urb!ahHe;o$fqJ&?`pq z59{NPFLqsdp)iCE1@NHYPXOW#6t=x=Q_3{Zh+S*APJ=v`)5*^suJZiqV)~`zZ1(IM z&2=z8tMeBdZlrDfTL9zUN4niCWc?VxLO&?*wG7)hhwZ$*`Y3{YS#qL2iWB$vU>vzp z_bh7!IIP4gAy8Goc`i)A!*(HIYrHElD;zJRg?$U}bllKB{j zx@!TB_xjrLU35i;DIG>L2Wm_|R_D)!_-e>HH=OH!Befu!Y;v)ayIk3GA;XY6($As$ zq8{_ZXT3{3@S}hq7w{DT3YG8WsJSvA>t;g~F+K~ZNMIe}yhvVn;HRH!wX}5(x;bs< zZhtAh112!)+K}?)BTD6@;W+8F*2zZReQn+|vsX0z^+b6s_cR6^0QqCtoy;}0k`QaMQtj8 zO9oUe`{T)SRu=P)+w7Ting1}Y8XrXkTx(ghCsfy%2GQ~*M;+rH*e7e0SD*h;KhX=5 z*Fec%1*Owh80DwiTTfk1k^0V@7;(7LrFL!*^$@p|6*I4iXY`{N zzF-%j88r5P2J7npniyH)IOJ1?DyuW+0tJ-d$(+@{L}Co-Rd-@zHan3y}BzR>XH5ar8Rtm=VzI5%0r_YRsS#G0aN^KuCST{O8dz zl5Io1UdBOd6~mZ0%WE!dFN%*!9Q)qf*8JKDw7YYfpdok}mRnOy3@K5A{!}o|^mz%& zF?Tqhf4ZXwY~Wv0Pl5p^&SzEM0A67_!2=cK6eE7RS0v0X=pavr_->SV$u0l6w12$K6l( za}6~yZbJVP7jgsi4{!s%;A-~OY^oORJ!L0iixB0ggr{0!p2v^7Lqm>(+@4PwO22OC zdS+y-$$qhlJMQ=ih1=HaQm=zG33VqF{qg0Ci!S-qH{mEB=42jzS59ddn>vgOCRv3F z0vGjvqm|_)(k1M9z{p7;>gU{mgCkrVfFtq>=jB{~^iAKaTV+dRB$>$#T)KCNpuN{D z_9>M4Nn(Y44&-j`U1dfDk~12G%QrOJZw5sw5qn$Sg5u&J~=<& z5F)AerDy=xcEZ%4vl|*{KT-E%wSU2vaSS0wWp9U#Th9=l`*C`Jj?w`jN2^sQq}bjr z8daGe%_M4cc^(zjuDk(#@@0SWrOdsky%?4>T%0_z`VbJPBT(ERPvz*bww%P`MMv4l z4ydcfv(X!-!u7Tq>t!tR~XbZL){ z#}dvPUY5b1q2s8_9ca;Qh#ioTJJ2?D5kD|{!Oj%p0m!w7|6Q&f===0(X5gpwMApT< zEM2)pmO4e95Hv&Nb@yC_g?jQ&>edVfb}G&;zkhI+GXQ)KR`?$(l{#q*zeDZ7`o%2zj~2lNSg@A@rb`Yx;E zJ>-c4X?y-5{yIc5S0dAhYQQ>@m=A`B*$y-H0kNrD@;7@Af#fNjQrR08A|bDnqq7;- z60QMSBd8hE7+oOP5HO-E|s@BE&63Bu|{QOuR&36<6{2>nuoHg#?%Vy(gE@knr~*{JP=&E%Ia_d99s z@8Fgjt%vU&Jn-~so8`@X`LuwAySthpI@*J^q9o&$FVm$(q?OBv!CKaQ?Qk}<4rHV) z{x^Ji50J7?XS2>zzkWo;IG&|!&rlEUeAu-f37}@Q#SN72JKtCJVzt``(gTo!l*b@| z^V~WYptbQ)aWPmENb?x#sein|?LH-`i|%!*X}GI)v4%&-y^@Nb@N09uJe7P2eAMGV zH~0QZ`fKN!dCRRI*>->eaaz%1bw26wty8hK8+BKOqsdX7?oiAETW8 z6RO*Rn!POiK?n#ifp=hzB6KLf*wX3Ddv-+&XWnLsC(M_z(dmPsp@u3`-Q)BY4O{ zAx49KaMtO`<;=op=}i83)n(_JI+L{yHmUHh3a27Y9Qj;aoG#^ryfclmsdNVIuXRYlnn_gEV2j>AOZV*oh=WaPs7DU$v5i_dL#*wtsN_h409ucQJkFlULA%5(9Kq>M+ z;dwniuxK)7$^Cr;*hM{4Dl|f42OcoJp0~a3-Xpss6=J=D1-ubp3aE`pKiAPpjKE8c zFdsrGBh9qokt_T~4}GCxxkVhm*pwVJFIDs07%%(sW#xVDh1XC9c9%4(CtqQdGng>($jCp_MCymHH0-)XWA}4R!<9}gI#l%tQ?iUY8$<8A;+6N zQ>-b2IJp;fjS|&TIfBYp-w@q0b?&~S7xW? zm?_Z;Z{T2?AoMv9AP|{Th|yjkFPJc-t_)w23(-9|Jlzjt>VD`H zE;;QfnIxoXcHsvVx_hDZgH!f$$jg_*>p9&_c_orA1YGd*^;YQ5hD4X{K$gr9%Zh+b zqAwOQrKpZ&6!I^&c6Iz|D(A>^zmn9d#*woF1)=J_0pm4tO8a-+7J?tzJk?51&{vN7 zI~TZF_jn(|s00pfwFO5aj0p_Md-Vg4BDyWV0mYwd#!IPsQ}&0NIuO9OMwb|zk{Hsx z0w2FI2;IseJ*kU~1VSy0$wzHP#YiTWP9iI_&+Dv-FRyVXY8<+%)IeeiTsNZ*iq{N| zDMz2*+LLVx=Ffn!x72frZsxYltbW8MkBG}nol?5WSh|OJ|AepX&RuYi>tf?bi3fG< zB_Z8Bkw8RMp>l?C$%MwyjpcRs8KCO@eT=;~_!yp@J~CTVrJfB$H_~%~=*9-5XHA`0 zDiGahG~g>G->O`D8uR{ljm>@_ib>));p$!{%9(f?F5aPz5@w#60b-{T6vk1aOqJT0 zj(f)M|BBOzHN9};?iqtK;&7hO33Z5(!4CH9PNHI+BQ*@?;-bt5!ptYhGhdRBkZo+f z^wQewhH0g)eiqG-9uB42g7$Szn+h7tMkh#8mfdiYR=yty{Po%c8~Z1eubST4S^r1T zv%ps6|8UuJEE(CpY~;I9zjLb~aX}Q(Z-fn5J&l2OvBdP18(SS|=@CV}jIBM}b~}al*N?~d85S=meg6F2dhDOxsdV5X^)Z#H z0xjZ+j_j;qddjSL^q6dvwt#CH9CnxL>{U0HmaSb?Y3Go>Z%QAff>Y-r#wn>-+fBTL z76({wdi&r~`qt~L@kN^NYTu1d%B+6R%MIC{gjNOo7^APnoO^RkpZD&*Kd=9kYjE&C zrZjE2wyo0@h^uF)r0MTd`>57!P~UqL?BLn4`EPc%<2@lKPs^#bnw{TNIC0u=1&GE6 zYxLc~CQ6Rut|lbU+wJIV(tv25XE{uty+|hCdwAdsDgiVj(6?>yGv+!*W$#^PcOJuQQyw_r6c0G~vR%r#UK5?GuWMh-Dsu0_mpn_6}VGw-|cs z0a6v8rkzs;Vleuq@|6zNj>eyHGUKp7LJnhZeckzgarG9WLDSVBEPE`T+hiJQK&CZ% z&n%Z*dU!!SEjC0|iq9pa?YVu;HHj2CDKR5V`j0|@x|%$WGyVALk6Gi7S>q3U>JNPD z|AH~_$GGvwxberh@yEFF$GE{a1Z0wFlq0_a?$b-tFwPdy_C|8qO;PnuXJ|#V)PuLL zr)LDDUrol<8{k;juHT9j)u}w&|^joEP*{(7!0npRgCL=shm7;>>WY)#K4myiuL;oSGE~v z5L|mjpy_lA)EFJ8eDz{CCfxAFlZ%&Z zLo`-(l1Z4f*JHGSwbA9bO7HGXT36O@S5@JN8&J2zq;r^l8<*Mx!|q zMi_eY_zWg|wXEDv(Y$$nOvk`nfMs9z*wsxc8fTZ0F=}@6q2~AwWRuWttBn+;BFhS! z`&HF7QtaA$ul@CY?wTf>>wyn^&)#RovRwQ(0;*P+@%bi&s;q7!=74+o;^@+&J_p>& zBt_C@uaKn!H=bFKWMYSy4n-{mO;S%@O;3Gu2aBxePpl>c6k%!}0u_u8>kCL+I}m6b zJx3j8Nh8b}=zTLwZHYw*Lc~uX0`urMS0$4^GZ0#S-9 zt~hLM`t5;7^~OQvA{{W{SA*d}_I&!9N}s|z3%l04hYs}l>Ldijtl(9UL^0jH9DiXg zkQiOIEr+9S@ZF^`{c`t9-_-h#yS%tn^6~f+@7Jfo!rHv6!z@3V**Plx9d;5)%hYdg zoY{k1$59VuE?u!tr(GPE$@gdt&)L6pFp1}c=*2=&AVQ2%!UWQskF6rWzu1nf)dT-z zfl)5;uoWJlvnkw|#Uj$;@!+hg`O*4-%kAe_1Yu-waO5`qZ?IYOyT-tOkh6pF2d2|+ z)0}QpTcmHukltCNd>Z#e%S%T^?VXrC(o2)+q@U%5ZPnH$6d3CyiEevEmU&*8ZbX>j zU>N=_0D2zsnKig^!Iy>t?bvN55;|;u3bT$`GGq{PduRkV#T8&0V~}SY;4pGcm~Uwm z6Reg+vfK4NGUN>rdbcCxg`A+hb6mNHwuWVAG0jnr4W?3Jeqc80z+sSeU5j@yGz?wV zb!F}?Yec*T(*i_ei%HcDdHR9)mN+4Sx>@JFC)?i%N_~Nzy>j5C=v``Nf3}9X2lr%s z==Xc?-?Cr!OeONYYt))$UwJ!=iBPZWh_d^{(!kMCkYZCO7qV85(2U=5s?C&C+eq4( zM}K|XHI+Ka?lH&WNAOY8J4}!!vQ4@?RE;=)!-pC?Ha~*xe}*^TJaVW@ue9l!gmava zLQcHCmAv;7h7JZNl^K3CYIhI??xO1@eGmHhr@Dm}Q(i|mq-5VVm}}WKWH-_ES~?tj_4)e~!_rmo46BTKYPO(gX8kB#9E=@O#zJ2C0ddXa*Sz0* zsB0#Dt{TVnCL6xwl`5b8ki4%)ODlhfw8dP{$5b^|*MZp=J9V0-MoKbhYW!P;X#?JxH%_w^lE~ z!>bj=X3dhhm%5Lsm~EF#@lg(^QwXzD=(h;BKE&Tq@uv0ns3)?W9;F5ERZ9o{rCI*T z^2M{fpeM)0^Hm$?1o9cIzvg%B(`q!YC@c}_a@H#ultNl4#h?i-fH>Po5BHxT#EfzF zR!UM4!>~};+!sm9wo;GSiKJSF?^qp-E(2c4U}&*M>(p~+#Q7YVZXf6skbIBKFFx)T z?n!XJ@v&y-c%$UYO4==P7dXPcC16FSR=%@3)EJDiqR?TKl=awi>+!j&#dTX!=*Sep zPM>d*o=&r)XHOF&`B@i-bpe>55hZ@iKuTzC{%PRhtc#tj(z2GDk`GAD*L}xITmlp) z(-w~E`-6|^9;DCC_LliSoQ55ym$au3n+5Ig|Kv{rvR@AdweQ?Fizzo0loZ53_bNbt zHFD9s_L7inaPlyWM>d)zJG!(1pH1e z^P-^UfUou*Lh%VwKIdtxn|aC7hmIYy5jmxYsUlxyDlfseNN97Bb}x9@%z^ ze-|@EF?i}vjLuQ0{EE=X^#Gs{YO))vs;lb##`X0DOxH=A-KZV}b`mS`?HfN4t{Z!pxX* z^aHcRM1c{0JUhiSw!y{MqkbV)uWwCF@QhgLhg?2!Tgj42RvpVWY`{0^U0nyAbM_TW z9`n?$33(nYqKdytq4q0*u(z`UR~Sk}jQ~=Xux~=J)r5Ejsja*0PHz_|9L4>;Veq`v z5cC0<(=o%#b5_36{@ren+r7##iLPfYvPpVFzKZDGzgMJyK-_lG06U07_CmX3O*>@-v!W zTbi=T;#swxLA9D(YDSt9_ppI8-Jku|6+iGXX>kVC-yf_s^;l30RywE(WS58(V1`BF zHK~Wn2~w0rU-vrBp^4y>PnRw>_r2v&bxP+*Zlvm?Cj_i&Tl#FLlqq7h6h_+!QhcP^ z!S4Dnb3$DdJ3NM+qQ#jN>{5&rPUN z<2vDJ`|aW9BZ!?igH0Z`-CEfg`|k9tLX<-o0C)t(W6Dfq6H$QaMLpoI%R#|JYdaK| zK6+Hy=hunlcoJ4}nrsEl9XVZ0IEfdcC(g*ml&dQ9(NVUP-dZjXU0xkFt$p6`QG(&4@E9ZEBCDJ12Tuka6uaPYMLG1Y z>Oj>og+;HW2cp4sr2WluHus z+*t3Yx5B5tbDgADQ3N``Y};CP;-YY6V6W9ch$2D{Hv;Uu%88r*gPr%ehiAt*S8xU7VIBHr2WuYV3^to66Wr-1GRgRCU zqiLqwE?z<^!iQNr04g=(Ut6QDd{ZvexSsy5UXI{u8f8V|%cY3q9HhQPYQ7?aPSnKu zsJUu!P$5-4APL3ht%F+_U<7FQk0-p0Ds1x#tDL?*>pDSlr z?!Cmzxq&#X+tW#$h)~yQTJ$5K6_!|iqKQhyKJY5%=|p!aw!jDTl}J7W7ZuY1eFW9| z#NwhF#9=w$%u%SHj(q4%x0Hf;L(3?zkIGHl+>(-umscdP_zIw^MiNVP<@KlS5)aUu z#f5vD&Qi8A)w-4{Rm`V3{>pKezUF!8$EAMk^j-o>$-yHaz>KLtPn4d2`%tC?vY+m; z)$QvlXqh}G(A}+<|5EVqJ$^y$m@D9)eGV+4pC^bvH@|Jh$l2Ud0VouAj_4GfV|!Om z5M*_uPa#F%CrE9MXXw7OjqEJ~Pmc?==e}_m`({d5gJ#ci*Q|Z>3bD}UW~eZ4(K8j~P|Aec_=EB0evVg7+)d6eT{K2*Eih(A5o{2ha^sH%6sZJdbS(F|6wXwNw^ z41l8xcCJ(T6N}xh3}?xv1{N-_ zQGGwh-z(bOm=1sxQv$&@RO+eiKaJw2U)i~r*i#v1+b>&@ybAA(yHyN6^hC?|+2hCX zf;AkgnlOiXBjUpM!|^wsI@{=fHWd%#p*IRhsi~xyfxxd<@_}vs{5WoVyl7LJZx~@i z=a|Jj3C=D{OlS}Q@W4~xR@a&^$9^T%Q7=h$cR!mX<8#{1&W|v3BF&zjMVb8+z>=qO zwV*|R=$>vk@?cm^bpP6LbLcNNU(fZ^@wk8%-?7-mo&ngaU5C}dnRDf_zge)Aam9hF zIuZ%4**ANM9r&YE*Jo?kb8)mJNak%Cr(c+$Gf(l_0SOV;gVWR0>jS7|W0vhtj?e`4 z7=>cG1?5sZNpw3T9`uQIf@%%Sk^9WW)oMiN|6FFW?FC6n*Ns#o_fEsZ(j zK4qsF&dN6{b~l7=IJ*j#qJ$6rwIY4z9}p1x{S!-mf($j)wk8*t{HC<5LFDo7X^zC$%Yjxg+-G%C6EeINhicx^43)HNrLB#GyHbTD zQQSJj_Oc=y9vO&rm?4Luz5>Yv{A>swtFmElY2OBX8Hq?9GM-bCp>yT_@Z0b z4?0^fOy*D22$&HMCSO-ol1ecAR&w*x_mc(^VZHjHg47V!u}y{{B9MMr;|ao&YG*&B zt>}NGrnZKExMtI__3$whZ(d{Vu9gTMt;4MI!<#8{=8>&0`|(p7Rw$V)oZa|!bdqt- zDY{E{2yAWB0WnyH%o<$@wImZ0QKxiyP)+PCF?h-hGM~(KbZiNH(*ON-sI^|QF{FgU zMmEjxE#t;jZ58d9C#lZI``!V(wIRgs^34!jpU{+hI(9UBpbh2E6agf%&7dfa98vn) z8T3g=3M3%Oeg6J%*JA3s&4UzdbyG|P$7ZU8h#cEU7g&toP83HDkoaY)e2Vt8zu zh39_OBkt;Bk>_6IJv8SvH##a*{LJWpRA#Y1pZ0Bg%R%Wo*1y;|rG=G#Hae!cms}|6 zv5Kp$_KnxyOtn_Pk11-@xlinQQ*lgQ;~8)ZVJw!M9)U3SX86L#9fqLW4#GAR8QkF% z)Xa8-;pF|6haypZ&C!ttv9Qhv=`ax{1Q-en^xSeL@Vt2j0obq-6g+?~TuzIgaf7OH z_*Tvndm3xQr({L`Mi(9^`Zsjp0$vLE^{=c!07b8_@f0f_JGR{sSzg-n{L`4N;>y<- zmZ|If+&-fRpWV)T5hT+9YC?-^+ff)Z265V4xl1G`3L!B*W26+{eH;yANX07>)&-9z ztpqqRY8*yeoW1QS1+z!>80{*ikPTwSq+kD@Bc`IdSk7jA)mM!G`MEj@ohRPfd%@lc z9$N;`HKxteb<|Aw_DZx8!ces-|;aSKxE~a*g&_%H^)UcH?f_|7OvkdW3a| zH-%tq13=%@`ULemEoteaO&ErM4QucGdO_Vkh23~tt$n`LqqH-gSs~}f;hv= zv!ye4a~_P-?!OcM8wYe>ETX2+BAxqI{YY9TGhfaj2=83yhWnxK;o;}emk?uu-88d8 zrV$(*Cr$g5M~!I_^igUD>zE7m7uzQ=|29#;1I;;ZKvmV1|BAIvGZDX0nIMPk?L3vJ zGzyP(jw-gl08(EW>HS-n9&=@<2}74DTn!;}9rv&nQm==Ihd;y)DkgMiDXY`w1>oRP zpCGR#(Z}8O^4FTgz<)oRb{R$pI9*5MNyFdIrojefe>QAwjWNW|9rM?L!F;1^q4CY5v;fdIBB>)~P-D7uLyp^42bU3FK-O2+w%p@fxW)tX;y4bB%0Dn=96 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

pQsxLprld0nLkpjNW(v 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 M1UiglEdT!|0G^5JB>(^b diff --git a/content/v1/deployment/csmoperator/install_pods.jpg b/content/v1/deployment/csmoperator/install_pods.jpg deleted file mode 100644 index 174dd64d9badbdfcfee1754e63237b71eeba7dc2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 116545 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