1

我们使用 BOSH 创建了自己的内部多节点云代工厂。当我推送一个简单的 sinatra 应用程序时,它会执行显示以下几行的所有步骤:

Uploading hello... OK
Starting hello... OK
Checking hello... GAVE UP
Application failed to start.

(当然,最后两行需要一段时间才能完成)

但是当我尝试点击应用程序 URL hello.mycloud.example.com 时,一切正常。也就是说,应用程序实际上正在运行。我查看了 dea 上的日志,果然,他们报告应用程序已启动并且系统已收到通知。

[2012-12-20 20:08:45.813061] dea - pid=24441 tid=40fc fid=0c65   INFO -- Starting up instance (name=hellocornelia app_id=1 instance=1e4cae7a70078687753ebc7d116de550 index=0) on port:62642
[2012-12-20 20:08:45.835886] dea - pid=24441 tid=40fc fid=47ea   INFO -- Starting up instance (name=hellocornelia app_id=1 instance=d1e1b77335f23d3ce1fe5e24caf85ed5 index=1) on port:62047
[2012-12-20 20:08:46.369563] dea - pid=24441 tid=40fc fid=23e8   INFO -- Instance (name=hellocornelia app_id=1 instance=1e4cae7a70078687753ebc7d116de550 index=0) is ready for connections, notifying system of status
[2012-12-20 20:08:46.370488] dea - pid=24441 tid=40fc fid=23e8   INFO -- Instance (name=hellocornelia app_id=1 instance=d1e1b77335f23d3ce1fe5e24caf85ed5 index=1) is ready for connections, notifying system of status
[2012-12-20 20:08:46.873075] dea - pid=24441 tid=40fc fid=23e8   INFO -- PID:22404 assigned to droplet instance: (name=hellocornelia app_id=1 instance=1e4cae7a70078687753ebc7d116de550 index=0)
[2012-12-20 20:08:46.873591] dea - pid=24441 tid=40fc fid=23e8   INFO -- PID:22410 assigned to droplet instance: (name=hellocornelia app_id=1 instance=d1e1b77335f23d3ce1fe5e24caf85ed5 index=1)

运行启用了跟踪的 vmc 应用程序显示:

{
"name": "hello",
"staging": {
  "model": "sinatra",
  "stack": "ruby18"
},
"uris": [
  "hello.cloudad.sccf.lab.emc.com"
],
"instances": 1,
"runningInstances": 0,
"resources": {
  "memory": 128,
  "disk": 2048,
  "fds": 256
},
"state": "STARTED",
"services": [

],
"version": "966c1f76a126696d09db9f49405f42130f72cbc3-1",
"env": [

],
"meta": {
  "debug": null,
  "console": null,
  "version": 3,
  "created": 1356035779
}
}
]
<<<
... OK
name    status   usage      runtime   url
hello   0%       1 x 128M   ruby18    hello.cloudad.sccf.lab.emc.com

这是可以预料的,因为系统不知道应用程序正在运行。我检查了云控制器和运行状况管理器日志,似乎找不到任何迹象表明哪里出了问题。有什么提示吗?

谢谢。

4

1 回答 1

1

我会检查你的健康经理。健康管理器日志会很有帮助。它甚至可能没有运行。请通过以下方式检查您的虚拟机状态

bosh vms

如果您的运行状况管理器正在运行,我会通过 ssh 进入它并检查位于 /var/vcap/sys 位置的日志

bosh ssh <component-name> <index> 

IE

 bosh ssh health_manager 0

我会说你的健康经理很可能有问题。由于一切正常,但您没有在客户端(vmc)中看到它

于 2013-01-14T22:26:16.697 回答