CentOS与WebLogic的集成测试怎么做
小樊
48
2026-01-11 02:52:28
CentOS 与 WebLogic 集成测试方案
一 测试目标与范围
- 验证 CentOS 7/8 上的 WebLogic 12c/14c 基础运行环境(JDK、用户、目录权限、系统服务)是否稳定可用。
- 验证 JDBC 数据源连通性与连接池配置(Oracle/MySQL 等),能在控制台完成创建并通过“Test Connection”。
- 验证应用部署(WAR/EAR)与 JNDI 查找、简单业务接口可用,健康检查通过。
- 验证 集群(如涉及)节点通信、会话保持与控制台状态一致性。
- 验证 开机自启与常见故障场景(首次启动需交互输入密码、中文乱码、端口占用等)的可运维性。
二 环境与前置准备
- 系统与权限
- 创建专用用户与组:groupadd weblogic;useradd -g weblogic weblogic,相关目录归属 weblogic:weblogic。
- 规划目录:安装目录(如 /usr/local/weblogic)、域目录(如 /u01/domains)、日志目录(如 /var/log/weblogic)。
- JDK
- 安装 JDK 8(WebLogic 12c/14c 常用),配置 JAVA_HOME/PATH/CLASSPATH,执行 java -version 校验。
- 网络与端口
- 放行或临时关闭防火墙(测试环境):systemctl stop firewalld;生产环境建议仅放行 7001/7002/5556 等必要端口。
- 如启用 SELinux,测试环境可 setenforce 0(生产环境按需配置策略)。
- 数据库与驱动
- 准备测试库(如 Oracle/MySQL),创建专用账号与测试库;放置对应 JDBC 驱动 jar 到 WebLogic 域的 lib 目录或按驱动类型放置。
- 应用包
- 准备可部署的 WAR/EAR(含对 JNDI DataSource 的引用,如 jdbc/YourDS),以及简单健康检查接口(如 /health 返回 200)。
三 安装与域配置
- 安装 WebLogic(两种常用方式)
- 图形/控制台模式:上传安装包(如 fmw_12.2.1.4.0_wls_quick.jar 或 fmw_14.1.1.0.0_wls_lite_generic.jar),执行 java -jar 包名 -mode=console,按向导完成安装。
- 静默模式:准备 oraInst.loc 与 wls.rsp,执行:
- java -jar 包名 -silent -responseFile wls.rsp -invPtrLoc oraInst.loc
- 示例要点:inventory_loc、inst_group、ORACLE_HOME、INSTALL_TYPE、DECLINE_SECURITY_UPDATES=true。
- 创建域
- 方式一:执行 /u01/oracle/middleware/oracle_common/common/bin/config.sh,图形/控制台创建域(配置 AdminServer 监听地址与端口,如 7001)。
- 方式二:使用 WLST 脚本创建/更新域(readTemplate/writeDomain 等),便于版本化与自动化。
- 启动与登录
- 启动:/u01/domains/your_domain/bin/startWebLogic.sh;访问 http://服务器IP:7001/console。
- 首次启动免交互:在 AdminServer/security/boot.properties 写入 username/password,下次启动自动读取并加密。
四 集成测试步骤与用例
- 基础连通性
- 控制台可登录;AdminServer 进程存活;端口 7001 访问正常;日志无异常堆栈。
- JDBC 数据源
- 控制台:Services → Data Sources → New,填写 JNDI 名称(如 jdbc/TestDS)、驱动类、URL、用户名/密码;点击 Test Configuration 显示成功;Target 到 AdminServer(或集群)。
- 应用侧验证(示例代码片段):
- Context ctx = new InitialContext();
- DataSource ds = (DataSource) ctx.lookup(“java:/comp/env/jdbc/TestDS”);
- Connection c = ds.getConnection(); c.close();
- 应用部署与 JNDI 绑定
- 控制台:Deployments → Install,上传 WAR/EAR;设置 Target;启动应用。
- 访问健康检查接口(如 /health)返回 200;日志显示 JNDI 查找成功、数据源获取成功。
- 集群场景(如涉及)
- 在控制台创建 集群,添加 受管服务器,配置 Machine 与 网络通道;启动集群后,检查各节点 State=RUNNING,会话复制/亲和性按策略生效。
- 可运维性
- 验证 开机自启(systemd 或脚本方式);验证 日志路径 与 GC/heap 日志落盘;验证 驱动版本 与 字符集(避免中文乱码)。
五 常见问题与排查要点
- 首次启动需输入用户名/密码
- 在 servers/AdminServer/security/boot.properties 写入 username/password,首次启动后自动加密,后续无交互。
- 中文乱码(静默安装/控制台)
- 在 config.sh 的 JVM_ARGS 增加 -Djava.security.egd=file:///dev/urandom,可加快熵源并缓解乱码/卡顿。
- 端口占用
- 检查 7001/7002 是否被占用(netstat/ss);修改 config.sh 或控制台中的监听端口后重启。
- 驱动与数据源不可用
- 确认 JDBC 驱动 jar 放置正确、版本匹配;控制台 Test Configuration 失败优先检查 URL/账号/白名单/SSL;应用侧确认 JNDI 名称 与 resource-ref 一致。
- 防火墙/SELinux 拦截
- 测试环境可临时关闭;生产环境仅放行必要端口与协议,SELinux 采用最小权限策略。