[ClusterLabs] IPaddr2 RA and bonding

Tomer Azran tomer.azran at edp.co.il
Mon Aug 7 13:39:42 EDT 2017


I don't want to use this approach since I don't want to be depend on pinging to other host or couple of hosts.
Is there any other solution?
I'm thinking of writing a simple script that will take a bond down using ifdown command when there are no slaves available and put it on /sbin/ifdown-local  


-----Original Message-----
From: Ken Gaillot [mailto:kgaillot at redhat.com] 
Sent: Monday, August 7, 2017 7:14 PM
To: Cluster Labs - All topics related to open-source clustering welcomed <users at clusterlabs.org>
Subject: Re: [ClusterLabs] IPaddr2 RA and bonding

On Mon, 2017-08-07 at 10:02 +0000, Tomer Azran wrote:
> Hello All,
> 
>  
> 
> We are using CentOS 7.3 with pacemaker in order to create a cluster.
> 
> Each cluster node ha a bonding interface consists of two nics.
> 
> The cluster has an IPAddr2 resource configured like that:
> 
>  
> 
> # pcs resource show cluster_vip
> 
> Resource: cluster_vip (class=ocf provider=heartbeat type=IPaddr2)
> 
>   Attributes: ip=192.168.1.3
> 
>   Operations: start interval=0s timeout=20s (cluster_vip
> -start-interval-0s)
> 
>               stop interval=0s timeout=20s (cluster_vip
> -stop-interval-0s)
> 
>               monitor interval=30s (cluster_vip -monitor-interval-30s)
> 
>  
> 
>  
> 
> We are running tests and want to simulate a state when the network 
> links are down.
> 
> We are pulling both network cables from the server.
> 
>  
> 
> The problem is that the resource is not marked as failed, and the 
> faulted node keep holding it and does not fail it over to the other 
> node.
> 
> I think that the problem is within the bond interface. The bond 
> interface is marked as UP on the OS. It even can ping itself:
> 
>  
> 
> # ip link show
> 
> 2: eno3: <NO-CARRIER,BROADCAST,MULTICAST,SLAVE,UP> mtu 1500 qdisc mq 
> master bond1 state DOWN mode DEFAULT qlen 1000
> 
>     link/ether 00:1e:67:f6:5a:8a brd ff:ff:ff:ff:ff:ff
> 
> 3: eno4: <NO-CARRIER,BROADCAST,MULTICAST,SLAVE,UP> mtu 1500 qdisc mq 
> master bond1 state DOWN mode DEFAULT qlen 1000
> 
>     link/ether 00:1e:67:f6:5a:8a brd ff:ff:ff:ff:ff:ff
> 
> 9: bond1: <NO-CARRIER,BROADCAST,MULTICAST,MASTER,UP> mtu 1500 qdisc 
> noqueue state DOWN mode DEFAULT qlen 1000
> 
>     link/ether 00:1e:67:f6:5a:8a brd ff:ff:ff:ff:ff:ff
> 
>  
> 
> As far as I understand the IPaddr2 RA does not check the link state of 
> the interface – What can be done?

You are correct. The IP address itself *is* up, even if the link is down, and it can be used locally on that host.

If you want to monitor connectivity to other hosts, you have to do that separately. The most common approach is to use the ocf:pacemaker:ping resource. See:

http://clusterlabs.org/doc/en-US/Pacemaker/1.1-pcs/html-single/Pacemaker_Explained/index.html#_moving_resources_due_to_connectivity_changes
 
> BTW, I tried to find a solution on the bonding configuration which 
> disables the bond when no link is up, but I didn't find any.
> 
>  
> 
> Tomer.
> 
> 
> _______________________________________________
> Users mailing list: Users at clusterlabs.org 
> http://lists.clusterlabs.org/mailman/listinfo/users
> 
> Project Home: http://www.clusterlabs.org Getting started: 
> http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
> Bugs: http://bugs.clusterlabs.org

--
Ken Gaillot <kgaillot at redhat.com>





_______________________________________________
Users mailing list: Users at clusterlabs.org
http://lists.clusterlabs.org/mailman/listinfo/users

Project Home: http://www.clusterlabs.org
Getting started: http://www.clusterlabs.org/doc/Cluster_from_Scratch.pdf
Bugs: http://bugs.clusterlabs.org


More information about the Users mailing list