【问题标题】:Openshift - 503 Service Temporarily Unavailable when i am accessing the appOpenshift - 当我访问应用程序时 503 服务暂时不可用
【发布时间】:2013-01-02 00:37:33
【问题描述】:

我使用 node.js 和 mongo db 在 Openshift here 上托管了一个应用程序。它昨天和今天运行得很好,当我访问它时,我得到了

服务暂时不可用错误

我搜索了一些线程并尝试了这个命令

rhc tail -a news

结果是

npm 错误!节点 -v v0.6.20 npm 错误! npm -v 1.1.37 npm 错误!代码

ELIFECYCLE npm 错误!消息 OpenShift-Sample-App@1.0.0 start: `node

server.jsnpm ERR! messagesh "-c" "node server.js"` 以 1 失败

npm 错误! npm 错误!可以在以下位置找到其他日志记录详细信息:npm ERR!

/var/lib/openshift/4eb0c449f78a4d7e937726185b5e636e/app-root/runtime/repo/npm-debug.log

npm 错误!不好的代码未定义的 npm ERR!不好的代码 1

我也试过

rhc app status -a news

结果是

结果:Geargroup nodejs-0.6+mongodb-2.2 启动

我也尝试重新启动我的应用程序

rhc app restart

它正确地重新启动。 你能告诉我这是什么问题吗?

【问题讨论】:

    标签: node.js openshift paas


    【解决方案1】:

    正如Hardy 所说,我仍然不知道超出了哪个资源。不过现在已经修好了。

    这就是我所做的。

    1. 只需按照here 的说明远程访问您的应用控制台即可。

    2. 使用 PuTTy 或 Cygwin 等客户端 SSH 进入控制台。

    3. 只需输入ctl_app status 即可检查应用的状态。对我来说,它就像: 应用当前无法访问或停止。

    4. 只需输入ctl_all start即可启动它

    现在应用可以像以前一样工作了。

    【讨论】:

    • m 有完全相同的问题... ctl_all start 表示已启动,但我再次调用 ctl_app status :表示已停止。还有一件事,日志说.. mongodb 连接上的“身份验证失败”,而我提供了 openshift 给出的确切连接 url。复制粘贴..所以没有拼写错误的机会。
    • 好主意。 rhc 说它的矿井正在运行,但 ctl_app 说不然。日志显示应用程序错误与正在停止应用程序运行的配置。修复并启动应用程序为我修复了它。检查日志是必不可少的。
    【解决方案2】:

    您使用的是免费的 OpenShift 帐户(免费 grear)吗?如果是这样,您的应用程序在做什么?它是否非常占用 CPU 或内存。您的设备使用 cgroups 进行监控,一旦您超过任何资源限制(cpu、内存、线程),您的应用程序就会被杀死。在这种情况下,您将收到您描述的消息。不幸的是,没有办法告诉您超出了哪个资源,并且您没有收到有关这是问题的通知。至少这是我使用我的应用程序所经历的。当然,您的应用可能还有其他问题。

    【讨论】:

    • 它现在已修复.. 我刚刚配置了 ssh 访问并重新启动了应用程序
    • 这是不正确的。仅当应用程序超出内存限制时才会发生终止; oom_killer 选择一个要杀死的进程。如果您的应用程序只有一个进程(和许多线程),那么您的应用程序将死在水中,直到守望者重新启动它。如果(与基于 httpd 的购物车(如 php)一样)它只是众多过程中的一个,您几乎不会注意到。超过 CPU 只会让 CPU 受到限制。超过 procs/threads/storage 限制意味着您将看到尝试访问这些内容时失败。
    猜你喜欢
    • 2016-11-30
    • 1970-01-01
    • 1970-01-01
    • 2023-04-06
    • 2018-08-18
    • 2011-12-19
    • 2018-09-16
    • 1970-01-01
    • 2016-07-29
    相关资源
    最近更新 更多