6.11.4. 关联性组示例

以下示例演示了如何使用本章中描述的关联性组能力的不同功能,将关联性规则应用于各种场景。

例 6.1. 高可用性

Dalia 是一家创业公司的一个 DevOps 工程师。要获得高可用性,特定系统的两个虚拟机应在集群任何位置的不同主机上运行。

Dalia 创建名为"高可用性"的关联性组,并执行以下操作:

  • 将两个虚拟机 VM01VM02 添加到 affinity 组。
  • VM 相关性 设置为 Negative,以便虚拟机尝试在单独的主机上运行。
  • 保留 Enforcing 没有被选择(代表禁用),以便在停机期间只有一台主机可用时两个虚拟机都可以继续运行。
  • Hosts 列表留空,以便虚拟机在集群中的任何主机上运行。

例 6.2. 性能

Sohni 是一款软件开发人员,每天使用两个虚拟机来构建和测试其软件。这两个虚拟机之间存在大量网络流量。在同一主机上运行机器可减少网络流量和网络延迟对构建和测试流程的影响。使用高度特定的主机(更快的 CPU、SSD 等等)可进一步加快此过程。

Sohni 创建名为"build and test"的关联性组,并执行以下操作:

  • VM01VM02 (构建和测试虚拟机)添加到 affinity 组。
  • 将高度特定的主机 host03host04host05 添加到 affinity 组。
  • VM affinity 设置为 Positive,以便虚拟机尝试在同一主机上运行,从而减少网络流量和延迟影响。
  • Host affinity 设置为 Positive,以便虚拟机尝试在高规格主机上运行并加快进程。
  • 保留两个规则的 Enforcing 都没有被选择(代表禁用),以便在高规格的主机不可用时虚拟机可以运行。

例 6.3. 许可证

软件资产经理 Bandile 帮助其组织遵守 3D 成像软件供应商的限制性许可要求。这些术语要求虚拟机许可服务器 VM-LS 和镜像工作站 VM-WS# 在同一主机上运行。此外,基于物理 CPU 的许可模型要求工作站在两个 GPU 的主机 host-gpu-primaryhost-gpu-backup 上运行。

为满足这些要求,Bandile 会创建一个名为"3D seismic imaging"的关联性组,并执行以下操作:

  • 将前面提到的虚拟机和主机添加到 affinity 组。
  • VM 关联性 设置为 Positive 并选择Enforcing,因此许可服务器和工作站必须在其中一个主机上运行,而不是在多个主机上共同运行。
  • 主机关联性设置为 Positive 并选择 Enforcing,因此虚拟机 必须在 GPU 的任一 GPU 上运行,而不是在群集中的其他主机上运行。