centos

如何在CentOS上管理和维护WebLogic服务器

小樊
44
2025-11-01 21:53:13
栏目: 云计算

一、环境准备

在CentOS上管理WebLogic前,需完成基础环境配置:

  1. 安装JDK:WebLogic依赖JDK 8及以上版本(建议与WebLogic版本兼容)。下载JDK RPM包(如jdk-8u391-linux-x64.rpm),上传至服务器后执行rpm -ivh jdk-8u391-linux-x64.rpm安装。配置环境变量:编辑/home/weblogic/.bash_profile,添加export JAVA_HOME=/usr/java/jdk1.8.0_391export PATH=$JAVA_HOME/bin:$PATH,执行source /home/weblogic/.bash_profile使配置生效,通过java -version验证安装。
  2. 创建专用用户:避免使用root运行WebLogic,提升安全性。执行groupadd weblogic创建用户组,useradd -g weblogic -d /home/weblogic -m weblogic创建用户,passwd weblogic设置强密码。
  3. 关闭SELinux(可选):若无需SELinux强制访问控制,可临时关闭(setenforce 0)或永久关闭(修改/etc/selinux/configSELINUX=disabled),防止权限问题影响WebLogic运行。

二、WebLogic安装

  1. 下载与解压:从Oracle官网下载WebLogic安装包(如fmw_14.1.1.0.0_wls_quick_generic.jar),上传至/opt/weblogic目录(需提前创建),执行chown -R weblogic:weblogic /opt/weblogic赋予weblogic用户所有权。
  2. 静默安装:切换至weblogic用户(su - weblogic),执行java -jar fmw_14.1.1.0.0_wls_quick_generic.jar -silent -responseFile /opt/weblogic/wls.rsp -invPtrLoc /opt/weblogic/oraInst.loc(需提前创建响应文件wls.rsp和库存文件oraInst.loc),完成静默安装。

三、域管理与配置

  1. 创建域:执行cd /opt/weblogic/Oracle/Middleware/user_projects/domains,运行./config.sh启动配置向导。选择“典型配置”,输入域名称(如base_domain)、管理员账号(如weblogic,密码需包含大小写字母、数字和特殊字符)、JDK路径(如/usr/java/jdk1.8.0_391),完成域创建。
  2. 启动管理服务器:进入域的bin目录(如/opt/weblogic/Oracle/Middleware/user_projects/domains/base_domain/bin),执行./startWebLogic.sh启动管理服务器。访问控制台(http://<服务器IP>:7001/console),使用管理员账号登录。
  3. 配置集群(高可用):若需高可用,可在控制台导航至“环境→集群”,点击“新建”创建集群(如mycluster),添加受管服务器(指定服务器名称、监听地址和端口)。配置集群属性:启用“自动故障转移”和“内存中复制”(小规模集群)或“JDBC存储”(大规模集群),确保会话状态同步。

四、性能调优

  1. JVM参数优化:调整堆内存大小(-Xms-Xmx设为相同值,如-Xms2048m -Xmx2048m,减少垃圾回收频率)、选择G1垃圾回收器(-XX:+UseG1GC,提升吞吐量)。修改域的bin/setDomainEnv.sh文件,添加上述参数。
  2. 操作系统参数优化:调整文件描述符限制(临时:ulimit -n 65535;永久:修改/etc/security/limits.conf,添加weblogic hard nofile 65535)、优化TCP/IP参数(修改/etc/sysctl.conf,添加net.ipv4.tcp_tw_reuse = 1net.ipv4.tcp_fin_timeout = 30,执行sysctl -p使配置生效)。
  3. WebLogic配置优化:调整线程池大小(根据并发需求,将默认ThreadCount从15调整至20-50,避免线程不足或浪费)、优化连接池(设置合理的Initial Capacity(如10)、Max Capacity(如100)、Connection Timeout(如30秒),确保数据库连接高效利用)。

五、日志管理

  1. 日志配置与级别调整:通过控制台导航至“环境→服务器→目标服务器→日志→日志文件”,修改“日志级别”(生产环境建议设为WARNINGERROR,减少无关日志);或修改域的config/fmwconfig/servers/SERVER_NAME/logging/logging.xml文件,调整<logging-file-handler>level属性(如<level>WARNING</level>),动态调整无需重启服务器。
  2. 日志轮转:使用logrotate工具管理日志文件。创建/etc/logrotate.d/weblogic文件,添加以下内容:
    /opt/weblogic/user_projects/domains/base_domain/servers/*/logs/*.log {
        daily
        rotate 7
        compress
        missingok
        notifempty
        copytruncate
    }
    
    配置每日轮转、保留7天压缩日志、清空原日志文件(避免重启服务)。
  3. 日志集中管理:使用ELK Stack(Elasticsearch+Logstash+Kibana)收集、存储和分析日志。配置Logstash的logstash.conf文件,添加WebLogic日志输入插件(file插件,指定日志路径如/opt/weblogic/user_projects/domains/base_domain/servers/AdminServer/logs/*.log),设置解析规则(grok解析),将日志存储到Elasticsearch,通过Kibana创建仪表板展示日志趋势和错误统计。
  4. 日志安全与监控:通过Linux文件权限限制日志访问(chown -R weblogic:adm /opt/weblogic/user_projects/domains/base_domain/servers/*/logschmod -R 640 /opt/weblogic/user_projects/domains/base_domain/servers/*/logs/*.log,仅允许weblogic用户和adm组读取);使用auditd监控日志目录(auditctl -w /opt/weblogic/user_projects/domains/base_domain/servers/*/logs/ -p wa -k weblogic_logs,记录所有写操作);通过tail -fgrep实时监控日志(如tail -f /opt/weblogic/user_projects/domains/base_domain/servers/AdminServer/logs/AdminServer.log | grep "ERROR",快速定位异常)。

六、监控与维护

  1. 使用管理控制台:通过WebLogic控制台导航至“监控→服务器”,查看服务器状态(活动/失败)、性能指标(CPU使用率、内存占用、线程池状态);导航至“监控→集群”,查看集群成员健康状态。
  2. 第三方监控工具:使用Prometheus+Grafana采集WebLogic指标(通过weblogic-monitoring-exporter暴露JMX指标),实现可视化监控;或使用Oracle Enterprise Manager Cloud Control(OEMC)进行全面监控和管理。
  3. 备份与恢复:定期备份域目录(/opt/weblogic/user_projects/domains/base_domain),使用tar -czvf base_domain_backup.tar.gz /opt/weblogic/user_projects/domains/base_domain命令压缩备份。测试恢复流程:删除域目录后,解压备份文件并重新启动服务器,验证集群功能是否正常。
  4. 日常维护:定期检查日志(重点关注ERRORWARNING级别日志),及时处理异常;清理旧日志(使用find /opt/weblogic/user_projects/domains/base_domain/servers/*/logs/ -name "*.log*" -mtime +30 -exec rm -f {} \;命令删除30天前的日志);关闭不必要的服务(如示例应用、默认weblogic管理员账号),减少安全风险。

0
看了该问题的人还看了