How to resync pacemaker

Asked by abdullah

Hi,
I am using fuel 5.0.1(IceHouse), and after reboot of on of the controllers nodes we end up with 2 active neutron-L3 agent.
What I understand Icehouse only support one active L3 agent at a time.
The question is how to resync the pacemaker to only allowed one active L3 agent. Also, what will happen to the Virtual routers which are on the secondary L3 agent if we turn it off?

Question information

Language:
English Edit question
Status:
Solved
For:
Fuel for OpenStack Edit question
Assignee:
No assignee Edit question
Solved by:
Miroslav Anashkin
Solved:
Last query:
Last reply:
Revision history for this message
Best Miroslav Anashkin (manashkin) said :
#1

Greetings, Abdullah,

First, please verify which L3 agent is actually runs something.
In some cases it is easier to kill the unnecessary one or both instances of L3 agent and let Pacemaker restart L3 agent automatically.
To do it, please run the following on both controllers, where L3 agents are currently running:

Get the list of namespaces
# ip netns list

Check what exists inside the namespace
# ip netns exec <namespace name> ip a

If you suggest L3agent has only empty namespace - please try to kill it and wait 1-2 minutes until Pacemaker do the rest.
If nothing happened - please kill both L3 agents and wait 1-2 minutes for Pacemaker to restart agents.

Neutron stores all the routers and other info in its database. So, if you restart an agent - it will automatically re-create the defined routers, even if migrated between the nodes.

Step 2 - for the case killing agents only did not helped.
How to restart L3 agent with CRM shell:
Both DHCP and L3 agents in 5.0.1 are child processes of OpenVSwitch agent.
So, the most correct way is to stop both L3 and DHCP agents and restart OpenVSwitch agent clone.

These commands affect the entire cluster, so please perform on single controller only:
Please take the actual agent resource names from this command:
# pcs status

Clean up the old errors first.
# crm resource cleanup p_neutron-l3-agent
# crm resource cleanup p_neutron-DHCP-agent
# crm resource cleanup clone_p_neutron-openvswitch-agent

Restart agents:
# crm resource stop p_neutron-l3-agent
# crm resource stop p_neutron-DHCP-agent
# crm resource restart clone_p_neutron-openvswitch-agent

Wait ~1 minute and check if both L3 and DHCP agents are automaticallt started, If not - start both manually with:
# crm resource start p_neutron-l3-agent
# crm resource start p_neutron-DHCP-agent

Kind regards,
Miroslav Anashkin
L2 Support engineer
Fuel Core team | Mirantis Inc.

Revision history for this message
abdullah (abdullah-alzanidi) said :
#2

Thanks Miroslav Anashkin, that solved my question.