Welcome! Log In Create A New Profile

Advanced

upstream max_fails и упавшие сервера

Андрей Урядов
June 18, 2013 10:25AM
Всем привет.

Столкнулся с интересным поведением директивы max_fails в upstream.
Версия nginx 1.2.6.
Опишу ситуацию.

1. Nginx работает на сервере some_host1. Кусок конфига:
upstream fpm {
server <some_host1>:9000 weight=6;
server<some_host2>:9000 weight=4;
}
2. В какой-то момент some_host2 зависает (на уровне ОС), т.е. не отвечает
на запросы.
3. В логах появляются строки "connect() failed (110: Connection timed out)
while connecting to upstream". Причем, я считал, что т.к. max_fails не
указан, он равен 1, и, стало быть, таких строчек не должно быть, т.к. nginx
должен перекидывать всех на первый сервер.
4. some_host2 перестартует. На нем запускается fpm.
5. Но почему-то строки из лога не пропадают и клиентам отдаются ошибки.
6. Если перестартовать nginx, то он подцепит оба сервера, и все продолжится
в штатном режиме.


Вопросы:
1. Почему после первого неудачного раза сервер не отрубается? Ведь
max_fails равно 1.
2. Почему после рестарта сервера nginx его не видит? Он же продолжает его
дергать, и мог бы понять, что сервер восстановился.

Или, может, это нужно реализовывать другими способами? Переменные там
другие выставлять или еще что?
_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

upstream max_fails и упавшие сервера

Андрей Урядов June 18, 2013 10:25AM

Re: upstream max_fails и упавшие сервера

Maxim Dounin June 18, 2013 10:25AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 150
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 500 on July 15, 2024
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready