温馨提示×

WebLogic如何与Linux服务集成

小樊
40
2025-12-14 11:52:20
栏目: 智能运维

Linux环境下将 WebLogic 作为系统服务并与前端 Web 服务器集成


一 将 WebLogic 注册为 Linux 系统服务

  • 推荐以 systemd 管理(适用于 CentOS 7+/RHEL 7+/Ubuntu 16.04+ 等)。创建服务文件 /etc/systemd/system/weblogic.service,示例:
[Unit]
Description=WebLogic Server
After=network.target

[Service]
Type=forking
User=weblogic
Group=weblogic
ExecStart=/opt/weblogic/user_projects/domains/base_domain/startWebLogic.sh
ExecStop=/opt/weblogic/user_projects/domains/base_domain/stopWebLogic.sh
SuccessExitStatus=143
Restart=on-failure
RestartSec=30
StandardOutput=journal
StandardError=journal

[Install]
WantedBy=multi-user.target
  • 启用与操作
sudo systemctl daemon-reload
sudo systemctl enable weblogic.service
sudo systemctl start  weblogic.service
sudo systemctl status  weblogic.service
sudo journalctl -u weblogic -f
  • 旧系统可用 SysV init(如 CentOS 6):在 /etc/init.d/weblogic 放置脚本,加入 chkconfig 头部,执行 chkconfig --add weblogicchkconfig --level 345 weblogic on,可用 service weblogic start|stop|restart 管理。

二 与 Apache HTTP Server 集成(反向代理与负载均衡)

  • 准备 WebLogic 插件模块 mod_wl.so(插件目录随 WebLogic 版本与平台不同,如 mod_wl_22.so 等),复制到 Apache 的 modules 目录,并在 httpd.conf 中加载:
LoadModule weblogic_module modules/mod_wl.so
  • 典型配置片段(单机或集群)
<Location />
  SetHandler weblogic-handler
  PathTrim /
</Location>

<IfModule mod_weblogic.c>
  WebLogicHost 192.168.80.47
  WebLogicPort 7001
  # 集群示例:
  # WebLogicCluster 192.168.80.47:7001,192.168.80.48:7001
  # 可按路径分流
  MatchExpression *.jsp
  MatchExpression *.do
</IfModule>
  • 验证与注意
    • 执行 httpd -t 检查配置语法,重启 Apache 生效。
    • 插件与 Apache 主版本需匹配(如 Apache 2.2 对应 mod_wl_22.so),并与 WebLogic 版本兼容;插件架构需与操作系统一致(x86_64/ARM 等)。

三 部署与运维要点

  • 运行身份与权限
    • 非 root 用户(如 weblogic)运行 WebLogic,遵循最小权限原则;目录与日志文件属主/属组正确设置。
  • 资源与内核参数
    • 提升文件描述符限制(如 ulimit -n)、优化 TCP/IP 参数,避免连接耗尽;JVM 堆与 GC 策略按负载调优(如 -Xmx/-Xms、G1 GC)。
  • 安全加固
    • 关闭自动部署、更改默认端口、限制目录列表、开启登录与审计日志、隐藏服务器版本信息,生产模式运行。
  • 监控与可用性
    • 结合 jstat/jconsole/VisualVM 等工具持续观测;对 Apache 与 WebLogic 均配置健康检查与日志轮转,确保 7×24 稳定运行。

0