5.7.3. 使 OpenStack Cinder CSI 成为默认存储类


在 OpenShift Container Platform 中,默认存储类引用树内 Cinder 驱动程序。默认情况下,存储类将在 OpenShift Container Platform 以后的更新中引用 OpenStack Cinder CSI。目前计划使用现有 in-tree 存储类置备的卷将其迁移到 OpenStack Cinder CSI 存储类。

OpenStack Cinder CSI 驱动程序使用 cinder.csi.openstack.org 参数键来支持动态置备。

要在 OpenShift Container Platform 中启用 OpenStack Cinder CSI 置备,建议您使用 standard-csi 覆盖默认的树内存储类。另外,您可以创建持久性卷声明(PVC),并将存储类指定为 "standard-csi"。

流程

使用以下步骤通过覆盖默认的树内存储类来应用 standard-csi 存储类。

  1. 列出存储类:

    $ oc get storageclass

    输出示例

    NAME                   PROVISIONER                RECLAIMPOLICY   VOLUMEBINDINGMODE      ALLOWVOLUMEEXPANSION   AGE
    standard(default)      cinder.csi.openstack.org   Delete          WaitForFirstConsumer   true                   46h
    standard-csi           kubernetes.io/cinder       Delete          WaitForFirstConsumer   true                   46h

  2. 对于默认存储类,将注解 storageclass.kubernetes.io/is-default-class 的值改为 false,如下例所示:

    $ oc patch storageclass standard -p '{"metadata": {"annotations": {"storageclass.kubernetes.io/is-default-class": "false"}}}'
  3. 通过添加或修改注解 storageclass.kubernetes.io/is-default-class=true 来使另一个存储类作为默认设置

    $ oc patch storageclass standard-csi -p '{"metadata": {"annotations": {"storageclass.kubernetes.io/is-default-class": "true"}}}'
  4. 验证 PVC 现在默认引用 CSI 存储类:

    $ oc get storageclass

    输出示例

    NAME                   PROVISIONER                RECLAIMPOLICY   VOLUMEBINDINGMODE      ALLOWVOLUMEEXPANSION   AGE
    standard               kubernetes.io/cinder       Delete          WaitForFirstConsumer   true                   46h
    standard-csi(default)  cinder.csi.openstack.org   Delete          WaitForFirstConsumer   true                   46h

  5. 可选: 您可以定义一个新的 PVC 而无需指定存储类:

    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: cinder-claim
    spec:
      accessModes:
        - ReadWriteOnce
      resources:
        requests:
          storage: 1Gi

    没有指定特定存储类的 PVC 会使用默认存储类自动置备。

  6. 可选: 配置了新文件后,在集群中创建该文件:

    $ oc create -f cinder-claim.yaml

其他资源

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.