温馨提示×

Debian上WebLogic集群搭建步骤解析

小樊
46
2025-10-25 14:56:00
栏目: 智能运维

Debian上WebLogic集群搭建步骤解析

1. 环境准备

  • 操作系统:确保使用Debian最新稳定版本(如Debian 11/12),系统已更新至最新状态(sudo apt update && sudo apt upgrade -y)。
  • 硬件要求:集群节点需满足至少2核CPU、8GB内存、200GB存储空间(生产环境需根据应用负载调整)。
  • 网络配置:所有节点需处于同一局域网,确保主机名/IP地址可互相解析(如修改/etc/hosts文件),且防火墙开放WebLogic默认端口(7001、5001等)。

2. 安装Java环境

WebLogic依赖Java运行环境(JRE/JDK),推荐使用Oracle JDK 8或OpenJDK 11及以上版本(避免兼容性问题)。

  • 卸载旧版本(可选):若系统存在旧版OpenJDK,可先卸载:
    sudo apt remove --purge openjdk*
    
  • 安装OpenJDK 11
    sudo apt update
    sudo apt install openjdk-11-jdk
    
  • 验证安装
    java -version
    
    输出应包含Java版本信息(如openjdk version "11.0.xx")。

3. 下载并安装WebLogic Server

  • 下载安装包:从Oracle官方网站下载WebLogic Server Linux版本(如12c R2或14c),选择“Generic”安装包(如wls12220-generic.jarfmw_14.1.1.0.0_wls_lite_linux_x64.zip)。
  • 解压安装
    # 创建安装目录
    sudo mkdir -p /opt/weblogic
    # 解压安装包(以Generic包为例)
    sudo java -jar wls12220-generic.jar
    
    按照安装向导选择“Custom”安装类型,勾选“WebLogic Server”组件,指定安装目录(如/opt/weblogic)。
  • 设置环境变量:编辑/etc/profile文件,添加以下内容:
    export WEBLOGIC_HOME=/opt/weblogic
    export PATH=$WEBLOGIC_HOME/bin:$PATH
    
    使变量生效:source /etc/profile

4. 创建WebLogic域

域是WebLogic的管理单元,包含Admin Server(管理服务器)和集群配置。

  • 使用配置脚本创建域
    进入WebLogic安装目录的common/bin子目录,运行config.sh脚本:
    cd /opt/weblogic/common/bin
    ./config.sh
    
    按照向导配置:
    • 域名称(如mydomain)、域目录(如/u01/app/weblogic/domains/mydomain);
    • 选择“Custom”配置类型,勾选“Administration Server”“Managed Server”“Cluster”;
    • 设置Admin Server的监听地址(如localhost)和端口(如7001);
    • 添加集群名称(如mycluster),并配置初始托管服务器(如managed1managed2)。
  • 验证域创建:域目录下应生成config/config.xml文件(包含域配置信息)。

5. 配置集群

集群配置可通过WebLogic控制台WLST命令行完成,以下分别说明:

5.1 通过WebLogic控制台配置
  • 访问控制台:http://<admin_server_ip>:7001/console,使用Admin Server的用户名/密码登录。
  • 导航至“环境”→“集群”,点击“新建”:
    • 输入集群名称(如mycluster);
    • 选择“动态集群”(支持自动扩展)或“静态集群”(手动添加服务器);
    • 配置集群参数(如集群消息传递协议为“IIOP”)。
  • 添加托管服务器:
    在“环境”→“服务器”→“托管服务器”中,点击“新建”,输入服务器名称(如managed1)、监听端口(如7002),并关联至集群。
  • 配置集群服务:
    • 负载均衡:选择“负载均衡”→“新建”,设置算法(如“轮询”“加权轮询”);
    • 会话复制:选择“会话复制”→“新建”,启用会话复制(需配置多播地址/端口)。
5.2 通过WLST命令行配置
  • 进入WLST脚本模式:
    cd /opt/weblogic/common/bin
    ./wlst.sh
    
  • 执行以下脚本创建集群:
    connect('weblogic', 'weblogic123', 't3://localhost:7001')  # 替换为Admin用户名/密码
    edit()
    startEdit()
    cmo.createCluster('mycluster')  # 创建集群
    cmo.getCluster('mycluster').setMulticastAddress('239.0.0.1')  # 设置多播地址
    cmo.getCluster('mycluster').setMulticastPort(7001)  # 设置多播端口
    save()
    activate()
    disconnect()
    
  • 添加托管服务器至集群:
    serverConfig()
    cd('/Servers/managed1')
    cmobj.setListenAddress('node1.example.com')  # 节点IP/主机名
    cmobj.setListenPort(7002)
    cmobj.setCluster('mycluster')
    save()
    activate()
    
5.3 配置Node Manager

Node Manager用于远程管理托管服务器,需在每个节点上配置:

  • 编辑/u01/app/weblogic/domains/mydomain/bin/setDomainEnv.sh文件,添加以下内容:
    export NODEMGR_HOME=/opt/weblogic
    export JAVA_OPTIONS="$JAVA_OPTIONS -Dweblogic.NodeManager.home=$NODEMGR_HOME"
    
  • 启动Node Manager:
    cd /u01/app/weblogic/domains/mydomain/bin
    ./startNodeManager.sh
    
    确保Node Manager监听端口(默认5556)开放。

6. 启动集群

  • 启动Admin Server
    进入域目录的bin子目录,运行:
    cd /u01/app/weblogic/domains/mydomain/bin
    ./startWebLogic.sh
    
  • 启动Node Manager
    ./startNodeManager.sh
    
  • 启动托管服务器
    通过控制台或命令行启动集群中的托管服务器(如managed1managed2),或让Node Manager自动启动(配置startManagedWebLogic.sh脚本)。

7. 验证集群状态

  • 通过控制台验证:登录WebLogic控制台,导航至“环境”→“集群”,查看集群状态(应为“运行”),确认所有托管服务器已加入集群。
  • 通过命令行验证
    cd /opt/weblogic/common/bin
    ./wlst.sh
    connect('weblogic', 'weblogic123', 't3://localhost:7001')
    clusterRuntime = ObjectName('com.bea:Name=mycluster,Type=weblogic.management.runtime.ClusterRuntimeMBean')
    print('Cluster state:', cmo.getState())
    print('Running servers:', cmo.getRunningServers())
    disconnect()
    
    输出应显示集群状态为“RUNNING”,且所有托管服务器已启动。

8. 部署应用测试

  • 将应用(如WAR文件)部署至集群:
    通过控制台导航至“部署”→“安装”,选择应用文件,目标选择“集群”(如mycluster)。
  • 测试负载均衡:
    访问应用URL(如http://<admin_server_ip>:7001/myapp),通过日志或监控工具确认请求分发至多个托管服务器。

注意事项

  • 时间同步:所有节点需安装ntp服务,确保时间同步(sudo apt install ntp && sudo systemctl enable ntp)。
  • 安全配置:修改默认端口(7001、5001),启用SSL加密(配置config.xml中的SSL标签),设置强密码。
  • 备份配置:定期备份域目录(如/u01/app/weblogic/domains/mydomain),避免配置丢失。

0