Articles of 心跳

如何configuration“与心脏起搏器清除过期的失败计数”时间

当使用pacemaker和corosync时,我遇到了failcount问题。 我的/ var / log / messages文件: Dec 23 22:19:36 node1 attrd[1922]: notice: attrd_perform_update: Sent update 81: fail-count-named=1 我在12月23日22:19:36的最新失败数。 但几分钟后: Dec 23 22:34:47 node1 pengine[1923]: notice: unpack_rsc_op: Clearing expired failcount for named:0 on node1 Dec 23 22:34:47 node1 pengine[1923]: notice: unpack_rsc_op: Re-initiated expired calculated failure named_last_failure_0 (rc=7, magic=0:7;21:32:0:f1d80836-3649-45c5-abd5-8c7d4ef5d7f9) on node1 失败计数已被删除。 大约需要15分钟。 我的cib.xml: <nvpair id="rs-resource-stickiness" […]

Linux HA / cluster:Pacemaker,Heartbeat,Corosync,wackamole之间有什么区别?

你能帮我理解Linux HA吗? 起搏器,心跳,Corosync似乎是整个HA堆栈的一部分,但它们又是如何组合的? wackamole与Pacemaker / Heartbeat / Corosync有什么不同? 我看到wackamole比Heartbeat更好,因为它是基于peer的。 这有效吗? wackamole的最后一个版本是2.5年前。 它仍然保持或活跃? 对于networking/应用程序/数据库服务器,您build议如何安装HA?

将心率监视器连接到Windows PC Java应用程序

我目前正在研究一个Thesis项目,该项目需要我的Java程序来跟踪用户当前的心率。 现在,我的问题是,我似乎无法find任何可以连接到Windows PC上运行的Java程序的心率监视器。 如果任何人有任何build议,可以做任何forms的心率表,我将非常感激! 我目前正在试验一个极地H7蓝牙智能就绪心率监测器,我试图让它连接到我的电脑有一个蓝牙4.0适配器(蓝牙智能),但它似乎是导致死胡同。 再次感谢您提供的帮助。

高可用性计算:如何处理不返回的系统调用,而不冒风险?

我有一个在Linux计算机上运行的进程,作为高可用性系统的一部分。 这个过程有一个主线程,接收来自networking上其他计算机的请求并作出响应。 还有一个心跳线程会周期性地发送多播心跳包,让networking上的其他进程知道这个进程仍然活着并且可用 – 如果他们没有心跳任何心跳包,他们会认为这个过程已经死了,并将接pipe它的职责,使整个系统能够继续工作。 这一切都工作得很好,但前一天整个系统失败了,当我调查为什么我find了以下内容: 由于Linux内核中显然存在一个bug,有一个由系统调用引发的内核“oops”,这个进程的主线程产生了这个内核。 由于内核为“oops”,系统调用永远不会返回,从而使进程的主线程永久挂起。 心跳线OTOH继续正常工作,这意味着networking上的其他节点从来没有意识到这个节点已经失败,没有一个人介入接pipe它的职责,所以没有执行所请求的任务系统运行有效停止。 我的问题是,是否有一个优雅的解决scheme可以处理这种失败? (显然有一件事是修复Linux内核,所以它不会“哎呀”,但考虑到Linux内核的复杂性,如果我的软件能够更好地处理未来的其他内核错误,那将是一件好事)。 我不喜欢的一种解决scheme是将心跳发生器放入主线程,而不是将其作为单独的线程运行,或者以其他方式将其连接到主线程,以便在主线程无限期挂起时,心跳不会被发送。 我不喜欢这个解决scheme的原因是因为主线程不是一个实时线程,所以这样做会引入偶然的误报的可能性,一个缓慢完成的操作被误认为是一个节点故障。 如果可以的话,我想避免误报。 理想情况下,有一些方法可以确保一个失败的系统调用返回一个错误代码,或者如果这是不可能的,崩溃我的过程; 其中任何一个都会停止生成心跳包并允许进行故障转移。 有没有办法做到这一点,或者是一个不可靠的内核也毁了我的用户进程不可靠?