Re: reuseport в конфигах nginx

navern livingdeadzerg на yandex.ru
Ср Апр 20 10:51:21 UTC 2016


> Пусть у нас хост на линуксе, старый nginx слушает порт 8080, новый 8081,
>   действует правило перенаправления 80->8080, после старта второго nginx
>   заменяем правило командочкой
>
>   iptables -t nat -R PREROUTING 1 -p tcp --dport 80 -j REDIRECT --to-port 8081
>
>   и ждём, когда все соединения со старым nginx'ом будут обработаны и
>   закрыты, после чего старый nginx гасим.
>
>   В других операционках пакетный фильтр управляется иначе, но схема та же

Хост на линуксе. На 80 порту слушает не только nginx. У nginx'а 
несколько IP адресов, не всегда известных. Конфигов с виртуалхостами 
около 10 тысяч. Получается нужно еще каждый раз во всех 10к конфигах 
менять порт, на котором слушаем? При этом избежать ситуации, когда в 
этот момент реалодится основной nginx(если предполагаем, что конфиги 
разделяемые).

Для трех виртуалхостов наверное норм решение.

Еще нужно потом будет управлять этими правилами.

У нас подобная схема работает для контейнеров с MySQL, там это удобно. 
Для nginx'а не очень подходит.



Подробная информация о списке рассылки nginx-ru