云容器引擎 CCE-示例:Simple Persistent Volume Example

时间:2023-11-01 16:18:15

Simple Persistent Volume Example

本示例来源于https://github.com/Altinity/clickhouse-operator/blob/master/docs/chi-examples/03-persistent-volume-01-default-volume.yaml

在CCE使用PVC时,yaml文件需做一些适配:

  • 使用云硬盘存储卷EVS
    1. 创建storageClass

      CCE默认支持的csi-disk为SAS类型的云硬盘。 若想使用超高I/O类型的云硬盘,需要创建对应的storageClass。

      vim csi-disk-ssd.yaml

      复制以下内容:

      allowVolumeExpansion: trueapiVersion: storage.k8s.io/v1kind: StorageClassmetadata:  name: csi-disk-ssdparameters:  csi.storage.k8s.io/csi-driver-name: disk.csi.everest.io  csi.storage.k8s.io/fstype: ext4  everest.io/disk-volume-type: SSD  everest.io/passthrough: "true"provisioner: everest-csi-provisionerreclaimPolicy: DeletevolumeBindingMode: Immediate

      保存后退出:

      kubectl create -f csi-disk-ssd.yaml

    2. accessModes需填写为ReadWriteOnce。
    3. 添加storageClassName: csi-disk-ssd。
  • 使用文件存储卷SFS
    1. accessModes需填写为ReadWriteMany。
    2. 添加storageClassName: csi-nas。

    下面以文件存储卷SFS为例,yaml文件如下:

    apiVersion: "clickhouse.altinity.com/v1"kind: "ClickHouseInstallation"metadata:  name: "pv-simple"spec:  defaults:    templates:      dataVolumeClaimTemplate: data-volume-template      logVolumeClaimTemplate: log-volume-template  configuration:    clusters:      - name: "simple"        layout:          shardsCount: 1          replicasCount: 1  templates:    volumeClaimTemplates:      - name: data-volume-template        spec:          accessModes:            - ReadWriteMany          resources:            requests:              storage: 10Gi          storageClassName: csi-nas      - name: log-volume-template        spec:          accessModes:            - ReadWriteMany          resources:            requests:              storage: 10Gi          storageClassName: csi-nas

    使用如下命令创建:

    kubectl -n test-clickhouse-operator create -f 03-persistent-volume-01-default-volume.yaml

    一段时间后,查看资源运行情况:

    kubectl get pvc -n test-clickhouse-operator

    kubectl get pod -n test-clickhouse-operator

    查看存储卷挂载情况:

    kubectl -n test-clickhouse-operator exec -ti chi-pv-simple-simple-0-0-0 -c clickhouse bash

    df -h

    连接ClickHouse Database:

    kubectl -n test-clickhouse-operator exec -ti chi-pv-simple-simple-0-0-0 -- clickhouse-client

support.huaweicloud.com/bestpractice-cce/cce_bestpractice_0129.html