OpenStack Compute (Nova)

nova-volume multiple lun's on the same target don't work

Reported by Vish Ishaya on 2012-02-09
14
This bug affects 2 people
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
High
Renuka Apte

Bug Description

(nova.rpc): TRACE: Traceback (most recent call last):
(nova.rpc): TRACE: File "/opt/stack/nova/nova/rpc/amqp.py", line 249, in _process_data
(nova.rpc): TRACE: rval = node_func(context=ctxt, **node_args)
(nova.rpc): TRACE: File "/opt/stack/nova/nova/exception.py", line 126, in wrapped
(nova.rpc): TRACE: return f(*args, **kw)
(nova.rpc): TRACE: File "/opt/stack/nova/nova/compute/manager.py", line 150, in decorated_function
(nova.rpc): TRACE: function(self, context, instance_uuid, *args, **kwargs)
(nova.rpc): TRACE: File "/opt/stack/nova/nova/compute/manager.py", line 173, in decorated_function
(nova.rpc): TRACE: self.add_instance_fault_from_exc(context, instance_uuid, e)
(nova.rpc): TRACE: File "/usr/lib/python2.7/contextlib.py", line 24, in __exit__
(nova.rpc): TRACE: self.gen.next()
(nova.rpc): TRACE: File "/opt/stack/nova/nova/compute/manager.py", line 168, in decorated_function
(nova.rpc): TRACE: return function(self, context, instance_uuid, *args, **kwargs)
(nova.rpc): TRACE: File "/opt/stack/nova/nova/compute/manager.py", line 1635, in attach_volume
(nova.rpc): TRACE: connector)
(nova.rpc): TRACE: File "/usr/lib/python2.7/contextlib.py", line 24, in __exit__
(nova.rpc): TRACE: self.gen.next()
(nova.rpc): TRACE: File "/opt/stack/nova/nova/compute/manager.py", line 1627, in attach_volume
(nova.rpc): TRACE: mountpoint)
(nova.rpc): TRACE: File "/opt/stack/nova/nova/exception.py", line 126, in wrapped
(nova.rpc): TRACE: return f(*args, **kw)
(nova.rpc): TRACE: File "/opt/stack/nova/nova/virt/libvirt/connection.py", line 454, in attach_volume
(nova.rpc): TRACE: mount_device)
(nova.rpc): TRACE: File "/opt/stack/nova/nova/virt/libvirt/connection.py", line 446, in volume_driver_method
(nova.rpc): TRACE: return method(connection_info, *args, **kwargs)
(nova.rpc): TRACE: File "/opt/stack/nova/nova/virt/libvirt/volume.py", line 127, in connect_volume
(nova.rpc): TRACE: self._run_iscsiadm(iscsi_properties, ("--login",))
(nova.rpc): TRACE: File "/opt/stack/nova/nova/virt/libvirt/volume.py", line 96, in _run_iscsiadm
(nova.rpc): TRACE: check_exit_code=check_exit_code)
(nova.rpc): TRACE: File "/opt/stack/nova/nova/utils.py", line 232, in execute
(nova.rpc): TRACE: cmd=' '.join(cmd))
(nova.rpc): TRACE: ProcessExecutionError: Unexpected error while running command.
(nova.rpc): TRACE: Command: sudo iscsiadm -m node -T iqn.1992-08.com.netapp:sn.101192396 -p 10.61.167.30:3260 --login
(nova.rpc): TRACE: Exit code: 255
(nova.rpc): TRACE: Stdout: 'Logging in to [iface: default, target: iqn.1992-08.com.netapp:sn.101192396, portal: 10.61.167.30,3260]\n'
(nova.rpc): TRACE: Stderr: 'iscsiadm: Could not login to [iface: default, target: iqn.1992-08.com.netapp:sn.101192396, portal: 10.61.167.30,3260]: \niscsiadm: initiator reported error (15 - already exists)\n'

need to allow multiple logins/logout and pass the lun data in iscsi_properties

Changed in nova:
status: New → Confirmed
importance: Undecided → High
assignee: nobody → Vish Ishaya (vishvananda)

Fix proposed to branch: master
Review: https://review.openstack.org/3990

Changed in nova:
status: Confirmed → In Progress
Changed in nova:
assignee: Vish Ishaya (vishvananda) → Renuka Apte (renukaapte)

Reviewed: https://review.openstack.org/3990
Committed: http://github.com/openstack/nova/commit/509e5ad9ef6ed38caa69d2c76b1adccedcdd315e
Submitter: Jenkins
Branch: master

commit 509e5ad9ef6ed38caa69d2c76b1adccedcdd315e
Author: Vishvananda Ishaya <email address hidden>
Date: Thu Feb 9 15:05:21 2012 -0800

    Fixes nova-volume support for multiple luns

     * stores lun in provider_location if specified
     * passes lun in iscsi_properties instead of hard coding
     * adds call to libvirt to list all used block devices
     * make sure to synchronize connect and disconnect commands
     * only disconnect from target if no luns are in use
     * allow double logins to targets
     * fixes typo in get_volume_connector in xenapi_connection
     * fixes bug 929790

    Change-Id: I2466dc750a6fa5e0b07f94314d38873740aa6b29

Changed in nova:
status: In Progress → Fix Committed
Thierry Carrez (ttx) on 2012-02-29
Changed in nova:
milestone: none → essex-4
status: Fix Committed → Fix Released
Thierry Carrez (ttx) on 2012-04-05
Changed in nova:
milestone: essex-4 → 2012.1
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers