Linux Pacemaker:显示为“无法运行的启动(已阻止)”的资源已创建

Linux Pacemaker:显示为“无法运行的启动(已阻止)”的资源已创建

我们使用的是 SLES 12 SP4

我们从今天的测试中观察到一些事情。以下是步骤:

步骤1:当我们使用命令“创建内核恐慌(在 Node01 上)时echo 'b' > /proc/sysrq-trigger“ 或者 ”echo 'c' > /proc/sysrq-trigger在资源运行的节点上,集群检测到变化但无法启动其他活动节点上的任何资源(SBD 除外)。

第2步:根据日志我们可以发现以下错误:

pengine:     info: LogActions:       Leave      stonith-sbd           (Started node02)
pengine:   notice: LogAction:      * Start      pri-javaiq            (node02 )   due to unrunnable nfs_filesystem start (blocked)
pengine:   notice: LogAction:      * Start      lb_health_probe       (node02 )   due to unrunnable nfs_filesystem start (blocked)
pengine:   notice: LogAction:      * Start      pri-ip_vip            (node02 )   due to unrunnable nfs_filesystem start (blocked)
pengine:   notice: LogAction:      * Start      nfs_filesystem        (node02 )   blocked

步骤3:但是当我们在节点上执行“init 6”(我们在该节点上创建了“内核恐慌”)时,令人惊讶的是其他节点上的资源正在成功启动并运行。

答案1

我的猜测是您没有设置或正确配置看门狗。

SBD 击剑之所以有效,是因为有两个部分。首先,“毒丸”通过共享存储传递给行为不当的节点,如果 SBD 失败,看门狗将重新启动节点,并且节点无法“自杀”。

听起来你正在使节点崩溃/恐慌,所以它不可能在那时自我隔离,我们必须依靠看门狗来重新启动系统。这也可以解释为什么当您运行 init 6 时它的行为与您所期望的一样,因为您已经有效地手动完成了看门狗会做的事情。

SuSE 拥有出色的 SBD 防护文档,包括有关为何需要看门狗以及如何配置它的解释。https://documentation.suse.com/sle-ha/15-SP1/html/SLE-HA-all/cha-ha-storage-protect.html

答案2

终于,我们找到了原因。这是因为,起搏器服务在启动时启用。一旦我们禁用起搏器服务,现在就没有问题了。

相关内容