URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID8
Нить номер: 6273
[ Назад ]

Исходное сообщение
"Apache + mod_proxy_balancer"

Отправлено kydesnik , 01-Апр-09 09:26 
Стоит Apache 2.2 + mod_proxy_balancer. Настроено по типовому, как в нете в мануалах пишут:

На внешней стороне (балансировщик)
ProxyPass /balancer-manager !
ProxyPass / balancer://mycluster/ stickysession=BALANCEID nofailover=On
ProxyPassReverse / http://srv2-s10-hrs1:8080/
ProxyPassReverse / http://srv2-s10-hrs2:8080/
<Proxy balancer://mycluster>
   BalancerMember http://server1:8080  route=http1
   BalancerMember http://server2:8080  route=http2
   ProxySet lbmethod=byrequests
</Proxy>

Внутренняя сторона (реальные сервера, которые работаю с БД)
<VirtualHost *:8080>
    DocumentRoot /home/apache2/htdocs
    ServerName server1
    
    RewriteEngine On
    RewriteRule .* - [CO=BALANCEID:balancer.http1:.server3]

</VirtualHost>

Внимание вопрос!!! Как это можно сделать? (см.ниже)

Балансирует все прекрасно, но при этом мне надо жестко прибить сессию к конкретному серваку. Допустим если пользователь заходит на внешний Apache (балансировщик) и он его отправляет на server1, надо чтоб этого юзера Apache (балансировщик) постоянно пока пользователь не отвалился по timeout слал его на server1.

Либо, если возможно чисто четные ip слать на server1, нечетные на server2.


Содержание

Сообщения в этом обсуждении
"Apache + mod_proxy_balancer"
Отправлено Michael , 01-Апр-09 13:18 
>Балансирует все прекрасно, но при этом мне надо жестко прибить сессию к
>конкретному серваку. Допустим если пользователь заходит на внешний Apache (балансировщик) и
>он его отправляет на server1, надо чтоб этого юзера Apache (балансировщик)
>постоянно пока пользователь не отвалился по timeout слал его на server1.
>
>
>Либо, если возможно чисто четные ip слать на server1, нечетные на server2.
>

может проще использовать nginx? там есть директива, ip_hash. она позволяет решить эту проблему


"Apache + mod_proxy_balancer"
Отправлено kydesnik , 04-Апр-09 09:29 
>[оверквотинг удален]
>>конкретному серваку. Допустим если пользователь заходит на внешний Apache (балансировщик) и
>>он его отправляет на server1, надо чтоб этого юзера Apache (балансировщик)
>>постоянно пока пользователь не отвалился по timeout слал его на server1.
>>
>>
>>Либо, если возможно чисто четные ip слать на server1, нечетные на server2.
>>
>
>может проще использовать nginx? там есть директива, ip_hash. она позволяет решить эту
>проблему

Насколько я знаю Nginx только под линухи, а под винду нет?


"Apache + mod_proxy_balancer"
Отправлено Michael , 06-Апр-09 16:43 
>Насколько я знаю Nginx только под линухи, а под винду нет?

верно


"Apache + mod_proxy_balancer"
Отправлено анонимоид , 21-Апр-09 17:29 
>>Насколько я знаю Nginx только под линухи, а под винду нет?
>
>верно

уже не верно
0.7.52 Добавление: первая бинарная версия под Windows.


"Apache + mod_proxy_balancer"
Отправлено kydesnik , 28-Апр-09 17:41 
>уже не верно
>0.7.52 Добавление: первая бинарная версия под Windows.

да-да, вчера вышла nginx-0.7.53 под Windows будем пробовать ее на зуб