service_instance can not get ip of VM

Bug #1348632 reported by Valeriy Ponomaryov on 2014-07-25
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Manila
Medium
Valeriy Ponomaryov

Bug Description

service_instance module fails when VM in Nova is up, but get response from Nova does not include network data.
Expected fields 'networks' and 'addresses' are empty.

See log:

2014-07-25 12:31:45.320 4047 ERROR manila.share.manager [req-dda0710c-7354-478b-89e2-32bb83d3d1f5 None] Failed to get share server for share creation.
2014-07-25 12:31:45.338 4047 ERROR oslo.messaging.rpc.dispatcher [req-dda0710c-7354-478b-89e2-32bb83d3d1f5 ] Exception during message handling: Failed to get service instance ip address. Service network name is 'manila_service_network' and provided data are '{'status': u'ACTIVE', 'user_id': u'a9ba79819a784442b1d7a3526f585658', 'name': u'79355dd0-9abe-46e1-97a1-afe83071ac6f', 'created': u'2014-07-25T12:30:51Z', 'tenant_id': u'92b0bb1b36fa4c008fab85f086bbd067', 'image': u'7126ad60-d6ad-41ba-a05f-c0fbdaa32565', 'networks': {}, 'flavor': u'100', 'id': u'8d02d2ba-4baf-413a-a4ce-7966a558d4f8', 'security_groups': [{u'name': u'default'}], 'addresses': {}}'.
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher Traceback (most recent call last):
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher File "/usr/local/lib/python2.7/dist-packages/oslo/messaging/rpc/dispatcher.py", line 134, in _dispatch_and_reply
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher incoming.message))
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher File "/usr/local/lib/python2.7/dist-packages/oslo/messaging/rpc/dispatcher.py", line 177, in _dispatch
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher return self._do_dispatch(endpoint, method, ctxt, args)
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher File "/usr/local/lib/python2.7/dist-packages/oslo/messaging/rpc/dispatcher.py", line 123, in _do_dispatch
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher result = getattr(endpoint, method)(ctxt, **new_args)
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/new/manila/manila/share/manager.py", line 188, in create_share
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher {'status': 'error'})
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/new/manila/manila/openstack/common/excutils.py", line 82, in __exit__
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher six.reraise(self.type_, self.value, self.tb)
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/new/manila/manila/share/manager.py", line 182, in create_share
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher context, share_network_id, share_id)
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/new/manila/manila/share/manager.py", line 139, in _provide_share_server_for_share
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher return _provide_share_server_for_share()
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/new/manila/manila/openstack/common/lockutils.py", line 324, in inner
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher return f(*args, **kwargs)
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/new/manila/manila/share/manager.py", line 128, in _provide_share_server_for_share
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher share_server = self._setup_server(context, share_network)
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/new/manila/manila/share/manager.py", line 416, in _setup_server
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher self.network_api.deallocate_network(context, share_network)
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/new/manila/manila/openstack/common/excutils.py", line 82, in __exit__
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher six.reraise(self.type_, self.value, self.tb)
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/new/manila/manila/share/manager.py", line 404, in _setup_server
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher metadata=metadata)
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/new/manila/manila/share/drivers/generic.py", line 501, in setup_server
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher network_info['neutron_subnet_id'],
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/new/manila/manila/share/drivers/service_instance.py", line 291, in set_up_service_instance
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher neutron_subnet_id)
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/new/manila/manila/share/drivers/service_instance.py", line 408, in _create_service_instance
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher service_instance['ip'] = self._get_server_ip(service_instance)
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/new/manila/manila/share/drivers/service_instance.py", line 202, in _get_server_ip
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher raise exception.ServiceInstanceException(msg)
2014-07-25 12:31:45.338 4047 TRACE oslo.messaging.rpc.dispatcher ServiceInstanceException: Failed to get service instance ip address. Service network name is 'manila_service_network' and provided data are '{'status': u'ACTIVE', 'user_id': u'a9ba79819a784442b1d7a3526f585658', 'name': u'79355dd0-9abe-46e1-97a1-afe83071ac6f', 'created': u'2014-07-25T12:30:51Z', 'tenant_id': u'92b0bb1b36fa4c008fab85f086bbd067', 'image': u'7126ad60-d6ad-41ba-a05f-c0fbdaa32565', 'networks': {}, 'flavor': u'100', 'id': u'8d02d2ba-4baf-413a-a4ce-7966a558d4f8', 'security_groups': [{u'name': u'default'}], 'addresses': {}}'.

summary: - nova's get response for VM returns json without network data
+ service_instance can not get ip of VM
description: updated
Changed in manila:
importance: Undecided → Medium

Looks like it is caused by following known bug: https://bugs.launchpad.net/nova/+bug/1210483

Changed in manila:
assignee: nobody → Valeriy Ponomaryov (vponomaryov)
status: New → In Progress

Reviewed: https://review.openstack.org/115571
Committed: https://git.openstack.org/cgit/stackforge/manila/commit/?id=b2654d2ee3bbb4f8dd2dd49c1cc89494af7af691
Submitter: Jenkins
Branch: master

commit b2654d2ee3bbb4f8dd2dd49c1cc89494af7af691
Author: vponomaryov <email address hidden>
Date: Wed Aug 20 13:25:06 2014 +0300

    Fix obtaining of service VM ip

    service_instance module fails when VM in Nova is up, but get response from
    Nova does not include network data. Expected field 'networks' is empty.
    Fix is workaround for nova/neutron b_u_g #1210483

    Change-Id: I4e066a07bb35ce85c2ac4513fbf027c9e84d5aa2
    Closes-Bug: #1348632

Changed in manila:
status: In Progress → Fix Committed
Changed in manila:
status: Fix Committed → Fix Released
Changed in manila:
milestone: none → juno-3
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers