16.3.2. 配置共享存储高可用性


您可以使用共享存储高可用性(HA)策略在代理集群中实施 HA。使用共享存储时,实时和备份代理都访问共享文件系统上的通用目录,通常是存储区域网络(SAN)或网络文件系统(NFS)服务器。如果您配置了基于 JDBC 的持久性,您也可以将代理数据存储在指定的数据库中。使用共享存储时,如果 live 代理失败,备份代理会从共享存储中加载消息数据,并接管失败的实时代理。

通常,SAN 提供更好的性能(例如,速度)与 NFS 服务器,如果可用,建议使用这个选项。如果您需要使用 NFS 服务器,请参阅 Red Hat AMQ 7 支持的配置 以了解有关 AMQ Broker 支持的网络文件系统的更多信息。

在大多数情况下,您应使用共享存储 HA 而不是复制。由于共享存储不会通过网络复制数据,它通常比复制性能更好。共享存储还避免了网络隔离(也称为"脑裂")问题,其中实时代理及其备份同时处于活动状态。

注意

使用共享存储时,备份代理的启动时间取决于消息日志的大小。当备份代理接管失败的实时代理时,它会从共享存储中加载日志。如果日志包含大量数据,该过程会花费时间。

16.3.2.1. 配置 NFS 共享存储

使用共享存储高可用性时,您必须将实时和备份代理配置为使用共享文件系统中的通用目录。通常,您使用存储区域网络(SAN)或网络文件系统(NFS)服务器。

在从每个代理机器实例上挂载 NFS 服务器导出目录时,以下列出了一些建议的配置选项。

同步
指定所有更改都会立即刷新到磁盘。
intr
如果服务器关机或无法访问,允许中断 NFS 请求。
noac
禁用属性缓存。需要此行为才能在多个客户端之间实现属性缓存一致性。
soft
指定如果 NFS 服务器不可用,应报告错误,而不是等待服务器恢复在线。
lookupcache=none
禁用查找缓存。
timeo=n
这个时间(秒为秒),NFS 客户端(即代理)在重新请求前等待来自 NFS 服务器的响应。对于使用 TCP 的 NFS,默认的 timeo 值是 600 (60 秒)。对于通过 UDP 的 NFS,客户端使用自适应算法来估算常用请求类型的适当超时值,如读取和写入请求。
retrans=n
NFS 客户端在尝试进一步恢复操作前重试请求的次数。如果没有指定 retrans 选项,NFS 客户端会尝试每个请求三次。
重要

在配置 timeoretrans 选项时,务必要使用适当的值。默认的 timeo 等待时间为 600 秒(60 秒),重新传输值为 5 次重试可能会导致 AMQ Broker 检测到 NFS 断开连接。

其他资源

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.