The first problem has been solved by synchronizing the 2 nodes.<div>But, I could not find a solution to the second one -- nova-compute does not want to start <br><br><div class="gmail_quote">2012/11/15 Afef MDHAFFAR <span dir="ltr"><<a href="mailto:afef.mdhaffar@gmail.com" target="_blank">afef.mdhaffar@gmail.com</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi all,
<div><br></div><div>I tried to add a third compute node to a running openstack platform (composed of a head node and a compute node).</div><div>I use Ubuntu 12.04 + XCP + folsom (stable release). And, I use devstack to install the compute node.</div>
<div>The first problem is that the 2nd (new) compute node is not able to see that the head node nova services are enabled, however it is still able to detect that nova services of the first compute node are running and available.</div>
<div><div>nova-manage service list</div><div>2012-11-15 20:02:46 DEBUG nova.utils [req-44c68f9f-b9f4-498b-a081-c0273e23e05f None None] backend <module 'nova.db.sqlalchemy.api' from '/opt/stack/nova/nova/db/sqlalchemy/api.pyc'> from (pid=25406) __get_backend /opt/stack/nova/nova/utils.py:502</div>
<div>Binary Host Zone Status State Updated_At</div><div>nova-consoleauth DevStackOSDomU nova enabled XXX 2012-11-15 20:01:37</div>
<div>nova-cert computeDomU01 nova enabled :-) 2012-11-15 20:02:30</div><div>nova-network computeDomU01 nova enabled :-) 2012-11-15 20:02:33</div>
<div>nova-scheduler computeDomU01 nova enabled :-) 2012-11-15 20:02:33</div><div>nova-compute computeDomU01 nova enabled :-) 2012-11-15 20:02:30</div>
<div>nova-network DevStackOSDomU nova enabled XXX 2012-11-15 20:01:40</div><div>nova-scheduler DevStackOSDomU nova enabled XXX 2012-11-15 20:01:40</div>
<div>nova-cert DevStackOSDomU nova enabled XXX 2012-11-15 20:01:35</div><div>nova-compute DevStackOSDomU nova enabled XXX 2012-11-15 20:01:40</div>
<div>nova-network computeDomU02 nova enabled :-) 2012-11-15 20:02:43</div><div>nova-compute computeDomU02 nova enabled XXX None </div>
<div>nova-scheduler computeDomU02 nova enabled :-) 2012-11-15 20:02:43</div><div>nova-cert computeDomU02 nova enabled :-) 2012-11-15 20:02:43</div>
</div><div><br></div><div>The nova-services are of course running on the head node. Actually, launching "nova-manage service list" on the head node or the first compute node returns the following output:</div><div>
<div>nova-manage service list</div><div>2012-11-15 20:05:08 DEBUG nova.utils [req-47839159-dc05-4947-a070-66b9f0db36e7 None None] backend <module 'nova.db.sqlalchemy.api' from '/opt/stack/nova/nova/db/sqlalchemy/api.pyc'> from (pid=6912) __get_backend /opt/stack/nova/nova/utils.py:502</div>
<div>Binary Host Zone Status State Updated_At</div><div>nova-consoleauth DevStackOSDomU nova enabled :-) 2012-11-15 20:04:10</div>
<div>nova-cert computeDomU01 nova enabled :-) 2012-11-15 20:05:03</div><div>nova-network computeDomU01 nova enabled :-) 2012-11-15 20:05:07</div>
<div>nova-scheduler computeDomU01 nova enabled :-) 2012-11-15 20:05:07</div><div>nova-compute computeDomU01 nova enabled :-) 2012-11-15 20:05:03</div>
<div>nova-network DevStackOSDomU nova enabled :-) 2012-11-15 20:04:15</div><div>nova-scheduler DevStackOSDomU nova enabled :-) 2012-11-15 20:04:15</div>
<div>nova-cert DevStackOSDomU nova enabled :-) 2012-11-15 20:04:09</div><div>nova-compute DevStackOSDomU nova enabled :-) 2012-11-15 20:04:15</div>
<div>nova-network computeDomU02 nova enabled :-) 2012-11-15 20:05:16</div><div>nova-compute computeDomU02 nova enabled XXX None </div>
<div>nova-scheduler computeDomU02 nova enabled :-) 2012-11-15 20:05:16</div><div>nova-cert computeDomU02 nova enabled :-) 2012-11-15 20:05:16</div>
</div><div><br></div><div>And the 2nd problem is the fact that nova-compute does not start on the new compute node, and returns this error:</div><div><div>2012-11-15 19:57:05 DEBUG nova.virt.xenapi.driver [-] Got exception: ['XENAPI_MISSING_PLUGIN', 'xenhost'] from (pid=25140) _unwrap_plugin_exceptions /opt/stack/nova/nova/virt/xenapi/driver.py:754</div>
<div>2012-11-15 19:57:05 ERROR nova.virt.xenapi.host [-] The call to host_data returned an error: ['XENAPI_MISSING_PLUGIN', 'xenhost'].</div><div>Traceback (most recent call last):</div><div> File "/usr/local/lib/python2.7/dist-packages/eventlet/hubs/poll.py", line 97, in wait</div>
<div> readers.get(fileno, noop).cb(fileno)</div><div> File "/usr/local/lib/python2.7/dist-packages/eventlet/greenthread.py", line 192, in main</div><div> result = function(*args, **kwargs)</div><div> File "/opt/stack/nova/nova/service.py", line 132, in run_server</div>
<div> server.start()</div><div> File "/opt/stack/nova/nova/service.py", line 410, in start</div><div> self.manager.update_available_resource(ctxt)</div><div> File "/opt/stack/nova/nova/compute/manager.py", line 2785, in update_available_resource</div>
<div> self.resource_tracker.update_available_resource(context)</div><div> File "/opt/stack/nova/nova/utils.py", line 760, in inner</div><div> retval = f(*args, **kwargs)</div><div> File "/opt/stack/nova/nova/compute/resource_tracker.py", line 366, in update_available_resource</div>
<div> resources = self.driver.get_available_resource()</div><div> File "/opt/stack/nova/nova/virt/xenapi/driver.py", line 411, in get_available_resource</div><div> host_stats = self.get_host_stats(refresh=True)</div>
<div> File "/opt/stack/nova/nova/virt/xenapi/driver.py", line 573, in get_host_stats</div><div> return self.host_state.get_host_stats(refresh=refresh)</div><div> File "/opt/stack/nova/nova/virt/xenapi/driver.py", line 159, in host_state</div>
<div> self._host_state = host.HostState(self._session)</div><div> File "/opt/stack/nova/nova/virt/xenapi/host.py", line 134, in __init__</div><div> self.update_status()</div><div> File "/opt/stack/nova/nova/virt/xenapi/host.py", line 162, in update_status</div>
<div> data["disk_total"] = total</div><div>TypeError: 'str' object does not support item assignment</div><div>Removing descriptor: 5</div><div>2012-11-15 19:57:05 CRITICAL nova [-] 'str' object does not support item assignment</div>
<div>2012-11-15 19:57:05 TRACE nova Traceback (most recent call last):</div><div>2012-11-15 19:57:05 TRACE nova File "/usr/local/bin/nova-compute", line 7, in <module></div><div>2012-11-15 19:57:05 TRACE nova execfile(__file__)</div>
<div>2012-11-15 19:57:05 TRACE nova File "/opt/stack/nova/bin/nova-compute", line 48, in <module></div><div>2012-11-15 19:57:05 TRACE nova service.wait()</div><div>2012-11-15 19:57:05 TRACE nova File "/opt/stack/nova/nova/service.py", line 659, in wait</div>
<div>2012-11-15 19:57:05 TRACE nova _launcher.wait()</div><div>2012-11-15 19:57:05 TRACE nova File "/opt/stack/nova/nova/service.py", line 192, in wait</div><div>2012-11-15 19:57:05 TRACE nova super(ServiceLauncher, self).wait()</div>
<div>2012-11-15 19:57:05 TRACE nova File "/opt/stack/nova/nova/service.py", line 162, in wait</div><div>2012-11-15 19:57:05 TRACE nova service.wait()</div><div>2012-11-15 19:57:05 TRACE nova File "/usr/local/lib/python2.7/dist-packages/eventlet/greenthread.py", line 166, in wait</div>
<div>2012-11-15 19:57:05 TRACE nova return self._exit_event.wait()</div><div>2012-11-15 19:57:05 TRACE nova File "/usr/local/lib/python2.7/dist-packages/eventlet/event.py", line 116, in wait</div><div>2012-11-15 19:57:05 TRACE nova return hubs.get_hub().switch()</div>
<div>2012-11-15 19:57:05 TRACE nova File "/usr/local/lib/python2.7/dist-packages/eventlet/hubs/hub.py", line 177, in switch</div><div>2012-11-15 19:57:05 TRACE nova return self.greenlet.switch()</div><div>
2012-11-15 19:57:05 TRACE nova File "/usr/local/lib/python2.7/dist-packages/eventlet/greenthread.py", line 192, in main</div><div>2012-11-15 19:57:05 TRACE nova result = function(*args, **kwargs)</div><div>
2012-11-15 19:57:05 TRACE nova File "/opt/stack/nova/nova/service.py", line 132, in run_server</div><div>2012-11-15 19:57:05 TRACE nova server.start()</div><div>2012-11-15 19:57:05 TRACE nova File "/opt/stack/nova/nova/service.py", line 410, in start</div>
<div>2012-11-15 19:57:05 TRACE nova self.manager.update_available_resource(ctxt)</div><div>2012-11-15 19:57:05 TRACE nova File "/opt/stack/nova/nova/compute/manager.py", line 2785, in update_available_resource</div>
<div>2012-11-15 19:57:05 TRACE nova self.resource_tracker.update_available_resource(context)</div><div>2012-11-15 19:57:05 TRACE nova File "/opt/stack/nova/nova/utils.py", line 760, in inner</div><div>2012-11-15 19:57:05 TRACE nova retval = f(*args, **kwargs)</div>
<div>2012-11-15 19:57:05 TRACE nova File "/opt/stack/nova/nova/compute/resource_tracker.py", line 366, in update_available_resource</div><div>2012-11-15 19:57:05 TRACE nova resources = self.driver.get_available_resource()</div>
<div>2012-11-15 19:57:05 TRACE nova File "/opt/stack/nova/nova/virt/xenapi/driver.py", line 411, in get_available_resource</div><div>2012-11-15 19:57:05 TRACE nova host_stats = self.get_host_stats(refresh=True)</div>
<div>2012-11-15 19:57:05 TRACE nova File "/opt/stack/nova/nova/virt/xenapi/driver.py", line 573, in get_host_stats</div><div>2012-11-15 19:57:05 TRACE nova return self.host_state.get_host_stats(refresh=refresh)</div>
<div>2012-11-15 19:57:05 TRACE nova File "/opt/stack/nova/nova/virt/xenapi/driver.py", line 159, in host_state</div><div>2012-11-15 19:57:05 TRACE nova self._host_state = host.HostState(self._session)</div>
<div>2012-11-15 19:57:05 TRACE nova File "/opt/stack/nova/nova/virt/xenapi/host.py", line 134, in __init__</div><div>2012-11-15 19:57:05 TRACE nova self.update_status()</div><div>2012-11-15 19:57:05 TRACE nova File "/opt/stack/nova/nova/virt/xenapi/host.py", line 162, in update_status</div>
<div>2012-11-15 19:57:05 TRACE nova data["disk_total"] = total</div><div>2012-11-15 19:57:05 TRACE nova TypeError: 'str' object does not support item assignment</div><div>2012-11-15 19:57:05 TRACE nova </div>
</div><div><br></div><div><br></div><div>Any ideas how to solve this problem??</div><div><br></div><div>Thank you,</div><div>Afef</div><div><br></div><div><br></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>Afef MDHAFFAR<br><a href="http://www.redcad.org/members/mdhaffar/">http://www.redcad.org/members/mdhaffar/</a><br><br><br><br>
</div>