nova-compute fails to use vmwareapi drivers

Asked by Nitz

Hi,

I have installed Grizzly on Ubuntu server 12.04. Trying to configure nova-compute to use vmwareapi drivers. The nova-compute service fails to start with either ESX or VC driver. I am having ESXi 5.1.0 (799733) and VC 5.1.0a (880472). Both ESXi & VC have valid license and web access enabled. The sdk is copied on to the compute host in /var/var/lib/tomcat6/webapps/vmware/SDK. I am able to access the wsdl location from any host on the network.
Portgroup with bridge interface br100 is created.

nova.config parameters

compute_driver=vmwareapi.VMwareVCDriver
instance_name_template=instance-%08x
api_paste_config=/etc/nova/api-paste.ini
vmwareapi_host_ip=10.115.200.155
vmwareapi_host_username=root
vmwareapi_host_password=vmware
vmwareapi_cluster_name=osdeploy
vmwareapi_wsdl_loc=http://10.115.200.178:8080/vmware/SDK/vsphere-ws/wsdl/vim25/vimService.wsdl

nova-compute.log

INFO nova.virt.driver [-] Loading compute driver 'vmwareapi.VMwareVCDriver'
INFO nova.manager [-] Skipping periodic task _periodic_update_dns because its interval is negative
CRITICAL nova.virt.vmwareapi.driver [-] In vmwareapi:_create_session, got this exception: <urlopen error [Errno 111] ECONNREFUSED>
CRITICAL nova [-] <urlopen error [Errno 111] ECONNREFUSED>
TRACE nova Traceback (most recent call last):
TRACE nova File "/usr/bin/nova-compute", line 83, in <module>
TRACE nova db_allowed=False)
TRACE nova File "/usr/lib/python2.7/dist-packages/nova/service.py", line 534, in create
TRACE nova db_allowed=db_allowed)
TRACE nova File "/usr/lib/python2.7/dist-packages/nova/service.py", line 413, in __init__
TRACE nova self.manager = manager_class(host=self.host, *args, **kwargs)
TRACE nova File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 353, in __init__
TRACE nova self.driver = driver.load_compute_driver(self.virtapi, compute_driver)
TRACE nova File "/usr/lib/python2.7/dist-packages/nova/virt/driver.py", line 930, in load_compute_driver
TRACE nova virtapi)
TRACE nova File "/usr/lib/python2.7/dist-packages/nova/openstack/common/importutils.py", line 51, in import_object_ns
TRACE nova return import_class(import_value)(*args, **kwargs)
TRACE nova File "/usr/lib/python2.7/dist-packages/nova/virt/vmwareapi/driver.py", line 348, in __init__
TRACE nova super(VMwareVCDriver, self).__init__(virtapi)
TRACE nova File "/usr/lib/python2.7/dist-packages/nova/virt/vmwareapi/driver.py", line 145, in __init__
TRACE nova api_retry_count, scheme=scheme)
TRACE nova File "/usr/lib/python2.7/dist-packages/nova/virt/vmwareapi/driver.py", line 417, in __init__
TRACE nova self._create_session()
TRACE nova File "/usr/lib/python2.7/dist-packages/nova/virt/vmwareapi/driver.py", line 454, in _create_session
TRACE nova raise exception.NovaException(excep)
TRACE nova NovaException: <urlopen error [Errno 111] ECONNREFUSED>

The same happens for 'vmwareapi.VMwareESXDriver'.
Any guess what could be wrong? Am I missing something?

Question information

Language:
English Edit question
Status:
Answered
For:
OpenStack Compute (nova) Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
Yaguang Tang (heut2008) said :
#1

have you enable ssh access to ESX or Vcenter, you should first ensure ssh is enabled .

Revision history for this message
Nitz (nitshree) said :
#2

Thanks Yaguang for offering help.
SSH access to ESX & vCenter server was already in place.

I couldnot have nova-compute load vmware-api drivers until the security certificates were downloaded on my compute host.

This is what worked for me
- On the compute host download the security certificate from https://<ESX Host IP or vCenter IP>/sdk
- For more info refer vSphereManagementSDKReadme.html available in SDK extracts.
- And for detailed reference use Developers guide at http://pubs.vmware.com/vsphere-51/topic/com.vmware.ICbase/PDF/wssdk_510_dsg.pdf

My compute host is now able to load vmware api drivers (ESX or VC). But im unable to create virtual instance using any vmdk image file. The instance goes through the build stage & ends up with status 'ERROR'. This happens while using vmwareapi. VC drivers.

nova-compute log

CRITICAL nova.virt.vmwareapi.driver [req-15f47ad9-4457-4e11-9988-6647aee04592 a5fad93e00d24d118b5e6a6211b75d13 aebd15d940e84719a005682e2a8ec71e] In vmwareapi:_call_method, got this exception: Exception in RetrieveProperties <urlopen error [Errno 110] ETIMEDOUT>
ERROR nova.openstack.common.rpc.amqp [req-15f47ad9-4457-4e11-9988-6647aee04592 a5fad93e00d24d118b5e6a6211b75d13 aebd15d940e84719a005682e2a8ec71e] Exception during message handling
TRACE nova.openstack.common.rpc.amqp Traceback (most recent call last):
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/openstack/common/rpc/amqp.py", line 430, in _process_data
TRACE nova.openstack.common.rpc.amqp rval = self.proxy.dispatch(ctxt, version, method, **args)
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/openstack/common/rpc/dispatcher.py", line 133, in dispatch
TRACE nova.openstack.common.rpc.amqp return getattr(proxyobj, method)(ctxt, **kwargs)
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/exception.py", line 117, in wrapped
TRACE nova.openstack.common.rpc.amqp temp_level, payload)
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/contextlib.py", line 24, in __exit__
TRACE nova.openstack.common.rpc.amqp self.gen.next()
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/exception.py", line 94, in wrapped
TRACE nova.openstack.common.rpc.amqp return f(self, context, *args, **kw)
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 209, in decorated_function
TRACE nova.openstack.common.rpc.amqp pass
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/contextlib.py", line 24, in __exit__
TRACE nova.openstack.common.rpc.amqp self.gen.next()
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 195, in decorated_function
TRACE nova.openstack.common.rpc.amqp return function(self, context, *args, **kwargs)
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 260, in decorated_function
TRACE nova.openstack.common.rpc.amqp function(self, context, *args, **kwargs)
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 237, in decorated_function
TRACE nova.openstack.common.rpc.amqp e, sys.exc_info())
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/contextlib.py", line 24, in __exit__
TRACE nova.openstack.common.rpc.amqp self.gen.next()
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 224, in decorated_function
TRACE nova.openstack.common.rpc.amqp return function(self, context, *args, **kwargs)
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 1224, in run_instance
TRACE nova.openstack.common.rpc.amqp do_run_instance()
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/openstack/common/lockutils.py", line 242, in inner
TRACE nova.openstack.common.rpc.amqp retval = f(*args, **kwargs)
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 1223, in do_run_instance
TRACE nova.openstack.common.rpc.amqp admin_password, is_first_time, node, instance)
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 879, in _run_instance
TRACE nova.openstack.common.rpc.amqp self._set_instance_error_state(context, instance['uuid'])
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/contextlib.py", line 24, in __exit__
TRACE nova.openstack.common.rpc.amqp self.gen.next()
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 790, in _run_instance
TRACE nova.openstack.common.rpc.amqp self._check_instance_exists(context, instance)
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/compute/manager.py", line 987, in _check_instance_exists
TRACE nova.openstack.common.rpc.amqp if self.driver.instance_exists(instance['name']):
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/virt/driver.py", line 187, in instance_exists
TRACE nova.openstack.common.rpc.amqp return instance_id in self.list_instances()
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/virt/vmwareapi/driver.py", line 171, in list_instances
TRACE nova.openstack.common.rpc.amqp return self._vmops.list_instances()
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/virt/vmwareapi/vmops.py", line 99, in list_instances
TRACE nova.openstack.common.rpc.amqp ["name", "runtime.connectionState"])
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/virt/vmwareapi/driver.py", line 494, in _call_method
TRACE nova.openstack.common.rpc.amqp return temp_module(*args, **kwargs)
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/virt/vmwareapi/vim_util.py", line 176, in get_objects
TRACE nova.openstack.common.rpc.amqp specSet=[property_filter_spec])
TRACE nova.openstack.common.rpc.amqp File "/usr/lib/python2.7/dist-packages/nova/virt/vmwareapi/vim.py", line 163, in vim_request_handler
TRACE nova.openstack.common.rpc.amqp _("Exception in %s ") % (attr_name), excep)
TRACE nova.openstack.common.rpc.amqp VimException: Exception in RetrieveProperties <urlopen error [Errno 110] ETIMEDOUT>

From the log it looks like it throws an exception in reading 'attr_name'. Not sure what could be causing it?
Any help would be highly appreciated.

Revision history for this message
ganesan (ganesan-jd) said :
#4

Can you try this one,

Configure the values to vCenter details instead of host

vmwareapi_host_ip=10.115.200.155
vmwareapi_host_username=root
vmwareapi_host_password=vmware

Can you help with this problem?

Provide an answer of your own, or ask Nitz for more information if necessary.

To post a message you must log in.