15.9. 重启之前失败的数据中心
当之前失败的数据中心恢复在线时,请按照以下步骤恢复消息传递系统的原始状态:
- 重启托管 Red Hat Ceph Storage 集群节点的服务器
- 重启消息传递系统中的代理
- 重新建立从客户端应用程序到恢复的代理的连接
以下子章节显示执行这些步骤。
15.9.1. 重启存储集群服务器
当您重启之前失败的数据中心中 monitor、元数据服务器、管理器和对象存储设备(OSD)节点时,您的 Red Hat Ceph Storage 集群自我修复来恢复完整的数据冗余。在此过程中,Red Hat Ceph Storage 会根据需要自动将数据回填到恢复的 OSD 节点。
要验证您的存储集群是否自动自我修复和恢复完整的数据冗余,请使用之前 在数据中心中断期间验证存储集群健康状况 的命令。重新执行这些命令时,您会看到之前 HEALTH_WARN
消息指示的百分比降级开始改进,直到它返回到 100%。
15.9.2. 重启代理服务器
以下流程演示了如何在存储集群不再处于降级状态时重启您的代理服务器。
流程
- 停止所有连接到您在数据中心中断时手动启动的备份代理的客户端应用程序。
停止手动启动的备份代理。
对于 Linux:
<broker_instance_dir>/bin/artemis stop
在 Windows 上:
<broker_instance_dir>\bin\artemis-service.exe stop
在之前失败的数据中心中,重启原始 master 和 slave 代理。
对于 Linux:
<broker_instance_dir>/bin/artemis run
在 Windows 上:
<broker_instance_dir>\bin\artemis-service.exe start
原始 master 代理会在重启时自动将其角色恢复为 master。
15.9.3. 重新建立客户端连接
重启代理服务器后,将客户端应用程序重新连接到这些代理。以下小节介绍了如何重新连接内部和外部客户端应用程序。
15.9.3.1. 重新重新连接内部客户端
内部客户端是与恢复的代理相同的、之前失败的数据中心。要重新连接内部客户端,请重新启动它们。每个客户端应用程序都会重新连接到其连接配置中指定的恢复的 master 代理。
有关配置代理网络连接的详情,请参考 第 2 章 在网络连接中配置接收器和连接器。
15.9.3.2. 重新连接外部客户端
外部客户端是那些在之前出现故障的数据中心外运行的。根据您的客户端类型,以及 配置外部代理客户端 的信息,您可以将客户端配置为自动切换到备份代理,或者手动建立这个连接。当您恢复之前失败的数据中心时,您可以以类似的方式从客户端重新建立连接到恢复的 master 代理,如下所述。
- 如果您将外部客户端配置为自动切换到备份代理,则在关闭备份代理并重启原始 master 代理时,客户端会自动回退到原始 master 代理。
- 如果在发生数据中心中断时手动将外部客户端连接到备份代理,您必须手动将客户端重新连接到您重启的原始 master 代理。