可以在 Pacemaker 组中设置资源的特定顺序吗?

eww*_*ite 5 nfs centos pacemaker corosync rhel7

鉴于下面描述的 Pacemaker/Corosync 资源配置,是否可以在资源组内的特定位置添加资源?配置是使用 RHEL 提供的集群附加组件的 CentOS 7.2。

这是一个 NFS 服务器集群,Pacemaker 处理 NFS 守护进程、卷、导出、虚拟 IP 和 NFS 客户端通知。

当我想将 NFS 挂载(exportfs 资源)添加到集群设置时,它最终会列nfs-notify 资源之后。这以丑陋的方式破坏了集群。

我找到了基本pcs resource order命令,它们似乎允许指定资源 X 需要在资源 Y 之前运行,但这不可扩展。

这可能吗?

[root@zfs1-node1 ~]# pcs status
Cluster name: zfs1
Last updated: Tue Jan  5 04:09:11 2016      Last change: Tue Jan  5 04:08:15 2016 by root via cibadmin on zfs1-node1
Stack: corosync
Current DC: zfs1-node1 (version 1.1.13-10.el7-44eb2dd) - partition with quorum
2 nodes and 9 resources configured

Online: [ zfs1-node1 zfs1-node2 ]

Full list of resources:

 fence-vol1 (stonith:fence_scsi):   Started zfs1-node1
 Resource Group: group-vol1
     vol1   (ocf::heartbeat:ZFS):   Started zfs1-node1
     nfs-daemon (ocf::heartbeat:nfsserver): Started zfs1-node1
     nfsinfo    (ocf::heartbeat:exportfs):  Started zfs1-node1
     vol1-management    (ocf::heartbeat:exportfs):  Started zfs1-node1
     vol1-ppro-mirrors  (ocf::heartbeat:exportfs):  Started zfs1-node1
     vol1-staging   (ocf::heartbeat:exportfs):  Started zfs1-node1
     ip-vol1    (ocf::heartbeat:IPaddr2):   Started zfs1-node1
     nfs-notify (ocf::heartbeat:nfsnotify): Started zfs1-node1

PCSD Status:
  zfs1-node1: Online
  zfs1-node2: Online

Daemon Status:
  corosync: active/enabled
  pacemaker: active/enabled
  pcsd: active/enabled
Run Code Online (Sandbox Code Playgroud)

Mat*_*man 4

您可以使用该cibadmin实用程序查询 Pacemaker 配置,在<group id="group-vol1"></group>标签内相应地移动原语,然后将新配置推回 Pacemaker。

这个过程看起来像这样:

# cibadmin --query > /tmp/cib.xml
# vi /tmp/cib.xml
# cibadmin --replace --xml-file /tmp/cib.xml

当您在 vi 中编辑 cib.xml 时,您将看到由如下标签定义的组:
<group id="group-vol1"> *primitives within the group will go here* </group>

所有原语都将在组标签内定义。它们看起来像这样(例如 ZFS 原语:
<primitive id="vol1" class="ocf" provider="heartbeat" type="ZFS"> *attributes and operations will go here* </primitive>

按照您希望的顺序移动基元;首先是顶部,最后是底部。将更改推入 Pacemaker,您应该会很好。