JBoss 和 Apache 負載平衡
我正在嘗試使用 Apache 負載平衡設置 JBoss 集群。基本上我已經按照這裡的指南進行操作。沒有遇到任何問題。我唯一的問題是,如何訪問我自己的應用程序?從指南中,它沒有提到我如何安裝自己的應用程序。
這是我的環境設置:
- 視窗
- JBoss AS 5.0
- 阿帕奇 2.2.16
- mod_jk 1.2.30
這是我的屬性設置:
httpf.conf
包括 conf/mod_jk.conf
mod_jk.conf
LoadModule jk_module 模組/mod_jk.so
JkWorkersFile conf/workers.properties
JkLogFile 日誌/mod_jk.log
JkLogLevel 資訊
JkLogStampFormat "
$$ %a %b %d %H:%M:%S %Y $$" JkOptions +ForwardKeySize +ForwardURICompatUnparsed -ForwardDirectories
JkRequestLogFormat “%w %V %T”
JkMount /application/* 負載均衡器
JkUnMount /application/images/* 負載均衡器
JkMountFile conf/uriworkermap.properties
JkShm文件執行/jk.shm
<Location /jkstatus> JkMount status Order deny,allow Deny from all Allow from 127.0.0.1 </Location>
workers.properties
worker.list=負載均衡器,狀態
worker.node1.port=8009
worker.node1.host=10.67.51.129
worker.node1.type=ajp13
worker.node1.lbfactor=1
worker.node1.prepost_timeout=10000 #如果使用ping_mode=A則不需要
worker.node1.connect_timeout=10000 #如果使用ping_mode=A則不需要
worker.node1.ping_mode=A #從 mod_jk 1.2.27 開始
worker.node2.port=8009
worker.node2.host=10.67.51.64
worker.node2.type=ajp13
worker.node2.lbfactor=1
worker.node2.prepost_timeout=10000 #如果使用ping_mode=A則不需要
worker.node2.connect_timeout=10000 #如果使用ping_mode=A則不需要
worker.node2.ping_mode=A #從 mod_jk 1.2.27 開始
worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=node1,node2
worker.status.type=狀態
uriworkermap.properties
/jmx-console=負載均衡器
/jmx-console/*=負載均衡器
/web-console=負載均衡器
/web-console/*=負載均衡器
/admin-console=負載均衡器
/admin-console/*=負載均衡器
/myapp/*=負載均衡器
!/myapp/images/*=負載均衡器
JBoss 中的server.xml
<Engine name="jboss.web" defaultHost="localhost" jvmRoute="node1"> <!-- A AJP 1.3 Connector on port 8009 --> <Connector port="8009" address="${jboss.bind.address}" emptySessionPath="true" enableLookups="false" redirectPort="8443" protocol="AJP/1.3" connectionTimeout="600000" maxThreads="200"/>
這就是我啟動 JBoss 的方式
比較1
run.bat -c all -g DefaultPartition -u 230.0.0.4 -b 10.67.51.129 -Djboss.messaging.ServerPeerID=1 -Djboss.service.binding.set=ports-default
比較2
run.bat -c all -g DefaultPartition -u 230.0.0.4 -b 10.67.51.64 -Djboss.messaging.ServerPeerID=2 -Djboss.service.binding.set=ports-01
我的應用程序名稱叫做 JBossDB。當我厭倦了訪問 10.67.51.129:8080/JBossDB 時,我可以啟動我的應用程序。但是如果我嘗試啟動 localhost/JBossDB 它不會載入。注意,我可以啟動 localhost/admin-console。
我希望我已經提供了所有必要的資訊。請幫幫我。謝謝
在您的 uriworkermap.properties 文件中,您似乎沒有 /JBossDB 的映射