[Pacemaker] Networking and routing issues with Active-Active
Arturo Borrero Gonzalez
cer.inet at linuxmail.org
Mon Dec 19 14:35:41 UTC 2011
Hi there!
I'm working on an active-active LDAP cluster based on
pacemaker+corosync+openldap+debian.
I have two nodes, one running ldirectord and openldap and the other
just openldap (until failover). The schema is like this:
http://2.bp.blogspot.com/-lDDiKhnwBhM/TqLOqDup4KI/AAAAAAAABdU/yTk29zlpmn8/s320/esqueleto+ipv4.png
As all of you know, I assigned with pacemaker the VIP to the main
interface of the main node (well, the node running ldirectord) and to
the loopback devide in the other node.
Surprisingly, the load balancing over IPv6 works extremely well, but
not over ipv4.
The "slave" node (the node not running ldirectord), who has the VIP in
loopback, has a lot of weird behaviours with ARP and ROUTING
services.
When pinging some host in the same subnetwork, I see that the machine
sends packages to the loopback interface, with the src ip and dst ip
the same, the IP of the original dst host.
In addition, sometimes, the node doesn't reply to ARP request for his
real IP and I have to set the ARP statically in other host that want
to contact the node.
Here is my configuration:
root at ldap1:~# sysctl -A | grep arp
net.ipv4.conf.all.proxy_arp = 0
net.ipv4.conf.all.arp_filter = 0
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_accept = 0
net.ipv4.conf.all.arp_notify = 0
net.ipv4.conf.default.proxy_arp = 0
net.ipv4.conf.default.arp_filter = 0
net.ipv4.conf.default.arp_announce = 0
net.ipv4.conf.default.arp_ignore = 0
net.ipv4.conf.default.arp_accept = 0
net.ipv4.conf.default.arp_notify = 0
net.ipv4.conf.lo.proxy_arp = 0
net.ipv4.conf.lo.arp_filter = 0
net.ipv4.conf.lo.arp_announce = 0
net.ipv4.conf.lo.arp_ignore = 0
net.ipv4.conf.lo.arp_accept = 0
net.ipv4.conf.lo.arp_notify = 0
net.ipv4.conf.eth0.proxy_arp = 0
net.ipv4.conf.eth0.arp_filter = 0
net.ipv4.conf.eth0.arp_announce = 2
net.ipv4.conf.eth0.arp_ignore = 1
net.ipv4.conf.eth0.arp_accept = 0
net.ipv4.conf.eth0.arp_notify = 0
net.ipv4.conf.eth1.proxy_arp = 0
net.ipv4.conf.eth1.arp_filter = 0
net.ipv4.conf.eth1.arp_announce = 0
net.ipv4.conf.eth1.arp_ignore = 0
net.ipv4.conf.eth1.arp_accept = 0
net.ipv4.conf.eth1.arp_notify = 0
root at ldap1:~# crm configure show
node ldap1 \
attributes standby="off"
node ldap2 \
attributes standby="off"
primitive IPV-lo_4 ocf:heartbeat:IPaddr \
params ip="vip_v4" cidr_netmask="24" nic="lo" \
op monitor interval="5s"
primitive IPV-lo_6 ocf:heartbeat:IPv6addrLO \
params ipv6addr="vip_v6" cidr_netmask="64" \
op monitor interval="5s"
primitive IPV_4 ocf:heartbeat:IPaddr2 \
params ip="vip_v4" nic="eth0" cidr_netmask="24" lvs_support="true" \
op monitor interval="5s"
primitive IPV_6 ocf:heartbeat:IPv6addr \
params ipv6addr="vip_v6" nic="eth0" cidr_netmask="64" \
op monitor interval="5s"
primitive lvs ocf:heartbeat:ldirectord \
op monitor interval="20" timeout="10"
group IPV_LVS IPV_4 IPV_6 lvs
group IPV_lo IPV-lo_6 IPV-lo_4
clone clon_IPV_lo IPV_lo \
meta interleave="true" target-role="Started"
colocation LVS_no_IPV_lo -inf: clon_IPV_lo IPV_LVS
property $id="cib-bootstrap-options" \
dc-version="1.0.9-74392a28b7f31d7ddc86689598bd23114f58978b" \
cluster-infrastructure="openais" \
expected-quorum-votes="2" \
no-quorum-policy="ignore" \
stonith-enabled="false" \
last-lrm-refresh="1320860387"
rsc_defaults $id="rsc-options" \
resource-stickiness="1000"
root at ldap1:~# ifconfig
eth0 Link encap:Ethernet HWaddr 00:xx:xx:xx:xx
inet addr: real_ipv4 Bcast:150.214.5.255 Mask:255.255.255.0
inet6 addr: real_ipv6 Scope:Global
inet6 addr: fe80::217:31ff:fe22:2b64/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:4613984 errors:0 dropped:0 overruns:0 frame:0
TX packets:3704110 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:979844318 (934.4 MiB) TX bytes:1572082949 (1.4 GiB)
Interrupt:26
eth1 Link encap:Ethernet HWaddr 00:xx:31:22:xx:xx
inet addr:192.168.21.21 Bcast:192.168.21.255 Mask:255.255.255.0
inet6 addr: fxxxxxxxxx/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:8985987 errors:0 dropped:0 overruns:0 frame:0
TX packets:9187433 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1676364355 (1.5 GiB) TX bytes:2465255044 (2.2 GiB)
Interrupt:27
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
inet6 addr: vip_v6 Scope:Global
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:6996 errors:0 dropped:0 overruns:0 frame:0
TX packets:6996 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2236681 (2.1 MiB) TX bytes:2236681 (2.1 MiB)
lo:0 Link encap:Local Loopback
inet addr:vip_v4 Mask:255.255.255.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
root at ldap2:~# ifconfig
eth0 Link encap:Ethernet HWaddr 00:xxxxxxxxxx
inet addr:real_ipv4 Bcast:150.214.5.255 Mask:255.255.255.0
inet6 addr: real_ipv6 Scope:Global
inet6 addr: vip_v6 Scope:Global
inet6 addr: xxxxxxxxxxxx Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:12879341 errors:0 dropped:0 overruns:0 frame:0
TX packets:11568053 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:2798011078 (2.6 GiB) TX bytes:4604167850 (4.2 GiB)
Interrupt:26
eth1 Link encap:Ethernet HWaddr 00xxxxxxxxxxxxxx
inet addr:192.168.21.22 Bcast:192.168.21.255 Mask:255.255.255.0
inet6 addr: xxxxxxxxxxxxxx/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:26024464 errors:0 dropped:0 overruns:0 frame:0
TX packets:17389962 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:5983267668 (5.5 GiB) TX bytes:3446728676 (3.2 GiB)
Interrupt:27
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:9075609 errors:0 dropped:0 overruns:0 frame:0
TX packets:9075609 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2726151268 (2.5 GiB) TX bytes:2726151268 (2.5 GiB)
¿Any idea?
Best regards.
--
/* Arturo Borrero Gonzalez || cer.inet at linuxmail.org */
/* Use debian gnu/linux! Best OS ever! */
More information about the Pacemaker
mailing list