9.6. 配置隔离级别
Pacemaker 通过一个称为隔离拓扑的功能实现有多个设备的节点的隔离。要实现拓扑结构,根据常规创建独立设备,然后在配置中的隔离拓扑部分定义一个或多个隔离级别。
Pacemaker 会按如下方式处理隔离级别:
- 级别以整数形式递增,从 1 开始。
- 如果设备失败,对当前级别的处理会中断。不会执行该级别的其他设备,而是尝试下一个级别。
- 如果所有设备被成功隔离,那么该级别已成功,且不会尝试其他级别。
- 当一个级别被通过(success)或所有级别都已经被尝试(failed)后,操作就会完成。
使用以下命令为节点添加隔离级别。这些设备以逗号分开的 stonith id 列表形式提供,对该级别的节点尝试使用这些设备。
pcs stonith level add level node devices
pcs stonith level add level node devices
以下示例设置了隔离级别,以便在设备 my_ilo 失败且无法隔离节点时,Pacemaker 会尝试使用设备 my_apc。
先决条件
-
您已为节点
rh7-2配置了名为my_ilo的 ilo 隔离设备。 -
您已为节点
rh7-2配置了名为my_apc的 apc 隔离设备。
流程
为节点
rh7-2上的隔离设备my_ilo添加隔离级别 1。pcs stonith level add 1 rh7-2 my_ilo
# pcs stonith level add 1 rh7-2 my_iloCopy to Clipboard Copied! Toggle word wrap Toggle overflow 为节点
rh7-2上的隔离设备my_apc添加隔离级别 2。pcs stonith level add 2 rh7-2 my_apc
# pcs stonith level add 2 rh7-2 my_apcCopy to Clipboard Copied! Toggle word wrap Toggle overflow 列出当前配置的隔离级别。
pcs stonith level
# pcs stonith level Node: rh7-2 Level 1 - my_ilo Level 2 - my_apcCopy to Clipboard Copied! Toggle word wrap Toggle overflow
有关测试隔离设备的详情,请参考 测试隔离设备。
9.6.1. 删除隔离级别 复制链接链接已复制到粘贴板!
以下命令删除指定节点和设备的隔离级别。如果没有指定节点或设备,则您指定的隔离级别会从所有节点中删除。
pcs stonith level remove level [node_id] [stonith_id] ... [stonith_id]
pcs stonith level remove level [node_id] [stonith_id] ... [stonith_id]
9.6.2. 清除隔离级别 复制链接链接已复制到粘贴板!
以下命令清除指定节点或者 stonith id 的隔离级别。如果您没有指定节点或 stonith id,则会清除所有隔离级别。
pcs stonith level clear [node]|stonith_id(s)]
pcs stonith level clear [node]|stonith_id(s)]
如果您指定一个以上的 stonith id,则必须用逗号分开(不要有空格),如下例所示。
pcs stonith level clear dev_a,dev_b
# pcs stonith level clear dev_a,dev_b
9.6.3. 验证隔离级别中的节点和设备 复制链接链接已复制到粘贴板!
以下命令可验证所有在隔离级别指定的隔离设备和节点是否存在。
pcs stonith level verify
pcs stonith level verify
9.6.4. 在隔离拓扑中指定节点 复制链接链接已复制到粘贴板!
您可以在隔离拓扑中通过在节点名称上应用的正则表达式、节点属性及其值来指定节点。例如,以下命令将节点 node1、node2 和 node3 配置为使用隔离设备 apc1 和 apc2,节点 node4、node5 和 node6 使用隔离设备 apc3 和 apc4。
pcs stonith level add 1 "regexp%node[1-3]" apc1,apc2 pcs stonith level add 1 "regexp%node[4-6]" apc3,apc4
# pcs stonith level add 1 "regexp%node[1-3]" apc1,apc2
# pcs stonith level add 1 "regexp%node[4-6]" apc3,apc4
以下命令通过使用节点属性匹配得到同样的结果。
有关节点属性的详情,请参考 使用节点属性配置特定于节点的值。