- 首页 >
- 问答 >
-
智能运维 >
- 在Debian上部署WebLogic有哪些技巧
在Debian上部署WebLogic有哪些技巧
小樊
37
2025-12-17 03:43:42
Debian上部署 WebLogic 的实用技巧
一 基础环境准备
- 选择受支持的 JDK:WebLogic 12c/14c 常见搭配为 JDK 8 或 JDK 11。在 Debian 上优先用包管理器安装 OpenJDK,便于维护;若需 Oracle JDK,则以官方安装包为准。示例:
sudo apt update && sudo apt install openjdk-11-jdk 或手动安装 JDK 并设置 JAVA_HOME。
- 创建专用系统用户与目录:建议新建 weblogic 用户,WebLogic 安装至 /opt/weblogic,并设置目录属主:
sudo useradd -d /opt/weblogic weblogic && sudo chown -R weblogic:weblogic /opt/weblogic,避免以 root 直接运行。
- 环境变量与路径规范:统一在 /etc/profile.d/weblogic.sh 中导出变量(如 JAVA_HOME、WLS_HOME、DOMAIN_HOME),便于多用户与开机一致;安装与域路径避免中文与空格,减少脚本与类加载异常。
- 运行与端口规划:管理控制台默认 7001,生产建议启用 SSL/HTTPS 并改用 443 或高位端口;提前在防火墙放行相关端口(如 7001/7002/443)。
二 安装与域创建
- 安装介质与方式:从 Oracle 获取适用于 Linux 的 Generic 安装包(如 .jar 或 .zip),在 /opt 解压或执行安装:
unzip fmw_14.1.1.0.0_wls_lite_generic.jar -d /opt/weblogic 或 java -jar fmw_14.1.1.0.0_wls_lite_generic.jar。
- 创建域的两种方式:
- 图形化/控制台:
$WLS_HOME/oracle_common/common/bin/config.sh 启动配置向导,创建管理服务器与受管服务器。
- 自动化:WLST 脚本化建域(如执行示例脚本
basicWLSDomain.py),便于版本化与批量部署。
- 后台运行与输出:使用 nohup 或系统服务方式启动,便于脱离终端与守护进程管理:
nohup ./startWebLogic.sh &,日志默认写入域目录下的 servers/AdminServer/logs。
三 运行与运维优化
- JVM 与内存:在 setDomainEnv.sh 中设置 JAVA_OPTS(如
-Xms/-Xmx、-XX:MetaspaceSize、-Djava.security.egd=file:/dev/./urandom),避免频繁 Full GC 与熵源阻塞。
- 日志与诊断:关注 AdminServer.log、access.log 与 GC 日志;需要时开启远程调试(在 setDomainEnv.sh 增加调试参数,如
debugFlag=true、DEBUG_PORT=5005),便于 IDE 远程调试。
- 部署与热更新:优先使用控制台或 WLST 部署 WAR/EAR;对频繁发布场景启用目录监听或自动部署目录,缩短发布时间并降低风险。
- 监控与告警:结合 WebLogic Console 指标与 Prometheus/Grafana(通过 JMX Exporter)建立可视化监控与阈值告警,关注线程、JDBC 连接池、JVM 内存与 GC 时间。
四 安全加固要点
- 访问控制:为管理控制台与敏感接口设置强密码策略与最小权限;限制管理口来源 IP;禁用不必要的协议与示例应用。
- 传输加密:为 7001 或对外端口启用 SSL/TLS,正确配置 KeyStore/TrustStore(JKS 等),对外服务优先使用 443。
- 系统与网络安全:仅开放必要端口;开启 防火墙/安全组;避免在公网暴露管理控制台;定期更新 WebLogic 与 JDK 安全补丁。
五 常见问题与快速排查
- 端口占用与地址绑定:确认 7001 未被占用,且 listen-address 配置为服务器可达地址(避免仅绑定 127.0.0.1)。
- 类加载与依赖冲突:清理 WEB-INF/lib 中与 WebLogic 自带库冲突的 JAR;优先使用 WebLogic 提供的 API 与共享库。
- 启动缓慢:设置
-Djava.security.egd=file:/dev/./urandom 加速熵源初始化;检查 DNS/反向解析配置。
- 权限与目录:确保 weblogic 用户对 /opt/weblogic 与 DOMAIN_HOME 具备读写权限;避免在含空格/中文路径下运行。
- 日志定位:优先查看 AdminServer.log 与 GC 日志,从异常栈与 Full GC 频率判断是内存、连接池还是应用代码问题。