2014-11-15 5 views
3

У меня есть работающий проект django, размещенный в openshift, в какой-то момент за последние несколько дней он полностью отказался от ответа в браузере.Приложение Openshift не отвечает

Я все еще могу использовать его, я могу развернуть его, и интерфейс openshift.redhat.com не сообщает о каких-либо ошибках с приложением, но запрашивать какую-либо страницу через браузер просто не дает никакого ответа. Браузер просто продолжает говорить «Ожидание appname-user.rhcloud.com».

Журналы могут дать некоторое представление.

rhc tail appname 
==> app-root/logs/python.log <== 
Unable to open logs 
(98)Address already in use: make_sock: could not bind to address 127.8.172.129:8080 
no listening sockets available, shutting down 
Unable to open logs 
(98)Address already in use: make_sock: could not bind to address 127.8.172.129:8080 
no listening sockets available, shutting down 
Unable to open logs 
... (ad infinitum) 

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

Поблагодарили бы за любые идеи о том, что может послужить причиной этого или как отлаживать/разрешать его.


EDIT

на основе внушения толстяка Fantasma, я попробовал силы остановки/запуска цикла, и это то, что было зарегистрировано:

$ rhc app force-stop -a notebook 
$ rhc app start -a notebook 

$ rhc tail notebook 
==> app-root/logs/python.log <== 
(98)Address already in use: make_sock: could not bind to address 127.8.172.129:8080 
no listening sockets available, shutting down 
Unable to open logs 
(98)Address already in use: make_sock: could not bind to address 127.8.172.129:8080 
no listening sockets available, shutting down 
Unable to open logs 
[Sun Nov 16 01:26:13 2014] [notice] SELinux policy enabled; httpd running as context unconfined_u:system_r:openshift_t:s0:c4,c359 
[Sun Nov 16 01:26:13 2014] [notice] Digest: generating secret for digest authentication ... 
[Sun Nov 16 01:26:13 2014] [notice] Digest: done 
[Sun Nov 16 01:26:13 2014] [notice] Apache/2.2.15 (Unix) mod_wsgi/3.4 Python/2.7.5 configured -- resuming normal operations 

==> app-root/logs/postgresql.log <== 
2014-11-16 06:26:05 GMT LOG: trying another address for the statistics collector 
2014-11-16 06:26:05 GMT LOG: could not bind socket for statistics collector: Cannot assign requested address 
2014-11-16 06:26:05 GMT LOG: disabling statistics collector for lack of working socket 
2014-11-16 06:26:05 GMT WARNING: autovacuum not started because of misconfiguration 
2014-11-16 06:26:05 GMT HINT: Enable the "track_counts" option. 
2014-11-16 06:26:06 GMT LOG: database system was interrupted; last known up at 2014-11-15 07:33:35 GMT 
2014-11-16 06:26:06 GMT LOG: database system was not properly shut down; automatic recovery in progress 
2014-11-16 06:26:06 GMT LOG: record with zero length at 0/1D48850 
2014-11-16 06:26:06 GMT LOG: redo is not required 
2014-11-16 06:26:06 GMT LOG: database system is ready to accept connections 

Я мог бы быть неправильно, но я до сих пор это чувство приложение в порядке, это может быть связано с DNS. Я попробовал DNS след моего приложения URL (http://notebook-davur.rhcloud.com) и след заканчивается этим самородком:

Sending request to "ns3.p23.dynect.net" (208.78.71.23) 
Received authoritative (AA) response: 
-> Header: Non-Existent Domain 

ответ

0

Я был уверен, что это не проблема с кодом, так как проблема не началась сразу после развертывания каких-либо изменений. Чтобы убедиться, что проблема не с кодом, я создал новое приложение и нажал на него тот же код.

$ rhc app create newappname python-2.7 
$ rhc cartridge add postgresql-9.2 -a newappname 

Примите к сведению URL Гит вернулся после команды app create.

$ git remote add newapptest GIT_URL 
$ git push newapptest --force 
$ open http://newapptest-mydomain.rhcloud.com 

Et voila! Это сработало.

Поскольку это было просто хобби проекта без каких-либо важных данных в базе данных , я пошел вперед и удалил его через веб-интерфейс, и снова побежал выше команды, заменяющие newappname с originalappname и вместо того, чтобы добавить его в качестве new git remote Я обновил удаленное указание в настоящее время старое оригинальное/теперь удаленное приложение.

$ git remote set-url openshift GIT_URL 

(Примечание: Все данные в базе данных удаляется с приложением, так что если данные ценен начало с pg_dump и заканчиваться pg_restore)

И мой оригинальный URL является снова отвечающий. Я уверен, что это было связано с собственными настройками Openshift, возможно, с DNS и т. П.

+0

Мое приложение OpenShift - это [персональный веб-сайт, с которого я не могу изменить домен с того момента, как он проиндексирован Google] (https://personalwebsite-noblehmushtak.rhcloud.com/), так что вы знаете, что все равно, чтобы исправить эту проблему без создавая новое приложение? –

0

Начните с «RHC приложение силы-стоп». Затем перезапустите его. Затем наблюдайте журналы при сбоях снова.

+0

Пожалуйста, ознакомьтесь с правилом по вопросу, чтобы увидеть журнал моего приложения при этом. Это дало некоторую дополнительную информацию, но я не уверен, что с ней делать. Кроме того, по подозрению, я попытался сделать трассировку DNS в URL-адресе своего приложения, и это дало нечетный результат. – davur

+0

Вы используете программное обеспечение для управления версиями, такое как git? Если так, вернитесь к версии, которая, как известно, снова работает и развертывается, чтобы увидеть, возникла ли эта проблема. К сожалению, я был в вашей ситуации и потратил много времени только на то, чтобы выяснить, была ли проблема OPENHIFT, которая должна была быть исправлена ​​ими. Очень болезненный процесс. Похоже, проблема конфигурации приложения django tho. –

+0

Я использую git, но, как я уже сказал, он не прекратил работать в связи с толчком. Он работал после моего последнего толчка, а затем в какой-то момент до недели он прекратил работать. – davur