8.3. 配置工作负载更新方法
您可以通过编辑 HyperConverged 自定义资源(CR)来配置工作负载更新方法。
先决条件
要使用实时迁移作为更新方法,您必须首先在集群中启用实时迁移。
注意如果
VirtualMachineInstanceCR 包含evictionStrategy: LiveMigrate,且虚拟机实例(VMI)不支持实时迁移,则 VMI 将不会更新。
流程
要在默认编辑器中打开
HyperConvergedCR,请运行以下命令:oc edit hco -n openshift-cnv kubevirt-hyperconverged
$ oc edit hco -n openshift-cnv kubevirt-hyperconvergedCopy to Clipboard Copied! Toggle word wrap Toggle overflow 编辑
HyperConvergedCR 的workloadUpdateStrategy小节。例如:Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 可用于执行自动化工作负载更新的方法。可用值为
LiveMigrate和Evict。如果您如本例所示启用这两个选项,则更新会为不支持实时迁移的 VMI 使用LiveMigrate,对于不支持实时迁移的 VMI 使用Evict。要禁用自动工作负载更新,您可以删除workloadUpdateStrategy小节,或设置workloadUpdateMethods: []将数组留空。 - 2
- 具有最低破坏性的更新方法。支持实时迁移的 VMI 通过将虚拟机 (VM) 客户机迁移到启用了更新组件的新 pod 中来更新。如果
LiveMigrate是唯一列出的工作负载更新方法,不支持实时迁移的 VMI 不会中断或更新。 - 3
- 在升级过程中关闭 VMI pod 是一个有破坏性的方法。如果在集群中没有启用实时迁移,
Evict是唯一可用的更新方法。如果 VMI 由已配置了runStrategy: always的VirtualMachine对象控制,新的 VMI 会在带有更新组件的新 pod 中创建。 - 4
- 使用
Evict方法每次可以强制更新的 VMI 数量。这不适用于LiveMigrate方法。 - 5
- 驱除下一批工作负载前等待的时间间隔。这不适用于
LiveMigrate方法。
注意您可以通过编辑
HyperConvergedCR 的spec.liveMigrationConfig小节来配置实时迁移限制和超时。- 若要应用您的更改,请保存并退出编辑器。