我想使用corosync/pac怪机/drbd建立一个两个节点的高可用性集群。当然,我需要击剑。据我所知,所有IPMI/劳工组织/.解决方案做的工作,但只有在底盘有能力。在节点B失去功率的情况下,节点A没有机会对节点B使用STONITH。
什么样的硬件解决了这个问题?是否有(标准机架)服务器提供IPMI/iLO/.在电池上运行的硬件?我应该使用网络连接的UPS吗?
发布于 2014-09-10 18:16:53
您可以配置基于国际劳工组织/IPMI的围栏,然后使用fence_apc击剑代理和APC电源开关作为辅助围栏设备。这样,如果服务器失去了电源,那么辅助击剑代理仍然能够以一种对集群有意义的方式对服务器进行STONITH。
就像描述的这里:
一个节点可以有多个栅栏方法,每个栅栏方法可以有多个栅栏设备。为冗余/保险设置了多个栅栏方法。例如,您可能正在对集群中的节点使用基板管理围栏方法,例如IPMI、iLO、RSA或DRAC。所有这些都依赖于网络连接。如果此连接失败,则不会发生击剑,因此,作为备份围栏方法,您可以声明使用电源开关或某些隔离节点的第二种击剑方法。如果第一种方法未能对节点进行隔离,则将使用第二种栅栏方法。
您还可以考虑添加篱笆_手册作为辅助围栏代理,这样您就可以始终恢复集群,但是当然需要手动干预。
发布于 2014-09-10 16:07:53
据我所知,没有标准的硬件(或软件)解决方案。
如果另一个节点不在的话你不能开枪打它的头。
你可以用多种不同的方法来处理这件事--我可以建议你使用智能PDU --作为最后的手段,因为没有其他的STONITH技术可以控制它的电源插座“关闭”,而且在有人再次“打开”电源之前,你不必担心它会回来。(这只是防止有人不小心拉电缆的安全措施.)
一个类似的解决方案也可以使用托管交换机,关闭机器所连接的端口,或者将它们放到一个“固定”VLAN中,这样您就可以连接到那里的盒子,并准备好重新加入集群。
以上两种想法都依赖于数据中心的供电和连接( PDU、交换机等都需要工作,并且连接需要存在,这样您就可以向基础设施设备发送命令)。
如果您不能依赖电源,一个典型的解决方案是配置您的服务器,使其在停电后不自动供电(IPMI/iLO/等在机箱供电时仍然会出现,因此您可以稍后将其作为手动步骤启动,也许在隔离其网络端口之后,如上文所述)。
这避免了一个“坏”的节点返回到网上,但确实添加了一个手动(或自动)步骤到流程中。
如果您的问题是连接性而不是电源,那么您有一个更困难的问题--断开连接的节点需要向自己的头部开枪。(这个问题就是为什么我的集群配置不会自动重新激活失败的成员:当一个框失败并返回时,它处于部分联机状态,等待我告诉它重新加入。这是一个手动步骤,但它不应该发生在任何频率。)
https://serverfault.com/questions/627596
复制相似问题