8.4. 更改默认存储类


使用以下步骤更改默认存储类。

例如,您有两个定义的存储类 gp3standard,您想要将默认存储类从 gp3 改为 standard

先决条件

  • 使用 cluster-admin 权限访问集群。

流程

更改默认存储类:

  1. 列出存储类:

    $ oc get storageclass

    输出示例

    NAME                 TYPE
    gp3 (default)        kubernetes.io/aws-ebs 1
    standard             kubernetes.io/aws-ebs

    1
    (default) 表示默认存储类。
  2. 将所需的存储类设为默认存储类。

    对于所需的存储类,运行以下命令将 storageclass.kubernetes.io/is-default-class 注解设置为 true

    $ oc patch storageclass standard -p '{"metadata": {"annotations": {"storageclass.kubernetes.io/is-default-class": "true"}}}'
    注意

    您可以短时间内有多个默认存储类。但是,您应该确保最终只有一个默认存储类。

    当存在多个默认存储类时,任何请求默认存储类 (pvc.spec.storageClassName=nil) 的持久性卷声明 (PVC) 都会获得最近创建的默认存储类,无论该存储类的默认存储类是什么,管理员都会在警报仪表板中收到警报,该类有多个默认存储类,MultipleDefaultStorageClasses

  3. 从旧的默认存储类中删除默认存储类设置。

    对于旧的默认存储类,运行以下命令将 storageclass.kubernetes.io/is-default-class 注解的值改为 false

    $ oc patch storageclass gp3 -p '{"metadata": {"annotations": {"storageclass.kubernetes.io/is-default-class": "false"}}}'
  4. 确认更改:

    $ oc get storageclass

    输出示例

    NAME                 TYPE
    gp3                  kubernetes.io/aws-ebs
    standard (default)   kubernetes.io/aws-ebs

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.