XenServer

管理工作负载平衡

工作负载平衡运行一段时间后,您可能需要执行一些例行任务,以使 工作负载平衡保持最佳运行状态。您可能需要执行这些任务,原因可能是环境变化 (例如不同的 IP 地址或凭据)、硬件升级或例行维护。

连接到工作负载平衡虚拟设备

配置工作负载平衡后,使用 CLI 或 XenCenter® 将要管理的池连接到工作负载平衡虚拟设备。 同样,您可能需要在某个时候重新连接到同一个虚拟设备。

要将池连接到工作负载平衡虚拟设备,您需要以下信息:

  • 工作负载平衡虚拟设备的 IP 地址或 FQDN

    • 要获取工作负载平衡虚拟设备的 IP 地址,请执行以下操作:

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

  • 工作负载平衡虚拟设备的端口号。默认情况下,XenServer® 通过端口 8012 连接到工作负载平衡。

    仅当您在工作负载平衡配置期间更改了端口号时才编辑端口号。在工作负载平衡配置中、 任何防火墙规则中以及“连接到 WLB 服务器”对话框中指定的端口号 必须匹配。

  • 您希望工作负载平衡监视的资源池的凭据。

  • 您在工作负载平衡配置期间创建的工作负载平衡帐户的凭据。

    此帐户通常称为工作负载平衡用户帐户。XenServer 使用此帐户与 工作负载平衡进行通信。您在工作负载平衡配置期间在工作负载 平衡虚拟设备上创建了此帐户。

(1) XenServer 使用您在工作负载平衡配置期间创建的帐户与工作负载平衡进行通信。(2) 工作负载平衡虚拟设备使用池的凭据向 XenServer 进行身份验证。

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

使用证书

证书验证默认启用。要将工作负载平衡虚拟设备与 XenServer 连接, 您必须将工作负载平衡证书导入到 XenServer 池中。如果您使用的是 XenCenter 2025.1 或 更高版本以及工作负载平衡 8.4.0 或更高版本,XenCenter 会自动从您的 工作负载平衡虚拟设备导入所需的证书。如果您使用的是早期版本,则必须手动导入证书。有关 更多信息,请参阅证书

如果您想上传其他(受信任的)证书或配置证书验证,请在将池连接到工作负载平衡之前 注意以下事项:

  • 在首次设置工作负载平衡虚拟设备期间生成的自签名证书始终 对 IP 地址有效。如果在初始设置期间为工作负载平衡虚拟设备配置了主机名和 FQDN, 则自签名证书也对主机名和 FQDN 有效。

  • 如果您想使用来自证书颁发机构的证书,在连接到 工作负载平衡时指定 FQDN 会更容易。但是,您可以在“连接到 WLB 服务器”对话框中指定静态 IP 地址。将此 IP 地址用作证书中的主题备用名称 (SAN)。

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

如果您的池无法连接到工作负载平衡,请禁用证书验证:

  1. 获取池 UUID:

    xe pool-list
    <!--NeedCopy-->
    
  2. 禁用证书验证:

    xe pool-param-set wlb-verify-cert=false uuid=<uuid_of_pool>
    <!--NeedCopy-->
    

如果您的池在关闭证书验证的情况下可以连接到工作负载平衡,则问题出在您的 证书配置上。如果无法连接,则问题出在您的工作负载平衡凭据或您的 网络连接上。请联系支持人员或参阅排查工作负载平衡故障 以获取更多信息。

将池连接到工作负载平衡虚拟设备

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

    XenCenter GUI 界面,WLB 面板已打开。(/en-us/xenserver/8/media/wlb-xva-connect.png)

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

    “连接到 WLB 服务器”对话框。(/en-us/xenserver/8/media/wlb-connect-wlb-server-all.png)

  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 虚拟设备。

    “更新凭据”对话框。字段为用户名和密码。(/en-us/xenserver/8/media/wlb-connect-wlb-server-wlb-pool-creds.png)

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

  5. 在“XenServer 凭据”部分中,输入您正在配置的池的用户名和密码。 Workload Balancing 使用这些凭据连接到该池中的主机。

    “XenServer 凭据”对话框。字段为用户名和密码。(/en-us/xenserver/8/media/wlb-connect-wlb-server-xs-creds.png)

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

  6. 单击“确定”。XenCenter 将启动连接过程。

  7. 配置证书:

    • (Workload Balancing 8.4.0 及更高版本,XenCenter 2025.1.0 及更高版本) 如果为您的池启用了证书验证, XenCenter 现在会从虚拟设备检索 Workload Balancing 证书。

      1. 如果 XenCenter 显示新的或修改后的证书,请单击 查看证书 以查看 信息。您可以根据 Workload Balancing 控制台中的信息验证证书指纹。
      2. 选择 接受 证书或 取消 操作。

        • 如果您选择 接受 证书,XenCenter 会将其安装到您的 XenServer 池中。
        • 如果您选择 取消,XenCenter 会中止该过程。证书不会安装到 XenServer 池中。
    • (Workload Balancing 或 XenCenter 的早期版本) 证书不受自动支持,您必须 配置 XenServer 以验证您的 Workload Balancing 证书。有关详细信息,请参阅 证书

将池连接到 Workload Balancing 虚拟设备后,Workload Balancing 会自动开始 使用默认优化设置监视池。如果您想修改这些设置或更改资源的 优先级,请等到 XenCenter 日志显示发现已完成再继续。

重要提示:

Workload Balancing 运行一段时间后,如果您没有收到最佳建议,请评估您的 性能阈值,如 配置 Workload Balancing 行为 中所述。将 Workload Balancing 设置为适合您环境的正确阈值至关重要,否则其建议可能不适用。

Workload Balancing 访问控制权限

当您的环境中实施了基于角色的访问控制 (RBAC) 时,所有用户角色都可以显示 WLB 选项卡。 但是,并非所有角色都可以执行所有操作。下表列出了管理员所需的最低角色 才能使用 Workload Balancing 功能:

权限 所需最低角色
配置、初始化、启用、禁用 WLB 池操作员
在 WLB 选项卡中应用 WLB 优化建议 池操作员
修改 WLB 报告订阅 池操作员
接受 WLB 放置建议 虚拟机电源管理员
生成 WLB 报告,包括池审计跟踪报告 只读
显示 WLB 配置 只读

下表提供了有关权限的更多详细信息。

权限 允许受让人执行
配置、初始化、启用、禁用 WLB 配置 WLB
  初始化 WLB 并更改 WLB 服务器
  启用 WLB
  禁用 WLB
在 WLB 选项卡中应用 WLB 优化建议 应用显示在 WLB 选项卡中的任何优化建议
修改 WLB 报告订阅 更改生成的 WLB 报告或其收件人
接受 WLB 放置建议 选择 Workload Balancing 建议用于放置的其中一个主机
生成 WLB 报告,包括池审核跟踪报告 查看并运行 WLB 报告,包括池审核跟踪报告
显示 WLB 配置 查看池的 WLB 设置,如 WLB 选项卡所示

如果用户尝试使用 Workload Balancing 且该用户没有足够的权限,则会出现一个角色提升对话框 出现。有关 RBAC 的更多信息,请参阅 基于角色的访问控制

重新配置池以使用另一个 Workload Balancing 虚拟设备

您可以重新配置资源池以使用不同的工作负载平衡虚拟设备。

如果您要从旧版本的工作负载平衡虚拟设备迁移到最新版本,在 断开旧虚拟设备的连接之前,您可以将其数据迁移到新版本的虚拟设备。有关 详细信息,请参阅 从现有虚拟设备迁移数据

将池与旧的工作负载平衡虚拟设备断开连接后,您可以通过指定 新的工作负载平衡虚拟设备的名称来连接池。

要使用不同的工作负载平衡虚拟设备,请执行以下操作:

  1. (可选) 从旧版本的虚拟设备迁移数据。有关详细信息,请参阅 从现有虚拟设备迁移数据

  2. 在 XenCenter 中,从菜单中选择断开工作负载平衡服务器,并单击断开连接 出现提示时。

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

  4. 连接到新的虚拟设备。有关详细信息,请参阅 连接到工作负载平衡虚拟设备

更改工作负载平衡凭据

初始配置后,如果您想更新 XenServer 和工作负载平衡设备用于 通信的凭据,请使用以下过程:

  1. 要暂停工作负载平衡,请转到WLB选项卡并单击暂停

  2. 通过运行 wlbconfig 命令更改工作负载平衡凭据。有关详细信息,请参阅 工作负载平衡命令

  3. 重新启用工作负载平衡并指定新凭据。

  4. 进度条完成后,单击连接

    此时将显示连接到 WLB 服务器对话框。

  5. 单击更新凭据

  6. 服务器地址部分中,根据需要修改以下设置:

    • 地址框中,键入 Workload Balancing 设备的 IP 地址或 FQDN。

    • (可选) 如果在 Workload Balancing 配置期间更改了端口号,请键入该端口号。 在此框中以及在 Workload Balancing 配置期间指定的端口号是 XenServer 用于连接 Workload Balancing 的端口号。

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

      注意:

      仅当您在运行 Workload Balancing 配置向导时更改了此端口号时,才编辑此端口号。 运行 Workload Balancing 配置向导时指定的端口号值以及“连接到 WLB 服务器”对话框中指定的端口号值必须匹配。

  7. WLB 服务器凭据部分中,输入运行 XenServer 的计算机 用于连接 Workload Balancing 服务器的用户名(例如,wlbuser)和密码。

  8. XenServer 凭据部分中,输入要配置的池的用户名和密码 (通常是池协调器的密码)。Workload Balancing 使用这些凭据连接到 该池中运行 XenServer 的主机。

    要使用当前登录到 XenServer 的凭据,请选择使用当前 XenCenter 凭据

更改 Workload Balancing IP 地址

要更改 Workload Balancing IP 地址,请在 Workload Balancing 虚拟设备 控制台中完成以下步骤:

  1. 要查看当前的 Workload Balancing IP 地址,请在虚拟设备上运行 ifconfig 命令。

  2. 根据您要执行的操作,运行以下命令之一:

    • 要将 DHCP 更改为静态 IP:

       nmcli con mod eth0 ipv4.method manual ipv4.addresses <IP-address>/<CIDR-prefix> ipv4.gateway <Gateway>; nmcli con up eth0
      
    • 将静态 IP 更改为 DHCP:

       nmcli con mod eth0 ipv4.method auto ipv4.addresses "" ipv4.gateway ""; nmcli con up eth0
      
    • 将静态 IP 更改为另一个静态 IP:

       nmcli con mod eth0 ipv4.method manual ipv4.addresses <new IP-address>/<CIDR-prefix> ipv4.gateway <Gateway>; nmcli con up eth0
      
  3. 要验证更改是否完成,请再次运行 ifconfig 命令以查看新的 Workload Balancing IP 地址。

  4. 要检查 Workload Balancing 服务是否正常运行,请运行 systemctl status workloadbalancing 命令。

    如果返回结果包含 Active: active (running),则 Workload Balancing 服务正常运行。如果 结果包含 Active: inactive (dead) 或任何其他状态,则 Workload Balancing 可能会异常退出。

更改 Workload Balancing 虚拟设备配置

首次安装 Workload Balancing 虚拟设备时,它具有以下默认配置:

配置
vCPU 数量 2
内存 (RAM) 2 GB
磁盘空间 30 GB

这些值适用于大多数环境。如果您正在监视非常大的池,则可以考虑增加 这些值。

更改分配给虚拟设备的 vCPU 数量

默认情况下,Workload Balancing 虚拟设备分配有 2 个 vCPU。此值足以满足托管 1000 个 VM 的池。通常不需要增加它。仅当您的环境较小时,才减少分配给虚拟设备的 vCPU 数量 。

此过程说明如何更改分配给 Workload Balancing 虚拟设备的 vCPU 数量。在执行这些步骤之前,请关闭 虚拟设备。Workload Balancing 将在大约五 分钟内不可用。

  1. 关闭 Workload Balancing 虚拟设备。

  2. 在 XenCenter 资源窗格中,选择 Workload Balancing 虚拟设备。

  3. 在虚拟设备的“常规”选项卡中,单击“属性”。“属性”对话框随即打开。

  4. 在“属性”对话框的“CPU”选项卡中,将 CPU 设置编辑为所需值。

  5. 单击“确定”。

  6. 启动 Workload Balancing 虚拟设备。

新的 vCPU 设置在虚拟设备启动时生效。

调整虚拟设备内存大小

默认情况下,Workload Balancing 虚拟设备分配有 2 GB 内存。

对于大型池,请将 Workload Balancing 虚拟设备设置为消耗可为其提供的最大内存量(甚至高达 16 GB)。不必担心高内存利用率。高内存利用率对于 虚拟设备来说是正常的,因为数据库总是会消耗它能获得的所有内存。

注意:

动态内存控制不支持与工作负载平衡虚拟设备一起使用。 为分配给虚拟设备的最大内存设置一个固定值。

此过程说明如何调整工作负载平衡虚拟设备的内存大小。在执行这些步骤之前,请关闭虚拟设备。 工作负载平衡将大约五分钟不可用。

  1. 关闭工作负载平衡虚拟设备。

  2. 在 XenCenter 资源窗格中,选择工作负载平衡虚拟设备。

  3. 在虚拟设备的“内存”选项卡中,单击“编辑”。“内存设置”对话框将打开。

  4. 将内存设置编辑为所需值。

  5. 单击“确定”。

  6. 启动工作负载平衡虚拟设备。

新的内存设置将在虚拟设备启动时生效。

扩展虚拟设备磁盘

警告:

仅在 8.3.0 及更高版本中才能扩展可用磁盘空间,因为 8.3.0 之前不支持 LVM。

工作负载平衡不支持减少可用磁盘空间。

默认情况下,工作负载平衡虚拟设备分配有 30 GB 的磁盘空间。

工作负载平衡虚拟设备监控的虚拟机数量越多,它消耗的磁盘空间就越多 每天。

您可以使用以下公式估算虚拟设备所需的磁盘大小:

Total estimated disk size = ( ( number of days * average disk usage ) + base disk usage ) * grooming multiplier
  • 天数 是要保留的数据天数

  • 平均磁盘使用量 取决于受监控的 VM 数量。以下值给出了 特定 VM 数量的近似值:

    • 对于 200 个 VM - 0.246 GB/天
    • 对于 400 个 VM - 0.505 GB/天
    • 对于 600 个 VM - 0.724 GB/天
    • 对于 800 个 VM - 0.887 GB/天
  • 基本磁盘使用量 为 2.4 GB
  • 整理乘数 为 1.25。此乘数考虑了整理所需的磁盘空间量。它 假设整理需要额外 25% 的总计算磁盘空间。

适用于 8.3.0 及更高版本

此过程说明了如何使用 Linux 卷管理器 (LVM) 扩展适用于 Workload Balancing 8.3.0 及更高版本的 Workload Balancing 虚拟设备的虚拟磁盘。

警告:

此过程只能由经验丰富的 Linux 系统管理员执行,因为错误地执行这些 步骤可能会导致 Workload Balancing 虚拟设备损坏。在执行这些步骤之前,请务必备份虚拟设备, 并在开始之前关闭虚拟设备。Workload Balancing 将在 大约五分钟内不可用。

要创建新分区、操作物理卷并更改文件系统大小,请执行以下操作 (以超级用户 (root) 身份登录):

  1. 查看当前分区:

    fdisk -l
    <!--NeedCopy-->
    

    默认分区可能如下所示:

    工作负载平衡默认分区

  2. 查看磁盘分区样式:

    parted <disk>
    <!--NeedCopy-->
    

    例如,要查看 /dev/xvda 的分区样式:

    parted /dev/xvda
    <!--NeedCopy-->
    
  3. 输入 p

    如果出现以下错误消息,请输入 Fix 来解决每个错误:

    • “错误:备份 GPT 表不在磁盘末尾,但它应该在那里。这可能意味着另一个 操作系统认为磁盘较小。通过将备份移动到末尾(并删除旧 备份)来修复吗?”
    • “警告:并非 <disk> 可用的所有空间都已使用,您可以修复 GPT 以使用所有 空间(额外 <block number> 块)或继续使用当前设置?”

    工作负载平衡磁盘分区样式

  4. 输入 q 并按 Enter 退出 parted。
  5. 编辑分区:

    fdisk <disk>
    <!--NeedCopy-->
    

    例如,要编辑工作负载平衡设备中的分区:

    fdisk /dev/xvda
    <!--NeedCopy-->
    
  6. 键入 n 并按 Enter 创建新分区,键入 p 并按 Enter 将其设为主 分区,然后按 Enter 使用默认值,即下一个可用分区(在此示例中,如上所述,它将是 分区号 3)。

    注意:

    如果尚未分配额外空间,您将看到一条消息,指示没有可用空闲扇区 可用。键入 q 并按 Enter 退出 fdisk。首先通过 XenCenter 分配所需空间,然后 返回此步骤。

  7. 按两次 Enter 键以使用可用分区的默认起始和结束扇区(或手动指定 所需的扇区)。键入 t 以指定分区类型,选择所需分区(在本例中为 3),键入 8e,然后按 Enter 键将其设为 LVM 类型分区。

    示例输出:

    Workload Balancing 创建新分区

  8. 键入 p 并按 Enter 键以打印分区详细信息。输出应与下方类似 (请注意,起始和结束块值可能会因您分配的空间量而异):

    Workload Balancing 打印分区详细信息

  9. 如果出现错误,请键入 q 并按 Enter 键以不保存退出,并防止现有 分区受到影响。从步骤 1 重新开始。否则,如果一切正常,请键入 w 并按 Enter 键以写入更改。

    写入这些更改后,您可能会收到警告,指示设备正忙且内核仍在使用旧表。 如果是这种情况,请运行此命令以刷新分区表,然后 继续下一步:partprobe

    确保新设备分区(在本例中为 /dev/xvda4)现在已列出。为此,请运行:fdisk -l

    现在应列出新创建的设备:

    Workload Balancing 列出新设备分区

  10. 如果输出正确,请创建物理卷:

    pvcreate <new partition>
    <!--NeedCopy-->
    

    例如:

    pvcreate /dev/xvda4
    <!--NeedCopy-->
    
  11. 检查上面创建的物理卷现在是否已列出:

    pvs
    <!--NeedCopy-->
    

    在此示例中,添加的额外空间为 12G。示例输出:

    Workload Balancing 列出新物理卷

  12. 根据上一个命令的输出,名为 centos 的卷组必须进行扩展:

    vgextend <volume group> <new partition>
    <!--NeedCopy-->
    

    例如:

    vgextend centos /dev/xvda4
    <!--NeedCopy-->
    
  13. 检查当前卷组:

    vgs
    <!--NeedCopy-->
    
  14. 运行以下命令:

    pvscan
    <!--NeedCopy-->
    

    这应该显示 /dev/xvda4 作为 centos 卷组的一部分。示例输出:

    工作负载平衡显示当前卷组

  15. 如果前述步骤中显示的信息正确无误,请运行此命令以查看 要扩展的逻辑卷的逻辑卷路径:

    lvdisplay
    <!--NeedCopy-->
    

    在此示例中,路径为 /dev/centos/root

    工作负载平衡显示逻辑卷

  16. 运行以下命令以查看可用 PE/大小(这会告诉您扩展 分区时要使用的确切值):

    vgdisplay
    <!--NeedCopy-->
    

    示例输出:

    工作负载平衡查看可用 PE/大小

  17. 使用可用 PE/大小值和步骤 11 中输出的逻辑卷路径,扩展逻辑卷:

    lvextend -l +100%FREE /dev/centos/root
    <!--NeedCopy-->
    

    如果执行成功,请扩展文件系统:

    resize2fs /dev/centos/root
    <!--NeedCopy-->
    

    示例输出:

    工作负载平衡扩展文件系统(/en-us/xenserver/8/media/wlb-extend-filesystem.png)

  18. 验证文件系统大小是否按预期显示:

    df -h /*
    <!--NeedCopy-->
    

    工作负载平衡验证文件系统大小(/en-us/xenserver/8/media/wlb-verify-filesystem-size.png)

如果您看到的是预期数字,则表示您已成功分配所需空间并正确扩展了 分区。如需进一步帮助,请联系 XenServer 支持。

停止工作负载平衡

由于工作负载平衡是在池级别配置的,当您希望它停止管理池时,您必须执行以下操作之 一:

暂停工作负载平衡。暂停工作负载平衡会阻止 XenCenter 显示针对 指定资源池的建议并管理该池。暂停旨在用于短时间,并允许您恢复监视 而无需重新配置。当您暂停工作负载平衡时,该资源池的数据收集将停止,直到 您再次启用工作负载平衡。

  1. 在 XenCenter 中,选择要禁用工作负载平衡的资源池。

  2. 在“WLB”选项卡中,单击“暂停”。“WLB”选项卡上会显示一条消息,指示工作负载平衡已 暂停。

提示:

要恢复监视,请单击“WLB”选项卡中的“恢复”按钮。

将池与工作负载平衡断开连接。与工作负载平衡虚拟设备断开连接会中断 池之间的连接,如果可能,还会从工作负载平衡数据库中删除池数据。当您 与工作负载平衡断开连接时,工作负载平衡会停止收集池上的数据。

  1. 在 XenCenter 中,选择要停止工作负载平衡的资源池。

  2. 从“基础结构”菜单中,选择“断开工作负载平衡服务器”。此时将显示“断开工作负载 平衡服务器”对话框。

  3. 单击“断开连接”以永久停止工作负载平衡监视池。

提示:

如果已将池与 Workload Balancing 虚拟设备断开连接,若要重新在该池上启用 Workload Balancing, 则必须重新连接到 Workload Balancing 设备。有关信息,请参阅 连接到 Workload Balancing 虚拟设备

启用 Workload Balancing 后进入维护模式

启用 Workload Balancing 后,如果您将主机置于维护模式,XenServer 会将该主机上运行的 VM 迁移到 可用的最佳主机。XenServer 使用基于性能数据、放置策略和性能阈值的 Workload Balancing 建议来 选择最佳主机。

如果没有可用的最佳主机,单击此处暂停 VM 字样会显示在进入维护模式 向导中。在这种情况下,由于没有具有足够资源来运行 VM 的主机,Workload Balancing 不会建议放置。您可以暂停此 VM,或者退出维护模式并在同一池中的另一台主机上暂停 VM。 然后,如果您重新进入进入维护模式对话框,Workload Balancing 可能会 列出适合迁移的主机。

注意:

当您将主机脱机进行维护且 Workload Balancing 已启用时,“Workload Balancing” 字样会显示在进入维护模式向导中。

要启用 Workload Balancing 后进入维护模式:

  1. 在 XenCenter 的资源窗格中,选择要脱机的物理服务器。

  2. 服务器菜单中,选择进入维护模式

  3. 进入维护模式向导中,单击进入维护模式

    主机上运行的 VM 会根据 Workload Balancing 性能数据、您的放置策略和性能阈值 自动迁移到最佳主机。

要将服务器退出维护模式:

  1. 右键单击主机,然后选择退出维护模式

    当您将主机从维护模式中移除时,XenServer 会自动将该主机的原始 VM 还原到该 主机。

移除工作负载平衡虚拟设备

要移除 Workload Balancing 虚拟设备,我们建议您使用从 XenCenter 删除虚拟机的标准过程。

删除 Workload Balancing 虚拟设备时,包含 Workload Balancing 的 PostgreSQL 数据库也会被 删除。要保存此数据,您必须在删除 Workload Balancing 虚拟 设备之前将其从数据库中迁移出来。

管理工作负载平衡数据库

Workload Balancing 数据库是一个 PostgreSQL 数据库。PostgreSQL 是一个开源关系数据库。您可以通过 搜索网络找到 PostgreSQL 的文档。

以下信息适用于熟悉数据库管理任务的数据库管理员和 PostgreSQL 高级用户。 如果您不熟悉 PostgreSQL,我们建议您在尝试后续章节中的数据库任务之前先 熟悉它。

默认情况下,PostgreSQL 用户名为 postgres。您在 Workload Balancing 配置期间设置此帐户的密码。

您可以存储的历史数据量取决于分配给 Workload Balancing 的虚拟磁盘大小 和所需的最小空间。默认情况下,分配给 Workload Balancing 的虚拟磁盘大小为 30 GB。在 数据库管理方面,您可以通过配置数据库 清理来控制数据库数据占用的空间。有关详细信息,请参阅 数据库清理参数

要存储大量历史数据,例如如果您想启用池审计跟踪报告,您可以执行以下任一 操作:

  • 增大分配给 Workload Balancing 虚拟设备的虚拟磁盘大小。为此,请导入 虚拟设备,并按照扩展虚拟设备磁盘中的步骤增大虚拟磁盘的 大小。

  • 通过启用对数据库的远程客户端访问并使用第三方数据库管理工具,创建数据的定期 重复备份副本。

访问数据库

Workload Balancing 虚拟设备中配置了防火墙 (firewalld)。在访问 数据库之前,您必须在设备防火墙中打开 PostgreSQL 服务器端口 (5432)。

  1. 在工作负载平衡虚拟设备控制台中,运行以下命令以打开 PostgreSQL 端口:

    firewall-cmd --permanent --zone=public --add-port=5432/tcp
    <!--NeedCopy-->
    
  2. 重新加载防火墙以应用更改:

    firewall-cmd --reload
    <!--NeedCopy-->
    

控制数据库清理

Workload Balancing 数据库会在虚拟设备达到 Workload Balancing 运行所需的 最小磁盘空间量时自动删除最旧的数据。默认情况下,所需的最小磁盘空间量 设置为 4,096 MB。

Workload Balancing 数据库清理选项通过文件 wlb.conf 控制。

当 Workload Balancing 虚拟设备上没有足够的磁盘空间时,Workload Balancing 会自动 开始清理历史数据。过程如下:

  1. 在预定义的清理间隔,Workload Balancing 数据收集器会检查是否需要清理。如果数据库数据已增长到 仅剩最小所需磁盘空间未被使用,则需要清理。使用 GroomingRequiredMinimumDiskSizeInMB 设置最小 所需磁盘空间。

    如果需要,可以使用 GroomingIntervalInHour 更改清理间隔。但是,默认情况下,Workload Balancing 每小时检查一次是否需要清理。

  2. 如果需要清理,Workload Balancing 会从最旧的一天开始清理数据。Workload Balancing 然后检查现在是否有足够的磁盘空间来满足最小磁盘空间要求。

  3. 如果第一次清理未能释放足够的磁盘空间,Workload Balancing 会重复清理最多 GroomingRetryCounter 次,而无需等待 GroomingIntervalInHour 小时。

  4. 如果第一次或重复清理释放了足够的磁盘空间,Workload Balancing 会等待 GroomingIntervalInHour 小时,然后返回步骤 1。

  5. 如果由 GroomingRetryCounter 启动的清理未能释放足够的磁盘空间,Workload Balancing 会等待 GroomingIntervalInHour 小时,然后返回步骤 1。

数据库清理参数

wlb.conf 文件中有五个参数用于控制数据库清理的各个方面。它们如下所示:

  • GroomingIntervalInHour。控制在进行下一次清理检查之前经过的小时数。例如,如果 输入 1,Workload Balancing 会每小时检查一次磁盘空间。如果输入 2,Workload Balancing 会每两小时检查 磁盘空间,以确定是否必须进行清理。

  • GroomingRetryCounter。控制 Workload Balancing 尝试重新运行清理数据库查询的次数。

  • GroomingDBDataTrimDays。控制 Workload Balancing 每次尝试清理数据时从数据库中删除的数据天数。 默认值为一天。

  • GroomingDBTimeoutInMinute。控制数据库整理在超时 并取消之前所需的时间(分钟)。如果整理查询所需时间超出预期,并且未在超时 期限内完成运行,则会取消整理任务。默认值为 0 分钟,这意味着数据库整理永远不会 超时。

  • GroomingRequiredMinimumDiskSizeInMB。控制分配给 Workload Balancing 虚拟设备 的虚拟磁盘中剩余的最小可用空间量。当虚拟磁盘中的数据增长到虚拟磁盘上仅剩最小 磁盘大小时,Workload Balancing 会触发数据库整理。默认值为 4,096 MB。

要编辑这些值,请参阅 编辑 Workload Balancing 配置文件

更改数据库密码

我们建议使用 wlbconfig 命令更改数据库密码。有关详细信息,请参阅 修改 Workload Balancing 配置选项。 请勿通过修改 wlb.conf 文件来更改密码。

归档数据库数据

为避免删除较旧的历史数据,您可以选择将数据从数据库复制以进行归档。为此,您必须 执行以下任务:

  1. 在数据库上启用客户端身份验证。

  2. 使用您选择的 PostgreSQL 数据库管理工具设置归档。

启用数据库的客户端身份验证

虽然您可以通过 Workload Balancing 控制台直接连接到数据库,但您也可以使用 PostgreSQL 数据库管理工具。下载数据库管理工具后,将其安装在您要连接到数据库的系统上。 例如,您可以将该工具安装在运行 XenCenter 的同一系统上。

在启用数据库的远程客户端身份验证之前,您必须:

  1. 修改数据库配置文件(包括 pg_hba.conf 文件和 postgresql.conf)以允许连接。

  2. 停止 Workload Balancing 服务,重新启动数据库,然后重新启动 Workload Balancing 服务。

  3. 在数据库管理工具中,配置数据库的 IP 地址(即 Workload Balancing 虚拟设备的 IP 地址)和数据库密码。

修改数据库配置文件

要在数据库上启用客户端身份验证,您必须修改 Workload Balancing 虚拟 设备上的以下文件:pg_hba.conf 文件和 postgresql.conf 文件。

编辑 pg_hba.conf 文件:

  1. 修改 pg_hba.conf 文件。在 Workload Balancing 虚拟设备控制台中,使用编辑器(例如 VI)打开 pg_hba.conf 文件 。例如:

    vi /var/lib/pgsql/data/pg_hba.conf
    <!--NeedCopy-->
    
  2. 如果您的网络使用 IPv4,请将连接计算机的 IP 地址添加到此文件。例如:

    在配置部分中,在 #IPv4 local connections 下输入以下内容:

    • 类型: host
    • 数据库: all
    • 用户: all
    • CIDR 地址: 0.0.0.0/0
    • 方法: trust
  3. CIDR-ADDRESS 字段中输入您的 IP 地址。

    注意:

    您可以输入您的 IP 地址并将最后三位数字替换为 0/24,而不是输入 0.0.0.0/0。 斜杠后的“24”定义了子网掩码,并且只允许来自该 子网掩码内的 IP 地址的连接。

    当您为 Method 字段输入 trust 时,它允许连接进行身份验证而无需 密码。如果您为 Method 字段输入 password,则在连接到 数据库时必须提供密码。

  4. 如果您的网络使用 IPv6,请将连接计算机的 IP 地址添加到此文件。例如:

    #IPv6 local connections 下输入以下内容:

    • 类型: host
    • 数据库: all
    • 用户: all
    • CIDR 地址: ::0/0
    • 方法: trust

    CIDR-ADDRESS 字段中输入 IPv6 地址。在此示例中,::0/0 允许数据库接受来自 任何 IPv6 地址的连接。

  5. 保存文件并退出编辑器。

  6. 更改任何数据库配置后,必须重新启动数据库以应用更改。运行以下 命令:

    systemctl restart postgresql.service
    <!--NeedCopy-->
    

编辑 postgresql.conf 文件:

  1. 修改 postgresql.conf 文件。从 Workload Balancing 虚拟设备控制台,使用编辑器(例如 VI)打开 postgresql.conf 文件。例如:

    vi /var/lib/pgsql/data/postgresql.conf
    <!--NeedCopy-->
    
  2. 编辑文件,使其侦听任何端口,而不仅仅是本地主机。例如:

    1. 找到以下行:

      # listen_addresses='localhost'
      <!--NeedCopy-->
      
    2. 删除注释符号 (#) 并将该行编辑为如下所示:

      listen_addresses='*'
      <!--NeedCopy-->
      
  3. 保存文件并退出编辑器。

  4. 更改任何数据库配置后,必须重新启动数据库才能应用更改。运行以下 命令:

    systemctl restart postgresql.service
    <!--NeedCopy-->
    

更改数据库维护窗口

默认情况下,Workload Balancing 每天格林威治标准时间 (GMT) 00:05(即凌晨 12:05)自动执行例行数据库维护。 在此维护窗口期间,会进行数据收集,但数据记录可能会延迟。但是,在此期间 Workload Balancing 用户界面控件可用,并且 Workload Balancing 仍会提供 优化建议。

注意:

  • 在维护窗口期间,Workload Balancing 服务器会重新启动。如果您在此 期间重新启动虚拟机,它们将不会由 WLB 进行平衡,直到 WLB 服务完全恢复。
  • 同样,在其他时间,如果您重新启动池中的所有虚拟机,重新启动 Workload Balancing 服务器可能 会导致这些虚拟机保持不平衡状态,直到 WLB 再次可用。

数据库维护包括释放已分配的未使用磁盘空间和重新索引数据库。维护大约持续 6 到 8 分钟。在较大的池中,维护时间可能会更长,具体取决于 Workload Balancing 执行发现所需的时间。

根据您的时区,您可能希望更改维护发生的时间。例如,在日本 标准时间 (JST) 时区,Workload Balancing 维护发生在上午 9:05 (09:05),这可能会与某些 组织的峰值使用时间冲突。如果您想指定季节性时间变化,例如夏令时或夏季 时间,您必须将更改构建到您输入的值中。

更改维护时间:

  1. 在 Workload Balancing 控制台中,从任何目录运行以下命令:

    crontab -e
    <!--NeedCopy-->
    

    Workload Balancing 显示以下内容:

    05 0 * * * /opt/vpx/wlb/wlbmaintenance.sh
    <!--NeedCopy-->
    

    05 0 表示 Workload Balancing 执行维护的默认时间,以分钟 (05) 为单位,然后 以小时 (0) 为单位。(星号表示作业运行的日期、月份和年份:请勿编辑这些字段。) 条目 05 0 指示数据库维护每天晚上在格林威治标准时间 (GMT) 凌晨 12:05 或 00:05 进行。 此设置意味着,如果您住在纽约,维护将在冬季月份的晚上 7:05 (19:05) 运行, 夏季月份则在晚上 8:05 运行。

    重要提示:

    请勿编辑作业运行的日期、月份和年份(由星号表示)。数据库维护必须每天 运行。

  2. 输入您希望维护在 GMT 时间发生的具体时间。

  3. 保存文件并退出编辑器。

自定义工作负载平衡

工作负载平衡提供了多种自定义方法:

  • 用于脚本的命令行。有关详细信息,请参阅 工作负载平衡命令

  • 主机开机脚本支持。您还可以通过主机开机 脚本(间接)自定义工作负载平衡。有关详细信息,请参阅主机和资源池

升级工作负载平衡

出于安全原因,工作负载平衡的在线升级已被弃用。客户不能再使用 yum 存储库进行升级。客户可以通过导入可从 XenServer 下载页面 下载的最新工作负载 平衡虚拟设备来升级到最新版本的工作负载平衡。

工作负载平衡命令

本节提供了工作负载平衡命令的参考。您可以从 XenServer 主机或控制台执行这些命令,以控制工作负载平衡或配置 XenServer 主机上的工作负载平衡设置。本附录包括 xe 命令和服务命令。

在工作负载平衡设备上运行以下服务命令。为此,您必须登录到工作负载 平衡虚拟设备。

登录到工作负载平衡虚拟设备

在运行任何服务命令或编辑 wlb.conf 文件之前,您必须登录到工作负载平衡虚拟 设备。为此,您必须输入用户名和密码。除非您在虚拟 设备上创建了额外的用户帐户,否则请使用 root 用户帐户登录。您在运行工作负载平衡 配置向导时(在将池连接到工作负载平衡之前)指定了此帐户。您可以选择使用 XenCenter 中的控制台 选项卡登录到设备。

要登录到工作负载平衡虚拟设备:

  1. 在登录提示符处,输入帐户用户名。

  2. 在“密码”提示符下,输入该帐户的密码:

    注意:

    要从 Workload Balancing 虚拟设备注销,只需在命令提示符处键入 logout

wlb restart

在 Workload Balancing 设备中的任意位置运行 wlb restart 命令,以停止并重新启动 Workload Balancing 数据收集、Web 服务和数据分析服务。

wlb start

在 Workload Balancing 设备中的任意位置运行 wlb start 命令,以启动 Workload Balancing 数据 收集、Web 服务和数据分析服务。

wlb stop

在 Workload Balancing 设备中的任意位置运行 wlb stop 命令,以停止 Workload Balancing 数据 收集、Web 服务和数据分析服务。

wlb status

在 Workload Balancing 设备中的任意位置运行 wlb status 命令,以确定 Workload Balancing 服务器的状态。运行此命令后,将显示三个 Workload Balancing 服务(Web 服务、 数据收集服务和数据分析服务)的状态。

修改 Workload Balancing 配置选项

许多 Workload Balancing 配置(例如数据库和 Web 服务配置选项)都存储在 wlb.conf 文件中。wlb.conf 文件是 Workload Balancing 虚拟设备上的配置文件。

要修改最常用的选项,请使用命令 wlb config。在 Workload Balancing 虚拟设备上运行 wlb config 命令可让您重命名 Workload Balancing 用户帐户、更改其密码或 更改 PostgreSQL 密码。运行此命令后,Workload Balancing 服务将重新启动。

在 Workload Balancing 虚拟设备上运行以下命令:

wlb config
<!--NeedCopy-->

屏幕会显示一系列问题,指导您更改 Workload Balancing 用户名和密码 以及 PostgreSQL 密码。按照屏幕上的问题更改这些项。

重要提示:

仔细检查您在 wlb.conf 文件中输入的任何值:Workload Balancing 不会验证 wlb.conf 文件中的值。因此,如果您指定的配置参数不在所需范围内,Workload Balancing 不会生成错误日志。

编辑 Workload Balancing 配置文件

您可以通过编辑 wlb.conf 文件来修改 Workload Balancing 配置选项,该文件存储在 Workload Balancing 虚拟设备上的 /opt/vpx/wlb 目录中。通常,只有在 XenServer 的指导下才能更改此 文件中的设置。但是,如果需要,您可以更改三类设置:

  • Workload Balancing 帐户名和密码。通过运行 wlb config 命令修改这些凭据会更容易。
  • 数据库密码。可以使用 wlb.conf 文件修改此值。但是,我们建议修改它 通过 wlb config 命令,因为此命令会修改 wlb.conf 文件并自动更新 数据库中的密码。如果您选择修改 wlb.conf 文件,则必须运行查询以使用新密码更新 数据库。
  • 数据库整理参数。您可以按照数据库管理部分中的说明,使用此文件修改数据库整理参数,例如数据库整理 间隔。但是,如果您这样做, 我们建议您谨慎行事。

对于 wlb.conf 文件中的所有其他设置,我们建议将其保留为默认值,除非您已收到 修改它们的指示。

要编辑 wlb.conf 文件:

  1. 在 Workload Balancing 虚拟设备上的命令提示符下运行以下命令(以 VI 为例):

    vi /opt/vpx/wlb/wlb.conf
    <!--NeedCopy-->
    

    屏幕显示配置选项的几个不同部分。

  2. 修改配置选项,并退出编辑器。

编辑 wlb.conf 文件后,您无需重新启动 Workload Balancing 服务。更改在 退出编辑器后立即生效。

重要提示:

仔细检查您在 wlb.conf 文件中输入的任何值:工作负载平衡不会验证 wlb.conf 文件中的值。因此,如果您指定的配置参数不在所需范围内,工作负载 平衡不会生成错误日志。

增加工作负载平衡日志的详细程度

工作负载平衡日志提供了工作负载平衡虚拟设备上的事件列表,包括分析引擎、数据库和审计日志的操作。 此日志文件位于此位置:/var/log/wlb/LogFile.log

如果需要,您可以增加工作负载平衡日志提供的详细程度。为此,请修改 工作负载平衡配置文件 (wlb.conf) 的 Trace flags 部分,该文件位于以下 位置:/opt/vpx/wlb/wlb.conf。输入 1 或 true 以启用特定跟踪的日志记录,输入 0 或 false 以 禁用日志记录。例如,要为分析引擎跟踪启用日志记录,请输入:

AnalEngTrace=1
<!--NeedCopy-->

您可能希望在向 XenServer 技术支持报告问题之前或在 故障排除时增加日志记录详细程度。

日志记录选项 跟踪标志 优点或用途
分析引擎跟踪 AnalEngTrace 记录分析引擎计算的详细信息。显示分析引擎正在做出的决策的详细信息,并可能深入了解工作负载平衡未提出建议的原因。
数据库跟踪 DatabaseTrace 记录有关数据库读/写的详细信息。但是,保持此跟踪开启会迅速增加日志文件大小。
数据收集跟踪 DataCollectionTrace 记录检索指标的操作。此值可让您查看 Workload Balancing 正在检索并插入到 Workload Balancing 数据存储中的指标。但是,启用此跟踪会快速增加日志文件大小。
数据压缩跟踪 DataCompactionTrace 记录有关压缩指标数据所花费的毫秒数的详细信息。
数据事件跟踪 DataEventTrace 此跟踪提供有关 Workload Balancing 从 XenServer 捕获的事件的详细信息。
数据整理跟踪 DataGroomingTrace 此跟踪提供有关数据库整理的详细信息。
数据指标跟踪 DataMetricsTrace 记录有关指标数据解析的详细信息。启用此跟踪会快速增加日志文件大小。
队列管理跟踪 QueueManagementTrace 记录有关数据收集队列管理处理的详细信息。(此选项供内部使用。)
数据保存跟踪 DataSaveTrace 记录有关正在保存到数据库的池的详细信息。
分数服务器跟踪 ScoreHostTrace 记录有关工作负载平衡如何为某个主机得出分数的详细信息。此跟踪显示工作负载平衡在计算用于选择虚拟机放置的最佳主机的星级评定时的详细分数。
审核日志跟踪 AuditLogTrace 显示正在捕获和写入的审核日志数据的操作。(此选项仅供内部使用,不提供审核日志中捕获的信息。)但是,启用此跟踪会快速增加日志文件大小。
计划任务跟踪 ScheduledTaskTrace 记录有关计划任务的详细信息。例如,如果您的计划模式更改不起作用,您可能需要启用此跟踪来调查原因。
Web 服务跟踪 WlbWebServiceTrace 记录与 Web 服务接口通信的详细信息。