Last week I was troubleshooting neutron issues, and one of my colleagues showed me a new cool tool to help debug some issues.
Here is the link to the tool and its current documentation: https://github.com/openstack/neutron/tree/master/neutron/debug.
Basic usage:
Get a neutron network UUID:
neutron net-list
Add a probe to on the network:
neutron-debug --config-file <config file for l3 agent> probe-create <network UUID> neutron-debug --config-file /etc/neutron/l3_agent.ini probe-create 81abae05-657d-4dc9-ad30-c42f5b7d0c75
List network namespaces:
$ ip netns qprobe-43d574f6-ee34-43d8-a3b4-4c7e686312cb qrouter-7f660048-332b-4d39-85f9-05b5854f64ad qdhcp-97eebde0-c20b-496a-a086-77c95b587291 qdhcp-81abae05-657d-4dc9-ad30-c42f5b7d0c75
List probes:
neutron-debug --config-file /etc/neutron/l3_agent.ini probe-list
Use the newly created probe to ping all the things on the network (if it is not working, you need to update neutron-debug):
neutron-debug --config-file /etc/neutron/l3_agent.ini ping-all 43d574f6-ee34-43d8-a3b4-4c7e686312cb
Delete the probe:
neutron-debug --config-file /etc/neutron/l3_agent.ini probe-delete 43d574f6-ee34-43d8-a3b4-4c7e686312cb
Cleanup net spaces:
$ neutron-netns-cleanup --force --config-file=/etc/neutron/dhcp_agent.ini --config-file=/etc/neutron/neutron.conf $ neutron-netns-cleanup --force --config-file=/etc/neutron/l3_agent.ini --config-file=/etc/neutron/neutron.conf
-eglute