LINUX.ORG.RU
решено ФорумAdmin

HAProxy + JBoss

 ,


0

2

Приветствую!

Имеется кластер JBoss(2 ноды), на нем работает несколько WEB-приложений плюс имеется одно приложение, которое должно коннектится к JBoss'у(удаленный клиент), юзаются JMS. HAProxy используется для балансировки нагрузки между нодами. С WEB-ом все ок, а вот с клиентом проблема. Для общения с сервером юзаются JMS сообщения. Так как прием сообщений происходит только на одной из нод(которая стартанет первой), то если подключиться к другой получается длинный Exception, вернее даже несколько, на тему «javax.naming.NameNotFoundException: XAConnectionFactory not bound».

В конфиге HAProxy можно одну из нод пометить backup, тогда коннекты будут на другую, пока она не отвалится. Но в этом случае как только первая поднимется, то HAProxy опять все будет на нее слать, в то время как ожидать подключений будет вторая нода и, соответственно, на первой будет NameNotFoundException.

Необходимо коннекты по 1098,1099 и 1100 портам слать сначала на одну ноду пока не отвалится, затем на вторую пока и она не сдохнет, даже если первая оживет раньше, и лишь потом вернуться на первую.

Архитектура корявая, да и JBoss древний - 4.2.3, но сейчас есть потребность просто дотянуть до переделки.


Ответ на: комментарий от Skolotovich

это проканает если haproxy как точка входа используется и видит реальные айпишники клиентов

если он стоит за чем то типа apache/nginx, то можно прописать куку с именем сервера балансировать уже по ней

Skolotovich ★★★ ()
Ответ на: комментарий от Skolotovich

Спасибо! Вроде как заработало, но надо будет еще потестировать. http://code.google.com/p/haproxy-docs/ мне не попалось при гуглении, так что ориентировался на http://haproxy.1wt.eu/download/1.2/doc/architecture.txt , а там про static-rr ни слова.

igor87 ()
Ответ на: комментарий от igor87

Спасибо! Вроде как заработало, но надо будет еще потестировать.

расскажи через что сделал? static-rr или appsession ?

http://code.google.com/p/haproxy-docs/ мне не попалось при гуглении, так что ориентировался на http://haproxy.1wt.eu/download/1.2/doc/architecture.txt , а там про static-rr ни слова.

на http://code.google.com/p/haproxy-docs/ забей, она походу уже устрела, это я опрометчиво скинул, не посмотрев что появилась нормально проидексированая дока у них на офф сайте

http://cbonte.github.com/haproxy-dconv/configuration-1.5.html

ps: и учитывай, что если перед хапрокси станет какойто фронтэнд (тотже stunnel например), то static-rr будет себя вести как обычный rr

Skolotovich ★★★ ()
Ответ на: комментарий от Skolotovich

расскажи через что сделал? static-rr или appsession ?

static-rr

ps: и учитывай, что если перед хапрокси станет какойто фронтэнд (тотже stunnel например), то static-rr будет себя вести как обычный rr

учту, хотя фронтендов перед HAProxy, по крайней мере пока, не планируется.

igor87 ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.