1.3. 调度策略
调度策略是一组规则,用于定义在群集中应用调度策略的主机之间分发虚拟机的逻辑。调度策略通过过滤器、权重和负载平衡策略的组合来确定此逻辑。过滤器模块应用硬实施,并过滤掉不符合该过滤器指定条件的主机。weights 模块应用软实施,用于控制决定集群中可以运行虚拟机的主机时所考虑因素的相对优先级。
Red Hat Virtualization Manager 提供了五种默认的调度策略:Evenly_Distributed, Cluster_Maintenance, None, Power_Saving, 和 VM_Evenly_Distributed。您还可以定义新的调度策略,对虚拟机的分发提供精细的控制。无论调度策略如何,虚拟机都不会在 CPU 过载的主机上启动。默认情况下,如果主机的 CPU 的负载超过 80% 达到 5 分钟,则主机 CPU 被视为过载,但这些值可以使用调度策略来更改。有关每个调度策略的属性的更多信息,请参阅 第 8.2.5 节 “调度策略设置说明”。
图 1.4. 平均分布式调度策略
Evenly_Distributed 调度策略在集群中的所有主机上平均分配内存和 CPU 处理负载。如果主机已达到定义的 CpuOverCommitDurationMinutes、HighUtilization 或 MaxFreeMemoryForOverUtilized,则附加到主机的其他虚拟机将不会启动。
VM_Evenly_ Distried 调度策略虚拟机根据虚拟机数量在主机之间平均分配。如果任何主机运行的虚拟机数量超过 HighVmCount,且至少有一个主机具有超出 MigrationThreshold 范围的虚拟机数,则该集群被视为未平衡。
图 1.5. 节能调度策略
Power_Saving 调度策略在可用主机子集之间分配内存和 CPU 处理负载,以减少利用率不足的主机上的功耗。CPU 负载低于低利用率值的主机将超过定义的时间间隔,将所有虚拟机迁移到其他主机,以便将其关闭。如果主机已达到定义的高利用率值,则附加到主机的其他虚拟机将不会启动。
将 None 策略设置为主机之间没有用于运行虚拟机的负载或电源共享。这是默认的模式。当虚拟机启动时,内存和 CPU 处理负载会在集群中的所有主机上均匀分布。如果主机已达到定义的 CpuOverCommitDurationMinutes、HighUtilization 或 MaxFreeMemoryForOverUtilized,则附加到主机的其他虚拟机将不会启动。
Cluster_Maintenance 调度策略在维护任务期间限制集群中的活动。设置 Cluster_Maintenance 策略时,除了高可用性虚拟机外,无法启动新的虚拟机。如果发生主机故障,高可用性虚拟机将正确重新启动,任何虚拟机都可以迁移。
1.3.1. 创建调度策略
您可以创建新的调度策略,以控制将虚拟机分布到 Red Hat Virtualization 环境中的给定集群中的逻辑。
创建调度策略
-
单击
。 - 单击调度策略选项卡。
- 单击 New。
- 输入调度策略的 Name 和 Description。
配置过滤器模块:
- 在 Filter Modules 部分中,将要应用到 Disabled Filters 部分中的调度策略的首选过滤器模块拖放到 Enabled Filters 部分中。
- 也可以将特定过滤器模块设置为第一个,被赋予最高优先级 (或 Last ),从而获得最低的优先级,以进行基本的优化。要设置优先级,请右键单击任何过滤器模块,将光标悬停在位置上,然后选择 First 或 Last。
配置权重模块:
- 在 Weights 模块部分中,将应用于 Disabled Weights 部分的首选权重模块拖放到 Enabled Weights & Factors 部分。
- 使用已启用的权重模块左侧的 + 和 - 按钮来增加或减少这些模块的权重。
指定负载平衡策略:
- 从 Load Balancer 部分的下拉菜单中选择要应用到调度策略的负载平衡策略。
- 从 Properties 部分的下拉菜单中,选择要应用到调度策略的负载平衡属性,并使用该属性右侧的文本字段来指定值。
- 使用 + 和 - 按钮来添加或删除其他属性。
- 点击 OK。