附录 C. 将数据库和服务迁移到远程服务器
虽然您无法在自动安装过程中配置远程数据库和服务,但您可以在安装后将其迁移到单独的服务器。
C.1. 将数据仓库迁移到 9 月的机器
本节论述了如何将数据仓库数据库和服务从 Red Hat Virtualization Manager 机器迁移到单独的机器。在单独的计算机上托管数据仓库服务可减少每台计算机的负载,并避免与其他进程共享 CPU 和内存资源导致的潜在冲突。
红帽只支持安装数据仓库数据库、数据仓库服务和 Grafana,它们都与彼此相同,尽管您可以在独立的机器上分别安装这些组件。
您有以下迁移选项:
-
您可以从管理器计算机迁移数据仓库服务,并将其与现有数据仓库数据库 (
ovirt_engine_history
) 连接。 - 您可以从 Manager 机器迁移数据仓库数据库,然后迁移数据仓库服务。
C.1.1. 将数据仓库数据库迁移到独立机器
在迁移数据仓库服务之前,迁移数据仓库数据库 (ovirt_engine_history
)。使用 engine-backup
创建数据库备份,并在新数据库计算机上恢复它。有关 engine-backup
的更多信息,请运行 engine-backup --help
。
红帽只支持安装数据仓库数据库、数据仓库服务和 Grafana,它们都与彼此相同,尽管您可以在独立的机器上分别安装这些组件。
新数据库服务器必须安装了 Red Hat Enterprise Linux 8。
在新数据库服务器上启用所需的存储库。
C.1.1.1. 启用 Red Hat Virtualization Manager 存储库
您需要使用 Red Hat Subscription Manager 登录并注册数据仓库,附加 Red Hat Virtualization Manager
订阅并启用 Manager 存储库。
流程
使用 Content Delivery Network 注册您的系统,在提示时输入您的客户门户网站用户名和密码:
# subscription-manager register
注意如果您使用 IPv6 网络,请使用 IPv6 转换机制来访问 Content Delivery Network 和 subscription Manager。
查找
Red Hat Virtualization Manager
订阅池并记录池 ID:# subscription-manager list --available
使用池 ID 将订阅附加到系统:
# subscription-manager attach --pool=pool_id
注意查看当前附加的订阅:
# subscription-manager list --consumed
列出所有启用的软件仓库:
# dnf repolist
配置存储库:
# subscription-manager repos \ --disable='*' \ --enable=rhel-8-for-x86_64-baseos-eus-rpms \ --enable=rhel-8-for-x86_64-appstream-eus-rpms \ --enable=rhv-4.4-manager-for-rhel-8-x86_64-rpms \ --enable=fast-datapath-for-rhel-8-x86_64-rpms \ --enable=jb-eap-7.4-for-rhel-8-x86_64-rpms \ --enable=openstack-16.2-cinderlib-for-rhel-8-x86_64-rpms \ --enable=rhceph-4-tools-for-rhel-8-x86_64-rpms \ --enable=rhel-8-for-x86_64-appstream-tus-rpms \ --enable=rhel-8-for-x86_64-baseos-tus-rpms
将 RHEL 版本设置为 8.6:
# subscription-manager release --set=8.6
启用
postgresql
模块的版本 12。# dnf module -y enable postgresql:12
启用
nodejs
模块的版本 14:# dnf module -y enable nodejs:14
- 使用 升级指南 中的更新 自托管引擎的步骤更新自托管引擎。
其它资源
有关模块和模块流的详情,请参考安装、管理和删除用户空间组件中的以下部分。
C.1.1.2. 将数据仓库数据库迁移到独立机器
流程
在 Manager 中创建数据仓库数据库和配置文件的备份:
# engine-backup --mode=backup --scope=grafanadb --scope=dwhdb --scope=files --file=file_name --log=log_file_name
将备份文件从 Manager 复制到新机器:
# scp /tmp/file_name root@new.dwh.server.com:/tmp
在新机器上安装
engine-backup
:# dnf install ovirt-engine-tools-backup
安装 PostgreSQL 服务器软件包:
# dnf install postgresql-server postgresql-contrib
初始化 PostgreSQL 数据库,启动
postgresql
服务,并确保该服务在引导时启动:# su - postgres -c 'initdb' # systemctl enable postgresql # systemctl start postgresql
在新计算机上恢复数据仓库数据库。file_name 是从 Manager 复制的备份文件。
# engine-backup --mode=restore --scope=files --scope=grafanadb --scope=dwhdb --file=file_name --log=log_file_name --provision-dwh-db
当在恢复
模式中使用 --provision
598 选项时,默认应用--restore-permissions
。
数据仓库数据库现在托管在与管理器托管的独立计算机上。成功恢复数据仓库数据库后,提示您运行 engine-setup
命令。在运行此命令之前,请先迁移数据仓库服务。
C.1.2. 将数据仓库服务迁移到独立机器
您可以将 Red Hat Virtualization Manager 上安装并配置的数据仓库服务迁移到单独的机器。在单独的计算机上托管数据仓库服务有助于减少管理器计算机上的负载。
请注意,这个过程仅迁移数据仓库服务。
要在迁移数据仓库服务之前迁移数据仓库数据库(ovirt_engine_history
),请参阅将 数据仓库数据库迁移到 9 月机器。
红帽只支持安装数据仓库数据库、数据仓库服务和 Grafana,它们都与彼此相同,尽管您可以在独立的机器上分别安装这些组件。
先决条件
- 您必须在同一台机器上安装并配置了管理器和数据仓库。
要设置新的数据仓库机器,您必须有以下内容:
- Manager 的 /etc/ovirt-engine/engine.conf.d/10-setup-database.conf 文件中的密码。
- 允许从数据仓库计算机访问 Manager 数据库计算机的 TCP 端口 5432.
数据仓库数据库中的 /etc/ovirt-engine-dwh/ovirt-engine-dwh/ovirt-engine-dwhd.conf.d/10-setup-database.conf 文件中的用户名和密码。
如果您使用将 Data Warehouse 数据库迁移到 909arate Machine 中介绍的步骤将
ovirt_engine_history
数据库迁移到 9ed 机器,则备份中包含您在该机器上数据库设置过程中定义的这些凭证。
安装此场景需要四个步骤:
- 设置新的数据仓库机器
- 在管理器机器上停止数据仓库服务
- 配置新的数据仓库
- 在 Manager 计算机上禁用数据仓库软件包
C.1.2.1. 设置新的数据仓库机器
启用 Red Hat Virtualization 软件仓库并在 Red Hat Enterprise Linux 8 机器上安装数据仓库设置软件包:
启用所需的软件仓库:
使用 Content Delivery Network 注册您的系统,在提示时输入您的客户门户网站用户名和密码:
# subscription-manager register
查找
Red Hat Virtualization Manager
订阅池并记录池 ID:# subscription-manager list --available
使用池 ID 将订阅附加到系统:
# subscription-manager attach --pool=pool_id
配置存储库:
# subscription-manager repos \ --disable='*' \ --enable=rhel-8-for-x86_64-baseos-eus-rpms \ --enable=rhel-8-for-x86_64-appstream-eus-rpms \ --enable=rhv-4.4-manager-for-rhel-8-x86_64-rpms \ --enable=fast-datapath-for-rhel-8-x86_64-rpms \ --enable=jb-eap-7.4-for-rhel-8-x86_64-rpms # subscription-manager release --set=8.6
启用
pki-deps
模块。# dnf module -y enable pki-deps
确保当前安装的所有软件包都为最新版本:
# dnf upgrade --nobest
安装
ovirt-engine-dwh-setup
软件包:# dnf install ovirt-engine-dwh-setup
C.1.2.2. 在 Manager 机器上停止数据仓库服务
流程
停止数据仓库服务:
# systemctl stop ovirt-engine-dwhd.service
如果数据库托管在远程计算机上,您必须通过编辑 postgres.conf 文件来手动授予访问权限。编辑
/var/lib/pgsql/data/postgresql.conf
文件并修改 listen_addresses 行,使其与以下内容匹配:listen_addresses = '*'
如果该行不存在或已被注释掉,请手动添加。
如果数据库托管在 Manager 机器上,且是在 Red Hat Virtualization Manager 完全设置过程中配置的,则默认授予访问权限。
重启 postgresql 服务:
# systemctl restart postgresql
C.1.2.3. 配置新的数据仓库(Data Warehouse 机器)
本节中显示的选项或设置顺序可能因您的环境而异。
如果您要同时将
ovirt_engine_history
数据库和数据仓库服务迁移到同一个计算机上,请运行以下命令,否则继续下一步。# sed -i '/^ENGINE_DB_/d' \ /etc/ovirt-engine-dwh/ovirt-engine-dwhd.conf.d/10-setup-database.conf # sed -i \ -e 's;^\(OVESETUP_ENGINE_CORE/enable=bool\):True;\1:False;' \ -e '/^OVESETUP_CONFIG\/fqdn/d' \ /etc/ovirt-engine-setup.conf.d/20-setup-ovirt-post.conf
删除 apache/grafana PKI 文件,以便
engine-setup
使用正确值重新生成这些文件:# rm -f \ /etc/pki/ovirt-engine/certs/apache.cer \ /etc/pki/ovirt-engine/certs/apache-grafana.cer \ /etc/pki/ovirt-engine/keys/apache.key.nopass \ /etc/pki/ovirt-engine/keys/apache-grafana.key.nopass \ /etc/pki/ovirt-engine/apache-ca.pem \ /etc/pki/ovirt-engine/apache-grafana-ca.pem
运行
engine-setup
命令,开始在机器上配置数据仓库:# engine-setup
按 Enter 接受自动检测到的主机名,或者输入替代主机名并按 Enter :
Host fully qualified DNS name of this server [autodetected host name]:
按
Enter
键自动配置防火墙,或者键入No
并按Enter
来维护现有设置:Setup can automatically configure the firewall on this system. Note: automatic configuration of the firewall may overwrite current settings. Do you want Setup to configure the firewall? (Yes, No) [Yes]:
如果您选择自动配置防火墙,且没有防火墙管理器处于活动状态,系统会提示您从支持的选项列表中选择您所选的防火墙管理器。输入防火墙管理器的名称,然后按
Enter
。即使只列出了一个选项,也是如此。为 Manager 输入完全限定域名和密码。按 Enter 键接受其他字段中的默认值:
Host fully qualified DNS name of the engine server []: engine-fqdn Setup needs to do some actions on the remote engine server. Either automatically, using ssh as root to access it, or you will be prompted to manually perform each such action. Please choose one of the following: 1 - Access remote engine server using ssh as root 2 - Perform each action manually, use files to copy content around (1, 2) [1]: ssh port on remote engine server [22]: root password on remote engine server engine-fqdn: password
输入 Manager 数据库计算机的 FQDN 和密码。按
Enter
键接受其他字段中的默认值:Engine database host []: manager-db-fqdn Engine database port [5432]: Engine database secured connection (Yes, No) [No]: Engine database name [engine]: Engine database user [engine]: Engine database password: password
确认安装设置:
Please confirm installation settings (OK, Cancel) [OK]:
数据仓库服务现在在远程计算机上配置。继续在管理器计算机上禁用数据仓库服务。
C.1.2.4. 在 Manager 机器上禁用数据仓库服务
先决条件
Manager 机器上的 Grafana 服务被禁用:
# systemctl disable --now grafana-server.service
流程
在 Manager 机器中重启 Manager:
# service ovirt-engine restart
运行以下命令修改文件 /etc/ovirt-engine-setup.conf.d/20-setup-ovirt-post.conf,并将选项设置为
False
:# sed -i \ -e 's;^\(OVESETUP_DWH_CORE/enable=bool\):True;\1:False;' \ -e 's;^\(OVESETUP_DWH_CONFIG/remoteEngineConfigured=bool\):True;\1:False;' \ /etc/ovirt-engine-setup.conf.d/20-setup-ovirt-post.conf # sed -i \ -e 's;^\(OVESETUP_GRAFANA_CORE/enable=bool\):True;\1:False;' \ /etc/ovirt-engine-setup.conf.d/20-setup-ovirt-post.conf
禁用数据仓库服务:
# systemctl disable ovirt-engine-dwhd.service
删除数据仓库文件:
# rm -f /etc/ovirt-engine-dwh/ovirt-engine-dwhd.conf.d/*.conf /var/lib/ovirt-engine-dwh/backups/*
数据仓库服务现在托管在管理器之外的独立机器上。