OpenStack Neutron (virtual network service)

Second node with quantum (and openvswitch)

Asked by Mohammad Banikazemi on 2012-02-16

Trying to add a compute node to the system (installed using devstack and running all services + quantum+q-svc+q-agt), do I need to run anything other than n-cpu and q-agt? (One need to have quantum enables as a service to get the quantum installed.)

VMs create on the first node (controller with all services) get spawned without any problems.
The Quantum agent does not see the addition of a new interface and therefore does not do anything.
The log of nova-cpu on the second node shows the following. Eventhough it seems that the second node sees the AMQP server on the first node and gets connected to it, the network setup fails while going through the AMQP server.

...
2012-02-16 18:00:39,448 INFO nova.rpc.common [-] Connected to AMQP server on osserver:5672
2012-02-16 18:00:39,578 ERROR nova.compute.manager [-] Instance 564fa044-6544-45ad-8893-413d0f64d526 failed network setup
(nova.compute.manager): TRACE: Traceback (most recent call last):
(nova.compute.manager): TRACE: File "/opt/stack/nova/nova/compute/manager.py", line 522, in _allocate_network
(nova.compute.manager): TRACE: requested_networks=requested_networks)
(nova.compute.manager): TRACE: File "/opt/stack/nova/nova/network/api.py", line 164, in allocate_for_instance
(nova.compute.manager): TRACE: 'args': args})
(nova.compute.manager): TRACE: File "/opt/stack/nova/nova/rpc/__init__.py", line 69, in call
(nova.compute.manager): TRACE: return _get_impl().call(context, topic, msg, timeout)
(nova.compute.manager): TRACE: File "/opt/stack/nova/nova/rpc/impl_kombu.py", line 612, in call
(nova.compute.manager): TRACE: return rpc_amqp.call(context, topic, msg, timeout, Connection.pool)
(nova.compute.manager): TRACE: File "/opt/stack/nova/nova/rpc/amqp.py", line 334, in call
(nova.compute.manager): TRACE: rv = list(rv)
(nova.compute.manager): TRACE: File "/opt/stack/nova/nova/rpc/amqp.py", line 302, in __iter__
(nova.compute.manager): TRACE: raise result
(nova.compute.manager): TRACE: RemoteError: Remote error: KeyError 'instance_type_id'
(nova.compute.manager): TRACE: [u'Traceback (most recent call last):\n', u' File "/opt/stack/nova/nova/rpc/amqp.py", line 249, in _process_data\n rval = node_func(context=ctxt, **node_args)\n', u' File "/opt/stack/nova/nova/network/quantum/manager.py", line 283, in allocate_for_instance\n instance_type_id = kwargs[\'instance_type_id\']\n', u"KeyError: 'instance_type_id'\n"].
(nova.compute.manager): TRACE:

Question information

Language:
English Edit question
Status:
Solved
For:
neutron Edit question
Assignee:
David Lapsley Edit question
Solved by:
Mohammad Banikazemi
Solved:
2012-02-24
Last query:
2012-02-24
Last reply:
2012-02-23
dan wendlandt (danwent) said : #1

Hi Mohammad,

Sounds like you're using devstack. There are a couple tweaks to devstack needed to work with multiple hosts. I think Dave Lapsley from Nicira has been working on this and is close to pushing. Dave, please update this issue when you do.

Also, the error you're seeing in nova-network doesn't seem related to what Dave is doing. Is your nova fully up to date? If so, this may be a bug you want to file separately.

As a general note, if you are having an issue getting quantum to work with nova, you should file the issue with Quantum, as Quantum is not yet a core project in Essex.

Mohammad Banikazemi (mb-s) said : #2

Thanks Dan. The problem was due to mismatch between the code on two nodes. There is a new field in one of the tables which did not exist in the older version. Updating to the latest version resolved the problem.