当前位置: 首页 > 知识库问答 >
问题:

诊断高可用性--ActiveMQ Artemis

吴品
2023-03-14

在ActiveMQ Artemis中有诊断HA问题的方法吗?我有一对共享存储服务器,工作非常好。当我关闭主服务器时,副服务器接管,直到主服务器告诉它它恢复了,然后主服务器接管,副服务器恢复为副服务器。

我把配置复制到另一对服务器上,但这一台不起作用。

据我所知,一切看起来都很好。群集出现在控制台中,两个服务器连接。当我关闭主服务器时,辅助服务器会记录以下消息:

2020-12-06 16:59:26,379 WARN  [org.apache.activemq.artemis.core.client] AMQ212037: Connection failure to <Primary IP>/<Primary IP>:61616 has been detected: AMQ219015: The connection was disconnected because of server shutdown [code=DISCONNECTED]

在工作对中,就在这条消息之后,第二个会迅速部署我的所有地址和队列并接管。但是新的一对,第二个在这之后什么也不做。

我不知道从哪里开始找。我只是不停地比较非工作对和工作对的配置。

我正在使用NFS挂载。共享文件的类型是Azure的NetApp。

<connectors>
   <connector name="artemis">tcp://<primary URL>:61616</connector>
   <connector name="artemis-backup">tcp://<secondary URL>:61616</connector>
</connectors>

<cluster-user>activemq</cluster-user>
<cluster-password>artemis123</cluster-password>

<ha-policy>
   <shared-store>
      <master>
         <failover-on-shutdown>true</failover-on-shutdown>
      </master>
   </shared-store>
</ha-policy>

<cluster-connections>
   <cluster-connection name="cluster-1">
      <connector-ref>artemis</connector-ref>
      <static-connectors>
         <connector-ref>artemis-backup</connector-ref>
      </static-connectors>
   </cluster-connection>
</cluster-connections>

中学:

<connectors>
   <connector name="artemis-live">tcp://<primary URL>:61616</connector>
   <connector name="artemis">tcp://<secondary URL>:61616</connector>
</connectors>

<cluster-user>activemq</cluster-user>
<cluster-password>artemis123</cluster-password>

<ha-policy>
   <shared-store>
      <slave>
         <allow-failback>true</allow-failback>
         <failover-on-shutdown>true</failover-on-shutdown>
      </slave>
   </shared-store>
</ha-policy>

<cluster-connections>
   <cluster-connection name="cluster-1">
      <connector-ref>artemis</connector-ref>
      <static-connectors>
         <connector-ref>artemis-live</connector-ref>
      </static-connectors>
   </cluster-connection>
</cluster-connections>

共有1个答案

盖马鲁
2023-03-14

在共享存储配置中,备份代理不断尝试获取日记上的文件锁。但是,由于主代理已经拥有锁,所以在主代理死亡之前它将无法使用该锁。因此,我将查看共享存储并确保文件锁定工作正常。

由于您使用的是NFS,NFS客户端配置选项也值得检查。以下是我推荐的配置选项,以启用合理的故障转移时间:

  • 时间=50-NFS超时5秒
  • retrans=1-只允许一次重试
  • soft-soft挂载NFS共享将禁用永久重试逻辑,允许NFS错误在上述超时之后弹出到应用程序堆栈中
  • noac-关闭文件属性的缓存,但也强制对NFS共享进行同步写入。这也减少了弹出NFS错误的时间。
 类似资料:
  • 如果 Flarum 无法安装或者是没有按照预期运行,第一件需要做的事情就是再次检查你的环境是否达到了系统要求。如果你缺失部分 Flarum 的依赖项(例如 PHP 的 fileinfo 扩展),你将需要先处理这些问题。 接下来,你应该花上几分钟在支持论坛和问题追踪器内检索。有可能有人已经汇报了这个问题,或者解决方案正在讨论,或者已经有解决方案。在检索过后,如果你仍然没有发现关于这个问题的信息的话,

  • Composer默认使用Winston日志记录模块,并使用Config模块查找任何配置信息。如果没有找到,那么将使用一组默认值。 如果没有设置配置文件,配置模块会写出警告。例如。WARNING: No configurations found in configuration directory。如果您对默认值感到满意,并且不希望在应用程序中使用配置,则可以使用环境变量来抑制这种情况。在这里查看更

  • 什么是抓取诊断 抓取诊断工具,可以让站长从百度蜘蛛的视角查看抓取内容,自助诊断百度蜘蛛看到的内容,和预期是否一致。每个站点每周可使用70次,抓取结果只展现百度蜘蛛可见的前200KB内容。 抓取诊断工具能做什么 目前抓取诊断工具有如下作用: 1、诊断抓取内容是否符合预期,譬如很多商品详情页面,价格信息是通过JavaScript输出的,对百度蜘蛛不友好,价格信息较难在搜索中应用。问题修正后,可用诊断工

  • 本文对 TiDB 集群在使用中遇到的常见问题及故障提供诊断及处理说明。 各类故障诊断 参阅 TiDB 集群故障诊断常见问题及其他内容。

  • 我们的产品有几个复杂的存储过程,它们利用(MSSQLS2008R2/2012)CTE和/或临时表/表变量来计算菜单或级联权限结构,以便使用系统。 我们通过SQL事件探查器注意到,有时过程可能需要比正常情况多几个数量级的时间才能返回。我们想知道采取行动的最佳原因,以便收集信息来确定什么是阻塞/争用。一个很好的例子是一个存储过程,如果我在query analyser中手动运行它,它需要222毫秒来运行

  • 常见网络故障 我们在开发或者网络管理中,经常碰到各种各样的网络故障。掌握处理常见的网络故障,就成为了网络运维工程师和开发工程师的基础技能。 常见以下两个故障: 服务器无法登录了 服务访问不了 这两个故障背后的原因有很多种,列举如下: 服务器无法登录 你的电脑断网了 服务器关闭了 服务器没关闭,但是访问端口关闭了(例如关闭了远程桌面的3389端口或者ssh的22端口) 服务器没关闭,访问端口也没关闭