<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Calibri, sans-serif;">
<div>Hi,</div>
<div><br>
</div>
<div>I’ve set up a lab network to test Openstack with a load balanced solution that uses keepalived on linux, to provide load balanced & redundant services. I installed the ML2 plugin, and removed the security for the ports associated with the public and private
ports of the load balanced servers with these commands:</div>
<div><br>
</div>
<div>
<div>neutron port-update --no-security-groups <port UUID></div>
<div>neutron port-update <port UUID> --port-security-enabled=False</div>
</div>
<div><br>
</div>
<div>This has allowed VRRP to function correctly, requests are correctly load balanced, and I can failover between the servers at will.</div>
<div><br>
</div>
<div>The issue I’m having, is when I try to simulate a hard crash of the server that is the master in the keepalived pool. If I shut it down in a way that simulates a power failure (I’m using ifdown to kill the interfaces, and shutdown in a one-liner), the
server that was the backup becomes the master, takes over the load balanced IP, and starts responding to arp requests for that IP. I can see the arp responses with tcpdump on the new master, but these are obviously being filtered, as they don’t make it to
the other servers.</div>
<div><br>
</div>
<div>So where am I going wrong? Why if I do a graceful reboot of the master, would the load balanced IP correctly shift to the other server, but if I simulate a crash, the arp responses are blocked?</div>
<div><br>
</div>
<div>Any help would be greatly appreciated.</div>
<div><br>
</div>
<div>Thanks,</div>
<div><br>
</div>
<div>Bill</div>
</body>
</html>