[Pacemaker] Several problems with simple virtual-IP config (solved)
Klaus Darilion
klaus.mailinglists at pernau.at
Wed Feb 9 12:36:05 UTC 2011
Hi!
I managed to sovle the problem by using the 'ping' OCF resource instead
of 'pingd'. Although pingd is deprecated I thought it should work.
Anyway, for the records, my config which seems to work now (some
tweaking of ping checks is still missing):
node server1 \
attributes standby="off"
node server2 \
attributes standby="off"
primitive failover-ip ocf:heartbeat:IPaddr \
params ip="11.222.32.161" \
op monitor interval="3s"
primitive pingtest ocf:pacemaker:ping \
params host_list="11.222.53.113" multiplier="10" dampen="5s" \
op monitor interval="10s"
clone clonePing pingtest
location aktiverLB failover-ip \
rule $id="aktiverLB-rule" -inf: not_defined pingd or pingd lte 0
property $id="cib-bootstrap-options" \
dc-version="1.0.9-74392a28b7f31d7ddc86689598bd23114f58978b" \
cluster-infrastructure="openais" \
expected-quorum-votes="2" \
stonith-enabled="false" \
no-quorum-policy="ignore"
rsc_defaults $id="rsc-options" \
resource-stickiness="5"
Thanks
Klaus
Am 09.02.2011 12:49, schrieb Klaus Darilion:
>
>
> Am 08.02.2011 18:20, schrieb Florian Haas:
>> On 02/08/2011 06:03 PM, Klaus Darilion wrote:
>
>>> Now I put server2 online again: # crm node online server2.
>>> That means, server2 is online and has ping connectivity, server1 is
>>> online and doesn't have ping connectivity. But the virtual-IP stayed
>>> with server1:
>>>
>>> Online: [ server1 server2 ]
>>>
>>> failover-ip (ocf::heartbeat:IPaddr): Started server1
>>> Clone Set: clonePing
>>> Started: [ server2 server1 ]
>>>
>>> What do I have to change in the config to have here a failover to server2?
>>
>> IIUC your pingd attribute is still defined, albeit with a value of 0.
>> Thus the location constraint is still fulfilled and the pingd score is 0
>> on both nodes. Equal score means Pacemaker gets to decide where the
>> resource runs, and currently there is no reason to migrate.
>>
>> Try this:
>>
>> location aktiverLB failover-ip \
>> rule $id="aktiverLB-rule" -inf: pingd lte 0
>>
>> or:
>>
>> location aktiverLB failover-ip \
>> rule $id="aktiverLB-rule" inf: pingd gt 0
>>
>
> Hi Florian!
>
> I changed the config now as suggested by
> http://www.clusterlabs.org/wiki/Example_configurations#pingd_location_constraint:
>
>
> node server1 \
> attributes standby="off"
> node server2 \
> attributes standby="off"
> primitive failover-ip ocf:heartbeat:IPaddr \
> params ip="83.136.32.161" \
> op monitor interval="3s"
> primitive pingtest ocf:pacemaker:pingd \
> params host_list="88.198.53.113" multiplier="10" dampen="5s" \
> op monitor interval="10s"
> clone clonePing pingtest
> location aktiverLB failover-ip \
> rule $id="aktiverLB-rule" -inf: not_defined pingd or pingd lte 0
> property $id="cib-bootstrap-options" \
> dc-version="1.0.9-74392a28b7f31d7ddc86689598bd23114f58978b" \
> cluster-infrastructure="openais" \
> expected-quorum-votes="2" \
> stonith-enabled="false" \
> no-quorum-policy="ignore"
>
> But the behavior is IMO still confusing:
>
> server1 is started:
>
> Online: [ server1 ]
> OFFLINE: [ server2 ]
>
> Clone Set: clonePing
> Started: [ server1 ]
> Stopped: [ pingtest:1 ]
>
> Migration summary:
> * Node server1:
>
>
> Why are there no scores? I guess this prevents the virtualIP resource to
> be started on server1.
>
>
> Now I block PING. After 5 seconds the score is 10 (although ping is
> blocked) and the resource gets started:
>
> Online: [ server1 ]
> OFFLINE: [ server2 ]
>
> failover-ip (ocf::heartbeat:IPaddr): Started server1
> Clone Set: clonePing
> Started: [ server1 ]
> Stopped: [ pingtest:1 ]
>
> Migration summary:
> * Node server1: pingd=10
>
>
> After 5 more seconds the score becomes 0 and the resource will be removed:
>
> Online: [ server1 ]
> OFFLINE: [ server2 ]
>
> Clone Set: clonePing
> Started: [ server1 ]
> Stopped: [ pingtest:1 ]
>
> Migration summary:
> * Node server1: pingd=0
>
>
> Now I allow PING. Even after 10 seconds the score is still 0 although
> PINGs are working fine again:
>
> Online: [ server1 ]
> OFFLINE: [ server2 ]
>
> Clone Set: clonePing
> Started: [ server1 ]
> Stopped: [ pingtest:1 ]
>
> Migration summary:
> * Node server1: pingd=0
>
>
> I think the problem is, that the pingd score is not calculated on
> startup and is not updated when the connectivity problem recovers.
>
> Any ideas what could be wrong?
>
> Thanks
> Klaus
>
>
>
>
>
> _______________________________________________
> 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
More information about the Pacemaker
mailing list