diff --git a/docs/en/solutions/How_to_Install_Huawei_CSI_for_OceanStor_Dorado_on_ACP.md b/docs/en/solutions/How_to_Install_Huawei_CSI_for_OceanStor_Dorado_on_ACP.md index e561a32ae..a3f0e7c35 100644 --- a/docs/en/solutions/How_to_Install_Huawei_CSI_for_OceanStor_Dorado_on_ACP.md +++ b/docs/en/solutions/How_to_Install_Huawei_CSI_for_OceanStor_Dorado_on_ACP.md @@ -8,11 +8,11 @@ ProductsVersion: id: KB260600012 --- -# How to Install and Configure Huawei CSI for OceanStor Dorado on ACP +# How to Install and Configure OceanStor CSI driver For Dorado on ACP ## Overview -This guide walks you through manually (offline) installing the Huawei CSI driver on an ACP cluster and integrating it with a Huawei OceanStor Dorado storage array. It covers preparing the nodes, deploying the CSI components, configuring a storage backend, creating a StorageClass, and validating the integration with a test PVC. Both the iSCSI and NFS protocols are validated. +This guide walks you through installing OceanStor CSI driver For Dorado as an ACP cluster plugin and integrating it with an OceanStor Dorado storage array. It covers preparing the nodes, deploying the CSI components, configuring a storage backend, creating a StorageClass, and validating the integration with a test PVC. Both the iSCSI and NFS protocols are validated. ## Environment @@ -21,19 +21,20 @@ This guide walks you through manually (offline) installing the Huawei CSI driver | Container Platform | ACP 4.x (validated on 4.2) | | Node Operating System | Micro OS 5.5 | | Storage Device | OceanStor Dorado 6.1.6 | -| Huawei CSI | v4.11.0 | -| Installation Method | Manual | +| OceanStor CSI driver For Dorado | v4.11.0 | +| Installation Method | Cluster plugin | | Validated Protocols | iSCSI, NFS | -> **Note**: The procedure applies to all ACP 4.x versions. The Huawei CSI and OceanStor Dorado versions, however, are coupled — confirm that the CSI version you install is on the compatibility list for your Dorado firmware version before proceeding. The versions in the table above are the ones validated for this guide. +> **Note**: The procedure applies to all ACP 4.x versions. The OceanStor CSI driver For Dorado and OceanStor Dorado versions, however, are coupled — confirm that the CSI version you install is on the compatibility list for your Dorado firmware version before proceeding. The versions in the table above are the ones validated for this guide. ## Prerequisites - An ACP 4.x cluster, with `kubectl` access to it. - A reachable OceanStor Dorado array, and the management address, storage pool names, and data-plane portal addresses provided by the storage administrator. - Layer-3 connectivity between every cluster node (master and worker) and the storage management plane and data plane. Confirm this during environment planning. -- The Huawei CSI v4.11.0 package obtained from the official Huawei channel, containing the `manual/` (installation YAML), `image/` (offline images), and `bin/` (the `oceanctl` tool) directories. -- A node with a container runtime (for example Docker) that can load the offline images and push them to the cluster image registry. +- The OceanStor CSI driver For Dorado plugin package downloaded from Alauda Cloud Marketplace. +- The `oceanctl` tool from the eSDK package that matches the CSI version. +- The `violet` CLI installed, and a platform account that can upload plugin packages to the target business cluster. The following placeholders are used throughout this guide. Replace them with the values for your environment: @@ -42,7 +43,6 @@ The following placeholders are used throughout this guide. Replace them with the | `` | Dorado management plane address | | `` | iSCSI data-plane portal address | | `` | NFS data-plane portal address | -| `` | Cluster image registry address | | `` | OceanStor storage pool name | ## Resolution @@ -123,90 +123,32 @@ defaults { } ``` -### 2. Prepare the installation package and images +### 2. Prepare the installation package -#### 2.1 Upload images to the registry +#### 2.1 Download the plugin package from Alauda Cloud -On the node with a container runtime, load the following image packages and push them to the cluster image registry one by one: +Log in to Alauda Cloud with a tenant account, search for **OceanStor CSI driver For Dorado** in Marketplace, and download the plugin package. -```shell -# Load images (replace with the node architecture, e.g. amd64 or arm64) -docker load -i huawei-csi-v4.11.0-.tar -docker load -i storage-backend-controller-v4.11.0-.tar -docker load -i storage-backend-sidecar-v4.11.0-.tar -docker load -i huawei-csi-extender-v4.11.0-.tar - -# Tag and push (repeat for each image) -docker tag huawei-csi:4.11.0 /huawei-csi:4.11.0 -docker push /huawei-csi:4.11.0 -``` +#### 2.2 Upload the plugin package -#### 2.2 Replace the image addresses in the YAML files - -By default, the YAML files in the CSI package reference the official image addresses. Replace them with your cluster image registry address. Run the following in the `manual/esdk/deploy/` directory: +Use `violet push` to upload the plugin package to the target cluster: ```shell -# First inspect the current image references to identify the default registry prefix -grep 'image:' *.yaml - -# Replace that default prefix with your cluster registry address. -# Set to the prefix shown by the grep above (the part before /huawei-csi). -# A '#' delimiter is used because registry addresses contain '/'. -sed -i 's###g' *.yaml - -# Confirm the replacement result -grep 'image:' *.yaml +violet push \ + --platform-address \ + --clusters \ + --platform-username \ + --platform-password \ + .tgz ``` -> **Note**: If the image tag suffix (commit hash) does not match the version you actually pushed, replace it with `sed` as well: -> -> ```shell -> sed -i 's///g' *.yaml -> ``` - ### 3. Deploy the CSI components -Enter the `manual/esdk/` directory and run the following in order: - -#### 3.1 Create the namespace - -```shell -kubectl create ns huawei-csi -``` - -#### 3.2 Deploy the Backend CRD - -```shell -kubectl apply -f ./crds/backend/ -``` - -#### 3.3 Deploy the Snapshot CRD (optional, Kubernetes v1.20+) +#### 3.1 Install the cluster plugin -`--validate=false` skips client-side schema validation. It is required here because the bundled snapshot CRD manifests may target a different snapshot API version than the one on the cluster. - -```shell -kubectl apply -f ./crds/snapshot-crds/ --validate=false -``` - -#### 3.4 Deploy the CSIDriver - -```shell -kubectl apply -f ./deploy/csidriver.yaml -``` - -#### 3.5 Deploy the Controller - -```shell -kubectl apply -f ./deploy/huawei-csi-controller.yaml -``` - -#### 3.6 Deploy the Node - -```shell -kubectl apply -f ./deploy/huawei-csi-node.yaml -``` +Install the **OceanStor CSI driver For Dorado** cluster plugin to the target cluster from the platform. -#### 3.7 Verify the deployment status +#### 3.2 Verify the deployment status ```shell kubectl get pod -n huawei-csi @@ -216,7 +158,7 @@ The deployment is successful when all Pods are in the `Running` state. ### 4. Configure the storage backend -Use the `oceanctl` tool (located in the `bin/` directory of the CSI package) to create the backend. +Use the `oceanctl` tool from the eSDK package to create the backend. #### 4.1 Backend authentication @@ -251,7 +193,7 @@ maxClientThreads: "30" Create the backend: ```shell -./bin/oceanctl create backend -f backend-blk.yaml -i yaml --log-dir /tmp/ +oceanctl create backend -f backend-blk.yaml -i yaml --log-dir /tmp/ ``` #### 4.3 Create an NFS backend @@ -276,13 +218,13 @@ maxClientThreads: "30" Create the backend: ```shell -./bin/oceanctl create backend -f backend-nfs.yaml -i yaml --log-dir /tmp/ +oceanctl create backend -f backend-nfs.yaml -i yaml --log-dir /tmp/ ``` #### 4.4 Verify the backend status ```shell -./bin/oceanctl get backend -n huawei-csi +oceanctl get backend -n huawei-csi ``` ### 5. Configure the StorageClass diff --git a/docs/zh/solutions/How_to_Install_Huawei_CSI_for_OceanStor_Dorado_on_ACP.md b/docs/zh/solutions/How_to_Install_Huawei_CSI_for_OceanStor_Dorado_on_ACP.md index 5f37d0707..594ceefdf 100644 --- a/docs/zh/solutions/How_to_Install_Huawei_CSI_for_OceanStor_Dorado_on_ACP.md +++ b/docs/zh/solutions/How_to_Install_Huawei_CSI_for_OceanStor_Dorado_on_ACP.md @@ -9,11 +9,11 @@ id: KB260600012 sourceSHA: 51bfed8c0d07f77b6ef4d61e860e0b71ccd5180e707ec2625337de9970deccb9 --- -# 如何在 ACP 上安装和配置华为 CSI 以支持 OceanStor Dorado +# 如何在 ACP 上安装和配置 OceanStor CSI driver For Dorado ## 概述 -本指南将引导您手动(离线)在 ACP 集群上安装华为 CSI 驱动程序,并将其与华为 OceanStor Dorado 存储阵列集成。内容包括准备节点、部署 CSI 组件、配置存储后端、创建 StorageClass 以及通过测试 PVC 验证集成。验证了 iSCSI 和 NFS 协议。 +本指南将引导您通过 ACP 集群插件安装 OceanStor CSI driver For Dorado,并将其与 OceanStor Dorado 存储阵列集成。内容包括准备节点、部署 CSI 组件、配置存储后端、创建 StorageClass 以及通过测试 PVC 验证集成。验证了 iSCSI 和 NFS 协议。 ## 环境 @@ -22,19 +22,20 @@ sourceSHA: 51bfed8c0d07f77b6ef4d61e860e0b71ccd5180e707ec2625337de9970deccb9 | 容器平台 | ACP 4.x(在 4.2 上验证) | | 节点操作系统 | Micro OS 5.5 | | 存储设备 | OceanStor Dorado 6.1.6 | -| 华为 CSI | v4.11.0 | -| 安装方式 | 手动 | +| OceanStor CSI driver For Dorado | v4.11.0 | +| 安装方式 | 集群插件 | | 验证的协议 | iSCSI, NFS | -> **注意**:该操作步骤适用于所有 ACP 4.x 版本。然而,华为 CSI 和 OceanStor Dorado 版本是耦合的——在继续之前,请确认您安装的 CSI 版本在您的 Dorado 固件版本的兼容性列表中。上表中的版本是本指南验证过的版本。 +> **注意**:该操作步骤适用于所有 ACP 4.x 版本。然而,OceanStor CSI driver For Dorado 和 OceanStor Dorado 版本是耦合的——在继续之前,请确认您安装的 CSI 版本在您的 Dorado 固件版本的兼容性列表中。上表中的版本是本指南验证过的版本。 ## 先决条件 - 一个 ACP 4.x 集群,并具有 `kubectl` 访问权限。 - 一个可访问的 OceanStor Dorado 阵列,以及存储管理员提供的管理地址、存储池名称和数据平面门户地址。 - 每个集群节点(主节点和工作节点)与存储管理平面和数据平面之间的三层连接。请在环境规划时确认这一点。 -- 从华为官方渠道获取的华为 CSI v4.11.0 包,其中包含 `manual/`(安装 YAML)、`image/`(离线镜像)和 `bin/`(`oceanctl` 工具)目录。 -- 一个具有容器运行时的节点(例如 Docker),可以加载离线镜像并将其推送到集群镜像注册表。 +- 从 Alauda Cloud Marketplace 下载的 OceanStor CSI driver For Dorado 插件包。 +- 从 eSDK 包获取与 CSI 版本匹配的 `oceanctl` 工具。 +- 已安装 `violet` CLI,并拥有可向目标业务集群上传插件包的平台账户。 本指南中使用了以下占位符。请将其替换为您环境中的值: @@ -43,7 +44,6 @@ sourceSHA: 51bfed8c0d07f77b6ef4d61e860e0b71ccd5180e707ec2625337de9970deccb9 | `` | Dorado 管理平面地址 | | `` | iSCSI 数据平面门户地址 | | `` | NFS 数据平面门户地址 | -| `` | 集群镜像注册表地址 | | `` | OceanStor 存储池名称 | ## 解决方案 @@ -124,90 +124,32 @@ defaults { } ``` -### 2. 准备安装包和镜像 +### 2. 准备安装包 -#### 2.1 将镜像上传到注册表 +#### 2.1 从 Alauda Cloud 下载插件包 -在具有容器运行时的节点上,逐个加载以下镜像包并将其推送到集群镜像注册表: +使用租户账户登录 Alauda Cloud,在 Marketplace 中搜索并下载 **OceanStor CSI driver For Dorado** 插件包。 -```shell -# 加载镜像(将 替换为节点架构,例如 amd64 或 arm64) -docker load -i huawei-csi-v4.11.0-.tar -docker load -i storage-backend-controller-v4.11.0-.tar -docker load -i storage-backend-sidecar-v4.11.0-.tar -docker load -i huawei-csi-extender-v4.11.0-.tar - -# 标记并推送(对每个镜像重复) -docker tag huawei-csi:4.11.0 /huawei-csi:4.11.0 -docker push /huawei-csi:4.11.0 -``` +#### 2.2 上传插件包 -#### 2.2 替换 YAML 文件中的镜像地址 - -默认情况下,CSI 包中的 YAML 文件引用官方镜像地址。将其替换为您的集群镜像注册表地址。在 `manual/esdk/deploy/` 目录中运行以下命令: +使用 `violet push` 将插件包上传到目标集群: ```shell -# 首先检查当前的镜像引用,以识别默认注册表前缀 -grep 'image:' *.yaml - -# 用您的集群注册表地址替换该默认前缀。 -# 将 设置为 grep 上述命令显示的前缀(/huawei-csi 之前的部分)。 -# 使用 '#' 分隔符,因为注册表地址包含 '/'。 -sed -i 's###g' *.yaml - -# 确认替换结果 -grep 'image:' *.yaml +violet push \ + --platform-address \ + --clusters \ + --platform-username \ + --platform-password \ + .tgz ``` -> **注意**:如果镜像标签后缀(提交哈希)与您实际推送的版本不匹配,也请使用 `sed` 替换它: -> -> ```shell -> sed -i 's///g' *.yaml -> ``` - ### 3. 部署 CSI 组件 -进入 `manual/esdk/` 目录并按顺序运行以下命令: - -#### 3.1 创建命名空间 - -```shell -kubectl create ns huawei-csi -``` - -#### 3.2 部署后端 CRD - -```shell -kubectl apply -f ./crds/backend/ -``` - -#### 3.3 部署快照 CRD(可选,Kubernetes v1.20+) +#### 3.1 安装集群插件 -`--validate=false` 跳过客户端的模式验证。这里需要这样做,因为捆绑的快照 CRD 清单可能针对与集群上的快照 API 版本不同的版本。 - -```shell -kubectl apply -f ./crds/snapshot-crds/ --validate=false -``` - -#### 3.4 部署 CSIDriver - -```shell -kubectl apply -f ./deploy/csidriver.yaml -``` - -#### 3.5 部署控制器 - -```shell -kubectl apply -f ./deploy/huawei-csi-controller.yaml -``` - -#### 3.6 部署节点 - -```shell -kubectl apply -f ./deploy/huawei-csi-node.yaml -``` +在平台中将 **OceanStor CSI driver For Dorado** 集群插件安装到目标集群。 -#### 3.7 验证部署状态 +#### 3.2 验证部署状态 ```shell kubectl get pod -n huawei-csi @@ -217,7 +159,7 @@ kubectl get pod -n huawei-csi ### 4. 配置存储后端 -使用 `oceanctl` 工具(位于 CSI 包的 `bin/` 目录中)创建后端。 +使用从 eSDK 包获取的 `oceanctl` 工具创建后端。 #### 4.1 后端身份验证 @@ -252,7 +194,7 @@ maxClientThreads: "30" 创建后端: ```shell -./bin/oceanctl create backend -f backend-blk.yaml -i yaml --log-dir /tmp/ +oceanctl create backend -f backend-blk.yaml -i yaml --log-dir /tmp/ ``` #### 4.3 创建 NFS 后端 @@ -277,13 +219,13 @@ maxClientThreads: "30" 创建后端: ```shell -./bin/oceanctl create backend -f backend-nfs.yaml -i yaml --log-dir /tmp/ +oceanctl create backend -f backend-nfs.yaml -i yaml --log-dir /tmp/ ``` #### 4.4 验证后端状态 ```shell -./bin/oceanctl get backend -n huawei-csi +oceanctl get backend -n huawei-csi ``` ### 5. 配置 StorageClass