下面给你一个Linux 下 WebLogic 集群部署的系统性说明,涵盖架构、部署步骤、关键配置和常见注意点。以 Oracle WebLogic Server 12c/14c 为例(思路同样适用于 10g/11g)。
典型集群结构:
[ Load Balancer / Proxy ]
|
---------------------------------------
| | |
[AdminServer] [Managed Server 1] [Managed Server 2]
(管理服务器) (节点1) (节点2)
/etc/hosts)每台机器安装相同版本 WebLogic:
java -jar fmw_*.jar
或静默安装(silent.xml)
cd /u01/oracle/weblogic/common/bin
./config.sh
选择:
readTemplate("/u01/oracle/weblogic/common/templates/wls/wls.jar")
cd('Servers/AdminServer')
set('ListenAddress','192.168.1.10')
set('ListenPort',7001)
cd('/')
create('Cluster1','Cluster')
cd('Clusters/Cluster1')
set('ClusterMessagingMode','unicast')
Server Name: ms1
Listen Address: 192.168.1.11
Port: 8001
Server Name: ms2
Listen Address: 192.168.1.12
Port: 8001
ms1 -> Cluster1
ms2 -> Cluster1
Machine1 -> 192.168.1.11
Machine2 -> 192.168.1.12
用于 Node Manager 管理
deploy('appName','/path/app.war', targets='Cluster1')
WebLogic 本身不负责外部负载均衡,常见方案:
upstream weblogic {
server 192.168.1.11:8001;
server 192.168.1.12:8001;
}
location / {
proxy_pass http://weblogic;
}
nohup ./startWebLogic.sh &
./startManagedWebLogic.sh ms1 t3://192.168.1.10:7001 &
./startManagedWebLogic.sh ms2 t3://192.168.1.10:7001 &
或使用 Node Manager:
./startNodeManager.sh
在 web.xml 中:
<distributable/>
WebLogic 自动在集群内复制 Session
✅ 使用 Node Manager
✅ 使用 unicast(不用 multicast)
✅ 使用 外部负载均衡
✅ 日志统一收集
✅ 自动启停脚本 + 监控
如果你需要:
可以直接告诉我你的版本和环境。