[ClusterLabs] Two ethernet adapter within same subnet causing issue on Qdevice

Andrei Borzenkov arvidjaar at gmail.com
Thu Oct 1 14:45:07 EDT 2020


01.10.2020 20:09, Richard Seo пишет:
> Hello everyone,
> I'm trying to setup a cluster with two hosts:
> both have two ethernet adapters all within the same subnet.
> I've created resources for an adapter for each hosts.
> Here is the example:
> Stack: corosync
> Current DC: ceha06 (version 2.0.2-1.el8-744a30d655) - partition with quorum
> Last updated: Thu Oct  1 12:50:48 2020
> Last change: Thu Oct  1 12:32:53 2020 by root via cibadmin on ceha05
> 2 nodes configured
> 2 resources configured
> Online: [ ceha05 ceha06 ]
> Active resources:
> db2_ceha05_ens192    (ocf::heartbeat:db2ethmon):     Started ceha05
> db2_ceha06_ens192    (ocf::heartbeat:db2ethmon):     Started ceha06
> I also have a qdevice setup:
> # corosync-qnetd-tool -l
> Cluster "hadom":
>      Algorithm:        LMS
>      Tie-breaker:    Node with lowest node ID
>      Node ID 2:
>          Client address:        ::ffff:<ip for ens192 for host 2>:40044
>          Configured node list:    1, 2
>          Membership node list:    1, 2
>          Vote:            ACK (ACK)
>      Node ID 1:
>          Client address:        ::ffff:<*ip for ens192 for host 1*>:37906
>          Configured node list:    1, 2
>          Membership node list:    1, 2
>          Vote:            ACK (ACK)
> When I ifconfig down ens192 for host 1, looks like qdevice changes the Client 
> address to the other adapter and still give quorum to the lowest node ID (which 
> is host 1 in this case) even when the network is down for host 1.

Network on host 1 is obviously not down as this host continues to
communicate with the outside world. Network may be down for your
specific application but then it is up to resource agent for this
application to detect it and initiate failover.

> Cluster "hadom":
>      Algorithm:        LMS
>      Tie-breaker:    Node with lowest node ID
>      Node ID 2:
>          Client address:        ::ffff:<ip for ens192 for host 2>:40044
>          Configured node list:    1, 2
>          Membership node list:    1, 2
>          Vote:            ACK (ACK)
>      Node ID 1:
>          Client address:        ::ffff:<*ip for ens256 for host 1*>:37906
>          Configured node list:    1, 2
>          Membership node list:    1, 2
>          Vote:            ACK (ACK)
> Is there a way we can force qdevice to only route through a specified adapter 
> (ens192 in this case)?

Create host route via specific device.

> Also while I'm on this topic, is multiple communication ring support with 
> pacemaker supported or will be supported in the near future?

What exactly do you mean? What communication are you talking about?

You seem to confuse multiple layers here. qnetd and pacemaker are two
independent things.


More information about the Users mailing list