XenServer

Workload Balancing 入门

只需几个简单的步骤即可配置 Workload Balancing 虚拟设备:

  1. 查看必备条件信息并规划 Workload Balancing 使用情况

  2. 下载 Workload Balancing 虚拟设备

  3. 将 Workload Balancing 虚拟设备导入 XenCenter

  4. 从虚拟设备控制台配置 Workload Balancing 虚拟设备

  5. (可选)如果您已经安装了早期版本的 Workload Balancing,可以从现有虚拟设备迁移数据

    注意:

    如果您执行从 Citrix Hypervisor 8.2 CU1 到 XenServer 8 的滚动池升级,则无法在 XenServer 8 池中使用 Workload Balancing 8.2.2 及更早版本。在执行滚动池升级之前,请将 Workload Balancing 虚拟设备更新到版本 8.3.0。可以从 XenServer 下载页面下载最新版本的 Workload Balancing 虚拟设备。

  6. 使用 XenCenter 将池连接到 Workload Balancing 虚拟设备

    仅当您的池拥有使用 Workload Balancing 所需的许可证时,“Workload Balancing”选项卡才会在 XenCenter 中显示。

开始之前的准备工作

Workload Balancing 虚拟设备是设计为在 XenServer 主机上运行的单个预安装的 VM。导入该虚拟设备前,请查看必备条件信息和注意事项。

必备条件

  • Workload Balancing 8.3.0 及更高版本与 XenServer 8 兼容。我们建议使用 XenCenter 管理控制台导入虚拟设备。

  • 如果您执行从 Citrix Hypervisor 8.2 CU1 到 XenServer 8 的滚动池升级,则无法在 XenServer 8 池中使用 Workload Balancing 8.2.2 及更早版本。在执行滚动池升级之前,请将 Workload Balancing 虚拟设备更新到版本 8.3.0。可以从 XenServer 下载页面下载最新版本的 Workload Balancing 虚拟设备。

  • 如果您当前使用的是早期版本的 Workload Balancing 虚拟设备,则可以在升级到最新版本时使用迁移脚本迁移现有数据。有关详细信息,请参阅从现有虚拟设备迁移

  • 运行 Workload Balancing 虚拟设备至少需要 2 GB RAM 和 30 GB 磁盘空间。默认情况下,Workload Balancing 虚拟设备分配有 2 个 vCPU。此值足以满足托管 1000 个 VM 的池的要求。通常不需要增加此值。只有在环境很小的情况下,才能减少分配给虚拟设备的 vCPU 数量。有关详细信息,请参阅更改 Workload Balancing 虚拟设备配置

池要求

要通过 Workload Balancing 平衡池的负载,池必须满足以下要求:

  • 所有主机都是使用 Premium Edition 许可证授权的

  • 所有主机都满足实时迁移的要求:

    • 共享的远程存储

    • 相似的处理器配置

    • 千兆位以太网

  • 池不包含任何启用了 vGPU 的 VM。Workload Balancing 无法为连接了 vGPU 的 VM 创建容量规划。

单个 Workload Balancing 虚拟设备可以管理多个池,最多管理 100 个池,具体取决于虚拟设备的资源(vCPU、内存、磁盘大小)。在这些池中,虚拟设备最多可以管理 1000 个 VM。但是,如果池中包含大量 VM(例如,超过 400 个 VM),我们建议您仅为该池使用一个 Workload Balancing 虚拟设备。

注意事项

在导入 Workload Balancing 虚拟设备之前,请注意以下事项并根据需要对环境进行相应的更改。

  • 通信端口。在启动 Workload Balancing 配置向导之前,需要确定 Workload Balancing 虚拟设备要用来进行通信的端口。在 Workload Balancing 配置期间,系统会提示您设置此端口。默认情况下,Workload Balancing 服务器使用 8012。

    注意:

    请勿将 Workload Balancing 端口设置为端口 443。Workload Balancing 虚拟设备不能接受通过端口 443(标准的 TLS/HTTPS 端口)建立的连接。

  • Workload Balancing 帐户。在配置 Workload Balancing 虚拟设备并将其连接到 XenServer 时,会使用三个不同的帐户。

    Workload Balancing 配置向导会使用您指定的用户名和密码创建以下帐户:

    • Workload Balancing 帐户

      此帐户由 XenServer 主机用于连接到 Workload Balancing 服务器。默认情况下,此帐户的用户名为 wlbuser。此用户是您在 Workload Balancing 配置期间在 Workload Balancing 虚拟设备上创建的。

    • 数据库帐户

      此帐户用于访问 Workload Balancing 虚拟设备上的 PostgreSQL 数据库。默认情况下,用户名为 postgres。可以在 Workload Balancing 配置期间为此帐户设置密码。

    将 Workload Balancing 虚拟设备连接到 XenServer 池时,必须指定现有帐户:

    • XenServer 帐户

      此帐户由 Workload Balancing 虚拟设备用于连接到 XenServer 池并读取 RRD。确保此用户帐户具有读取 XenServer 池、主机和 VM RRD 的权限。例如,为具有 pool-adminpool-operator 角色的用户提供凭据。

  • 跨池监视。可以将 Workload Balancing 虚拟设备放在一个池中,而使用该设备监视另一个池。(例如,Workload Balancing 虚拟设备位于池 A 中,但使用该设备监视池 B。)

  • 时间同步。Workload Balancing 虚拟设备要求托管虚拟设备的物理计算机上的时间与受监视的池正在使用的时间相匹配。无法更改 Workload Balancing 虚拟设备上的时间。我们建议您将托管 Workload Balancing 的物理计算机和所监视池中的各主机指向同一个网络时间 (NTP) 服务器。

  • XenServer 与 Workload Balancing 通过 HTTPS 进行通信。因此,在 Workload Balancing 配置期间,Workload Balancing 会代表您自动创建一个自签名证书。可以将此证书更改为来自某个证书颁发机构颁发的证书,并且/或者将 XenServer 配置为对证书进行验证。有关信息,请参阅证书

  • 存储历史数据和磁盘空间大小。可以存储的历史数据量取决于以下因素:

    • 分配给 Workload Balancing 的虚拟磁盘的大小(默认为 30 GB)
    • 所需的最小磁盘空间,默认为 2048 MB 且由 wlb.conf 文件中的 GroomingRequiredMinimumDiskSizeInMB 参数控制。

    Workload Balancing 收集的历史数据越多,建议越准确和均衡。如果要存储大量历史数据,可以执行以下操作之一:

    例如,当您希望使用 Workload Balancing 池审核跟踪功能并将报告精度配置为中等或更高级别时。

  • 实现 Workload Balancing 的负载平衡。如果您想要使用 Workload Balancing 虚拟设备来管理自身,请在导入该虚拟设备时指定远程共享的存储。

    注意:

    使用 Workload Balancing 来管理自身时,Workload Balancing 无法针对 Workload Balancing 虚拟设备执行“启动于”放置建议。进行自身管理的 Workload Balancing 之所以无法提供放置建议,是因为要执行该功能就必须运行该虚拟设备。但是,它可以平衡 Workload Balancing 虚拟设备的负载,就像平衡所管理的任何其他 VM 一样。

  • 规划资源池大小调整。Workload Balancing 需要进行特定的配置才能在大型池中成功运行。有关详细信息,请参阅更改 Workload Balancing 虚拟设备配置

下载虚拟设备

Workload Balancing 虚拟设备以 .xva 格式打包。可以从 XenServer 下载页面下载虚拟设备。在下载该文件时,将其保存到本地硬盘驱动器(通常位于安装 XenCenter 的计算机上)上的一个文件夹中。

下载 .xva 完成后,可以如导入 Workload Balancing 虚拟设备中所述将其导入到 XenCenter 中。

导入 Workload Balancing 虚拟设备

使用 XenCenter 将 Workload Balancing 虚拟设备导入池。

要将虚拟设备导入 XenServer 中,请执行以下操作:

  1. 打开 XenCenter。
  2. 在要导入虚拟设备软件包的池(或主机)上单击鼠标右键,然后选择导入
  3. 浏览到 vpx-wlb.xva 软件包。
  4. 选择要运行 Workload Balancing 虚拟设备的池或主服务器。

    如果选择池,VM 将自动在该池中最适合的主机上启动。

    或者,如果您不使用 Workload Balancing 管理 Workload Balancing 虚拟设备,则可以为 Workload Balancing 虚拟设备设置主服务器。此设置可确保虚拟设备始终在同一主机上启动。

  5. 选择用于存储 Workload Balancing 虚拟设备的虚拟磁盘的存储库。此存储库必须至少有 30 GB 可用空间。

    可以选择本地存储,也可以选择远程存储。但是,如果选择本地存储,则无法使用 Workload Balancing 来管理虚拟设备。

  6. 为 Workload Balancing 虚拟设备定义虚拟接口。在此版本中,Workload Balancing 设计为通过单个虚拟接口通信。
  7. 选择能够访问 Workload Balancing 所管理的池的网络。
  8. 使导入后启动 VM 复选框处于启用状态,然后单击完成以导入虚拟设备。
  9. 在完成 Workload Balancing .xva 文件的导入之后,Workload Balancing VM 将出现在 XenCenter 中的资源窗格中。

导入 Workload Balancing 虚拟设备后,按配置 Workload Balancing 虚拟设备中所述配置虚拟设备。

配置 Workload Balancing 虚拟设备

在完成 Workload Balancing 虚拟设备的导入后,必须先对其进行配置才能使用它来管理池。为了引导您完成配置,Workload Balancing 虚拟设备在 XenCenter 中提供了一个配置向导。要显示该虚拟设备,请在资源窗格中选择该虚拟设备,然后单击控制台选项卡。对于所有选项,按 Enter 键以接受默认选项。

  1. 在导入 Workload Balancing 虚拟设备之后,单击控制台选项卡。
  2. 输入 yes 以接受许可协议的条款。要拒绝 EULA,请输入 no

    注意:

    Workload Balancing 虚拟设备也受 Workload Balancing 虚拟设备中 /opt/vpx/wlb 目录中所包含的许可证的约束。

  3. 为 Workload Balancing VM 输入新的 root 用户密码并进行确认。我们建议选择强密码。

    注意:

    当您输入密码时,控制台上不显示字符占位符(如星号)。

  4. 输入要分配给 Workload Balancing 虚拟设备的计算机名称。
  5. 输入虚拟设备的域后缀。

    例如,如果虚拟设备的完全限定的域名 (FQDN) 为 wlb-vpx-pos-pool.domain4.bedford4.ctx,则输入 domain4.bedford4.ctx

    注意:

    Workload Balancing 虚拟设备不会自动将其 FQDN 添加到域名系统 (DNS) 服务器。因此,如果您希望池使用 FQDN 连接到 Workload Balancing,则必须手动将该 FQDN 添加到 DNS 服务器。

  6. 输入 y 以使用 DHCP 自动获取 Workload Balancing VM 的 IP 地址。否则,请输入 n,然后输入 VM 的静态 IP 地址、子网掩码和网关。

    注意:

    只要 IP 地址的租用期未过期,就可以使用 DHCP。重要的是,IP 地址不要发生更改:如果发生更改,XenServer 与 Workload Balancing 之间的连接将中断。

  7. 输入 Workload Balancing 数据库的用户名,或者按 Enter 键以使用数据库帐户的默认用户名 (postgres)。

    注意:

    我们建议使用默认用户名 postgres,因为存在已知问题,即如果您不使用 Workload Balancing PostgreSQL 数据库的默认用户名,则无法将池连接到 Workload Balancing 虚拟设备。

    此时将针对 Workload Balancing 数据库创建一个帐户。Workload Balancing 服务使用该帐户对 Workload Balancing 数据库进行读/写操作。记下用户名和密码。如果您要直接管理 Workload Balancing PostgreSQL 数据库(例如,要导出数据),可能需要这些信息。

  8. 输入 Workload Balancing 数据库的密码。在按 Enter 键之后,会显示一些消息,指出配置向导正在加载数据库对象。
  9. 输入 Workload Balancing 服务器的用户名和密码。

    此操作将创建 XenServer 用于连接到 Workload Balancing 的用户名和密码。默认用户名为 wlbuser

  10. 输入 Workload Balancing 服务器的端口。Workload Balancing 服务器使用此端口进行通信。

    默认情况下,Workload Balancing 服务器使用 8012。该端口号不能设置为 443(默认的 TLS 端口号)。

    注意:

    如果更改此处的端口,请在将池连接到 Workload Balancing 时指定新的端口号。例如,通过在连接 WLB 服务器对话框中指定该端口。

    请确保您为 Workload Balancing 指定的端口在所有的防火墙中都处于打开状态。

    Enter 键之后,Workload Balancing 将继续进行虚拟设备配置,包括创建自签名证书。

  11. 此时,还可以通过输入 VM 用户名(通常为 root)和之前创建的 root 用户密码来登录虚拟设备。但是,仅当您要运行 Workload Balancing 命令或编辑 Workload Balancing 配置文件时才需要登录。

配置 Workload Balancing 后,按照连接 Workload Balancing 虚拟设备中的说明,将池连接到 Workload Balancing 虚拟设备。

如有必要,可在以下位置中找到 Workload Balancing 配置文件:/opt/vpx/wlb/wlb.conf。有关详细信息,请参阅编辑 Workload Balancing 配置文件

Workload Balancing 日志文件位于以下位置中:/var/log/wlb/LogFile.log。有关详细信息,请参阅提高 Workload Balancing 日志的详细级别

连接 Workload Balancing 虚拟设备

配置 Workload Balancing 之后,可使用 CLI 或 XenCenter 将要管理的池连接到 Workload Balancing 虚拟设备。

注意:

单个 Workload Balancing 虚拟设备可以管理多个池,最多管理 100 个池,具体取决于虚拟设备的资源(vCPU、内存、磁盘大小)。在这些池中,虚拟设备最多可以管理 1000 个 VM。但是,如果池中包含大量 VM(例如,超过 400 个 VM),我们建议您仅为该池使用一个 Workload Balancing 虚拟设备。

要将池连接到 Workload Balancing 虚拟设备,需要以下信息:

  • Workload Balancing 虚拟设备的 IP 地址或 FQDN

    • 要获取 Workload Balancing 虚拟设备的 IP 地址,请执行以下操作:

      1. 在 XenCenter 中,转至 Workload Balancing 虚拟设备控制台选项卡。
      2. 使用导入设备时创建的 root 用户密码以 root 用户身份登录。
      3. 运行以下命令:ifconfig
    • 要在连接 Workload Balancing 服务器时指定 Workload Balancing FQDN,请先将 Workload Balancing 服务器的主机名和 IP 地址添加到 DNS 服务器。

  • Workload Balancing 虚拟设备的端口号。默认情况下,XenServer 通过端口 8012 连接 Workload Balancing。

    仅在 Workload Balancing 配置期间更改了此端口号时才对其进行编辑。Workload Balancing 配置过程中指定的端口号、在任何防火墙规则中指定的端口号以及在连接 WLB 服务器对话框中指定的端口号必须一致。

  • 在 Workload Balancing 配置期间创建的 Workload Balancing 帐户的凭据。

    该帐户通常称为 Workload Balancing 用户帐户。XenServer 使用此帐户与 Workload Balancing 通信。此帐户是您在 Workload Balancing 配置期间在 Workload Balancing 虚拟设备上创建的帐户。

  • 您希望 Workload Balancing 监视的资源池(即池协调器)的凭据。

    此帐户由 Workload Balancing 虚拟设备用于连接到 XenServer 池。此帐户是在 XenServer 池协调器上创建的,具有 pool-adminpool-operator 角色。

首次连接 Workload Balancing 时,它将使用默认的阈值和设置来平衡工作负载。默认情况下自动功能(例如自动优化模式、电源管理和自动化)处于禁用状态。

使用证书

如果要上载其他(受信任的)证书或者配置证书验证,在将池连接到 Workload Balancing 之前,请注意以下几点:

  • 如果您希望 XenServer 验证自签名的 Workload Balancing 证书,必须使用 Workload Balancing IP 地址连接到 Workload Balancing。系统将基于该 IP 地址将自签名证书颁发给 Workload Balancing。

  • 如果要使用证书颁发机构颁发的证书,在连接 Workload Balancing 时可以更方便地指定 FQDN。但是,您可以在连接 WLB 服务器对话框中指定静态 IP 地址。将此 IP 地址用作证书中的使用者备用名称 (SAN)。

有关详细信息,请参阅证书

将池连接到 Workload Balancing 虚拟设备

  1. 在 XenCenter 中,选择您的资源池,然后在其属性窗格中单击 WLB 选项卡。WLB 选项卡将显示连接按钮。

    XenCenter 中的“WLB”选项卡的屏幕截图

  2. WLB 选项卡中,单击连接。此时将显示连接 WLB 服务器对话框。

    “连接 WLB 服务器”向导的屏幕截图

  3. 服务器地址部分中,输入以下信息:

    1. 地址框中,键入 Workload Balancing 虚拟设备的 IP 地址或 FQDN。例如,WLB-appliance-computername.yourdomain.net

    2. (可选)如果您在 Workload Balancing 配置期间更改了 Workload Balancing 端口,请在端口框中输入新端口号。XenServer 使用此端口与 Workload Balancing 通信。

      默认情况下,XenServer 通过端口 8012 连接 Workload Balancing。

  4. WLB 服务器凭据部分中,输入池在连接到 Workload Balancing 虚拟设备时要使用的用户名和密码。

    “更新凭据”对话框。字段为“用户名”和“密码”。

    这些凭据必须是在 Workload Balancing 配置期间创建的帐户。默认情况下,此帐户的用户名为 wlbuser

  5. Citrix Hypervisor 凭据部分,输入所配置池的用户名和密码。Workload Balancing 将使用这些凭据连接池中的主机。

    XenServer 凭据对话框。字段为“用户名”和“密码”。

    要使用当前登录 XenServer 所使用的凭据,请选中使用当前 XenCenter 凭据。如果您已使用访问控制功能 (RBAC) 为此帐户分配了角色,应确保该角色有足够的权限来配置 Workload Balancing。有关详细信息,请参阅 Workload Balancing 访问控制权限

在将池连接到 Workload Balancing 虚拟设备之后,Workload Balancing 会自动开始以默认的优化设置监视池。要修改这些设置或者更改为特定资源指定的优先级,请在继续操作之前至少等待 60 秒。或者等到 XenCenter 日志显示发现已完成。

重要:

在 Workload Balancing 运行一段时间之后,如果您没有收到最佳放置建议, 请对性能阈值进行评估。此评估如了解 Workload Balancing 在何时提出建议中所述。根据环境为 Workload Balancing 设置正确的阈值至关重要,否则它可能无法提供适当的建议。

从现有虚拟设备迁移数据

如果您使用的是随 XenServer 提供的 Workload Balancing 虚拟设备,则可以在升级到最新版本(Workload Balancing 8.2.1 或更高版本)时使用迁移脚本迁移现有数据。

XenServer 当前提供的 Workload Balancing 版本为 8.3.0。但是,Workload Balancing 8.2.0、8.2.1 和 8.2.2 以前随 Citrix Hypervisor 的早期版本提供。也可以使用此迁移脚本从 Workload Balancing 8.2.1 或 8.2.2 迁移到 Workload Balancing 8.3.0。

要使用迁移脚本,必须具有以下信息:

  • 用于远程 SSH 访问的现有 Workload Balancing 虚拟设备的 root 用户密码
  • 现有 Workload Balancing 虚拟设备上的数据库用户 postgres 的密码
  • 新 Workload Balancing 虚拟设备上的数据库用户 postgres 的密码

完成迁移步骤后,保持现有 Workload Balancing 虚拟设备在池中运行。

  1. 按照上一节中的步骤导入新 Workload Balancing 虚拟设备。
  2. 在新 Workload Balancing 虚拟设备的 SSH 控制台中,运行以下命令之一。

    • 对于 Workload Balancing 8.2.1 虚拟设备,请运行:

       /opt/vpx/wlb/migrate_db.sh 8.2.1 <IP of existing Workload Balancing appliance>
      
    • 对于 Workload Balancing 8.2.2 虚拟设备,请运行:

       /opt/vpx/wlb/migrate_db.sh 8.2.2 <IP of existing Workload Balancing appliance>
      

    该命令会在需要时提示您输入密码信息。

  3. 将 XenServer 池与 Workload Balancing 虚拟设备相连接。
  4. 对此版本的 Workload Balancing 虚拟设备的行为感到满意后,可以存档旧版本的虚拟设备。

备注:

  • 如果出现不可恢复的故障,请重新导入最新版本的 Workload Balancing 虚拟设备。
  • 请勿断开现有 Workload Balancing 虚拟设备的连接。否则,将删除现有虚拟设备上的数据。
  • 保留现有的 Workload Balancing 虚拟设备,直到确保新的 Workload Balancing 虚拟设备能够按需运行为止。
  • 如有必要,可以通过将旧版本的 Workload Balancing 虚拟设备重新连接到 XenServer 池来回滚此迁移。
Workload Balancing 入门