第 3 章 升级独立管理器远程数据库环境

3.1. 将远程数据库环境从 Red Hat Virtualization 4.3 升级到 4.4

将您的环境从 4.3 升级到 4.4 涉及以下步骤:

升级注意事项

  • 计划升级时,请参阅 Red Hat Virtualization 4.4 升级注意事项和已知问题
  • 当从 Open Virtual Network (OVN)和 Open vSwitch (OvS) 2.11 升级到 2021 和 OvS 2.15 时,只要满足以下条件,该过程对用户而言是透明的:

    • 首先升级经理。
    • 在主机升级前,必须禁用 ovirt-provider-ovn 安全组,才能在使用 OVN/OvS 版本 2.11 的主机间工作的所有 OVN 网络。
    • 主机已升级为与 OVN 版本 2021 或更高版本和 OvS 版本 2.15 匹配。您必须在管理门户中完成此步骤,以便可以正确重新配置 OVN 并刷新证书。
    • 主机在升级后会重启。
注意

要验证供应商和 OVN 是否在主机上成功配置,请检查主机 General 选项卡上的 OVN 配置 标记。如果将 OVN Configured 设为 No,请单击 ManagementRefresh Capabilities。此设置也可以在 REST API 中提供。如果刷新功能失败,您可以通过从 Manager 4.4 或更高版本重新安装主机来配置 OVN。

3.1.1. 先决条件

  • 计划任何需要虚拟机停机的时间。在升级过程中更新集群的兼容性版本后,重启后会自动为每个虚拟机应用新的硬件配置。您必须尽快重新引导任何正在运行的或暂停的虚拟机,才能应用配置更改。
  • 确保您的环境满足 Red Hat Virtualization 4.4 的要求。有关先决条件的完整列表,请参阅规划和前提条件指南
  • 在升级 Red Hat Virtualization Manager 时,建议您使用其中一个现有主机。如果您决定使用新主机,则必须为新主机分配唯一名称,然后在开始升级过程前将其添加到现有集群中。

3.1.2. 分析环境

建议您在进行更新和故障排除之前,运行 Log Collection Analysis(日志集合分析)工具和 Image Discrepancies 工具。这些工具分析您的环境以了解可能妨碍您执行更新的已知问题,并提供解决问题的建议。

3.1.3. 日志集合分析工具

在执行更新和故障排除之前,请运行日志集合分析工具。该工具会针对可能妨碍您执行更新的已知问题分析您的环境,并提供解决问题的建议。工具收集有关系统的详细信息,并将其显示为 HTML 文件。

先决条件

  • 确保 Manager 启用了正确的存储库。有关所需存储库的列表,请参阅为 Red Hat Virtualization 4.3 启用 Red Hat Virtualization Manager 仓库

    Red Hat Virtualization Manager 的更新将通过内容交付网络发布。

步骤

  1. 在 Manager 机器上安装 Log Collection Analysis 工具:

    # yum install rhv-log-collector-analyzer
  2. 运行工具:

    # rhv-log-collector-analyzer --live

    此时会显示详细的报告。

    默认情况下,报告被保存到名为 analyzer_report.html 的文件中。

    要将文件保存到特定位置,请使用 --html 标志并指定位置:

    # rhv-log-collector-analyzer --live --html=/directory/filename.html
  3. 您可以使用 ELinks 文本模式 Web 浏览器在终端中读取分析器报告。安装 ELinks 浏览器:

    # yum install -y elinks
  4. 启动 ELinks 并打开 analyzer_report.html

    # elinks /home/user1/analyzer_report.html

    在 ELinks 中使用以下命令浏览报告:

    • Insert 向上滚动
    • Delete 向下滚动
    • PageUp 向上一页
    • PageDown 向下一页
    • Left Bracket向左滚动
    • Right Bracket 向右滚动

3.1.3.1. 使用镜像差异工具监控快照健康状况

RHV 镜像离散工具分析存储域和 RHV 数据库中的镜像数据。如果发现卷和卷属性的差异,它会警告您,当不会修复这些差异。在各种情况下使用该工具,例如:

  • 在升级版本之前,为了避免将损坏的卷或链移至新版本。
  • 出现失败的存储操作后,用于检测处于错误状态的卷或属性。
  • 从备份中恢复 RHV 数据库或存储后。
  • 在潜在问题发生之前定期对其进行检测。
  • 要分析快照或实时迁移相关的问题,并在修复这些类型的问题后验证系统健康状况。

先决条件

  • 所需版本:此工具是在 RHV 版本 4.3.8 中引入的,它带有 rhv-log-collector-analyzer-0.2.15-0.el7ev
  • 由于数据收集在不同位置上同时运行且并不具有原子性,因此请停止环境中可以修改存储域的所有活动。也就是说,请勿创建或删除快照、编辑、移动、创建或删除磁盘。否则,可能会出现错误检测不一致的情况。虚拟机可以在此过程中保持正常运行。

步骤

  1. 要运行该工具,在 RHV Manager 中输入以下命令:

    # rhv-image-discrepancies
  2. 如果工具发现差异,则重新运行以确认结果,特别是工具运行时可能会执行一些操作。
注意

此工具包含任何导出和 ISO 存储域,并可报告它们的差异。如果是这样,可以忽略它们,因为这些存储域没有 RHV 数据库中镜像的条目。

了解结果

工具报告以下内容:

  • 如果在存储中显示但没有在数据库中,或者卷显示在数据库中,但没有出现在存储中。
  • 如果存储和数据库之间有一些卷属性不同:

输出示例:

 Checking storage domain c277ad93-0973-43d9-a0ca-22199bc8e801
    Looking for missing images...
    No missing images found
    Checking discrepancies between SD/DB attributes...
    image ef325650-4b39-43cf-9e00-62b9f7659020 has a different attribute capacity on storage(2696984576) and on DB(2696986624)
    image 852613ce-79ee-4adc-a56a-ea650dcb4cfa has a different attribute capacity on storage(5424252928) and on DB(5424254976)

 Checking storage domain c64637b4-f0e8-408c-b8af-6a52946113e2
    Looking for missing images...
    No missing images found
    Checking discrepancies between SD/DB attributes...
    No discrepancies found

现在,您可以将 Manager 更新至最新版本 4.3。

3.1.4. 更新 Red Hat Virtualization Manager

先决条件

  • 确保 Manager 启用了正确的存储库。有关所需存储库的列表,请参阅为 Red Hat Virtualization 4.3 启用 Red Hat Virtualization Manager 仓库

    Red Hat Virtualization Manager 的更新将通过内容交付网络发布。

步骤

  1. 在 Manager 机器中检查更新的软件包是否可用:

    # engine-upgrade-check
  2. 更新设置软件包:

    # yum update ovirt\*setup\* rh\*vm-setup-plugins
  3. 使用 engine-setup 脚本更新 Red Hat Virtualization Manager。engine-setup 脚本会提示您显示一些配置问题,然后停止 ovirt-engine 服务,下载并安装更新的软件包,备份和更新数据库,执行安装后配置,以及启动 ovirt-engine 服务。

    # engine-setup

    当脚本成功完成时,会显示以下信息:

    Execution of setup completed successfully
    注意

    Red Hat Virtualization Manager 安装过程中也会使用 engine-setup 脚本,并存储提供的配置值。在更新过程中,在预览配置时会显示存储的值,如果安装后使用 engine-config 更新配置,则可能不会更新。例如,如果在安装后使用 engine-configSANWipeAfterDelete 更新为 trueengine-setup 会在配置预览中输出 "Default SAN wipe after delete: False"。但是 engine-setup 不会覆盖更新的值。

    重要

    更新过程可能需要一些时间。在进程完成之前,请勿停止该进程。

  4. 更新基本操作系统以及在 Manager 中安装的任何可选软件包:

    # yum update --nobest
    重要

    如果您在更新过程中遇到必要的 Ansible 软件包冲突,请参阅在 RHV 管理器上无法执行 yum update(ansible 冲突 )

    重要

    如果更新了任何内核包,请重新引导计算机以完成更新。

现在,您可以将 Manager 升级到 4.4。

3.1.5. 将 Red Hat Virtualization Manager 从 4.3 升级到 4.4

Red Hat Virtualization Manager 4.4 仅支持在 Red Hat Enterprise Linux 8.2 升级到 8.6。您需要进行一个干净的 Red Hat Enterprise Linux 8.6 和 Red Hat Virtualization Manager 4.4 安装,即使您使用相同的物理机器来运行 RHV Manager 4.3。

升级过程需要将 Red Hat Virtualization Manager 4.3 备份文件恢复到 Red Hat Virtualization Manager 4.4 机器。

先决条件

  • 环境中的所有数据中心和集群都必须将集群兼容性级别设置为版本 4.2 或 4.3。
  • 环境中的所有虚拟机都必须将集群兼容性级别设置为版本 4.3。
  • 如果您使用外部 CA 为 HTTPS 证书签名,请按照管理指南替换 Red Hat Virtualization Manager CA 证书的步骤进行操作。备份和恢复包括第三方证书,因此您应能够在升级后登录管理门户。确保 CA 证书已添加到所有客户端的系统范围信任存储中,以确保 virt-viewer 外部菜单正常工作。如需更多信息,请参阅 BZ#1313379
注意

在升级管理器时,已连接的主机和虚拟机可以继续工作。

步骤

  1. 登录到 Manager 机器。
  2. 备份 Red Hat Virtualization Manager 4.3 环境。

    # engine-backup --scope=all --mode=backup --file=backup.bck --log=backuplog.log
  3. 将备份文件复制到 RHV 环境外的存储设备中。
  4. Install Red Hat Enterprise Linux 8.6.如需更多信息,请参阅执行标准 RHEL 安装
  5. 完成安装 Red Hat Virtualization Manager 4.4 的步骤,包括运行命令 yum install rhvm,但不运行 engine-setup。如需更多信息,请参阅安装 Red Hat Virtualization 指南。
  6. 将备份文件复制到 Red Hat Virtualization Manager 4.4 机器中并恢复它。

    # engine-backup --mode=restore --file=backup.bck --provision-all-databases
    注意

    如果备份中包含额外数据库用户,这个命令会创建具有随机密码的额外用户。如果额外用户需要访问恢复的系统,则必须手动更改这些密码。请参阅 https://access.redhat.com/articles/2686731

  7. 确保 Manager 启用了正确的存储库。有关所需存储库的列表,请参阅为 Red Hat Virtualization 4.4 启用 Red Hat Virtualization Manager 仓库

    Red Hat Virtualization Manager 的更新将通过内容交付网络发布。

  8. 如果已在 Red Hat Virtualization Manager 4.3 机器上安装了可选的扩展软件包,请安装这些软件包。

    # yum install ovirt-engine-extension-aaa-ldap ovirt-engine-extension-aaa-misc
    注意

    ovirt-engine-extension-aaa-ldap 已被弃用。对于新安装,请使用 Red Hat Single Sign On。如需更多信息,请参阅 《管理指南》 中的 安装和配置 Red Hat Single Sign-On

    注意

    这些软件包扩展的配置必须手动重新应用,因为它们不会作为备份和恢复过程的一部分进行迁移。

  9. 运行 engine-setup 命令配置管理器:

    # engine-setup
  10. 如果 Red Hat Virtualization Manager 4.4 使用不同的机器,则停用 Red Hat Virtualization Manager 4.3 机器。两个不同的管理器不能管理相同的主机或存储。

Red Hat Virtualization Manager 4.4 现已安装,集群兼容性版本被设置为 4.2 或 4.3,无论是预先存在的集群兼容性版本。

现在,您需要升级环境中的远程数据库。

注意

"engine-setup"还停止远程数据仓库机器上的数据仓库服务。

如果您打算发布此步骤的下一部分,请登录数据仓库计算机并启动数据仓库服务:

# systemctl start ovirt-engine-dwhd.service

3.1.6. 升级远程数据仓库服务和数据库

使用数据仓库服务和数据库在远程机器上运行此步骤。

请注意,这个过程的一部分要求您安装 Red Hat Enterprise Linux 8.6 或 Red Hat Virtualization Host 4.4。

先决条件

  • 您已登录到数据仓库机器。
  • RHV 环境之外的存储设备。

步骤

  1. 备份数据仓库计算机。

    注意

    RHV 4.3 上不支持 Grafana,但在 RHV 4.4 上,这个命令还包括 Grafana 服务和 Grafana 数据库。

    # engine-backup --file=<backupfile>
  2. 将备份文件复制到存储设备中。
  3. 停止并禁用数据仓库服务:

    # systemctl stop ovirt-engine-dwhd
    # systemctl disable ovirt-engine-dwhd
  4. 使用 Red Hat Enterprise Linux 8.6 或 Red Hat Virtualization Host 4.4 重新安装数据仓库机器。
  5. 准备 PostgreSQL 数据库。如需更多信息,请参阅将 Red Hat Virtualization 安装到带有远程数据库的独立管理器中的准备远程 PostgreSQL 数据库
  6. 在服务器上启用正确的存储库并安装数据仓库服务。具体步骤 ,请参阅在 Red Hat Virtualization 4.4 9 机器中安装和配置数据仓库。完成该流程中的步骤,包括 dnf install ovirt-engine-dwh-setup 命令。然后,继续执行此流程中的下一步。
  7. 将备份文件从存储设备复制到数据仓库计算机。
  8. 恢复备份文件:

    # engine-backup --mode=restore --file=backup.bck --provision-all-databases
  9. 在 Data Warehouse 机器上运行 engine-setup 命令:

    # engine-setup
  10. 在 Manager 机器上,重启 Manager 将其连接到 Data Warehouse 数据库:

    # systemctl restart ovirt-engine

其它资源

现在,您可以更新主机。

3.1.7. 将主机和虚拟机从 RHV 4.3 迁移到 4.4

您可以将主机和虚拟机从 Red Hat Virtualization 4.3 迁移到 4.4,以便最小化环境中虚拟机的停机时间。

此过程需要将所有虚拟机从一个主机迁移,以便该主机能够升级到 RHV 4.4。升级后,您可以将主机重新关联到 Manager。

警告

安装或重新安装主机的操作系统时,红帽强烈建议您先分离附加到主机的任何现有非 OS 存储,以避免意外初始化这些磁盘,从而避免意外初始化这些磁盘,并可能会丢失数据。

注意

CPU 传递虚拟机可能无法从 RHV 4.3 正确迁移到 RHV 4.4。

RHV 4.3 和 RHV 4.4 基于 RHEL 7 和 RHEL 8,分别有不同的内核版本,它们具有不同 CPU 标记和 microcode。这可能导致迁移使用 CPU 透传功能的虚拟机时出现问题。

先决条件

  • RHV 4.4 的主机需要将 Red Hat Enterprise Linux 8.2 升级到 8.6。需要手动安装 Red Hat Enterprise Linux 8.6 或 Red Hat Virtualization Host 4.4,即使您使用了为 RHV 4.3 运行主机相同的物理机器。
  • Red Hat Virtualization Manager 4.4 已安装并正在运行。
  • 主机所属数据中心和集群的兼容性级别设置为 4.2 或 4.3。在开始操作前,环境中的所有数据中心和集群都必须将集群兼容性级别设置为版本 4.2 或 4.3。

步骤

  1. 挑选主机,以升级该主机的虚拟机并将其迁移到同一集群中的另一台主机上。您可以使用实时迁移来最大程度减少虚拟机停机时间。如需更多信息,请参阅虚拟机管理指南中的在主机之间迁移虚拟机
  2. 将主机置于维护模式,并从管理器中删除主机。如需更多信息,请参阅管理指南中的删除主机
  3. 安装 Red Hat Enterprise Linux 8.6 或 RHVH 4.4。如需更多信息,请参阅安装 Red Hat Virtualization 指南中的为 Red Hat Virtualization 安装主机
  4. 安装适当的软件包,以启用 RHV 4.4 的主机。如需更多信息,请参阅安装 Red Hat Virtualization 指南中的为 Red Hat Virtualization 安装主机
  5. 将此主机添加到 Manager,将它分配到同一群集。现在,您可以将虚拟机迁移到此主机上。如需更多信息,请参阅安装 Red Hat Virtualization 指南中的向 Manager 添加标准主机

重复这些步骤,以迁移同一集群中其余主机的虚拟机和升级主机(逐一迁移),直到所有主机都运行 Red Hat Virtualization 4.4。

3.1.8. 在保留本地存储时升级 RHVH

具有本地存储的环境无法将虚拟机迁移到另一群集中的主机,因为本地存储不与其他存储域共享。要升级具有本地存储域的 RHVH 4.3 主机,请在保留本地存储的同时重新安装主机,在 4.4 环境中创建新的本地存储域,并将之前的本地存储导入到新域中。

先决条件

  • Red Hat Virtualization Manager 4.4 已安装并正在运行。
  • 主机所属数据中心和集群的兼容性级别,设置为 4.2 或 4.3。

步骤

  1. 在启动此过程前,请确保 RHVH 4.3 主机的本地存储处于维护模式。完成这些步骤:

    1. 打开 Data Centers 标签页。
    2. Details 框中点 Storage 标签页,在结果列表中选存储域。
    3. Maintenance
  2. 重新安装 Red Hat Virtualization 主机,如安装指南中的安装 Red Hat Virtualization 主机所述。

    重要

    Installation Destination 屏幕中选择要在其上安装 RHVH 的设备时,请勿选择存储虚拟机的设备。仅选择应安装操作系统的设备。

    如果您使用 Kickstart 安装主机,请通过在 Kickstart 文件中添加以下内容来保留包含虚拟机的设备,将 'device' 替换为相关设备。

    # clearpart --all --drives=device

    有关使用 Kickstart 的详情,请参考 Red Hat Enterprise Linux 8 执行高级 RHEL 安装中的 Kickstart 参考

  3. 在重新安装的主机上,创建一个目录,例如用于恢复之前环境的 /data

    # mkdir /data
  4. 将之前的本地存储挂载到新目录中。在我们的示例中,/dev/sdX1 是本地存储:

    # mount /dev/sdX1 /data
  5. 为新目录设置以下权限:

    # chown -R 36:36 /data
    # chmod -R 0755 /data
  6. 红帽建议您在服务器需要重启时通过 /etc/fstab 自动挂载本地存储:

    # blkid | grep -i sdX1
    /dev/sdX1: UUID="a81a6879-3764-48d0-8b21-2898c318ef7c" TYPE="ext4"
    # vi /etc/fstab
    UUID="a81a6879-3764-48d0-8b21-2898c318ef7c" /data    ext4    defaults     0       0
  7. 在管理门户中,创建一个数据中心,然后在 Storage Type 下拉菜单中选择 Local
  8. 在新数据中心上配置集群。如需更多信息,请参阅管理指南中的创建新集群
  9. 将主机添加到管理器。如需更多信息,请参阅 安装 Red Hat Virtualization 指南中的向 Red Hat Virtualization Manager 添加标准主机
  10. 在 主机上,创建一个新目录,它将用于创建初始本地存储域。例如:

    # mkdir -p /localfs
    # chown 36:36 /localfs
    # chmod -R 0755 /localfs
  11. 在管理门户中,打开 Storage 选项卡,再单击 New Domain 以创建新的本地存储域。
  12. 将名称设置为 localfs,并将路径设置为 /localfs
  13. 本地存储激活后,单击 Import Domain 并设置域的详细信息。例如,将 Data 定义为名称,Local on Host 用作存储类型,/data 作为路径。
  14. OK 以确认显示的消息告诉您存储域已附加到数据中心。
  15. 激活新存储域:

    1. 打开 Data Centers 标签页。
    2. 单击详细信息窗格中的 Storage 选项卡,然后在结果列表中选择新的数据存储域。
    3. Activate
  16. 新存储域激活后,导入虚拟机及其磁盘:

    1. Storage 选项卡中选择 data
    2. 在详细信息窗格中选择 VM Import 选项卡,选择虚拟机并单击导入。如需了解更多详细信息,请参阅虚拟机管理指南中的从数据域导入虚拟机
  17. 一旦确保所有虚拟机都已成功导入并且正常运行,您可以将 localfs 移至维护模式。
  18. 单击 Storage 选项卡,然后从结果列表中选择 localfs

    1. 单击详细信息窗格中的 Data Center 选项卡。
    2. 单击 Maintenance,然后单击 OK 以将存储域移至维护模式。
    3. 单击 Detach。Detach Storage 确认窗口将打开。
    4. 确定

您现在已将主机升级到版本 4.4,创建新的本地存储域,并导入 4.3 存储域及其虚拟机。

现在,您可以更新集群兼容性版本。

3.1.9. 更改集群兼容性版本

Red Hat Virtualization 集群有一个兼容版本。集群兼容性版本表示集群中所有主机支持的 Red Hat Virtualization 的功能。集群兼容性根据集群中功能最低的主机操作系统版本来设置。

先决条件

  • 要更改集群兼容性级别,您必须首先将集群中的所有主机更新为支持您需要的兼容性级别。检查主机旁边是否存在指示有可用的更新的图标。

限制

  • 在将集群兼容性级别升级到 4.6 后,virtio NIC 会作为不同的设备枚举。因此,可能需要重新配置 NIC。红帽建议您在升级集群前测试虚拟机,方法是在虚拟机上将集群兼容性级别设置为 4.6 并验证网络连接。

    如果虚拟机的网络连接失败,在升级集群前,使用与当前模拟机器匹配的自定义模拟机器配置虚拟机,例如 pc-q35-rhel8.3.0 适用于 4.5 兼容性版本。

步骤

  1. 在管理门户中,点 ComputeClusters
  2. 选择要更改的集群并点击 Edit
  3. General 选项卡中,将 Compatibility Version 更改为所需的值。
  4. 确定。此时会打开 Change Cluster Compatibility Version 确认对话框。
  5. OK 确认。
重要

错误消息可能会警告某些虚拟机和模板配置不正确。要修复此错误,请手动编辑每个虚拟机。Edit Virtual Machine 窗口提供了额外的验证和警告来显示正确的内容。有时问题会自动解决,虚拟机的配置只需要再次保存。编辑完每个虚拟机后,您将能够更改集群兼容性版本。

现在,您可以为集群中的虚拟机更新集群兼容性版本。

3.1.10. 更改虚拟机集群兼容性

在更新了集群兼容性版本后,您必须通过从管理门户重启或使用 REST API 来更新所有正在运行的或暂停虚拟机的集群兼容性版本,或使用客户端操作系统中的 REST API 更新它们。需要重启的虚拟机被标记为待处理的更改图标( pendingchanges )。

虽然您可以在以后方便的时候重新启动虚拟机,但强烈建议您立即重新启动,以便虚拟机使用最新的配置。任何尚未重启的虚拟机会继续使用先前的配置运行,后续对虚拟机的配置更改可能会覆盖待处理的集群兼容性更改。

步骤

  1. 在管理门户中,点 ComputeVirtual Machines
  2. 检查哪些虚拟机需要重新启动。在 Vms: 搜索栏中输入以下查询:

    next_run_config_exists=True

    搜索结果显示所有待处理更改的虚拟机。

  3. 选择每个虚拟机并点击 Restart。或者,如果需要,您可以从虚拟机中重新启动虚拟机。

虚拟机启动时,会自动应用新的兼容版本。

注意

您无法更改处于预览的虚拟机快照的集群兼容性版本。您必须首先提交或撤销预览。

现在,您可以更新数据中心兼容性版本。

3.1.11. 更改数据中心兼容性版本

Red Hat Virtualization 数据中心具有兼容性版本。兼容性版本指明了数据中心要与之兼容的 Red Hat Virtualization 版本。数据中心中的所有集群都必须支持所需的兼容性级别。

先决条件

  • 要更改数据中心兼容性级别,您必须首先更新数据中心中所有集群和虚拟机的兼容性版本。

步骤

  1. 在管理门户中,点 ComputeData Centers
  2. 选择要更改的数据中心,再单击 Edit
  3. Compatibility Version 更改为所需的值。
  4. 确定。此时会打开 Change Data Center Compatibility Version 确认对话框。
  5. OK 确认。