OpenStack Discussions

Folsom NetAppNFSDriver

maruzick_tssk
3,601 Views

Hi guys,

We have troubles running cinder-volume with NetAppNFSDriver in Folsom.

Whatever we do, we end up getting

2012-12-10 17:11:15 24143 CRITICAL cinder [-] netapp_wsdl_url is not set

2012-12-10 17:11:15 24143 TRACE cinder Traceback (most recent call last):

2012-12-10 17:11:15 24143 TRACE cinder   File "/usr/bin/cinder-volume", line 48, in <module>

2012-12-10 17:11:15 24143 TRACE cinder     service.wait()

2012-12-10 17:11:15 24143 TRACE cinder   File "/usr/lib/python2.7/dist-packages/cinder/service.py", line 422, in wait

2012-12-10 17:11:15 24143 TRACE cinder     _launcher.wait()

2012-12-10 17:11:15 24143 TRACE cinder   File "/usr/lib/python2.7/dist-packages/cinder/service.py", line 127, in wait

2012-12-10 17:11:15 24143 TRACE cinder     service.wait()

2012-12-10 17:11:15 24143 TRACE cinder   File "/usr/lib/python2.7/dist-packages/eventlet/greenthread.py", line 166, in wait

2012-12-10 17:11:15 24143 TRACE cinder     return self._exit_event.wait()

2012-12-10 17:11:15 24143 TRACE cinder   File "/usr/lib/python2.7/dist-packages/eventlet/event.py", line 116, in wait

2012-12-10 17:11:15 24143 TRACE cinder     return hubs.get_hub().switch()

2012-12-10 17:11:15 24143 TRACE cinder   File "/usr/lib/python2.7/dist-packages/eventlet/hubs/hub.py", line 177, in switch

2012-12-10 17:11:15 24143 TRACE cinder     return self.greenlet.switch()

2012-12-10 17:11:15 24143 TRACE cinder   File "/usr/lib/python2.7/dist-packages/eventlet/greenthread.py", line 192, in main

2012-12-10 17:11:15 24143 TRACE cinder     result = function(*args, **kwargs)

2012-12-10 17:11:15 24143 TRACE cinder   File "/usr/lib/python2.7/dist-packages/cinder/service.py", line 88, in run_server

2012-12-10 17:11:15 24143 TRACE cinder     server.start()

2012-12-10 17:11:15 24143 TRACE cinder   File "/usr/lib/python2.7/dist-packages/cinder/service.py", line 159, in start

2012-12-10 17:11:15 24143 TRACE cinder     self.manager.init_host()

2012-12-10 17:11:15 24143 TRACE cinder   File "/usr/lib/python2.7/dist-packages/cinder/volume/manager.py", line 94, in init_host

2012-12-10 17:11:15 24143 TRACE cinder     self.driver.do_setup(ctxt)

2012-12-10 17:11:15 24143 TRACE cinder   File "/usr/lib/python2.7/dist-packages/nova/volume/netapp_nfs.py", line 68, in do_setup

2012-12-10 17:11:15 24143 TRACE cinder     self.check_for_setup_error()

2012-12-10 17:11:15 24143 TRACE cinder   File "/usr/lib/python2.7/dist-packages/nova/volume/netapp_nfs.py", line 73, in check_for_setup_error

2012-12-10 17:11:15 24143 TRACE cinder     NetAppNFSDriver._check_dfm_flags()

2012-12-10 17:11:15 24143 TRACE cinder   File "/usr/lib/python2.7/dist-packages/nova/volume/netapp_nfs.py", line 118, in _check_dfm_flags

2012-12-10 17:11:15 24143 TRACE cinder     raise exception.NovaException(_('%s is not set') % flag)

2012-12-10 17:11:15 24143 TRACE cinder NovaException: netapp_wsdl_url is not set

2012-12-10 17:11:15 24143 TRACE cinder

Setting netapp_wsdl_url in nova.conf, nor cinder.conf seems to have any effect.

Running version 2012.2 from Ubuntu 12.04 repositories.

Any ideas?

Marek

1 ACCEPTED SOLUTION

maruzick_tssk
3,601 Views

Actually it was problem with driver definition in cinder.conf.

We used

volume_driver=nova.volume.netapp _nfs.NetAppNFSDriver instead of

volume_driver=cinder.volume.netapp_nfs.NetAppNFSDriver

The code is a mess there... For some reason you have that driver in two places ../nova/volume... and ../cinder/volume...

Both could be loaded, but ../volume/nova... will fail during checks, since it is missing FLAGS that are loaded only when running driver from ../cinder/volume/...

Is there any reason to have driver in two places? Looks like someone just forgot to clean up the code when moving from nova-volume to cinder-volume.

PS: Is there any documentation available for Netapp drivers? Configuration is pretty difficult by reading source code

View solution in original post

3 REPLIES 3

bswartz
3,601 Views

Could you paste your nova.conf and/or cinder.conf files? I'm wondering if there is a formatting issue in the conf file. It's hard to imagine what else might cause this particular error.

Don't forget to redact any sensitive passwords before pasting the files.

maruzick_tssk
3,602 Views

Actually it was problem with driver definition in cinder.conf.

We used

volume_driver=nova.volume.netapp _nfs.NetAppNFSDriver instead of

volume_driver=cinder.volume.netapp_nfs.NetAppNFSDriver

The code is a mess there... For some reason you have that driver in two places ../nova/volume... and ../cinder/volume...

Both could be loaded, but ../volume/nova... will fail during checks, since it is missing FLAGS that are loaded only when running driver from ../cinder/volume/...

Is there any reason to have driver in two places? Looks like someone just forgot to clean up the code when moving from nova-volume to cinder-volume.

PS: Is there any documentation available for Netapp drivers? Configuration is pretty difficult by reading source code

esker
3,601 Views

The drivers (essentially, but not entirely duplicate) are in both places because nova-volume is still present in Folsom.  It won't be fully deprecated until Grizzly.  The OpenStack Project Policy Board (the predecessor to the Foundation's Technical Committee) made the decision that all Cinder drivers included in Folsom would have to have nova-volume equivalents. 

Regarding documentation, we'll make the Clustered ONTAP and NFS driver documentation available here on the NetApp Communities site.  We're still polishing up final drafts, but expect to have something ready shortly.

Public