1 - OceanStor V5系列和OceanStor Dorado V3系列ALUA特性配置策略样例

例1.配置文件如下:

parameters:
  ALUA:
    "*":
      MULTIPATHTYPE: 1
      FAILOVERMODE: 3
      SPECIALMODETYPE: 0
      PATHTYPE: 0
    node1:
      MULTIPATHTYPE: 1
      FAILOVERMODE: 3
      SPECIALMODETYPE: 0
      PATHTYPE: 1

对于主机名为“node1”,上述ALUA配置段都能用于配置启动器。根据配置华为企业存储后端的ALUA参数中的配置策略规则,优先级顺序为第2条配置段(HostName为"node1")高于第1条配置段(HostName为"*")。

例2.配置文件如下:

parameters:
  ALUA:
    node[0-9]:
      MULTIPATHTYPE: 1
      FAILOVERMODE: 3
      SPECIALMODETYPE: 0
      PATHTYPE: 0
    node[5-7]:
      MULTIPATHTYPE: 1
      FAILOVERMODE: 3
      SPECIALMODETYPE: 0
      PATHTYPE: 1

对于主机名为“node6”的主机,上述ALUA配置段都能用于配置启动器。根据配置华为企业存储后端的ALUA参数中的配置策略规则,选择第一条ALUA配置段来配置启动器。

例3.配置文件如下:

parameters:
  ALUA:
   node$:
      MULTIPATHTYPE: 1
      FAILOVERMODE: 3
      SPECIALMODETYPE: 0
      PATHTYPE: 0
   node10$:
      MULTIPATHTYPE: 1
      FAILOVERMODE: 3
      SPECIALMODETYPE: 0
      PATHTYPE: 1

根据配置华为企业存储后端的ALUA参数中的配置策略规则,对于主机名为“node1”的主机,选择第一条ALUA配置段来配置启动器;对于主机名为“node10”的主机,选择第二条ALUA配置段来配置启动器。^表示匹配字符串的开头,$表示匹配字符串的结尾。

2 - OceanStor Dorado ALUA特性配置策略样例

例1.配置文件如下:

parameters:
  ALUA:
    "*":
     accessMode: 1
     hyperMetroPathOptimized: 1
   node1:
      accessMode: 1
      hyperMetroPathOptimized: 0

对于主机名为“node1”,上述ALUA配置段都能用于配置启动器。根据配置华为企业存储后端的ALUA参数中的配置策略规则,优先级顺序为第2条配置段(HostName为"node1")高于第1条配置段(HostName为"*")。

例2.配置文件如下:

parameters:
  ALUA:
   node[0-9]:
     accessMode: 1
     hyperMetroPathOptimized: 1
   node[5-7]:
     accessMode: 1
     hyperMetroPathOptimized: 0

对于主机名为“node6”的主机,上述ALUA配置段都能用于配置启动器。根据配置华为企业存储后端的ALUA参数中的配置策略规则,选择第一条ALUA配置段来配置启动器。

例3.配置文件如下:

parameters:
  node1$:
    node[0-9]:
    accessMode: 1
    hyperMetroPathOptimized: 1
  node10$:
    accessMode: 1
    hyperMetroPathOptimized: 0

根据配置华为企业存储后端的ALUA参数中的配置策略规则,对于主机名为“node1”的主机,选择第一条ALUA配置段来配置启动器;对于主机名为“node10”的主机,选择第二条ALUA配置段来配置启动器。^表示匹配字符串的开头,$表示匹配字符串的结尾。

3 - 分布式存储ALUA特性配置策略样例

例1.配置文件如下:

parameters:
  ALUA:
    "*":
      switchoverMode: Enable_alua
      pathType: optimal_path
    node1:
      switchoverMode: Enable_alua
      pathType: non_optimal_path

对于主机名为“node1”,上述ALUA配置段都能用于配置启动器。根据配置分布式存储后端的ALUA参数中的配置策略规则,优先级顺序为第2条配置段(HostName为"node1")高于第1条配置段(HostName为"*")。

例2.配置文件如下:

parameters:
  ALUA:
    node[0-9]:
      switchoverMode: Enable_alua
      pathType: optimal_path
    node[5-7]:
      switchoverMode: Enable_alua
      pathType: non_optimal_path

对于主机名为“node6”的主机,上述ALUA配置段都能用于配置启动器。根据配置分布式存储后端的ALUA参数中的配置策略规则,选择第一条ALUA配置段来配置启动器。

例3.配置文件如下:

parameters:
  ALUA:
    node1$:
      switchoverMode: Enable_alua
      pathType: optimal_path
    node10$:
      switchoverMode: Enable_alua
      pathType: non_optimal_path

根据配置分布式存储后端的ALUA参数中的配置策略规则,对于主机名为“node1”的主机,选择第一条ALUA配置段来配置启动器;对于主机名为“node10”的主机,选择第二条ALUA配置段来配置启动器。^表示匹配字符串的开头,$表示匹配字符串的结尾。

4 - 通信矩阵

源设备

源IP

源端口

目的设备

目的IP

目的端口 (监听)

协议

端口说明

监听端口是否可更改

认证方式

加密方式

所属平面

特殊场景

CSI controller所在主机

源设备IP

1024~65536

存储设备

存储阵列管理IP

8088

TCP

用于卷创建/管理/删除等一系列动作

用户名/密码

TLS 1.3/TLS 1.2

OM

CSI controller所在主机

源设备IP

1024~65536

CSI controller所在主机

目的设备IP

9808

TCP

用于k8s对CSI controller的健康检查

证书认证

TLS 1.3/TLS 1.2

运维面

CSI node所在主机

源设备IP

1024~65536

CSI node所在主机

目的设备IP

9800

TCP

用于k8s对CSI node的健康检查

证书认证

TLS 1.3/TLS 1.2

运维面

k8s master节点

源设备IP

1024~65536

CSI controller所在主机

目的设备IP

4433

TCP

用于调用webhook校验

证书认证

TLS 1.3/TLS 1.2

运维面

5 - 配置自定义权限

自定义角色配置

针对不同的存储资源,请参考以下配置:

可参考存储文档:《OceanStor Dorado 6000, Dorado 18000系列 产品文档》配置自定义角色权限。

表 1 NAS相关资源最小权限说明

权限对象

父级对象

读写权限

功能说明

workload_type

file_storage_service

只读

查询应用类型

file_system

file_storage_service

读写

管理文件系统

fs_snapshot

file_storage_service

读写

管理文件系统快照

quota

file_storage_service

读写

管理文件系统配额

nfs_service

file_storage_service

只读

查询NFS服务

share

file_storage_service

读写

管理NFS共享

dtree

file_storage_service

读写

管理dtree

hyper_metro_pair

hyper_metro

读写

创建文件系统双活Pair

hyper_metro_domain

hyper_metro

只读

查询文件系统双活域信息

remote_device

local_data_protection

只读

查询远端设备信息

storage_pool

pool

只读

查询存储池信息

smart_qos

resource_performance_tuning

读写

管理SmartQoS策略

system

system

只读

查询存储设备信息(仅所属组为系统组时需要配置)

vstore

vstore

只读

查询租户信息

port

network

只读

查询逻辑端口信息

表 2 SAN相关资源最小权限说明

权限对象

父级对象

读写权限

功能说明

remote_device

local_data_protection

只读

查询远端设备信息

hyper_clone

local_data_protection

读写

管理Clone Pair

lun_snapshot

local_data_protection

读写

管理LUN快照

workload_type

lun

只读

查询应用类型

lun

lun

读写

管理LUN

host

mapping_view

读写

管理主机

host_group

mapping_view

读写

管理主机组

initiator

mapping_view

读写

管理启动器

lun_group

mapping_view

读写

管理LUN组

mapping_view

mapping_view

读写

管理映射视图

target

mapping_view

只读

查询iSCSI启动器

port

network

只读

查询逻辑端口

storage_pool

pool

只读

查询存储池信息

smart_qos

resource_performance_tuning

读写

管理SmartQoS策略

system

system

只读

查询存储设备信息(仅所属组为系统组时需要配置)

vstore

vstore

只读

查询租户信息

6 - 华为CSI资源管理

本章节列举了华为CSI插件中每个容器所使用的资源请求和限制。其中单位说明请参考Kubernetes 中的资源单位

表 1 容器资源请求和限制

Pod 名称

容器名称

CPU 请求

CPU 限制

Memory 请求

Memory 限制

huawei-csi-controller

huawei-csi-driver

50m

500m

128Mi

1Gi

storage-backend-sidecar

50m

300m

128Mi

512Mi

storage-backend-controller

50m

300m

128Mi

512Mi

huawei-csi-extender

50m

300m

128Mi

512Mi

csi-attacher

50m

300m

128Mi

512Mi

csi-provisioner

50m

300m

128Mi

512Mi

csi-resize

50m

300m

128Mi

512Mi

csi-snapshotter

50m

300m

128Mi

512Mi

snapshot-controller

50m

300m

128Mi

512Mi

liveness-probe

10m

100m

128Mi

128Mi

huawei-csi-node

huawei-csi-driver

50m

500m

128Mi

1Gi

csi-node-driver-registrar

50m

300m

128Mi

128Mi

liveness-probe

10m

100m

128Mi

128Mi

修改资源请求和限制

如果需要修改容器的资源请求和限制,以Helm安装华为CSI为例,可参考以下步骤

  1. 使用Helm安装时进入/helm/esdk/templates 目录。手动部署时需要修改的文件在/manual/esdk/deploy目录,其中组件包路径请参考表 软件包组件描述

  2. 修改部署模板文件。

    • Pod名称为huawei-csi-controller时,修改huawei-csi-controller.yaml文件。
    • Pod名称为huawei-csi-node时,修改huawei-csi-node.yaml文件。

    Pod名称的分类,请参考表 容器资源请求和限制

    以修改Pod名称为huawei-csi-node中huawei-csi-driver容器的资源请求为例,执行命令编辑配置文件,找到spec.template.spec.containes.name为huawei-csi-driver的容器。按需修改资源请求和限制。

    vi huawei-csi-node.yaml
    

    编辑如下内容。

    containers
     - name: huawei-csi-driver
       ...
       resources:
         limits:
           cpu: 500m
           memory: 1Gi
         requests:
           cpu: 50m
           memory: 128Mi
    
  3. 若华为CSI未安装,则参考Kubernetes、OpenShift、Tanzu安装华为CSI章节安装华为CSI后,资源请求和限制的修改生效。

  4. 若已安装华为CSI,则参考升级华为CSI章节更新华为CSI后,资源请求和限制的修改生效。