Hi,
you need to disable parameter notify_nova_on_port_change at neutron.conf
Check this
http://www.slideshare.net/mobile/JakubPavlik1/opencontrail-experience-tcp-cloud-openstack-summit-tokyo
Jakub
-------- Původní zpráva --------
Od: Max Zulio <[email protected]>
Datum: 11.12.2015 8:30 (GMT-08:00)
Komu: [email protected]
Předmět: [opencontrail-dev] Contrail 2.21, Liberty, Floating IP traceback
Hi,
Contrail 2.21OpenStack LibertyCassandra 2.1.12
Core networking is working fine, I can ping the world from my instances, but
whenever I try to create a floating IP, I get the following tracebacks. Please
note that although the command returns false, the IP is associated and I can
access the instance via the floating IP:
# neutron-server.log
2015-12-11 13:12:00.773 12054 DEBUG
neutron_plugin_contrail.plugins.opencontrail.contrail_plugin
[req-c25a6eab-8230-49c5-9ce8-f3491b41b633 bf704906c6d44e0693c0894348607473
e2c4290d9a0847b1a914bc5a88537687 -- -] update_floatingip(): {u'router_id':
u'c25dc007-a4ec-49e1-b200-4baba6fa06e5', u'status': u'ACTIVE', u'tenant_id':
u'e2c4290d9a0847b1a914bc5a88537687', u'floating_network_id':
u'6521ef2a-ed81-4856-9bf4-edbb7807573b', u'fixed_ip_address': u'10.0.0.3',
u'floating_ip_address': u'[RETRACTED]', u'port_id':
u'68d3bf1a-e657-4cdf-a300-a45efd3fab00', u'id':
u'05a055c3-e402-4a64-bca4-4a8a7608f8d2'} _update_resource
/usr/lib/python2.7/dist-packages/neutron_plugin_contrail/plugins/opencontrail/contrail_plugin.py:3222015-12-11
13:12:00.798 12054 ERROR neutron.api.v2.resource
[req-c25a6eab-8230-49c5-9ce8-f3491b41b633 bf704906c6d44e0693c0894348607473
e2c4290d9a0847b1a914bc5a88537687 - - -] update failed2015-12-11 13:12:00.798
12054 ERROR neutron.api.v2.resource Traceback (most recent call
last):2015-12-11 13:12:00.798 12054 ERROR neutron.api.v2.resource File
"/usr/lib/python2.7/dist-packages/neutron/api/v2/resource.py", line 83, in
resource2015-12-11 13:12:00.798 12054 ERROR neutron.api.v2.resource result
= method(request=request, **args)2015-12-11 13:12:00.798 12054 ERROR
neutron.api.v2.resource File
"/usr/lib/python2.7/dist-packages/oslo_db/api.py", line 146, in
wrapper2015-12-11 13:12:00.798 12054 ERROR neutron.api.v2.resource
ectxt.value = e.inner_exc2015-12-11 13:12:00.798 12054 ERROR
neutron.api.v2.resource File
"/usr/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 195, in
__exit__2015-12-11 13:12:00.798 12054 ERROR neutron.api.v2.resource
six.reraise(self.type_, self.value, self.tb)2015-12-11 13:12:00.798 12054 ERROR
neutron.api.v2.resource File
"/usr/lib/python2.7/dist-packages/oslo_db/api.py", line 136, in
wrapper2015-12-11 13:12:00.798 12054 ERROR neutron.api.v2.resource return
f(*args, **kwargs)2015-12-11 13:12:00.798 12054 ERROR neutron.api.v2.resource
File "/usr/lib/python2.7/dist-packages/neutron/api/v2/base.py", line 626, in
update2015-12-11 13:12:00.798 12054 ERROR neutron.api.v2.resource
self._send_nova_notification(action, orig_object_copy, result)2015-12-11
13:12:00.798 12054 ERROR neutron.api.v2.resource File
"/usr/lib/python2.7/dist-packages/neutron/api/v2/base.py", line 333, in
_send_nova_notification2015-12-11 13:12:00.798 12054 ERROR
neutron.api.v2.resource self._nova_notifier.send_network_change(action,
orig, returned)2015-12-11 13:12:00.798 12054 ERROR neutron.api.v2.resource
File "/usr/lib/python2.7/dist-packages/neutron/notifiers/nova.py", line 159, in
send_network_change2015-12-11 13:12:00.798 12054 ERROR neutron.api.v2.resource
returned_obj)2015-12-11 13:12:00.798 12054 ERROR neutron.api.v2.resource
File "/usr/lib/python2.7/dist-packages/neutron/notifiers/nova.py", line 179, in
create_port_changed_event2015-12-11 13:12:00.798 12054 ERROR
neutron.api.v2.resource port = self._plugin.get_port(ctx,
port_id)2015-12-11 13:12:00.798 12054 ERROR neutron.api.v2.resource File
"/usr/lib/python2.7/dist-packages/neutron_plugin_contrail/plugins/opencontrail/contrail_plugin.py",
line 512, in get_port2015-12-11 13:12:00.798 12054 ERROR
neutron.api.v2.resource return self._get_port(context, port_id,
fields)2015-12-11 13:12:00.798 12054 ERROR neutron.api.v2.resource File
"/usr/lib/python2.7/dist-packages/neutron_plugin_contrail/plugins/opencontrail/contrail_plugin.py",
line 477, in _get_port2015-12-11 13:12:00.798 12054 ERROR
neutron.api.v2.resource port = self._get_resource('port', context, id,
fields)2015-12-11 13:12:00.798 12054 ERROR neutron.api.v2.resource File
"/usr/lib/python2.7/dist-packages/neutron_plugin_contrail/plugins/opencontrail/contrail_plugin.py",
line 303, in _get_resource2015-12-11 13:12:00.798 12054 ERROR
neutron.api.v2.resource fields=fields, obj_name=res_type)2015-12-11
13:12:00.798 12054 ERROR neutron.api.v2.resource File
"/usr/lib/python2.7/dist-packages/neutron_plugin_contrail/plugins/opencontrail/contrail_plugin.py",
line 255, in _transform_response2015-12-11 13:12:00.798 12054 ERROR
neutron.api.v2.resource self._raise_contrail_error(info,
obj_name)2015-12-11 13:12:00.798 12054 ERROR neutron.api.v2.resource File
"/usr/lib/python2.7/dist-packages/neutron_plugin_contrail/plugins/opencontrail/contrail_plugin.py",
line 270, in _raise_contrail_error2015-12-11 13:12:00.798 12054 ERROR
neutron.api.v2.resource raise exc.NeutronException(**info)2015-12-11
13:12:00.798 12054 ERROR neutron.api.v2.resource NeutronException: An unknown
exception occurred.2015-12-11 13:12:00.798 12054 ERROR neutron.api.v2.resource
# contrail-api.log
12/11/2015 01:18:06 PM [ctl02:contrail-api:Config:0]: <type
'exceptions.KeyError'>Python 2.7.6: /usr/bin/pythonFri Dec 11 13:18:06 2015
A problem occurred in a Python script. Here is the sequence offunction calls
leading up to the error, in the order they occurred.
/usr/lib/python2.7/dist-packages/vnc_openstack/__init__.py in
handler_trap_exception(*args=(), **kwargs={}) 928 def
handler_trap_exception(*args, **kwargs): 929 try: 930
response = handler(*args, **kwargs) 931 return response
932 except Exception as e:response undefinedhandler = <bound method
NeutronPluginInterface.plugin_http..._plugin_interface.NeutronPluginInterface
object>>args = ()kwargs = {}
/usr/lib/python2.7/dist-packages/vnc_openstack/neutron_plugin_interface.py in
plugin_http_post_port(self=<vnc_openstack.neutron_plugin_interface.NeutronPluginInterface
object>) 465 466 if context['operation'] == 'READ': 467
return self.plugin_get_port(context, port) 468 elif
context['operation'] == 'CREATE': 469 return
self.plugin_create_port(context, port)self =
<vnc_openstack.neutron_plugin_interface.NeutronPluginInterface
object>self.plugin_get_port = <bound method
NeutronPluginInterface.plugin_get_..._plugin_interface.NeutronPluginInterface
object>>context = {'is_admin': True, 'operation': 'READ', 'tenant_id': None,
'type': 'port', 'user_id': None}port = {'fields': None, 'filters': None, 'id':
'68d3bf1a-e657-4cdf-a300-a45efd3fab00'}
/usr/lib/python2.7/dist-packages/vnc_openstack/neutron_plugin_interface.py in
plugin_get_port(self=<vnc_openstack.neutron_plugin_interface.NeutronPluginInterface
object>, context={'is_admin': True, 'operation': 'READ', 'tenant_id': None,
'type': 'port', 'user_id': None}, port={'fields': None, 'filters': None, 'id':
'68d3bf1a-e657-4cdf-a300-a45efd3fab00'}) 379 380 try: 381
cfgdb = self._get_user_cfgdb(context) 382 port_info =
cfgdb.port_read(port['id']) 383 return port_infocfgdb
undefinedself = <vnc_openstack.neutron_plugin_interface.NeutronPluginInterface
object>self._get_user_cfgdb = <bound method
NeutronPluginInterface._get_user_c..._plugin_interface.NeutronPluginInterface
object>>context = {'is_admin': True, 'operation': 'READ', 'tenant_id': None,
'type': 'port', 'user_id': None}
/usr/lib/python2.7/dist-packages/vnc_openstack/neutron_plugin_interface.py in
_get_user_cfgdb(self=<vnc_openstack.neutron_plugin_interface.NeutronPluginInterface
object>, context={'is_admin': True, 'operation': 'READ', 'tenant_id': None,
'type': 'port', 'user_id': None}) 115 return self._cfgdb 116
user_id = context['user_id'] 117 role =
string.join(context['roles'], ",") 118 if not user_id in
self._cfgdb_map: 119 self._cfgdb_map[user_id] = DBInterface(role
undefinedglobal string = <module 'string' from
'/usr/lib/python2.7/string.pyc'>string.join = <function join>context =
{'is_admin': True, 'operation': 'READ', 'tenant_id': None, 'type': 'port',
'user_id': None}<type 'exceptions.KeyError'>: 'roles' __class__ = <type
'exceptions.KeyError'> __delattr__ = <method-wrapper '__delattr__' of
exceptions.KeyError object> __dict__ = {} __doc__ = 'Mapping key not
found.' __format__ = <built-in method __format__ of exceptions.KeyError
object> __getattribute__ = <method-wrapper '__getattribute__' of
exceptions.KeyError object> __getitem__ = <method-wrapper '__getitem__' of
exceptions.KeyError object> __getslice__ = <method-wrapper '__getslice__' of
exceptions.KeyError object> __hash__ = <method-wrapper '__hash__' of
exceptions.KeyError object> __init__ = <method-wrapper '__init__' of
exceptions.KeyError object> __new__ = <built-in method __new__ of type
object> __reduce__ = <built-in method __reduce__ of exceptions.KeyError
object> __reduce_ex__ = <built-in method __reduce_ex__ of
exceptions.KeyError object> __repr__ = <method-wrapper '__repr__' of
exceptions.KeyError object> __setattr__ = <method-wrapper '__setattr__' of
exceptions.KeyError object> __setstate__ = <built-in method __setstate__ of
exceptions.KeyError object> __sizeof__ = <built-in method __sizeof__ of
exceptions.KeyError object> __str__ = <method-wrapper '__str__' of
exceptions.KeyError object> __subclasshook__ = <built-in method
__subclasshook__ of type object> __unicode__ = <built-in method __unicode__
of exceptions.KeyError object> args = ('roles',) message = 'roles'
The above is a description of an error in a Python program. Here isthe
original traceback:
Traceback (most recent call last): File
"/usr/lib/python2.7/dist-packages/vnc_openstack/__init__.py", line 930, in
handler_trap_exception response = handler(*args, **kwargs) File
"/usr/lib/python2.7/dist-packages/vnc_openstack/neutron_plugin_interface.py",
line 467, in plugin_http_post_port return self.plugin_get_port(context,
port) File
"/usr/lib/python2.7/dist-packages/vnc_openstack/neutron_plugin_interface.py",
line 381, in plugin_get_port cfgdb = self._get_user_cfgdb(context) File
"/usr/lib/python2.7/dist-packages/vnc_openstack/neutron_plugin_interface.py",
line 117, in _get_user_cfgdb role = string.join(context['roles'],
",")KeyError: 'roles'
Contrail-status returns fine:
== Contrail vRouter ==supervisor-vrouter:
inactiveunix:///tmp/supervisord_vrouter.sockno
== Contrail Control ==supervisor-control: activecontrail-control
activecontrail-control-nodemgr activecontrail-dns
activecontrail-named active
== Contrail Analytics ==supervisor-analytics: activecontrail-alarm-gen
activecontrail-analytics-api activecontrail-analytics-nodemgr
activecontrail-collector activecontrail-query-engine
activecontrail-snmp-collector activecontrail-topology active
== Contrail Config ==supervisor-config: activecontrail-api:0
activecontrail-config-nodemgr activecontrail-device-manager
backupcontrail-discovery:0 activecontrail-schema
backupcontrail-svc-monitor backup
== Contrail Database ==supervisor-database: activecontrail-database
activecontrail-database-nodemgr activekafka
active
Does anyone know why this is happening and how to fix it?
Thanks in advance,
Max
_______________________________________________
Dev mailing list
[email protected]
http://lists.opencontrail.org/mailman/listinfo/dev_lists.opencontrail.org