[Linux-ha-dev] libglue2 dependency missing in cluster-glue

2011-03-16 Thread Dominik Klein
Hi

as some of you might have seen on the pacemaker list, I tried to install
a 3 node cluster and there were ipc issues reported by the cib and
therefore the cluster could not start correctly.

The reason was that libglue2 and cluster-glue were not installed from
the clusterlabs repository, as the rest of the packages were, but
instead they were pulled from the original opensuse repository in an
older version.

So I went and updated cluster-glue with the version from the clusterlabs
repository. Nothing changed though.

rpm -qa|grep glue
revealed that libglue2 was still the old version while cluster-glue was
updated.

Looking at the package dependencies, I think the problem is that
cluster-glue does not depend on package libglue2 (while they do the
other way around).

So one error, which I could improve, was that the installation
instructions on the clusterlabs site did not mention libglue2 and
cluster-glue. They do now which should prevent others who follow those
instructions.

The dependency thing is up for grabs ;)

Regards
Dominik
___
Linux-HA-Dev: Linux-HA-Dev@lists.linux-ha.org
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/


Re: [Linux-ha-dev] libglue2 dependency missing in cluster-glue

2011-03-16 Thread Dejan Muhamedagic
Hi Dominik,

On Wed, Mar 16, 2011 at 10:14:14AM +0100, Dominik Klein wrote:
 Hi
 
 as some of you might have seen on the pacemaker list, I tried to install
 a 3 node cluster and there were ipc issues reported by the cib and
 therefore the cluster could not start correctly.
 
 The reason was that libglue2 and cluster-glue were not installed from
 the clusterlabs repository, as the rest of the packages were, but
 instead they were pulled from the original opensuse repository in an
 older version.

This is what I found in pacemaker.spec.in in the repository:

Requires(pre):  cluster-glue = 1.0.6

Which version of glue was that older version?

 So I went and updated cluster-glue with the version from the clusterlabs
 repository. Nothing changed though.
 
 rpm -qa|grep glue
 revealed that libglue2 was still the old version while cluster-glue was
 updated.
 
 Looking at the package dependencies, I think the problem is that
 cluster-glue does not depend on package libglue2 (while they do the
 other way around).

Yes, I guess that that should be fixed.

Cheers,

Dejan

 So one error, which I could improve, was that the installation
 instructions on the clusterlabs site did not mention libglue2 and
 cluster-glue. They do now which should prevent others who follow those
 instructions.
 
 The dependency thing is up for grabs ;)
 
 Regards
 Dominik
 ___
 Linux-HA-Dev: Linux-HA-Dev@lists.linux-ha.org
 http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
 Home Page: http://linux-ha.org/
___
Linux-HA-Dev: Linux-HA-Dev@lists.linux-ha.org
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/


Re: [Linux-ha-dev] libglue2 dependency missing in cluster-glue

2011-03-16 Thread Dominik Klein
Hi Dejan

 The reason was that libglue2 and cluster-glue were not installed from
 the clusterlabs repository, as the rest of the packages were, but
 instead they were pulled from the original opensuse repository in an
 older version.
 
 This is what I found in pacemaker.spec.in in the repository:
 
 Requires(pre):  cluster-glue = 1.0.6
 
 Which version of glue was that older version?

0.9.1

So you're saying pacemaker depends on cluster-glue 1.0.6. Well, that was
not installed when I installed pacemaker. And I did not use --nodeps or
such thing.

Instead, that old version was installed from the original opensuse
repositories.

 So I went and updated cluster-glue with the version from the clusterlabs
 repository. Nothing changed though.

 rpm -qa|grep glue
 revealed that libglue2 was still the old version while cluster-glue was
 updated.

 Looking at the package dependencies, I think the problem is that
 cluster-glue does not depend on package libglue2 (while they do the
 other way around).
 
 Yes, I guess that that should be fixed.

Regards
Dominik
___
Linux-HA-Dev: Linux-HA-Dev@lists.linux-ha.org
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/


Re: [Linux-ha-dev] libglue2 dependency missing in cluster-glue

2011-03-16 Thread Dejan Muhamedagic
Hi,

On Wed, Mar 16, 2011 at 01:19:53PM +0100, Dominik Klein wrote:
 Hi Dejan
 
  The reason was that libglue2 and cluster-glue were not installed from
  the clusterlabs repository, as the rest of the packages were, but
  instead they were pulled from the original opensuse repository in an
  older version.
  
  This is what I found in pacemaker.spec.in in the repository:
  
  Requires(pre):  cluster-glue = 1.0.6
  
  Which version of glue was that older version?
 
 0.9.1

Whoa. Can't recall ever seeing that thing.

 So you're saying pacemaker depends on cluster-glue 1.0.6. Well, that was
 not installed when I installed pacemaker. And I did not use --nodeps or
 such thing.

Hmm, then it looks like the spec file used there was different.
Is that clusterlabs.org? That'd be strange.

Cheers,

Dejan

 Instead, that old version was installed from the original opensuse
 repositories.
 
  So I went and updated cluster-glue with the version from the clusterlabs
  repository. Nothing changed though.
 
  rpm -qa|grep glue
  revealed that libglue2 was still the old version while cluster-glue was
  updated.
 
  Looking at the package dependencies, I think the problem is that
  cluster-glue does not depend on package libglue2 (while they do the
  other way around).
  
  Yes, I guess that that should be fixed.
 
 Regards
 Dominik
 ___
 Linux-HA-Dev: Linux-HA-Dev@lists.linux-ha.org
 http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
 Home Page: http://linux-ha.org/
___
Linux-HA-Dev: Linux-HA-Dev@lists.linux-ha.org
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/


[Linux-ha-dev] Patch to ocf:heartbeat:IPaddr2 to check if link status is up

2011-03-16 Thread Corvus Corax

IPAddr2 puts the interface up on start and down on stop.
But its not able to detect an UP or DOWN change in status or monitor.

Therefore an ifconfig interface down from a thrird program or a
careless administrator would drop the link without pacemaker noticing!

The attached patch tries to fix that

-- 
Eric Price
Linux Solutions / Development

Lightwerk GmbH - www.lightwerk.com
Schulze-Delitzsch-Str. 38, 70565 Stuttgart
E-Mail: e...@lightwerk.com

Geschäftsführender Gesellschafter: Veikko Wünsche
Amtsgericht Stuttgart, HRB 22214
Ust.-ID: DE 813315708

--- IPaddr2	2011-03-16 15:54:46.359554666 +0100
+++ IPaddr2_lw	2011-03-16 16:38:33.728562036 +0100
@@ -364,10 +364,21 @@
 	echo $iface
 	return 0
 }
 
 #
+#	Check interface status (up or down)
+#	The argument is an interface name (e.g. eth0)
+#
+interface_down() {
+	if $IP2UTIL -o -f inet link show $1 | grep state UP /dev/null; then
+		return 1
+	fi
+	return 0
+}
+
+#
 #Delete an interface
 #
 delete_interface () {
 	ipaddr=$1
 	iface=$2
@@ -572,20 +583,31 @@
 return 0
 			fi
 			;;
 		esac
 
+		if interface_down $cur_nic; then
+			echo partial3
+			return 0
+		fi
+
 		echo ok
 		return 0
 	fi
 
 	# Special handling for the CIP:
 	if [ ! -e $IP_CIP_FILE ]; then
 		echo partial2
 		return 0
 	fi
 	if egrep -q (^|,)${IP_INC_NO}(,|$) $IP_CIP_FILE ; then
+
+		if interface_down $cur_nic; then
+			echo partial3
+			return 0
+		fi
+
 		echo ok
 		return 0
 	else
 		echo partial
 		return 0
@@ -620,10 +642,19 @@
 	#
 	#	Do we already service this IP address?
 	#
 	local ip_status=`ip_served`
 
+	# yes, but interface is down, bring it up!
+	if [ $ip_status = partial3 ]; then
+		CMD=$IP2UTIL link set $NIC up
+
+		ocf_log info $CMD
+		$CMD
+		ip_status=`ip_served`
+	fi
+
 	if [ $ip_status = ok ]; then
 		exit $OCF_SUCCESS
 	fi
 	
 	if [ -n $IP_CIP ]  [ $ip_status = no ] || [ $ip_status = partial2 ]; then
___
Linux-HA-Dev: Linux-HA-Dev@lists.linux-ha.org
http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
Home Page: http://linux-ha.org/