upstream priority

Илья Шипицин chipitsine на gmail.com
Пт Ноя 6 18:33:12 UTC 2020


все верно, первый бекенд - с максимальным весом, бекапом - следующий
(который устроен аналогично)

но я бы не играл с error_page, это запутано получается. что именно
редиректить на error_page, 502 ? 504 ? собственные 502 или проксированные ?
в общем, сложно это.

пт, 6 нояб. 2020 г. в 23:17, Nikita Koshikov <koshikov на gmail.com>:

> Спасибо,
> Имеется ввиду два бекенда один из который с backup ?
>
>   upstream c1 {
>     server [::1]:81 ;
>     server [::1]:82 backup;
>   }
>
>   upstream c2 {
>     server [::1]:83 ;
>     server [::1]:84 backup;
>   }
>
> server {
>   location {
>     proxy_pass http://c1
>     error_page @c2
>   }
> }
> Или что-то другое ?
>
> On Fri, Nov 6, 2020 at 9:52 AM Илья Шипицин <chipitsine на gmail.com> wrote:
> >
> > можно проксировать на самого себя каскадом.
> > на каждом каскаде 2 бекенда
> >
> > пт, 6 нояб. 2020 г. в 22:40, Nikita Koshikov <koshikov на gmail.com>:
> >>
> >> Доброго всем времени суток
> >>
> >> Подскажите как можно сделать что-то максимально подобное для выбора
> >> backend сервера по приоритету, в идеале нужно что-то
> >>
> >>   upstream backend {
> >>     server [::1]:81 priority=1;
> >>     server [::1]:82 priority=2;
> >>     server [::1]:83 priority=3;
> >>     server [::1]:84 priority=4;
> >>     server [::1]:85 priority=5;
> >>   }
> >> т.е. пока жив хоть один с более высоким приоритетом - слать запросы на
> него ?
> >>
> >> Из того что пробовал
> >>   upstream backend {
> >>     server [::1]:81 weight=1;
> >>     server [::1]:83 backup;
> >>   }
> >> Так работает - однако не поддерживает 2+ бекенда
> >>
> >> Из самого близкого что удалось сделать - через hash со статичным ключом
> >>   upstream backend {
> >>     hash 'http_balance';
> >>     server [::1]:81 weight=1 fail_timeout=60;
> >>     server [::1]:82 weight=2 fail_timeout=60;
> >>     server [::1]:83 weight=3 fail_timeout=60;
> >>   }
> >> Проблема только что веса не всегда работают, - в данной конфигурации
> >> выбирается server:82, хотя у 83 более высокий weight. Полная цепочка
> >> при отказах - 82->83->81
> >> Учитывается ли вес в такой конфигурации ?
> >> С более высокими весами начинает работать как нужно 83->82->81
> >>   upstream backend {
> >>     hash 'http_balance';
> >>     server [::1]:81 weight=1 fail_timeout=60;
> >>     server [::1]:82 weight=10 fail_timeout=60;
> >>     server [::1]:83 weight=100 fail_timeout=60;
> >>   }
> >> Хотелось бы понимать это совпадение или веса принимаются в расчет при
> >> выборе hash-а?
> >> _______________________________________________
> >> nginx-ru mailing list
> >> nginx-ru на nginx.org
> >> http://mailman.nginx.org/mailman/listinfo/nginx-ru
> >
> > _______________________________________________
> > nginx-ru mailing list
> > nginx-ru на nginx.org
> > http://mailman.nginx.org/mailman/listinfo/nginx-ru
> _______________________________________________
> nginx-ru mailing list
> nginx-ru на nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx-ru
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mailman.nginx.org/pipermail/nginx-ru/attachments/20201106/ce253fee/attachment-0001.htm>


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