云容器引擎 CCE-存储类StorageClass:应用现状

时间:2023-11-01 16:25:55

应用现状

CCE中使用存储时,最常见的方法是创建PVC时通过指定StorageClassName定义要创建存储的类型,如下所示,使用PVC申请一个SAS(高I/O)类型云硬盘/块存储。

apiVersion: v1kind: PersistentVolumeClaimmetadata:  name: pvc-evs-example  namespace: default  annotations:    everest.io/disk-volume-type: SASspec:  accessModes:  - ReadWriteOnce  resources:    requests:      storage: 10Gi  storageClassName: csi-disk

可以看到在CCE中如果需要指定云硬盘的类型,是通过everest.io/disk-volume-type: SAS字段指定,这里SAS是云硬盘的类型,代表高I/O,还有SSD(超高I/O)可以指定。

这种写法在如下几种场景下存在问题:

  • 部分用户觉得使用everest.io/disk-volume-type指定云硬盘类型比较繁琐,希望只通过StorageClassName指定。
  • 部分用户是从自建Kubernetes或其他Kubernetes服务切换到CCE,已经写了很多应用的YAML文件,这些YAML文件中通过不同StorageClassName指定不同类型存储,迁移到CCE上时,使用存储就需要修改大量YAML文件或Helm Chart包,这非常繁琐且容易出错。
  • 部分用户希望能够设置默认的StorageClassName,所有应用都使用默认存储类型,在YAML中不用指定StorageClassName也能按创建默认类型存储。
support.huaweicloud.com/usermanual-cce/cce_01_0380.html