Openshift - служба 503 временно недоступна, когда я открываю приложение

У меня есть приложение, размещенное на Openshift здесь, с использованием node.js и mongo db. Вчера он работал отлично, а сегодня, когда я обращаюсь к нему, я получаю

Ошибка временно недоступной службы

Я просмотрел несколько тем и попробовал эту команду

rhc tail -a news

и результат был

npm ERR! узел -v v0.6.20 npm ERR! npm -v 1.1.37 npm ERR! код

ELIFECYCLE npm ERR! сообщение [email protected] start: `узел

server.jsnpm ERR! messagesh -c node server.js` не удалось с 1

npm ERR! npm ERR! Дополнительные сведения о регистрации можно найти в: npm ERR!

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

npm ERR! не в порядке код undefined npm ERR! не в порядке код 1

Я тоже пробовал

rhc app status -a news

и результат был

РЕЗУЛЬТАТ: Geargroup nodejs-0.6 + mongodb-2.2 запущен

также я попытался перезапустить свое приложение

rhc app restart

и он перезапустился должным образом. Не могли бы вы подсказать мне, в чем проблема?


person Mithun Satheesh    schedule 18.01.2013    source источник


Ответы (2)


Как упоминалось Hardy, я до сих пор не знаю, какой ресурс был превышен. Но исправили сейчас.

Вот что я сделал.

  1. просто получите удаленный доступ к консоли своего приложения, как описано здесь.

  2. ssh в консоль с таким клиентом, как PuTTy или Cygwin.

  3. просто проверьте статус своего приложения, набрав ctl_app status. для меня это выглядело так: Приложение сейчас недоступно или остановлено.

  4. просто начните, набрав ctl_all start

Теперь приложение работает в прежнем режиме.

person Mithun Satheesh    schedule 18.01.2013
comment
m имеет точно такую ​​же проблему ... ctl_all start говорит, что началось, но я снова вызываю ctl_app status: говорит, что остановлено. Еще одна вещь, в журналах говорится ... auth не работает при соединении mongodb, тогда как я предоставил точный URL-адрес соединения, указанный openshift. Копипаст .. так что нет шансов на опечатки. - person codeofnode; 07.03.2016
comment
Да хорошая идея. rhc говорит, что его шахта работает, но ctl_app говорит иначе. Журналы показывают ошибки приложения с конфигурацией, которая останавливает работу приложения. Исправление и запуск приложения исправили это для меня. Проверка журналов необходима. - person James Lock; 22.07.2016

Вы используете бесплатную учетную запись OpenShift (бесплатно)? Если да, то что делает ваше приложение? Это очень интенсивно использует процессор или память. Ваши механизмы контролируются с помощью контрольных групп, и как только вы превысите какой-либо лимит ресурсов (процессор, память, потоки), ваше приложение будет убито. В этом случае вы получите сообщение, которое вы описываете. К сожалению, невозможно определить, какой ресурс вы превысили, и вы не получите уведомление о том, что это проблема. По крайней мере, это то, что я испытал с моими приложениями. Конечно, с вашим приложением могут быть и другие проблемы.

person Hardy    schedule 18.01.2013
comment
Теперь это исправлено. Я только что настроил доступ по ssh и перезапустил приложение. - person Mithun Satheesh; 18.01.2013
comment
Это неверно. Убийство происходит только в том случае, если приложение превышает лимит памяти; oom_killer выбирает процесс, который нужно убить. Если ваше приложение имеет только один процесс (и много потоков), тогда ваше приложение не работает, пока сторож не перезапустит его. Если (как в случае с тележками на основе httpd, такими как php) это всего лишь один из многих процессов, вы вряд ли заметите. Превышение ЦП просто снижает скорость ЦП. Превышение пределов процессов / потоков / хранилища означает, что вы столкнетесь с ошибками при попытке доступа к этим вещам. - person sosiouxme; 17.06.2014