Я настроил Apache для балансировки нагрузки двух узлов WebLogic (используя mod_weblogic),
но все запросы перенаправляются на второй узел.
Вот что я добавил в httpd.conf:
LoadModule weblogic_module modules/mod_wl_22.so
<IfModule mod_weblogic.c>
MatchExpression /soa-infra WebLogicCluster=node1.domain.com:8001,node2.domain.com:8001
</IfModule>
<Location /soa-infra>
SetHandler weblogic-handler
WebLogicCluster node1.domain.com:8001,node2.domain.com:8001
</Location>
То, что я пробовал без эффекта:
1) swap node1.domain.com and node2.domain.com
2) change balancing algorithm in WebLogic Administration Console
Некоторые уточнения:
1. клиент обращается к apache - я проверяю себя.
2. Я вижу, что apache создает соединение только после запроса от клиента / меня, и это только соединение со вторым узлом (на котором он выполняется).
3. да, оба узла находятся в локальной сети и доступны.
Я нашел интересную вещь:
если я удаляю все мои строки из httpd.conf, за исключением строки для загрузки mod_weblogic и перезапускаю apache, то у меня нет доступа через балансировщик нагрузки - поэтому балансировщик действительно использует мои строки конфигурации,
но если я удаляю второй узел из списка, балансировщик нагрузки все еще перенаправляет второй узел, а не только один перечисленный первый узел.
Похоже, я нашел проблему!
После нескольких запросов я вижу в журнале:
Wed Jan 25 19:56:49 2012 <480013275070093> Trying a pooled connection for '192.168.0.111/8001/8001'
Wed Jan 25 19:56:49 2012 <480013275070093> getPooledConn: No more connections in the pool for Host[192.168.0.111] Port[8001] SecurePort[8001]
Wed Jan 25 19:56:49 2012 <480013275070093> general list: trying connect to '192.168.0.111'/8001/8001 at line 2724 for '/soa-infra/services/partition/my_composite/my_composite_client_ep'
Wed Jan 25 19:57:05 2012 <480013275070256> Trying to locate Primary or Secondary using SrvrInfo with JVMID: -76285319
Wed Jan 25 19:57:05 2012 <480013275070256> getPreferredFromCookie: Found Primary 192.168.0.112:8001:0
Wed Jan 25 19:57:05 2012 <480013275070256> getPreferredFromCookie: Found 1 servers
192.168.0.111 - первый узел, 192.168.0.112 - второй.
Есть предложения?