Curve Testing Camp Time - 部署和使用curvefs-csi插件

部署和使用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