我試圖使用ModCluster來負載平衡某些服務器。我們有一個EAR需要通過不同的DNS進行負載平衡。如何配置相同的上下文應用程序以通過ModCluster和Wildfly10使用不同的計算機
我們有這種情況。我們需要保持相同的情況下 '系統1'因爲向後兼容的
- 4臺服務器的urla.com.br/system1/
- 2服務器進行urlb.com.br/system1/
在域模式下使用Wildfly 10.1.0時,它們被兩個服務器組分隔開:URLA和URLB。他們共享相同的配置文件(URL-HA)和套接字綁定(URL-HA-SOCKET)。
我有一個Apache與mod_cluster與最小配置。
LoadModule cluster_slotmem_module modules/mod_cluster_slotmem.so
LoadModule manager_module modules/mod_manager.so
LoadModule proxy_cluster_module modules/mod_proxy_cluster.so
LoadModule advertise_module modules/mod_advertise.so
Listen 10.90.0.13:7777
<VirtualHost 10.90.0.13:7777>
<Directory />
Require all granted
</Directory>
<Location />
Order deny,allow
Allow from all
</Location>
ManagerBalancerName mybalancer
ServerAdvertise on
EnableMCPMReceive On
<Location /mod_cluster-manager>
SetHandler mod_cluster-manager
Order deny,allow
Allow from all
</Location>
</VirtualHost>
當我訪問http://10.90.0.13:7777/mod_cluster-manager,我看到與上下文system1/
註冊的6臺服務器。順便說一句,他們使用相同的EAR文件。
但這對我們來說並不理想。訪問urla.com.br/system1/的用戶不能使用urlb.com.br/system1/的機器,反之亦然。我能找到這樣做(我沒有測試過...)
的唯一方法是爲每個服務器組配置文件,這樣我就可以配置不同的負載均衡組:
簡介> URLA-HA/URLB-HA>子系統> ModCluster。
但是在這種情況下,我們複製了配置文件(DataSources,Queues,MailSession等)中存在的所有配置。這是很難維持的。
那麼,我們有什麼選擇呢?謝謝!