Hello Everyone, I am building ocfs2-tools from source. Modified /ocfs2_controld/Makefile to point to the correct pacemaker 1.1.6 headers: PCMK_INCLUDES = -I/usr/include/pacemaker -I/usr/include/heartbeat -I/usr/include/libxml2 $(GLIB_CFLAGS) However, for some reason I am getting: setup_stack: pacemaker.c:158: error: PCMK_SERVICE_ID undeclared (first use in this function) pacemaker.c:158: error: (Each undeclared identifier is reported only once pacemaker.c:158: error: for each function it appears in.) make[1]: *** [pacemaker.o] Error 1 make[1]: Leaving directory `/usr/local/src/ocfs2-tools-1.4.4/ocfs2_controld' The config I am using: ./configure --sbindir=/sbin --bin=/bin --libdir=/usr/lib --sysconfdir=/etc --datadir=/etc/ocfs2 --sharedstatedir=/var/ocfs2 --libexecdir=/usr/libexec --localstatedir=/var --mandir=/usr/man --enable-dynamic-fsck --enable-dynamic-ctl Thanks in Advance, Nick.
ocfs2-tools-1.4.4 is too old. Build 1.6.4. The source tarball is on oss.oracle.com. On 10/27/2011 12:45 PM, Nick Khamis wrote:> Hello Everyone, > > I am building ocfs2-tools from source. Modified > /ocfs2_controld/Makefile to point to the correct pacemaker 1.1.6 > headers: > > PCMK_INCLUDES = -I/usr/include/pacemaker -I/usr/include/heartbeat > -I/usr/include/libxml2 $(GLIB_CFLAGS) > > However, for some reason I am getting: > > setup_stack: > pacemaker.c:158: error: PCMK_SERVICE_ID undeclared (first use in this function) > pacemaker.c:158: error: (Each undeclared identifier is reported only once > pacemaker.c:158: error: for each function it appears in.) > make[1]: *** [pacemaker.o] Error 1 > make[1]: Leaving directory `/usr/local/src/ocfs2-tools-1.4.4/ocfs2_controld' > > The config I am using: > > ./configure --sbindir=/sbin --bin=/bin --libdir=/usr/lib > --sysconfdir=/etc --datadir=/etc/ocfs2 --sharedstatedir=/var/ocfs2 > --libexecdir=/usr/libexec --localstatedir=/var --mandir=/usr/man > --enable-dynamic-fsck --enable-dynamic-ctl > > > Thanks in Advance, > > Nick. > > _______________________________________________ > Ocfs2-users mailing list > Ocfs2-users at oss.oracle.com > http://oss.oracle.com/mailman/listinfo/ocfs2-users
Andrew, I see you pumping out responses on a daily basis. I apologize for the noise before hand, but there will be a "How Andrew Beekhof Made Your Clustered Lives Easier (Thank You Andrew!)" post. Kind Regards, Nick. On Thu, Nov 3, 2011 at 8:50 AM, Andrew Beekhof <andrew at beekhof.net> wrote:> Relevant patch is: > ? ?https://github.com/ClusterLabs/pacemaker/commit/c3af486 > > On Thu, Nov 3, 2011 at 2:49 PM, Tim Serong <tserong at suse.com> wrote: >> Hi Nick, >> >> It might not be obvious, but IMO this probably belongs back on the Pacemaker >> list (CC'd). >> >> On 11/03/2011 02:40 AM, Nick Khamis wrote: >>> >>> Hello Sunil and Tim, >>> >>> Thank you so much for your responses. I have applied the patch, and >>> recompiled ocfs2-tools. When spinning >>> the pcmk stack, I am recieving the following error from ocfs_conrtold.pcmk >>> >>> ocfs2_controld[14698]: 2011/11/02_11:32:19 ERROR: crm_abort: >>> send_ais_text: Triggered assert at ais.c:346 : dest != crm_msg_ais >>> Sending message 0 via cpg: FAILED (rc=22): Message error: Success (0) >>> ocfs2_controld[14698]: 2011/11/02_11:32:19 ERROR: send_ais_text: >>> Sending message 0 via cpg: FAILED (rc=22): Message error: Success (0) >>> ocfs2_controld[14698]: 2011/11/02_11:32:19 ERROR: crm_abort: >>> send_ais_text: Triggered assert at ais.c:346 : dest != crm_msg_ais >>> Sending message 1 via cpg: FAILED (rc=22): Message error: Success (0) >>> ocfs2_controld[14698]: 2011/11/02_11:32:19 ERROR: send_ais_text: >>> Sending message 1 via cpg: FAILED (rc=22): Message error: Success (0) >>> 1320247939 setup_stack at 170: Cluster connection established. ?Local node >>> id: 1 >>> 1320247939 setup_stack at 174: Added Pacemaker as client 1 with fd -1 >> >> When in doubt, use the source... >> >> ocfs2-tools' ocfs2_controld/pacemaker.c:165[1] says: >> >> ?send_ais_text(crm_class_notify, "true", TRUE, NULL, crm_msg_ais); >> >> pacemaker's lib/common/ais.c:327[2] says: >> >> ?switch(cluster_type) { >> ? ?case pcmk_cluster_classic_ais: >> ? ? ?... >> ? ? ?break; >> ? ?case pcmk_cluster_corosync: >> ? ?case pcmk_cluster_cman: >> ? ? ?transport = "cpg"; >> ? ? ?CRM_CHECK(dest != crm_msg_ais, rc = CS_ERR_MESSAGE_ERROR; >> ? ? ? ?goto bail); >> >> So you're hitting that assert, because Pacemaker sees "cluster_type" as >> either "pcmk_cluster_corosync" or "pcmk_cluster_cman". >> >> If Pacemaker saw cluster_type as "pcmk_cluster_classic_ais", it would work >> fine. >> >> From memory, you're running Pacemaker under CMAN, somehow. Unfortunately I >> have no idea what you need to do to reconfigure it so that ocfs2_controld >> works, or even if it will work in that environment, but the above code is >> the source of your trouble. >> >> Regards, >> >> Tim >> >> [1] >> http://oss.oracle.com/git/?p=ocfs2-tools.git;a=blob;f=ocfs2_controld/pacemaker.c;h=822cf41c4c64cd3e5cb4373c339c2e575c4a5efd;hb=d45856e4a75348c1e3b44dc510c6b7f07b88a36f#l165 >> [2] >> http://hg.clusterlabs.org/pacemaker/1.1/file/9971ebba4494/lib/common/ais.c#l327 >> but note ais.c moved to corosync.c in newer source tree on github >> >> -- >> Tim Serong >> Senior Clustering Engineer >> SUSE >> tserong at suse.com >> >> _______________________________________________ >> Pacemaker mailing list: Pacemaker at oss.clusterlabs.org >> http://oss.clusterlabs.org/mailman/listinfo/pacemaker >> >> Project Home: http://www.clusterlabs.org >> Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf >> Bugs: >> http://developerbugs.linux-foundation.org/enter_bug.cgi?product=Pacemaker >> >
Hello Andrew,
I first applied the patch, and then decided to get the last committed
version from git "git clone
https://github.com/ClusterLabs/pacemaker.git". Recompiled and
installed pacemaker, as well as cman and ocfs2-tools, and still
recieving the following error:
ocfs2_controld.pcmk -D
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: config_find_next:
Processing additional service options...
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: get_config_opt: Found
'corosync_quorum' for option: name
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: config_find_next:
Processing additional service options...
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: get_config_opt: Found
'corosync_cman' for option: name
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: config_find_next:
Processing additional service options...
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: get_config_opt: Found
'openais_clm' for option: name
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: config_find_next:
Processing additional service options...
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: get_config_opt: Found
'openais_evt' for option: name
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: config_find_next:
Processing additional service options...
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: get_config_opt: Found
'openais_ckpt' for option: name
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: config_find_next:
Processing additional service options...
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: get_config_opt: Found
'openais_msg' for option: name
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: config_find_next:
Processing additional service options...
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: get_config_opt: Found
'openais_lck' for option: name
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: config_find_next:
Processing additional service options...
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: get_config_opt: Found
'openais_tmr' for option: name
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: config_find_next: No
additional configuration supplied for: service
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: config_find_next:
Processing additional quorum options...
ocfs2_controld[6883]: 2011/11/03_16:34:19 info: get_config_opt: Found
'quorum_cman' for option: provider
ocfs2_controld[6883]: 2011/11/03_16:34:20 info: get_cluster_type:
Detected an active 'cman' cluster
ocfs2_controld[6883]: 2011/11/03_16:34:20 info: get_local_node_name:
Using CMAN node name: astdrbd1
ocfs2_controld[6883]: 2011/11/03_16:34:20 info:
init_ais_connection_once: Connection to 'cman': established
ocfs2_controld[6883]: 2011/11/03_16:34:20 info: crm_new_peer: Node
astdrbd1 now has id: 1
ocfs2_controld[6883]: 2011/11/03_16:34:20 info: crm_new_peer: Node 1
is now known as astdrbd1
ocfs2_controld[6883]: 2011/11/03_16:34:20 ERROR: crm_abort:
send_ais_text: Triggered assert at corosync.c:352 : dest !crm_msg_ais
Sending message 0 via cpg: FAILED (rc=22): Message error: Success (0)
ocfs2_controld[6883]: 2011/11/03_16:34:20 ERROR: send_ais_text:
Sending message 0 via cpg: FAILED (rc=22): Message error: Success (0)
ocfs2_controld[6883]: 2011/11/03_16:34:20 ERROR: crm_abort:
send_ais_text: Triggered assert at corosync.c:352 : dest !crm_msg_ais
Sending message 1 via cpg: FAILED (rc=22): Message error: Success (0)
ocfs2_controld[6883]: 2011/11/03_16:34:20 ERROR: send_ais_text:
Sending message 1 via cpg: FAILED (rc=22): Message error: Success (0)
1320352460 setup_stack at 170: Cluster connection established. Local node id: 1
1320352460 setup_stack at 174: Added Pacemaker as client 1 with fd -1
My crm config looks like:
node astdrbd1 \
attributes standby="off"
node astdrbd2 \
attributes standby="off"
primitive astIP ocf:heartbeat:IPaddr2 \
op monitor interval="60" timeout="20" \
params ip="192.168.2.6" cidr_netmask="24" \
nic="eth2" broadcast="192.168.2.255" \
lvs_support="true"
primitive astDRBD ocf:linbit:drbd \
params drbd_resource="r0.res" \
op monitor role=Master interval="20" timeout="20"\
op monitor role=Slave interval="30" timeout="20"
ms msASTDRBD astDRBD \
meta resource-stickines="100" notify="true" \
master-max="2" interleave="true"
primitive astDLM ocf:pacemaker:controld op monitor interval="120s"
clone astDLMClone astDLM \
meta globally-unique="false" interleave="true"
primitive astO2CB ocf:pacemaker:o2cb op monitor interval="120s"
clone astO2CBClone astO2CB \
meta globally-unique="false" interleave="true"
primitive astFilesystem ocf:heartbeat:Filesystem \
params device="/dev/drbd0" directory="/service"
fstype="ocfs2" \
op monitor interval="120s"
clone astFilesystemClone astFilesystem meta interleave="true"
ordered="true"
order dlmAfterDRBD \
inf: msASTDRBD:promote astDLMClone
order o2cbAfterDLM \
inf: astDLMClone astO2CBClone
order astFilesystemAfterO2cb \
inf: astO2CBClone astFilesystemClone
colocation dlmOnDRBD \
inf: astDLMClone msASTDRBD:Master
colocation o2cbOnDLM \
inf: astO2CBClone astDLMClone
colocation astFilesystemOnO2CB \
inf: astFilesystemClone astO2CBClone
property $id="cib-bootstrap-options" \
no-quorum-policy="ignore" \
stonith-enabled="false" \
expected-quorum-votes="2" \
dc-version="1.1.6-2d8fad5" \
cluster-recheck-interval="0" \
cluster-infrastructure="openais"
rsc_defaults $id="rsc-options"
I just thought about recompileing corosync and openais, not sure if
that would make a difference.
Thanks in Advance,
Nick.