Раз в месяц останавливается nginx

tommy-gung
На сайте с 22.11.2006
Offline
277
3169

Доброе всем утро.

Раз в месяц-два останавливается nginx.

OVZ, CentOS 7, VestaCP.

В логах:

2016/11/08 03:21:34 [alert] 17710#17710: *8411383 open socket #31 left in connection 40

2016/11/08 03:21:34 [alert] 17710#17710: aborting
2016/11/08 03:21:34 [alert] 17709#17709: *8411485 open socket #31 left in connection 31
2016/11/08 03:21:34 [alert] 17709#17709: *8411467 open socket #14 left in connection 135
2016/11/08 03:21:34 [alert] 17709#17709: aborting
2016/11/08 03:26:21 [emerg] 717#717: bind() to *.*.*.*:80 failed (99: Cannot assign requested address)

помогает только в ручную запустить nginx.

в какую сторону копать, как исправить?

Здесь не могла быть ваша реклама
AN
На сайте с 03.07.2010
Offline
67
#1

Доброго дня!

На общую доступность сервера это как-то влияет? Я имею в виду по другим протоколам сервер остается доступным? Как вы коннектитесь, чтобы перезапустить nginx: панель, виртуальная консоль, ssh?

Возможно IP вылетает?

Здесь что-то будет...
tommy-gung
На сайте с 22.11.2006
Offline
277
#2
alexey_nsk:
На общую доступность сервера это как-то влияет? Я имею в виду по другим протоколам сервер остается доступным? Как вы коннектитесь, чтобы перезапустить nginx: панель, виртуальная консоль, ssh?

сайты недоступны (nginx+apache используется). в остальном все работает.

запускаю nginx через панель

---------- Добавлено 08.11.2016 в 11:36 ----------

похоже, что идет жесткий ребут, после чего из всего только nginx не запускается

---------- Добавлено 08.11.2016 в 11:39 ----------

еще логи apache


[Tue Nov 08 03:21:34.742695 2016] [mpm_prefork:notice] [pid 696] AH00170: caught SIGWINCH, shutting down gracefully
[Tue Nov 08 03:26:30.810569 2016] [suexec:notice] [pid 718] AH01232: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Tue Nov 08 03:26:30.954608 2016] [ssl:warn] [pid 718] AH02292: Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366)
[Tue Nov 08 03:26:31.042065 2016] [so:warn] [pid 718] AH01574: module ruid2_module is already loaded, skipping
[Tue Nov 08 03:26:31.084550 2016] [auth_digest:notice] [pid 718] AH01757: generating secret for digest authentication ...
[Tue Nov 08 03:26:31.126311 2016] [ssl:warn] [pid 718] AH02292: Init: Name-based SSL virtual hosts only work for clients with TLS server name indication support (RFC 4366)
[Tue Nov 08 03:26:31.161390 2016] [:notice] [pid 718] mod_ruid2/0.9.8 enabled
[Tue Nov 08 03:26:36.557571 2016] [mpm_prefork:notice] [pid 718] AH00163: Apache/2.4.6 (CentOS) OpenSSL/1.0.1e-fips mod_fcgid/2.3.9 PHP/5.4.45 configured -- resuming normal operations
[Tue Nov 08 03:26:36.586230 2016] [core:notice] [pid 718] AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND'
AN
На сайте с 03.07.2010
Offline
67
#3

nginx не может запуститься с ошибкой как у вас по двум причинам:

1. порт и ip занят другим сервисом.

2. ip недоступен на интерфейсе.

возможно nginx в какой-то момент некорректно перезапускается (во время ротации логов к примеру или после добавления домена, поддомена в панели) и процесс не убивается до конца. Нужно смотреть логи за больший период времени или смотреть, какой процесс мешает нжинксу занять порт и IP.

В тот момент, когда nginx не стартует выполните команды:

lsof -i:80

или/и

netstat -ntpl | grep :80

lsof может отсутствовать у вас на сервере - проверьте и установите его из пакетов заранее.

S
На сайте с 17.08.2008
Offline
114
#4

(знаком с этой проблемой)

Это возникает когда перед nginx начинает глючить апач. Сотни реконнектов как бы не влияют плохо на nginx, но когда их тысячи это другое дело...

Сначала nginx перестает отвечать на внешние запросы, если попытать сделать nginx рестарт пишет как у топик стартера

717#717: bind() to *.*.*.*:80 failed (99: Cannot assign requested address)

Это вызвано тем, что старый nginx продолжает висеть в процессах, и по прежнему продолжает слушать 80-ый порт,

надо сначала убить все процессы nginx, а потом делать nginx рестарт.

В этом месте все оживает...

Эти глюки возникают в связках nginx -> apache ->php.

tommy-gung
На сайте с 22.11.2006
Offline
277
#5

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

сейчас ребутнул все, так и апач не запустился

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий