Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Синхронизация nginx соединений
- To: nginx-ru@xxxxxxxxx
- Subject: Re: Синхронизация nginx соединений
- From: Anton Yuzhaninov <citrin@xxxxxxxxx>
- Date: Thu, 11 Oct 2012 13:43:14 +0400
- In-reply-to: <CAPKsgQzrhreC0FkBk=Sa84yVaGGojQn_uyqi2+bYX9ZzXDcXQA@mail.gmail.com>
- References: <CAPKsgQzrhreC0FkBk=Sa84yVaGGojQn_uyqi2+bYX9ZzXDcXQA@mail.gmail.com>
On 10.10.2012 14:43, Viacheslav Biriukov wrote:
Есть кластер active/passive из двух nginx балансеров. Хочется, что бы при
переезде VIP с активной на пассивную (к примеру для апдейта ядра, ребута и т.д.)
не терялись соединения. Большие файлы продолжали отдаваться клиентам.
Плавной миграции локального tcp соединения с одного хоста на другой AFAIK пока
нигде не реализовали. Теоретически это возможно (нужна поддержка в ядре OS), но
достаточно сложно в реализации.
Как уже писали выше можно заранее убирать IP из DNS, но это долго - запросы все
равно будут идти даже после того как истечет DNS TTL, да и сам TTL маленьким
делать плохо.
Лучше перед серверами с nginx поставить еще пару балансировщиков. Это могут быть
либо два сервера с Linux/FreeBSD либо аппаратные решения, например Cisco SLB.
Тгда перед выклюение одного из сервера с nginx надо на балансировщике один из
серверов пометить как неактивный, чтобы новые запросы на него не поступали, но
старые продолжали работать.
После этого нужно дождаться завершения текущих запросов, и сервер с nginx можно
перезагружать.
--
Anton Yuzhaninov
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|