[ClusterLabs Developers] Trouble with crm_node -l output
Jehan-Guillaume de Rorthais
jgdr at dalibo.com
Tue Nov 8 12:45:24 UTC 2016
Hi guys,
I am currently struggling with "crm_node --list" output. I need to get the list
of existing nodes in the cluster from my resource agent ("past and current"
nodes as stated in crm_node man page).
However, the "crm_node --list" output is quite different depending on the
system you are running it on. It outputs either:
* a single line with a simple list of node
* one pair of "NODEID NODENAME" per line
* one triplet of "NODEID NODENAME STATUS" per line
Based on this, I am wondering how the db2 RA might work correctly on system not
doing the "NODEID NODENAME STATUS" output. See:
https://github.com/ClusterLabs/resource-agents/blob/d304e3c7cd6dce010d63162341a612c0c654f0a3/heartbeat/db2#L263
Based on this,
* on what this output is based?
* what can I test from my RA to know what kind of output I should expect?
* is there another way to get this list of node safely whatever
the version of <I don't know what produces this>?
Bellow the various output I gathered so far...(and maybe one bug using crm_node
-N):
== CentOS 6.8
I have the following output:
root at srv1:~$ crm_node -l
srv1 srv2 srv3
Packages and versions:
cman 3.0.12.1-78.el6.x86_64
corosync 1.4.7-5.el6.x86_64
corosynclib 1.4.7-5.el6.x86_64
libqb 0.17.1-2.el6.x86_64
pacemaker 1.1.14-8.el6_8.1.x86_64
pacemaker-cli 1.1.14-8.el6_8.1.x86_64
pacemaker-cluster-libs 1.1.14-8.el6_8.1.x86_64
pacemaker-libs 1.1.14-8.el6_8.1.x86_64
== CentOS 7.2
I have the following output:
root at srv1:~# crm_node -l
3 srv3 member
1 srv1 member
2 srv2 member
Packages and versions:
corosync 2.3.4-7.el7_2.3.x86_64
corosynclib 2.3.4-7.el7_2.3.x86_64
libqb 0.17.1-2.el7.1.x86_64
pacemaker 1.1.13-10.el7_2.4.x86_64
pacemaker-cli 1.1.13-10.el7_2.4.x86_64
pacemaker-cluster-libs 1.1.13-10.el7_2.4.x86_64
pacemaker-libs 1.1.13-10.el7_2.4.x86_64
== Ubuntu 14.04
I have the following output:
root at srv3:~# crm_node -l
3232266874 srv2
3232266875 srv3
3232266873 srv1
And BTW, crm_node is not able to get node name using node id:
root at srv3:~# crm_node -N 3232266875
(null)
root at srv3:~# crm_node -N 3232266874
(null)
root at srv3:~# crm_node -N 3232266873
(null)
Packages and versions:
corosync 2.3.3-1ubuntu3
libcorosync-common4 2.3.3-1ubuntu3
libqb0 0.16.0.real-1ubuntu5
pacemaker 1.1.10+git20130802-1ubuntu2.3
pacemaker-cli-utils 1.1.10+git20130802-1ubuntu2.3
== Debian 8
I have the following output:
root at srv1:~# crm_node -l
3232266854 srv2 member
3232266853 srv1 member
3232266855 srv3 member
And same problem with "crm_node -N NODEID".
Packages and versions:
corosync 2.3.5-3~bpo8+1
libcorosync-common4 2.3.5-3~bpo8+1
libqb0 0.17.2.real-4~bpo8+1
pacemaker 1.1.14-2~bpo8+1
pacemaker-cli-utils 1.1.14-2~bpo8+1
pacemaker-common 1.1.14-2~bpo8+1
pacemaker-resource-agents 1.1.14-2~bpo8+1
Thank you for your help!
Regards,
More information about the Developers
mailing list