WebLogic集群在Ubuntu上的搭建方法
导读:Ubuntu上搭建 WebLogic 集群的可执行方案 一 架构与前置准备 架构要点 至少准备2台 Ubuntu 主机(物理机或虚拟机),每台主机可运行多个托管服务器(Managed Server),统一由**1台管理服务器(Admin...
Ubuntu上搭建 WebLogic 集群的可执行方案
一 架构与前置准备
- 架构要点
- 至少准备2台 Ubuntu 主机(物理机或虚拟机),每台主机可运行多个托管服务器(Managed Server),统一由**1台管理服务器(AdminServer)**集中配置与监控。
- 对外建议通过**VIP/负载均衡器(如 Nginx/HAProxy/F5)**暴露服务,后端按会话亲和(Sticky)分发到各托管服务器;管理口仅在管理网段开放。
- 集群通信依赖IP 多播(Multicast)或Unicast/T3,跨机房/跨防火墙部署需提前验证网络可达性与组播策略。
- 系统与软件
- 安装受支持的 JDK 8 或 11(WebLogic 12c/14c 常见搭配),配置 JAVA_HOME 与系统字符集(建议 UTF-8)。
- 创建 weblogic 系统用户与目录,避免使用 root 直接运行;规划 /u01/app/oracle 等统一安装与域目录。
- 规划端口:如 AdminServer 7001、托管服务器 7002/7003,以及负载均衡器端口 80/443;同步开通主机与云安全组策略。
- 许可与网络
- 确保具备有效的 WebLogic 集群许可(Cluster License)。
- 统一使用可解析的主机名(DNS)或一致的 IP 映射,避免内外网地址不一致导致会话复制与 JNDI 解析异常;尽量避免跨防火墙部署集群,如必须跨域需评估组播/隧道方案与性能影响。
二 安装 WebLogic 与创建域
- 安装介质与用户
- 从 Oracle 官方获取 WebLogic Server 安装包(如 12.2.1.x/14.1.1.x),在 Ubuntu 上以 非 root 用户解压/安装,设置 MW_HOME 与目录权限。
- 静默安装示例(12c/14c 通用)
- 准备响应文件 wls.rsp 与 oraInst.loc,示例要点:
- wls.rsp:设置 ORACLE_HOME、INSTALL_TYPE=WebLogic Server、关闭安全更新等。
- oraInst.loc:设置 Inventory_loc 与 Inst_group=weblogic。
- 执行静默安装:
- java -jar fmw_12.2.1.3.0_wls.jar -silent -responseFile /opt/weblogic/wls.rsp -invPtrLoc /opt/weblogic/oraInst.loc
- 准备响应文件 wls.rsp 与 oraInst.loc,示例要点:
- 创建管理域(WLST 离线脚本)
- 使用 wlst.sh 读取模板并写域,示例要点:
- readTemplate(‘/u01/app/oracle/wlserver/common/templates/wls/wls.jar’)
- 配置 AdminServer 的 ListenAddress/ListenPort(如 7001)
- 设置 weblogic 用户口令
- writeDomain(‘/u01/app/oracle/user_projects/domains/base_domain’)
- 启动验证:
- /u01/app/oracle/user_projects/domains/base_domain/startWebLogic.sh
- 访问 http://< 管理IP> :7001/console 登录控制台。
- 使用 wlst.sh 读取模板并写域,示例要点:
三 配置集群与托管服务器
- 规划示例
- 主机A:AdminServer(7001)、ms1(7002)、ms3(7004)
- 主机B:ms2(7003)、ms4(7005)
- 控制台创建集群(推荐)
- 登录控制台:Environment → Clusters → New,创建集群(如 cluster1),选择 Unicast/T3 或 Multicast 通信;建议为集群设置 Cluster Address(DNS 或逗号分隔地址列表,便于客户端解析与轮询)。
- 创建托管服务器
- Environment → Servers → New,分别创建 ms1/ms2/ms3/ms4,指定 ListenAddress(主机名或IP)、ListenPort(如 7002/7003/7004/7005),并在“Servers → Configuration → Cluster”中将各托管服务器分配到 cluster1。
- 机器与网络绑定
- 在控制台 Environment → Machines 定义每台物理机的 Machine 对象,将服务器实例归属到对应 Machine,便于节点管理与故障转移策略生效。
- 会话与复制(按应用需求)
- 若为 Web 应用,在 Deployments → < 应用> → Configuration → Sessions 启用 In Memory Replication 或 JDBC Replication,并配置 Replication Groups 与亲和策略,确保会话故障切换与粘性会话一致。
四 负载均衡与对外发布
- 硬件/软件负载均衡
- 在 DMZ 部署 Nginx/HAProxy/F5 等,后端健康探测 /console 或自定义心跳接口,开启 会话保持(Sticky),对外暴露 80/443,后端转发至各托管服务器 7002–7005。
- Web 层代理插件(可选)
- 若使用 Apache HTTP Server 作为 Web 层,可启用 WebLogic Proxy Plug-In,在 httpd.conf 中配置 WebLogicCluster 指令指向集群地址列表,实现动态负载与故障转移。
- 客户端访问
- 生产环境建议通过 负载均衡器的 VIP/DNS 访问应用;开发/测试可直接使用逗号分隔的 服务器地址列表 进行连接(不推荐生产)。
五 启动与验证及常见问题
- 启动顺序
- 先启动 AdminServer,再并行启动各 Managed Server(建议使用 nohup 或系统服务方式),观察 server.out 与 AdminServer 控制台日志,确认 集群成员视图一致、各实例 Health=OK。
- 验证要点
- 控制台 Environment → Servers 与 Clusters 页面检查实例状态与集群成员;部署测试应用,验证 负载均衡、会话保持 与 故障转移(停止某实例后业务仍可用)。
- 常见问题与排查
- 组播/网络:跨机房/防火墙易影响 Multicast,优先使用 Unicast/T3 或验证组播路由与 TTL;必要时调整 Multicast TTL 与网络 ACL。
- 地址解析:确保 主机名内外一致,避免 JNDI 列表 与客户端解析不一致导致连接失败。
- 端口与安全:核对 7001/7002–7005 与负载均衡端口放行;避免 共享文件系统运行多实例,防止单点竞争与日志写入冲突。
- 许可与版本:确认 Cluster License 与 JDK 版本匹配 WebLogic 版本要求。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: WebLogic集群在Ubuntu上的搭建方法
本文地址: https://pptw.com/jishu/775789.html
