文档中心>容器服务

TKE Serverless 静态挂载 CFS-Turbo

最近更新时间:2024-02-06 14:46:41

我的收藏

使用场景

为 TKE Serverless 集群挂载文件存储(Cloud File Storage,CFS)Turbo 类型存储,该组件基于私有协议将腾讯云 CFS Turbo 文件系统挂载到工作负载,目前仅支持静态配置。CFS 存储类型详情见 文件存储类型及性能规格

前提条件

已创建 TKE Serverless 集群且集群版本 ≥1.14。

使用步骤

创建文件系统

创建 CFS Turbo 文件系统,具体操作请参见 创建文件系统
注意:
文件系统创建后,需将集群网络(vpc-xx)关联到文件系统的 云联网(可在文件系统挂载点信息中查看)。

部署 Node Plugin

步骤1:新建 csidriver.yaml 文件

csidriver.yaml 文件示例如下:
apiVersion: storage.k8s.io/v1
kind: CSIDriver
metadata:
name: com.tencent.cloud.csi.cfsturbo
spec:
attachRequired: false
podInfoOnMount: false

步骤2:创建 csidriver

执行以下命令创建 csidriver:
kubectl apply -f csidriver.yaml

创建 CFS Turbo 存储卷

步骤1:使用以下模板创建 CFS Turbo 类型 PV

apiVersion: v1
kind: PersistentVolume
metadata:
name: pv-cfsturbo
spec:
accessModes:
- ReadWriteMany
capacity:
storage: 10Gi
csi:
driver: com.tencent.cloud.csi.cfsturbo
volumeHandle: pv-cfsturbo
volumeAttributes:
host: *.*.*.*
fsid: ********
# cfs turbo subPath
path: /
storageClassName: ""
参数说明:
metadata.name:创建 PV 名称。
spec.csi.volumeHandle:与 PV 名称保持一致。
spec.csi.volumeAttributes.host:文件系统 ip 地址,可在文件系统挂载点信息中查看。
spec.csi.volumeAttributes.fsid:文件系统 fsid(非文件系统 id),可在文件系统挂载点信息中查看(挂载命令中tcp0://cfs之间的字符串,如下图所示)。

spec.csi.volumeAttributes.path: 文件系统子目录,不填写默认为/(为提高挂载性能,插件后端将/目录实际定位到/cfs目录下)。如需指定子目录挂载,须确保该子目录在文件系统/cfs中存在,挂载后 workload 将无法访问到该子目录的上层目录。例如:path: /test,需在文件系统中保证/cfs/test目录存在。

步骤2:使用以下模板创建 PVC 绑定 PV

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pvc-cfsturbo
spec:
storageClassName: ""
volumeName: pv-cfsturbo
accessModes:
- ReadWriteMany
resources:
requests:
storage: 10Gi
参数说明:
metadata.name:创建 PVC 名称。
spec.volumeName:与 步骤1 中创建 PV 名称保持一致。

使用 CFS Turbo 存储卷

使用以下模板创建 Pod 挂载 PVC。
apiVersion: v1
kind: Pod
metadata:
name: nginx
spec:
containers:
- image: ccr.ccs.tencentyun.com/qcloud/nginx:1.9
imagePullPolicy: Always
name: nginx
ports:
- containerPort: 80
protocol: TCP
volumeMounts:
- mountPath: /var/www
name: data
volumes:
- name: data
persistentVolumeClaim:
claimName: pvc-cfsturbo