4.7. 高级 OADP 特性和功能
本文档提供有关 OpenShift API for Data Protection (OADP) 的高级功能。
4.7.1. 在同一集群中使用不同的 Kubernetes API 版本
4.7.1.1. 列出集群中的 Kubernetes API 组版本
源集群可能会提供多个 API 版本,其中的一个版本是首选的 API 版本。例如,带有名为 Example
的 API 的源集群可能包括在 example.com/v1
和 example.com/v1beta2
API 组中。
如果您使用 Velero 备份和恢复这样的源集群,Velero 仅备份了使用 Kubernetes API 首选版本的该资源的版本。
要返回上例,如果 example.com/v1
是首选的 API,则 Velero 只备份使用 example.com/v1
的资源的版本。另外,目标集群需要 example.com/v1
在它的一组可用 API 资源中注册,以便 Velero 恢复目标集群上的资源。
因此,您需要在目标集群上生成 Kubernetes API 组版本列表,以确保在一组可用的 API 资源中注册了首选的 API 版本。
流程
- 输入以下命令:
$ oc api-resources
4.7.1.2. 关于启用 API 组版本
默认情况下,Velero 只备份使用 Kubernetes API 的首选版本的资源。但是,Velero 还包括一个启用 API 组版本功能,它解决了这个限制。当在源集群中启用时,这个功能会使 Velero 备份集群中支持的所有 Kubernetes API 组版本,而不只是首选集群。当版本存储在备份 .tar 文件中被保存后,可以在目标集群上恢复它们。
例如,带有名为 Example
的 API 的源集群可能包括在 example.com/v1
和 example.com/v1beta2
API 组中,example.com/v1
是首选 API。
如果没有启用 Enable API Group Versions 功能,Velero 仅备份 Example
的首选 API 组版本,即 example.com/v1
。启用该功能后,Velero 还会备份 example.com/v1beta2
。
当目标集群上启用了“启用 API 组版本”功能时,Velero 根据 API 组版本优先级顺序选择恢复的版本。
启用 API 组版本仍处于测试阶段。
Velero 使用以下算法为 API 版本分配优先级,并将 1
作为最高优先级:
- destination 集群的首选版本
- source_ cluster 的首选版本
- 带有最高 Kubernetes 版本优先级的通用非首选支持版本
其他资源
4.7.1.3. 使用启用 API 组版本
您可以使用 Velero 的启用 API 组版本功能来备份集群中支持的所有 Kubernetes API 组版本,而不只是首选版本。
启用 API 组版本仍处于测试阶段。
流程
-
配置
EnableAPIGroupVersions
功能标记:
apiVersion: oadp.openshift.io/vialpha1 kind: DataProtectionApplication ... spec: configuration: velero: featureFlags: - EnableAPIGroupVersions
其他资源