google / seesaw

Seesaw v2 is a Linux Virtual Server (LVS) based load balancing platform.
Apache License 2.0
5.63k stars 511 forks source link

Failed to bring LB interface up #19

Closed kunitake closed 8 years ago

kunitake commented 8 years ago

Sometimes, seesaw fails to failover the cluster node.

 F0516 16:23:08.105863    3276 core.go:607] Failed to bring LB interface up: Failed to configure routing: IP run "route add 0/0 via 192.0.2.254 dev eth1 table 2": exit status 2

Also this error message appears when seesaw startup.

I tried it manually after I got this message.

[root@f1 log]# ip link show |grep eth1
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000

This interface status is still up.

[root@f1 log]# ip route show dev eth1 table 2
192.0.2.0/24  scope link
[root@f1 log]# ip route add 0/0 via 192.0.2.254 dev eth1 table 2
RTNETLINK answers: Network is unreachable

Strangely, it works well when I restart seesaw_watchdog many times and I have no error.

Seesaw node has three I/F.

eth0 and eth1 are connected same link. eth3 is connected other link for management.

[root@f1 ~]# ip route show dev eth0
default via 192.0.2.254  proto static  metric 100
192.0.2.0/24  proto kernel  scope link  src 192.0.2.2  metric 100
[cluster]
anycast_enabled = false
name = testcluster
node_ipv4 = 192.0.2.2
peer_ipv4 = 192.0.2.3
vip_ipv4 = 192.0.2.1

[config_server]
primary = config.example.com

[interface]
node = eth0
lb = eth1

I really appreciated it if you could give me a some advice.

Best regards,

kunitake commented 8 years ago

Oops!!

I found a very stupid my mistake...

I forgot to stop NetworkManager. And NetworkManager had started dhcp client on eth1. That is why dhcp client removed vip address......

I apologize for my mistake.

I closed this.