8.4. 更改默认存储类
使用以下步骤更改默认存储类。
				例如,您有两个定义的存储类 gp3 和 standard,您想要将默认存储类从 gp3 改为 standard。
			
先决条件
- 使用 cluster-admin 权限访问集群。
流程
更改默认存储类:
- 列出存储类: - oc get storageclass - $ oc get storageclass- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 输出示例 - NAME TYPE gp3 (default) ebs.csi.aws.com standard ebs.csi.aws.com - NAME TYPE gp3 (default) ebs.csi.aws.com- 1 - standard ebs.csi.aws.com- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 1
- (default)表示默认存储类。
 
- 将所需的存储类设为默认存储类。 - 对于所需的存储类,运行以下命令将 - storageclass.kubernetes.io/is-default-class注解设置为- true:- oc patch storageclass standard -p '{"metadata": {"annotations": {"storageclass.kubernetes.io/is-default-class": "true"}}}'- $ oc patch storageclass standard -p '{"metadata": {"annotations": {"storageclass.kubernetes.io/is-default-class": "true"}}}'- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 注意- 您可以短时间内有多个默认存储类。但是,您应该确保最终只有一个默认存储类。 - 当存在多个默认存储类时,任何请求默认存储类 ( - pvc.spec.storageClassName=nil) 的持久性卷声明 (PVC) 都会获得最近创建的默认存储类,无论该存储类的默认存储类是什么,管理员都会在警报仪表板中收到警报,该类有多个默认存储类,- MultipleDefaultStorageClasses。
- 从旧的默认存储类中删除默认存储类设置。 - 对于旧的默认存储类,运行以下命令将 - storageclass.kubernetes.io/is-default-class注解的值改为- false:- oc patch storageclass gp3 -p '{"metadata": {"annotations": {"storageclass.kubernetes.io/is-default-class": "false"}}}'- $ oc patch storageclass gp3 -p '{"metadata": {"annotations": {"storageclass.kubernetes.io/is-default-class": "false"}}}'- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 确认更改: - oc get storageclass - $ oc get storageclass- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 输出示例 - NAME TYPE gp3 ebs.csi.aws.com standard (default) ebs.csi.aws.com - NAME TYPE gp3 ebs.csi.aws.com standard (default) ebs.csi.aws.com- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow