yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #43337
[Bug 1500567] Re: port binding host_id does not update when removing openvswitch agent
[Expired for neutron because there has been no activity for 60 days.]
** Changed in: neutron
Status: Incomplete => Expired
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1500567
Title:
port binding host_id does not update when removing openvswitch agent
Status in neutron:
Expired
Bug description:
SPECS:
Openstack Juno
neutron version 2.3.9
nova version 2.20.0
OS: CentOS 6.5 Final
kernel: 2.6.32-504.1.3.el6.mos61.x86_64 (Mirantis Fuel 6.1 installed compute+ceph node)
SCENARIO:
I had a compute node that was also running an neutron-openvswitch-agent. This was 'node-12'.
Before node-12's primary disk died, there was an instance being hosted on the node, which was in the state 'SHUTDOWN'.
I have created a node-15, which also runs the neutron-openvswitch-agent with nova-compute. I did not migrate the instance before perfroming a neutron agent-delete on node-12, so now there is metadata that looks like this:
[root@node-14 ~]# neutron port-show c209538b-ecc1-4414-9f97-e0f6a5d08ecc
+-----------------------+--------------------------------------------------------------------------------------+
| Field | Value |
+-----------------------+--------------------------------------------------------------------------------------+
| admin_state_up | True |
| allowed_address_pairs | |
| binding:host_id | node-12
ACTION:
Node-12 neutron agent is deleted, using the command, `neutron agent-delete 6bcadbe2-7631-41f5-9124-6fe75016217a`
EXPECTED:
all neturon ports bound with that agent should be updated and modified to use an alternative binding host_id, preferably the host currently running the VM. In my scenario, this would be node-15. NOT node-12.
ACTUAL:
The neutron ports maintained the same binding:host_id, which was node-12.
ADDITIONAL INFORMATION:
I was able to update the value using the following request:
curl -X PUT -d '{"port":{"binding:host_id": "node-15.domain.com"}}' -H
"X-Auth_token:f3f1c03239b246a8a7ffa9ca0eb323bf" -H "Content-type:
application/json"
http://10.10.30.2:9696/v2.0/ports/f98fe798-d522-4b6c-b084-45094fdc5052.json
However, I'm not sure if there are modifications to the openvswitch
agent on node-15 that also need to be performed.
Also, since my node-12 died before I could migrate the instances, and
I attempted to power them on before i realized they needed migration,
I was forced to update the instances table in the database, and
specify node-15 as the new host.
> update instances set task_state = NULL where task_state = 'powering-on';
> update instances set host = 'node-15.domain.com' where host = 'node-12.domain.com';
> update instances set node = 'node-15.domain.com' where node = 'node-12.domain.com';
> update instances set launched_on = 'node-15.domain.com' where launched_on = 'node-12.domain.com';
In my case, the work around is to kick off a 'migrate', in which case
the binding:host_id is updated.
To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1500567/+subscriptions
References