Keepalived (LVS) + SPDY

У меня есть Keepalived настроен с LVS распределить нагрузку между четырьмя веб-серверами Nginx (режим RR, нет постоянных соединений). Я планировал включить SPDY, но кажется, что SPDY устанавливает одно TCP-соединение для каждого хоста, поэтому, когда веб-узел удаляется из пула, клиент пытается отправить дополнительные запросы по исходному соединению, но балансировщик нагрузки не может переместить это существующее соединение на новый сервер, поэтому все веб-соединения запрашивает тайм-аут для этого клиента.

Есть ли способ заставить балансировщик нагрузки закрыть все подключения к отказавшему серверу или, возможно, любое другое решение для этого?

1 ответ

Попробуйте включить постоянство, а затем expire_quiescent_template

123 expire_quiescent_template - BOOLEAN
124     0 - disabled (default)
125     not 0 - enabled
126 
127     When set to a non-zero value, the load balancer will expire
128     persistent templates when the destination server is quiescent.
129     This may be useful, when a user makes a destination server
130     quiescent by setting its weight to 0 and it is desired that
131     subsequent otherwise persistent connections are sent to a
132     different destination server.  By default new persistent
133     connections are allowed to quiescent destination servers.
134 
135     If this feature is enabled, the load balancer will expire the
136     persistence template if it is to be used to schedule a new
137     connection and the destination server is quiescent.

http://www.mjmwired.net/kernel/Documentation/networking/ipvs-sysctl.txt

Другие вопросы по тегам