5.7. CSI 自动迁移
通常 OpenShift Container Platform 附带的树内存储驱动程序已弃用,并被对应的 Container Storage Interface(CSI)驱动程序替代。OpenShift Container Platform 为树内卷插件提供自动迁移到对应的 CSI 驱动程序。
5.7.1. 概述
此功能会自动将使用树内存储插件置备的卷迁移到对应的 Container Storage Interface (CSI) 驱动程序中。
此过程不执行任何数据迁移,OpenShift Container Platform 只在内存中转换持久性卷对象。因此,翻译的持久性卷对象不会存储在磁盘上,也不会更改它的内容。CSI 自动迁移应该可以无缝进行。这个功能不会改变如何使用所有现有 API 对象: 例如 PersistentVolume、PersistentVolume
、PersistentVolumeVolumeClaims
和 StorageClasses
。
以下到 CSI 驱动程序的树内会自动迁移:
- Azure Disk
- OpenStack Cinder
- Amazon Web Services(AWS)Elastic Block Storage(EBS)
- Google Compute Engine Persistent Disk (GCP PD)
- Azure File
- VMware vSphere (请参阅以下 vSphere 迁移行为的信息)
这些卷类型的 CSI 迁移被视为正式发布(GA),且无需人工干预。
如果原始 in-tree 存储插件不支持,则 CSI 自动迁移不会启用任何新的 CSI 驱动程序功能,如快照或扩展。
5.7.2. 存储类影响
对于新的 OpenShift Container Platform 4.13 及之后的版本,安装默认存储类是 CSI 存储类。所有使用这个存储类置备的卷都是 CSI 持久性卷(PV)。
对于从 4.12 版本升级到 4.13 及更高版本中的集群,会创建 CSI 存储类,如果在升级前设置了默认存储类,则设置为默认值。在不太可能的情况下,存在相同名称的存储类时,现有的存储类不会改变。任何现有的 in-tree 存储类保留,可能需要某些功能,如卷扩展才能用于现有的树内 PV。虽然引用 in-tree 存储插件的存储类将继续工作,但我们建议将默认存储类切换到 CSI 存储类。
要更改默认存储类,请参阅更改默认存储类。
5.7.3. vSphere 自动迁移
5.7.3.1. 新的 OpenShift Container Platform 安装
对于 OpenShift Container Platform 4.13 或更高版本的新安装,默认启用自动迁移。
5.7.3.2. 从 OpenShift Container Platform 4.13 更新至 4.14
如果您使用 vSphere in-tree 持久性卷(PV),并希望从 OpenShift Container Platform 4.13 更新至 4.14,请将 vSphere vCenter 和 ESXI 主机更新至 7.0 Update 3L 或 8.0 Update 2,否则 OpenShift Container Platform 更新会被阻断。更新 vSphere 后,可能会进行 OpenShift Container Platform 更新,并默认启用自动迁移。
或者,如果您不想更新 vSphere,可以通过执行管理员确认步骤来执行 OpenShift Container Platform 更新:
oc -n openshift-config patch cm admin-acks --patch '{"data":{"ack-4.13-kube-127-vsphere-migration-in-4.14":"true"}}' --type=merge
如果您没有更新到 vSphere 7.0 Update 3L 或 8.0 Update 2,并使用管理员确认升级到 OpenShift Container Platform 4.14,因为 OpenShift Container Platform 4.14 中默认启用了 CSI 迁移会导致一个已知的问题。在继续管理员确认前,请仔细阅读这篇知识库文章。
5.7.3.3. 从 OpenShift Container Platform 4.12 更新至 4.14
如果您使用 vSphere in-tree 持久性卷(PV),并希望从 OpenShift Container Platform 4.12 更新至 4.14,请将 vSphere vCenter 和 ESXI 主机更新至 7.0 Update 3L 或 8.0 Update 2,否则 OpenShift Container Platform 更新会被阻断。更新 vSphere 后,可能会进行 OpenShift Container Platform 更新,并默认启用自动迁移。
另外,如果您不想更新 vSphere,可以通过运行以下两个命令来执行 OpenShift Container Platform 更新:
oc -n openshift-config patch cm admin-acks --patch '{"data":{"ack-4.12-kube-126-vsphere-migration-in-4.14":"true"}}' --type=merge
oc -n openshift-config patch cm admin-acks --patch '{"data":{"ack-4.13-kube-127-vsphere-migration-in-4.14":"true"}}' --type=merge
如果您没有更新到 vSphere 7.0 Update 3L 或 8.0 Update 2,并使用管理员确认升级到 OpenShift Container Platform 4.14,因为 OpenShift Container Platform 4.14 中默认启用了 CSI 迁移会导致一个已知的问题。在继续管理员确认前,请仔细阅读这篇知识库文章。
从 OpenShift Container Platform 4.12 更新至 4.14 是一个延长更新支持 (EUS) 到延长更新支持(EUS)的更新。要了解这种类型的更新以及如何执行它,请查看以下 附加资源部分中的 EUS 到 EUS 更新链接。
其他资源