部署和使用curvefs-csi插件
0. 前置环境
需要的环境及已验证的版本如下:
- 一个k8s集群,版本为v1.19.16
- 一台宿主机,操作系统为debian10
- 一个curvefs集群,版本为v2.4.0-beta (镜像待更新)
1. 部署curvefs-csi
仓库地址:GitHub - opencurve/curvefs-csi: Curvefs CSI driver
部署的yaml位于deploy文件夹中,包括csi-driver, csi-rbac, csi-controller, csi-node
如果需要使用本地其余硬盘充当diskcache,请阅读GitHub - opencurve/curvefs-csi: Curvefs CSI driver , 并按照说明提前挂载进csi node daemonset中
2. curvefs-csi的使用
创建storageclass
# sc-example.yaml
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
name: curvefs-sc
provisioner: csi.curvefs.com
allowVolumeExpansion: false
reclaimPolicy: Delete
parameters:
mdsAddr: "" # 填写curvefs集群的mds addr
fsType: "" # 填写"s3"
s3Endpoint: "" # 使用的s3网关地址
s3AccessKey: "" # s3 accesskey信息
s3SecretKey: "" # s3 secretkey信息
s3Bucket: "" # s3桶信息
mountOptions: # 一些额外的挂载配置项,用于覆盖默认项
- diskCache.diskCacheType=2 # 启动diskcache缓存
创建pvc
# pvc-example.yaml
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: test-curvefs-pvc
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1000Mi
storageClassName: curvefs-sc