我们已经使用BOSH创建了自己的内部多节点云代工厂。当我推出一个简单的sinatra应用程序时,它将完成显示以下几行的所有步骤:
Uploading hello... OK
Starting hello... OK
Checking hello... GAVE UP
Application failed to start.
(最后两行需要一段时间才能完成写作)
但是当我尝试点击应用网址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
这是预期的,因为系统不知道应用程序正在运行。我已经检查了云控制器和健康管理器日志,似乎无法找到任何失败的迹象。任何提示?
感谢。
答案 0 :(得分:1)
我会检查你的健康经理。运行状况管理器日志会很有帮助。它可能甚至没有运行。请通过
检查您的虚拟机状态bosh vms
如果您的运行状况管理器正在运行,我会查看它并检查位于/ var / vcap / sys位置的日志
bosh ssh <component-name> <index>
即
bosh ssh health_manager 0
我想说你的健康经理很可能会遇到问题。因为一切正常,但你没有在客户端看到它(vmc)