B.2. 将数据仓库迁移到独立机器

本节论述了如何将数据仓库数据库和服务从 Red Hat Virtualization Manager 迁移到单独的机器。在单独的计算机上托管数据仓库服务可减少每台计算机的负载,并可以使每个服务避免与其他进程共享 CPU 和内存资源导致的潜在冲突。

您可以迁移数据仓库服务,并将它与现有的数据仓库数据库(ovirt_engine_history)连接,也可以在迁移数据仓库服务之前将数据仓库数据库迁移到单独的计算机。如果数据仓库数据库托管在 Manager 上,在 Data Warehouse 服务之外迁移数据库也会进一步降低 Manager 计算机上资源的竞争。您可以将数据库迁移到将数据仓库服务迁移到与 Manager 机器和新数据仓库服务机器独立的机器上。

B.2.1. 将数据仓库数据库迁移到独立机器

在迁移数据仓库服务之前,迁移数据仓库数据库 (ovirt_engine_history)。使用 engine-backup 创建数据库备份,并在新数据库计算机上恢复它。有关 engine-backup 的更多信息,请运行 engine-backup --help

要只迁移数据仓库服务,请参阅 第 B.2.2 节 “将数据仓库服务迁移到独立机器”

新的数据库服务器必须安装有 Red Hat Enterprise Linux 7。在新数据库服务器上启用所需的存储库。

启用 Red Hat Virtualization Manager 存储库

在 Red Hat Subscription Manager 中注册系统,附加 Red Hat Virtualization Manager 订阅并启用 Manager 软件仓库。

流程

  1. 使用 Content Delivery Network 注册您的系统,在提示时输入您的客户门户网站用户名和密码:

    # subscription-manager register
    注意

    如果您使用 IPv6 网络,请使用 IPv6 转换机制来访问 Content Delivery Network 和 subscription Manager。

  2. 查找 Red Hat Virtualization Manager 订阅池并记录池 ID:

    # subscription-manager list --available
  3. 使用池 ID 将订阅附加到系统:

    # subscription-manager attach --pool=pool_id
    注意

    查看当前附加的订阅:

    # subscription-manager list --consumed

    列出所有启用的软件仓库:

    # yum repolist
  4. 配置存储库:

    # subscription-manager repos \
        --disable='*' \
        --enable=rhel-7-server-rpms \
        --enable=rhel-7-server-supplementary-rpms \
        --enable=rhel-7-server-rhv-4.3-manager-rpms \
        --enable=rhel-7-server-rhv-4-manager-tools-rpms \
        --enable=rhel-7-server-ansible-2.9-rpms \
        --enable=jb-eap-7.2-for-rhel-7-server-rpms
将数据仓库数据库迁移到独立机器
  1. 在 Manager 中创建数据仓库数据库和配置文件的备份:

    # engine-backup --mode=backup --scope=dwhdb --scope=files --file=file_name --log=log_file_name
  2. 将备份文件从 Manager 复制到新机器:

    # scp /tmp/file_name root@new.dwh.server.com:/tmp
  3. 在新机器上安装 engine-backup

    # yum install ovirt-engine-tools-backup
  4. 安装 PostgreSQL 服务器软件包:

    # yum install rh-postgresql10 rh-postgresql10-postgresql-contrib
  5. 初始化 PostgreSQL 数据库,启动 postgresql 服务,并确保该服务在引导时启动:

    # scl enable rh-postgresql10 -- postgresql-setup --initdb
    # systemctl enable rh-postgresql10-postgresql
    # systemctl start rh-postgresql10-postgresql
  6. 在新计算机上恢复数据仓库数据库。file_name 是从 Manager 复制的备份文件。

    # engine-backup --mode=restore --scope=files --scope=dwhdb --file=file_name --log=log_file_name --provision-dwh-db --no-restore-permissions

数据仓库数据库现在托管在与管理器托管的独立计算机上。成功恢复数据仓库数据库后,提示您运行 engine-setup 命令。在运行此命令之前,请先迁移数据仓库服务。