10.2. 配置实时迁移
您可以配置实时迁移设置,以确保迁移过程不会给集群造成大量问题。
您可以配置实时迁移策略,将不同的迁移配置应用到虚拟机组。
10.2.1. 实时迁移设置 复制链接链接已复制到粘贴板!
您可以配置以下实时迁移设置:
10.2.1.1. 配置实时迁移限制和超时 复制链接链接已复制到粘贴板!
通过更新位于 openshift-cnv
命名空间中的 HyperConverged
自定义资源(CR)为集群配置实时迁移限制和超时。
流程
编辑
HyperConverged
CR 并添加必要的实时迁移参数:oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 配置文件示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
您可以通过删除该键/值对并保存文件来恢复任何 spec.liveMigrationConfig
字段的默认值。例如,删除 progressTimeout: <value>
以恢复默认的 progressTimeout: 150
。
10.2.2. 实时迁移策略 复制链接链接已复制到粘贴板!
您可以创建实时迁移策略,将不同的迁移配置应用到由 VM 或项目标签定义的虚拟机组。
您可以使用 Web 控制台创建实时迁移策略。
10.2.2.1. 使用命令行创建实时迁移策略 复制链接链接已复制到粘贴板!
您可以使用命令行创建实时迁移策略。kubevirt 使用任意标签组合将实时迁移策略应用到所选虚拟机 (VM):
-
VM 标签,如
size
,os
, 或gpu
-
项目标签,如
priority
,bandwidth
, 或hpc-workload
要使策略应用到特定的虚拟机组,VM 组的所有标签都必须与策略标签匹配。
如果多个实时迁移策略应用到 VMI,则具有最高匹配标签的策略会优先使用。
如果多个策略满足此条件,则策略按照匹配标签键的字母顺序排序,并且第一个策略具有优先顺序。
流程
编辑要应用实时迁移策略的 VM 对象,并添加对应的 VM 标签。
打开资源的 YAML 配置:
oc edit vm <vm_name>
$ oc edit vm <vm_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 调整配置的
.spec.template.metadata.labels
部分中所需的标签值。例如,出于迁移策略的目的,将 VM 标记为production
VM,添加kubevirt.io/environment: production
行:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 保存并退出配置。
使用对应标签配置
MigrationPolicy
对象。以下示例配置适用于标记为production
的所有虚拟机的策略:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行以下命令来创建迁移策略:
oc create -f <migration_policy>.yaml
$ oc create -f <migration_policy>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow