12.2. 实时迁移限制和超时

应用实时迁移限制和超时,以便迁移过程不会给集群造成负担。通过编辑 HyperConverged 自定义资源(CR)来配置这些设置。

12.2.1. 配置实时迁移限制和超时

通过更新位于 openshift-cnv 命名空间中的 HyperConverged 自定义资源(CR)为集群配置实时迁移限制和超时。

流程

  • 编辑 HyperConverged CR 并添加必要的实时迁移参数。

    $ oc edit hco -n openshift-cnv kubevirt-hyperconverged

    配置文件示例

    apiVersion: hco.kubevirt.io/v1beta1
    kind: HyperConverged
    metadata:
      name: kubevirt-hyperconverged
      namespace: openshift-cnv
    spec:
      liveMigrationConfig: 1
        bandwidthPerMigration: 64Mi
        completionTimeoutPerGiB: 800
        parallelMigrationsPerCluster: 5
        parallelOutboundMigrationsPerNode: 2
        progressTimeout: 150

    1
    在本例中,spec.liveMigrationConfig 数组包含每个字段的默认值。
    注意

    您可以通过删除该键/值对并保存文件来恢复任何 spec.liveMigrationConfig 字段的默认值。例如,删除 progressTimeout: <value> 以恢复默认的 progressTimeout: 150

12.2.2. 集群范围内的实时迁移限制和超时

表 12.1. 迁移参数

参数描述默认

parallelMigrationsPerCluster

集群中并行运行的迁移数。

5

parallelOutboundMigrationsPerNode

每个节点的最大出站迁移数。

2

bandwidthPerMigration

每个迁移的带宽限制,其中值为每秒字节数。例如,2048Mi 表示 2048 MiB/s。

0 [1]

completionTimeoutPerGiB

如果迁移未能在此时间内完成则会取消,以每 GiB 内存秒数为单位。例如,如果 6GiB 内存的虚拟机实例未能在 4800 秒内完成,该虚拟机实例将超时。如果 Migration MethodBlockMigration,则迁移磁盘的大小纳入计算中。

800

progressTimeout

如果内存复制未能在此时间内取得进展,则会取消迁移,以秒为单位。

150

  1. 默认值 0 代表没有限制。