Public bug reported: stable/victoria
openstack network node(agent_mode=dvr_snat) and compute node are the same node,the VM on this node is bound to fip, but the snat_port of the router of this VM is located in another network node,VM can access north-south traffic via fip.But if you restart the l3-agent,The external_gateway_removed is called during l3-agent restart, causing the fip on that node to be unreachable https://github.com/openstack/neutron/blob/stable/victoria/neutron/agent/l3/dvr_edge_router.py #39 def external_gateway_added(self, ex_gw_port, interface_name): elif self.snat_namespace.exists(): # This is the case where the snat was moved manually or # rescheduled to a different agent when the agent was dead. LOG.debug("SNAT was moved or rescheduled to a different host " "and does not match with the current host. This is " "a stale namespace %s and will be cleared from the " "current dvr_snat host.", self.snat_namespace.name) self.external_gateway_removed(ex_gw_port, interface_name) ** Affects: neutron Importance: Undecided Status: New ** Description changed: stable/victoria - - openstack network node(agent_mode=dvr_snat) and compute node are the same node,the VM on this node is bound to fip, but the snat_port of the router of this VM is located in another network node,VM can access north-south traffic via fip.But if you restart the l3-agent,The external_gateway_removed is called during the reboot, causing the fip on that node to be unreachable + openstack network node(agent_mode=dvr_snat) and compute node are the + same node,the VM on this node is bound to fip, but the snat_port of the + router of this VM is located in another network node,VM can access + north-south traffic via fip.But if you restart the l3-agent,The + external_gateway_removed is called during l3-agent restart, causing the + fip on that node to be unreachable https://github.com/openstack/neutron/blob/stable/victoria/neutron/agent/l3/dvr_edge_router.py #39 - def external_gateway_added(self, ex_gw_port, interface_name): - elif self.snat_namespace.exists(): - # This is the case where the snat was moved manually or - # rescheduled to a different agent when the agent was dead. - LOG.debug("SNAT was moved or rescheduled to a different host " - "and does not match with the current host. This is " - "a stale namespace %s and will be cleared from the " - "current dvr_snat host.", self.snat_namespace.name) - self.external_gateway_removed(ex_gw_port, interface_name) + def external_gateway_added(self, ex_gw_port, interface_name): + elif self.snat_namespace.exists(): + # This is the case where the snat was moved manually or + # rescheduled to a different agent when the agent was dead. + LOG.debug("SNAT was moved or rescheduled to a different host " + "and does not match with the current host. This is " + "a stale namespace %s and will be cleared from the " + "current dvr_snat host.", self.snat_namespace.name) + self.external_gateway_removed(ex_gw_port, interface_name) -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1988382 Title: L3 agent(agent_mode=dvr_snat) restart, fip namespace removed rfp-port, resulting in fip not connecting Status in neutron: New Bug description: stable/victoria openstack network node(agent_mode=dvr_snat) and compute node are the same node,the VM on this node is bound to fip, but the snat_port of the router of this VM is located in another network node,VM can access north-south traffic via fip.But if you restart the l3-agent,The external_gateway_removed is called during l3-agent restart, causing the fip on that node to be unreachable https://github.com/openstack/neutron/blob/stable/victoria/neutron/agent/l3/dvr_edge_router.py #39 def external_gateway_added(self, ex_gw_port, interface_name): elif self.snat_namespace.exists(): # This is the case where the snat was moved manually or # rescheduled to a different agent when the agent was dead. LOG.debug("SNAT was moved or rescheduled to a different host " "and does not match with the current host. This is " "a stale namespace %s and will be cleared from the " "current dvr_snat host.", self.snat_namespace.name) self.external_gateway_removed(ex_gw_port, interface_name) To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1988382/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp