首页主机资讯Debian上如何管理多个WebLogic实例

Debian上如何管理多个WebLogic实例

时间2025-11-19 23:08:04发布访客分类主机资讯浏览783
导读:在 Debian 上管理多个 WebLogic 实例的实用方案 一 环境准备与目录规划 安装 Java(示例为 OpenJDK 11): 执行:sudo apt update && sudo apt install -...

在 Debian 上管理多个 WebLogic 实例的实用方案


一 环境准备与目录规划

  • 安装 Java(示例为 OpenJDK 11):
    • 执行:sudo apt update & & sudo apt install -y openjdk-11-jdk
    • 验证:java -version
  • 安装 WebLogic Server(示例安装到 /opt/weblogic):
    • 下载 Oracle 的 Linux 版安装包并解压:tar -xzf fmw_14.1.1.0.0_wls_linux64.bin.tar.gz
    • 移动到目标目录:sudo mv fmw_14.1.1.0.0_wls_linux64 /opt/weblogic
  • 统一环境变量(建议写入 /etc/profile.d/weblogic.sh):
    • 内容:
      • export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
      • export WL_HOME=/opt/weblogic/wlserver
      • export PATH=$JAVA_HOME/bin:$WL_HOME/server/bin:$PATH
    • 生效:source /etc/profile.d/weblogic.sh
  • 目录规划(便于多域多实例隔离):
    • 域目录:/opt/weblogic/user_projects/domains/{ domain1,domain2,...}
    • 实例数据:/opt/weblogic/user_projects/domains/{ domain} /servers/{ server} /data
    • 日志目录:/opt/weblogic/user_projects/domains/{ domain} /servers/{ server} /logs
    • 管理脚本:/opt/weblogic/user_projects/domains/{ domain} /bin/start.sh|stop.sh

二 创建与配置多个实例

  • 方式 A 使用配置向导创建新域(推荐)
    • 执行:$WL_HOME/common/bin/config.sh
    • 在向导中创建多个 Managed Server,为每个实例设置唯一的 Listen Port 与(如启用)SSL 端口,并记录端口清单。
  • 方式 B 复制现有域并修改配置
    • 复制域目录:cp -r $WL_HOME/user_projects/domains/base_domain $WL_HOME/user_projects/domains/app1
    • 修改新域配置:编辑 config.xml,确保以下项唯一
      • Domain Name
      • Server Name
      • Listen Port
      • Admin Port(如启用)
      • Node Manager Port
      • 数据源 JDBCJMS 等需要按实例调整的参数
  • 端口规划建议(示例)
    • 管理服务器:7001
    • 托管服务器 1:7003
    • 托管服务器 2:7005
    • 节点管理器:5556
  • 启动与停止脚本示例(放入每个域的 bin 目录)
    • start.sh
      • #!/bin/bash
      • export DOMAIN_HOME=/opt/weblogic/user_projects/domains/app1
      • $DOMAIN_HOME/bin/startWebLogic.sh > $DOMAIN_HOME/servers/AdminServer/logs/start.out 2> & 1 &
    • stop.sh
      • #!/bin/bash
      • export DOMAIN_HOME=/opt/weblogic/user_projects/domains/app1
      • $DOMAIN_HOME/bin/stopWebLogic.sh > $DOMAIN_HOME/servers/AdminServer/logs/stop.out 2> & 1
    • 赋权:chmod +x $DOMAIN_HOME/bin/*.sh

三 使用 Node Manager 集中管理

  • 配置 Node Manager
    • 编辑 nodemanager.properties(通常位于 $WL_HOME/common/nodemanager):
      • 关键项:ListenPort=5556SecureListener=false(测试环境)、StartScriptEnabled=true
    • 启动 Node Manager(建议以 weblogic 用户后台运行):
      • nohup $WL_HOME/server/bin/startNodeManager.sh > $WL_HOME/common/nodemanager/nodemanager.out 2> & 1 &
  • 通过 Node Manager 启停托管服务器
    • 启动:$WL_HOME/server/bin/startManagedWebLogic.sh app1_ms1 http://< admin_host> :7001
    • 停止:$WL_HOME/server/bin/stopManagedWebLogic.sh app1_ms1 http://< admin_host> :7001
  • 常用检查
    • 查看 Node Manager 日志:tail -f $WL_HOME/common/nodemanager/nodemanager.log
    • 查看受管服务器日志:tail -f $DOMAIN_HOME/servers/app1_ms1/logs/app1_ms1.log

四 监控与日常运维

  • 控制台与 JMX
    • 管理控制台:http://:7001/console
    • 使用 JMX 采集指标与做自动化运维(配合脚本或监控平台)。
  • 日志与告警
    • 统一收集 AdminServerManaged Serverserver.log、access.log,并设置日志轮转与告警策略。
  • 集群与高可用(如采用集群)
    • 在控制台创建 Cluster,添加托管服务器,前端放置 负载均衡器(如 HAProxy/Nginx/OHS),实现流量分发与故障转移。
    • 数据库层建议启用 高可用(如 RAC 或主从复制),避免单点。
  • 备份与恢复
    • 定期备份 域目录应用归档,并演练恢复流程,确保 RPO/RTO 达标。

五 systemd 服务化与一键编排

  • 托管服务器服务示例(/etc/systemd/system/wls@.service)
    • 说明:通过实例名参数化,统一启停多个实例
    • 内容:
      • [Unit]
      • Description=WebLogic Managed Server %i
      • After=network.target wls-nodemanager.service
      • [Service]
      • Type=forking
      • User=weblogic
      • Environment="DOMAIN_HOME=/opt/weblogic/user_projects/domains/app1"
      • ExecStart=$DOMAIN_HOME/bin/startManagedWebLogic.sh %i http://127.0.0.1:7001
      • ExecStop=$DOMAIN_HOME/bin/stopManagedWebLogic.sh %i http://127.0.0.1:7001
      • Restart=on-failure
      • [Install]
      • WantedBy=multi-user.target
  • Node Manager 服务示例(/etc/systemd/system/wls-nodemanager.service)
    • 内容:
      • [Unit]
      • Description=WebLogic Node Manager
      • After=network.target
      • [Service]
      • Type=simple
      • User=weblogic
      • ExecStart=$WL_HOME/server/bin/startNodeManager.sh
      • ExecStop=/bin/kill -TERM $MAINPID
      • Restart=always
      • [Install]
      • WantedBy=multi-user.target
  • 常用操作
    • 启用:sudo systemctl daemon-reload
    • 启动 NM:sudo systemctl enable --now wls-nodemanager.service
    • 启动托管实例:sudo systemctl enable --now wls@app1_ms1.service
    • 查看状态:systemctl status wls@*
  • 一键编排脚本示例(start_all.sh)
    • #!/bin/bash
    • domains=(app1 app2)
    • for d in "${ domains[@]} "; do
    • nohup $WL_HOME/server/bin/startWebLogic.sh -Dweblogic.Name=AdminServer -Dweblogic.Domain=$WL_HOME/user_projects/domains/$d > $WL_HOME/user_projects/domains/$d/servers/AdminServer/logs/start.out 2> & 1 &
    • done

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Debian上如何管理多个WebLogic实例
本文地址: https://pptw.com/jishu/751695.html
Ubuntu C++如何进行安全漏洞检测与修复 Ubuntu C++如何进行性能分析与调优

游客 回复需填写必要信息