三方存储能力标记
随着公有云、专有云场景的增加,需要使用三方存储的场景越来越多,通过为三方存储提供标记,可以使用户更好的了解和使用三方存储。
概述
创建存储类时会指定 provisioner 字段,平台识别该字段并到指定命名空间中查找带有 features.alauda.io/type: StorageDescription 标签的配置字典(ConfigMap)。当在配置字典中识别到与 provisioner 字段相同的键,则平台会将对应值中支持的存储能力标记至存储类。
操作步骤
-
在左侧导航中,单击 集群管理 > 资源管理。
-
切换至 global 集群。
-
单击 创建资源对象,新增 YAML 配置文件。
-
YAML 示例如下:
apiVersion: v1 data: storage.type1.com: |- type: Filesystem volumeMode: - Filesystem accessModes: - ReadWriteOnce - ReadWriteMany - ReadWriteOncePod storage.type2.com: |- type: Filesystem snapshot: true volumeMode: - Filesystem - Block accessModes: - ReadWriteOnce - ReadOnlyMany - ReadWriteOncePod kind: ConfigMap metadata: labels: features.alauda.io/type: StorageDescription name: sd-built-in namespace: kube-public -
字段说明如下:
字段 说明 data 增加一个或多个配置项,每个配置项即为一种存储的描述文件。 - 键:对应存储类的 Provisioner。
- 值:YAML 格式的字符串,描述了对应存储能力。
例如:上述示例中配置了 Provisioner 为 storage.type2.com,且支持创建快照、支持多种卷模式、支持多种访问模式的文件存储,键值如下,具体的字段说明请参考 支持的存储能力 。- 键:
storage.type2.com - 值:
type: Filesystem
snapshot: true
volumeMode:
- Filesystem
- Block
accessModes:
- ReadWriteOnce
- ReadOnlyMany
- ReadWriteOncePod
metadata.labels 需增加 features.alauda.io/type = StorageDescription标签。metadata.name 需以 sd 开头,且满足 sd-<name> 的格式,例如:sd-configmap1。 metadata.namespace 指定 kube-public 命名空间。 -
支持的存储能力如下:
属性 字段 可选项 默认值 说明 类型 type - Filesystem
- Block
- 若未配置此字段或配置的类型不在可选项范围内,则类型会显示为未知。 快照 snapshot - true
- false
false 若配置字典中此字段为 false或不在可选范围内,则无法通过 表单 方式创建卷快照。卷模式 volumeMode - Filesystem
- Block
Filesystem 当选择 Block 卷模式时,持久卷声明 (PVC) 不支持以目录形式挂载。 访问模式 accessModes - ReadWriteOnce
- ReadOnlyMany
- ReadWriteMany
- ReadWriteOncePod
- - 若未配置此字段或配置的模式不在可选项范围内,则无法通过 表单 页面选中任何访问模式。
- 暂不支持通过 表单 页面选中
ReadWriteOncePod访问模式。
-
-
单击 创建。
相关操作
创建持久卷声明 (PVC)
若使用 表单 的方式创建持久卷声明,且选择的存储类已经被配置字典(ConfigMap)标记,则无法选中配置字典中不支持的存储能力。