diff --git a/systemvm/patches/debian/config/opt/cloud/bin/cs/CsAddress.py b/systemvm/patches/debian/config/opt/cloud/bin/cs/CsAddress.py index c552f40ff5d..6b15e2f5a71 100644 --- a/systemvm/patches/debian/config/opt/cloud/bin/cs/CsAddress.py +++ b/systemvm/patches/debian/config/opt/cloud/bin/cs/CsAddress.py @@ -237,9 +237,10 @@ class CsIP: for i in CsHelper.execute(cmd): if " DOWN " in i: cmd2 = "ip link set %s up" % self.getDevice() -# Do not change the state of ips on a master redundant router that are managed by vrrp - if self.cl.is_master() or \ - not self.needs_vrrp(): +# Do not change the state of ips on a redundant router that are managed by vrrp or CsRedundant + if self.cl.is_redundant() and self.needs_vrrp(): + pass + else: CsHelper.execute(cmd2) def set_mark(self): diff --git a/systemvm/patches/debian/config/opt/cloud/bin/cs/CsRedundant.py b/systemvm/patches/debian/config/opt/cloud/bin/cs/CsRedundant.py index 27b7c5193df..724f71795c4 100644 --- a/systemvm/patches/debian/config/opt/cloud/bin/cs/CsRedundant.py +++ b/systemvm/patches/debian/config/opt/cloud/bin/cs/CsRedundant.py @@ -166,6 +166,7 @@ class CsRedundant(object): return ads = [o for o in self.address.get_ips() if o.needs_vrrp()] for o in ads: + ## cmd2 = "ip link set %s up" % self.getDevice() CsHelper.execute("ifconfig %s down" % o.get_device()) CsHelper.execute("ifconfig %s up" % o.get_device()) CsHelper.execute("arping -I %s -A %s -c 1" % (o.get_device(), o.get_ip()))