Linux中WebLogic集群如何搭建
导读:Linux下WebLogic集群搭建实操指南 一 架构与前置准备 架构建议:至少准备2台Linux主机(可扩展至更多),每台主机安装相同版本的WebLogic与相同JDK,使用静态IP,并保证节点间UDP/TCP可达。管理服务器(Admi...
Linux下WebLogic集群搭建实操指南
一 架构与前置准备
- 架构建议:至少准备2台Linux主机(可扩展至更多),每台主机安装相同版本的WebLogic与相同JDK,使用静态IP,并保证节点间UDP/TCP可达。管理服务器(AdminServer)可独立部署或与某受管服务器同机。前端建议放置HTTP Server/负载均衡器(如Apache HTTP Server + WebLogic Plug-In 或商用LB),对外暴露单一VIP。会话保持建议开启亲和性,有状态应用开启会话复制(In-Memory或JDBC Tuxedo)。
- 版本与JDK:常见组合为WebLogic 12c(12.2.x)+JDK 8或WebLogic 14c(14.1.1)+JDK 8。安装前统一检查:java -version、ulimit -n、/etc/hosts解析、时间同步(NTP)。
- 用户与目录:建议创建weblogic系统用户与组,软件与域目录分离,示例:/opt/weblogic(软件)、/u01/domains(域)。
- 共享与一致性:若应用包含静态资源/上传目录,建议使用NFS共享到所有节点,保证内容一致;JDBC数据源建议使用共享数据库或集群感知的存储。
- 网络与防火墙:开放管理端口(如7001)、节点管理器端口(默认5556)、受管服务器端口(如7003/8001)、以及集群复制端口范围(见下文“关键参数”)。如使用多播,确保交换机/安全组未限制224.0.0.0/4网段。
二 安装WebLogic与创建域
- 安装JDK(两台机器同样执行)
- 示例:JDK 8
- 配置环境变量(/etc/profile 或 weblogic用户 .bash_profile):
- export JAVA_HOME=/usr/local/java/jdk1.8.0_181
- export PATH=$JAVA_HOME/bin:$PATH
- 创建weblogic用户与目录
- groupadd weblogic & & useradd -g weblogic weblogic
- mkdir -p /opt/weblogic /u01/domains & & chown -R weblogic:weblogic /opt/weblogic /u01/domains
- 静默安装WebLogic(示例:12c/14c通用)
- 准备响应文件与清单文件(wls.rsp、oraInst.loc),示例要点:
- ORACLE_HOME=/opt/weblogic/oracle/middleware
- INSTALL_TYPE=WebLogic Server
- DECLINE_SECURITY_UPDATES=true
- inventory_loc=/u01/oraInventory,inst_group=weblogic
- 执行安装:java -jar fmw_14.1.1.0.0_wls_lite_generic.jar -silent -responseFile /opt/weblogic/wls.rsp -invPtrLoc /opt/weblogic/oraInst.loc
- 准备响应文件与清单文件(wls.rsp、oraInst.loc),示例要点:
- 创建管理域(WLST或控制台)
- 使用WLST创建基础域(示例片段):
- readTemplateForUpdate(‘/opt/weblogic/oracle/middleware/wlserver/common/templates/wls/wls.jar’)
- cd(‘Servers/AdminServer’)
- set(‘ListenAddress’,‘’) 与 set(‘ListenPort’,7001)
- cd(‘/Security/base_domain/User/weblogic’) 与 cmo.setPassword(‘YourStrongPwd!’)
- writeDomain(‘/u01/domains/base_domain’) 与 closeTemplate()、exit()
- 或用图形化配置向导创建域后,再登录控制台继续后续集群配置。
- 使用WLST创建基础域(示例片段):
三 配置集群与受管服务器
- 方式A(控制台可视化)
- 登录控制台:http://< 管理IP> :< 管理端口> /console
- 环境→计算机:为每台主机新建计算机(Machine),填写监听地址(主机IP)。
- 服务→服务器:新建受管服务器(如server1:7003、server2:7003),在“计算机”中选择对应主机。
- 集群→新建集群:指定集群名称;在“服务器”页将受管服务器加入集群;如采用多播,设置多播地址(224.0.0.0~239.255.255.255,默认239.192.0.0)与端口(如7777)。
- 部署→目标:将应用部署到集群(一次性全局部署)。
- 方式B(WLST脚本化,示例片段)
- 基本思路:readTemplate→create Domain/Cluster/Servers→assign Server to Cluster→assign Server to Machine→writeDomain。
- 提示:生产环境建议脚本化,便于复用与审计;控制台适合快速验证与小规模调整。
- 启动顺序与节点管理器
- 启动管理服务器:nohup ./startWebLogic.sh &
- 在各节点启动Node Manager(域目录下 common/bin/startNodeManager.sh),确保与AdminServer网络可达。
- 在控制台或使用WLST“启动受管服务器”,状态变为RUNNING即加入集群。
四 前端负载均衡与会话保持
- 方案选择
- 方案1:WebLogic Proxy Plug-In + Apache HTTP Server(传统、易上手)
- httpd.conf关键:
- LoadModule weblogic_module modules/mod_wl.so
- - WebLogicCluster :7003,:7003 - MatchExpression */servlet/* - KeepAliveEnabled On - KeepAliveSecs 15 - WLIOTimeoutSecs 300
- httpd.conf关键:
- 方案2:商用/云LB(F5、SLB等)做四层/七层转发,后端指向各受管服务器端口,开启会话亲和性(源IP或Cookie)。
- 方案1:WebLogic Proxy Plug-In + Apache HTTP Server(传统、易上手)
- 会话复制要点
- WebLogic支持内存复制与JDBC复制;在控制台“集群→配置→HTTP”启用In-Memory Replication,并为应用启用可分布式会话(如weblogic.xml的)。
- 验证:登录应用后关闭某节点,刷新应保持会话不丢失(亲和性优先命中存活节点,复制保障容错)。
五 关键参数与常见问题
- 关键参数与建议
- 集群通信
- 多播:地址范围224.0.0.0~239.255.255.255(默认239.192.0.0),端口如7777;确保网络设备未拦截IGMP。
- 单播:新版WebLogic支持Unicast集群通信,适合云环境或禁用多播的网络。
- 服务器权重与复制
- Server→Cluster Weight(权重1~100)用于负载分配;
- Server→Replication Group / Preferred Secondary Group用于指定会话副本的主/备实例;
- Server→Interface Address指定多播网卡;
- Server→Replication Ports可显式指定复制通道端口范围(如7001-7010)。以上参数变更需重启或重部署生效。
- 启动与凭据
- 在域目录为每个Server创建servers//security/boot.properties,写入username/password,下次启动可免交互输入(首次需明文创建)。
- 常见故障排查
- 节点无法加入集群:检查多播/单播连通性、防火墙、/etc/hosts解析、Node Manager可达性;
- 应用会话丢失:确认应用**、集群复制已启用**、负载均衡会话亲和性策略合理;
- 端口冲突:规划各Server监听端口与复制端口范围,避免同机冲突;
- 资源不足:适当提升文件句柄数(ulimit -n)与JVM堆;必要时分离管理/受管与代理角色。
- 集群通信
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Linux中WebLogic集群如何搭建
本文地址: https://pptw.com/jishu/766524.html
