集群管理员可使用 StorageClass 为容器服务集群定义不同的存储类型。容器服务已默认提供块存储类型的 StorageClass,您可通过 StorageClass 配合 PersistentVolumeClaim 动态创建需要的存储资源。
本文介绍通过控制台、Kubectl 两种方式创建文件存储 CFS 类型的 StorageClass,自定义文件存储使用所需的模板。
若您的集群已安装 CFS-CSI 的扩展组件,请跳过此步骤。若未安装,详细步骤请参见 安装文件存储扩展组件。
创建 StorageClass 过程中,需设置文件存储归属子网,为确保文件存储所处私有网络下每一个可用区均拥有合适子网,建议您提前进行子网创建。若无子网,详细步骤请参见 创建子网。
创建 StorageClass 过程中,需为文件系统配置权限组,为确保具备合适的权限组,建议您提前进行权限组创建。若无权限组,详细步骤请参见 创建权限组和添加权限组规则。
a43qadkl
为该文件系统的 FSID。说明:为了获取更好的稳定性,在通过 YAML 创建 PV 并使用 NFSV3 协议挂载时,需要指定待挂载文件系统对应的 FSID。
配置项 | 描述 |
---|---|
名称 | 填写 StorageClass 的名称。本文以 cfs-storageclass 为例。 |
地域 | 默认为集群所在地域。 |
Provisioner | Provisioner 支持选择云硬盘CBS(CSI)或文件存储CFS。此处选择文件存储CFS。 |
实例创建模式 | 提供创建新实例和共享实例两种模式。
|
可用区 | 选择当前地域下支持使用文件存储的可用区。每个地域下不同可用区所适用的存储类型不完全一致,请参考 可用地域 进行选择。 |
CFS 归属子网 | 设置当前可用区下文件系统的所属子网范围。 |
存储类型 | 文件存储提供标准存储和性能存储两种类型的文件系统,每个地域下不同可用区所适用的存储类型不完全一致,请结合控制台实际情况进行选择。
|
文件服务协议 | 默认为 NFS 协议,允许透明访问服务器上的文件和文件系统。 |
协议版本 | 推荐使用 NFS v3 协议挂载获得更好的性能。如果您的应用依赖文件锁(即需要使用多台 CVM 同时编辑一个文件)请使用 NFS v4 协议挂载。 |
权限组 | 为文件系统配置权限组,便于进一步管理与文件系统处于同一网络下的来访客户端的访问权限及读写权限。请根据实际需求选择合适的权限组,如不具备,请前往 权限组 页面进行创建。 |
回收策略 | 提供删除和保留两种回收策略,出于数据安全考虑,推荐使用保留回收策略。
|
标签 | 选择 CFS 实例需要绑定的云标签。该标签将由 StorageClass 动态创建的 CFS 实例自动继承,StorageClass 创建后其绑定的标签参数不支持修改。如现有标签不符合您的要求,请前往 标签控制台 操作。 |
配置项 | 描述 |
---|---|
名称 | 填写 PersistentVolumeClaim 的名称。本文以 cfs-pvc 为例。 |
命名空间 | 命名空间用来划分集群资源。此处选择 default。 |
Provisioner | 选择文件存储 CFS。 |
读写权限 | 文件存储仅支持多机读写。 |
StorageClass | 按需指定 StorageClass。本文选择指定 StorageClass,以在 创建 StorageClass 步骤中创建的 cfs-storageclass 为例。
|
PersistVolume | 按需指定 PersistentVolume。本文选择不指定 PersistentVolume。
|
说明:该步骤以创建工作负载 Deployment 为例。
cfs-vol
为例。/cache
为例。/data
或 /test.txt
。注意:如使用 CFS 的 PVC 挂载模式,数据卷支持挂载到多台 Node 主机上。
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
name: cfs
parameters:
# subdir-share: "true"
vpcid: vpc-xxxxxxxx
subnetid: subnet-xxxxxxxx
vers: "3"
resourcetags: ""
provisioner: com.tencent.cloud.csi.cfs
reclaimPolicy: Delete
volumeBindingMode: Immediate
parameters 支持参数如下:
参数 | 是否可选 | 描述 |
---|---|---|
zone | 否 | 设置文件存储所在的地域。 |
pgroupid | 否 | 设置文件存储所归属的权限组。 |
storagetype | 否 | 默认为标准存储 SD,可取值及描述如下: SD:标准型存储 HP:性能存储 |
subdir-share | 是 | 填写则代表 StorageClass 的实例创建模式为共享实例。 |
vpcid | 是 | 创建的文件存储所在的私有网络 ID。 |
subnetid | 是 | 创建的文件存储所在的子网 ID。 |
vers | 是 | 插件连接文件系统时所使用的协议版本,动态生成的 PV 会继承该参数,目前支持的版本有 "3" 和 "4"。 |
resourcetags | 是 | 文件系统云标签,生成的文件系统上会打上对应腾讯云标签,多个标签由英文逗号隔开,例如 "a:b,c:d"。 |
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: cfs
namespace: default
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 10Gi
storageClassName: cfs
volumeMode: Filesystem
volumeName: XXX #动态创建无需填写,静态创建需要在该字段中指定 pv 实例 id
参数 | 是否可选 | 描述 |
---|---|---|
spec.accessModes | 否 | cfs 存储支持多读多写 |
spec.resources.requests.storage | 是 | 无实际意义,具体存储大小只与文件系统种类有关。 |
说明:
- CFS 文件存储系统支持根据文件容量大小自动扩展文件系统存储容量,扩展过程不会中断请求和应用。默认创建的 CFS 实例容量大小为 10Gi,容量上限与产品类型相关,详情根据请参考 系统限制。
- 通过 PVC 动态创建的 PV 将自动继承 StorageClass 中设定的参数,该参数由存储插件自动生成。
本页内容是否解决了您的问题?