您可以在服务中心用户界面的“维护”页面上初始化 slony。
注: 为 EDB 重新初始化 slony 时,您还必须为 AVDB 重新初始化 slony。
过程
- 在 /usr/local/desktone/scripts 中,为组织运行 slony-status 脚本。下面的示例针对的是组织 1000。对于运行 Horizon DaaS 版本 9.0.0(或 Horizon Cloud 19.3)之前版本的设备,可以跳过此步骤。
slony-status 1000
如果存在 slony 问题,将会显示一条消息以进行确认。 - 在所有节点上停止 dtService:
service dtService stop
- 停止 slon 守护进程(在目标节点上终止守护进程):
killall slon
- 在目标数据库(FDB、EDB 或 AVDB)上运行以下命令:
psql -Uadmin fdb -p 6432 drop schema _slony cascade;
注: 仅丢弃受影响的数据库对的架构。 - 如果您在主服务提供程序节点上停止了 dtService 以重新初始化服务提供程序设备上的 FDB,请在主服务提供程序节点上再次启动该服务:
service dtService start
- 启动 slon 守护进程,如下所示。
- 对于服务提供程序组织,启动 FDB 的守护进程:
/usr/local/desktone/scripts/start_slon_fdb.sh
- 对于租户组织,启动所有数据库的守护进程:
/usr/local/desktone/scripts/start_slon_fdb.sh /usr/local/desktone/scripts/start_slon_edb.sh /usr/local/desktone/scripts/start_slon_avdb.sh
- 对于服务提供程序组织,启动 FDB 的守护进程:
- 验证 slony 进程:
ps -aux | grep slon
- 在 /usr/local/desktone/scripts 中,为组织运行 slony-status 脚本。下面的示例针对的是组织 1000。对于运行 Horizon DaaS 版本 9.0.0(或 Horizon Cloud 19.3)之前版本的设备,可以跳过此步骤。
slony-status 1000
最后打印的消息会指示哪个设备是复制主节点。您需要在下面的 主 IP 菜单中选择此设备的 IP 地址。 - 在服务中心内,选择设备 > 维护。
- 在页面的“Slony 操作”部分中,使用组织 ID 下拉菜单选择要为其执行 slony 初始化的设备的组织 ID。
此时会显示 数据库实例名称和 主 IP 菜单。注: 对于运行 Horizon DaaS 版本 9.0.0(或 Horizon Cloud 19.3)之前版本的设备,不会显示 主 IP 菜单。
- 使用数据库实例名称菜单为 slony 初始化选择数据库实例名称(“架构”、“元素”或“AppVolumes”)。
如果选择了“元素”或“AppVolumes”,则会显示 元素 ID 菜单。
- 如果在上面选择了“元素”或“AppVolumes”,请使用元素 ID 下拉菜单选择桌面管理器的 ID,以将其列为 slony 初始化操作的新主节点 IP。如果在上面选择了“架构”,请跳过此步骤。
- 使用主 IP 菜单为数据库主节点选择相应的 IP 地址。对于运行 Horizon DaaS 版本 9.0.0(或 Horizon Cloud 19.3)之前版本的设备,请跳过此步骤。
- 单击初始化 Slony。
- 如果您在租户设备的 AVDB 上执行了 slony 重新初始化,则重新启动 wem-diagnose-service:
service diagnose restart
注: 如果仅在桌面管理器设备上执行了 AVDB slony 重新初始化,则不需要执行此操作。