我目前正在尝试使用 Ubuntu 的自动驾驶测试驱动部署 Openstack Cloud。我已按照http://www.ubuntu.com/download/cloud/install-autopilot-testdrive。
他们的部署使用 KVM 作为计算服务、vSwitch 作为网络服务、swift 作为对象存储服务以及 iSCSI 作为块存储服务。我的网络上有 6 个节点,它们遵循简单的命名约定“node-x”。算上控制器节点,一共有 7 个。它们都连接到的网络是 10.0.0.0/24。
但是,当我进入 Landscape 实际部署区域时,该过程在 96% 处失败。失败的过程包括:
- 部署“mysql”服务
- 将单元添加到“node-1.myautopilot”上的“mysql”服务
- 创建 Landscape 管理员用户
我认为这三个中只有一个是问题的真正根源,但我几乎没有查看日志的经验(更不用说,日志有好几个)。我在日志中发现的错误如下:
juju-同步日志
Jan 18 12:13:11 juju-sync-1 INFO Unit mysql/0 has been updated: address = 10.0.0.82, machine_id = 0/lxc/5, state = error, state_info = hook failed: "shared-db-relation-changed"
所有机器日志
unit-mysql-0[912]: 2016-01-18 12:13:05 ERROR juju.worker.uniter.operation runhook.go:107 hook "shared-db-relation-changed" failed: exit status 1
事实上还有更多错误,全部与以下方面有关:no relation id specified
作业处理程序.log
1 月 18 日 10:58:13 job-handler-1 ERR 处理作业时出错#012Traceback(最近一次调用最后一次):#012 文件“/usr/lib/python2.7/dist-packages/twisted/internet/defer.py”,第 423 行,位于 errback#012 self._startRunCallbacks(fail)#012 文件“/usr/lib/python2.7/dist-packages/twisted/internet/defer.py”,第 490 行,位于 _startRunCallbacks#012 self._runCallbacks()#012 文件“/usr/lib/python2.7/dist-packages/twisted/internet/defer.py”,第 577 行,位于 _runCallbacks#012 current.result = callback(current.result, *args, **kw)#012 文件“/usr/lib/python2.7/dist-packages/twisted/internet/defer.py”, 第 1155 行, 在 gotResult#012 中 _inlineCallbacks(r, g, deferred)#012--- ---#012 文件“/usr/lib/python2.7/dist-packages/twisted/internet/defer.py”, 第 1097 行, 在 _inlineCallbacks#012 中 result = result.throwExceptionIntoGenerator(g)#012 文件“/usr/lib/python2.7/dist-packages/twisted/python/failure.py”, 第 389 行, 在 throwExceptionIntoGenerator#012 中 return g.throw(self.type, self.value, self.tb)#012 文件“/opt/canonical/landscape/canonical/landscape/model/activity/jobs.py”, 第 18 行, 在运行#012 产生 self._update_activity(account_id,activity_id)#012 文件“/usr/lib/python2.7/dist-packages/twisted/python/threadpool.py”,第 196 行,位于 _worker#012 result = context.call(ctx,function,* args,** kwargs)#012 文件“/usr/lib/python2.7/dist-packages/twisted/python/context.py”,第 118 行,位于 callWithContext#012 return self.currentContext()。callWithContext(ctx,func,* args,** kw)#012 文件“/usr/lib/python2.7/dist-packages/twisted/python/context.py”,第 81 行,位于 callWithContext#012 return func(* args,** kw)#012 文件“/usr/lib/python2.7/dist-packages/storm/twisted/transact.py”,第 76 行,位于 _wrap#012 result = function(*args, **kwargs)#012 文件“/opt/canonical/landscape/canonical/landscape/model/activity/jobs.py”,第 28 行,位于 _update_activity#012 activity._update_progress_after_child_changed()#012exceptions.AttributeError: 'NoneType' 对象没有属性 '_update_progress_after_child_changed'
我已确保所有虚拟机都分配了足够的资源(它们从一开始就分配了足够的资源,因为我使用的是 Ubuntu 提供的虚拟机模板)。此外,它们都可以访问互联网。
如果需要更多信息,我会尽快提供。
有人遇到过这个问题并知道如何解决吗?或者,无论如何,我可以采取任何进一步的调试步骤来找到问题的解决方案?
谢谢。
PS:如果这个问题不属于这个平台,我很抱歉,请将我重定向到相关平台。
答案1
请你提交错误并附加自动驾驶仪在 UI 中显示的完整日志 tarball?