[原创]WLP问题分析_Tomcat, WebLogic及J2EE讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Tomcat, WebLogic及J2EE讨论区 »
总帖数
2
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 3542 | 回复: 1   主题: [原创]WLP问题分析        下一篇 
linlin.yi
注册用户
等级:少校
经验:1024
发帖:75
精华:1
注册:2013-11-8
状态:离线
发送短消息息给linlin.yi 加好友    发送短消息息给linlin.yi 发消息
发表于: IP:您无权察看 2014-4-8 17:18:26 | [全部帖] [楼主帖] 楼主

1,.WLP问题故障分析
          
1.1 故障描述
机 房故障中间件主机断电,之后恢复重启中间件不能正常启动,报出相关用户名密码的错误,之后将AdminServer的ldap目录重命名,使得再次启动时 自动生成安全相关的文件,但之后在server启动应用过程中报出portal后台oracle数据库policy表主键冲突,由于当时事态紧急,没有对 表进行备份,直接删除了表内的所有数据,之后再次启动正常。但是登录portal管理界面发现原来创建的角色都不能正常显示,同时不能正常创建新的角色, 部分管理界面也出现问题。
1.2故障诊断
经过测试排查,出现portal不能正常使用的原因在于weblogic server ldap数据与portal的oracle数据库内容不匹配。在本机测试恢复备份的ldap目录下ldapfiles目录下的文件即可解决问题。
1.3测试环境搭建流程
在 藤工的windows机器上搭建测试环境,创建新的wlp环境(单机集群),创建角色,使用正常;之后重命名adminserver下的ldap文件夹重 新启动,在启动应用的过程中报出policy表主键冲突异常,应用启动失败;删除policy表内容再次启动,程序可以正常启动;验证portal的使 用,发现和6月故障完全一样,之前创建的角色显示不出来,新建角色提示成功同样不能正常显示。之后恢复原有的ldap文件夹,启动测试发现正常,新创建的 角色能够正常使用。再之后测试只恢复ldap文件夹下的ldapfile里的文件测试,依然正常。

之 后测试将生产库的数据拷贝到测试环境下的oracle库,同时将生产下19号备份的ldap文件夹下weblogic自动备份的backup文件夹下的 18号备份解压拷贝到测试环境下的ldapfiel文件夹下测试。发现之前在生产上创建的用户可以正常显示,新创建的用户角色可以正常显示,测试功能过程 中发现老用户的部分功能不能正常使用,新创建的用户分配权限等操作没有任何问题。

1.4 故障恢复方案

     经过严密的测试得出结论,恢复备份的ldapfiles文件可以恢复系统环境,但需要重新创建角色分配权限。具体恢复方案如下

     1)">备份现有域,即/opt/eipdata下的所有目录,并保存到可靠的位置

     2)">停掉生产(建议在凌晨12点后操作)

     3)">将19号备份的ldap文件夹下backup文件夹下的18备份的ldapfiles文件夹下.zip格式文件解压,复制并覆盖现生产环境的ldap文件夹下ldapfiles文件下的文件

     4)">重新启动server,并验证

     5)">如果失败恢复备份,保证生产能恢复到操作前的情况

2.客户问题总结分析

1)故障引起portal权限管理问题(即删除了ldap目录后重启)删除ldap文件后启动生成新的ldap文件,此时ldap文件内容与portal后台数据库表内容不匹配,因此portal之前创建的用户不可用,同时生成的新用户不能正常显示(具体的ldap和portal数据库的对应关系在文档中没有查明)

     2)连接不上ldap原因

服务器断电后后重启weblogic,听管理员反映是报用户问题,但当时的nohup日志没有保存,目前不能判断出具体是什么原因导致原来的用户名和密码不能使用,或者本身也可能不是由于用户名和密码的原因导致该问题

     3)报错原因(即启动报p13n_lease表内键错误)

不清楚您说的这个问题是否是重新生成ldap文件启动时日志报出的主键冲突问题。我们在测试的时候发现,使用新的ldap在server启动过程中会向policy插入默认数据,这时与已经存在的内容冲突。

     4)启动慢(单个实例15分钟)的原因,为何之后启动又快了(单个实例只要5分钟)

         启动慢,当时没有看到具体的启动过程,启动过程日志nohup也没有保存,不清楚启动时慢在什么地方,不过根据经验来说,一般启动慢都发生在起应用的过程 中,当weblogic启动状态到starting之后,就进入启动应用、初始化数据库连接、JMS等步骤。从测试过程中分析,启动慢的时候都是在重新生 成ldap后,这时候启动会重新向数据库中写入默认数据,启动过程会慢;同时如果网络慢或者当时主机CPU内存等资源占用率高都会导致启动server缓 慢。

     5)">数据源状态挂起的原因(数据库重启之后webservice为什么要重启才正常?)

    启动过程中,weblogic要同时验证ldap和库内的信息,在验证库内信息时,不能通过数据源与数据库建立连接,导致日志中报出了大量的登录超时的警 告信息。根源在于数据库出现问题,数据库连接不可用,恢复正常是因为数据库端恢复正常。但由于线程阻塞,server状态不正常,所以还要重启 weblogic

     6)资源树相关功能模块不正常的原因(有一个受管server连接不上ldap,重启后正常)

这 个要分析相关日志才可以得出结论,不过一般重启server能够解决的问题,大多和server当时的状态有关,weblogic、websphere等 java服务器都存在运行一段时间后管理控制台使用缓慢,资源部署缓慢等这样的问题,一些客户的作法的每隔一段时间重新启动server。

     7)一个域内多实例发布程序不停运的测试

像 我们生产上这样的集群4个受管的环境。可以先将应用由原来的部署在整个集群4个受管,把目标改为只部署在受管2、3、4上,即取消受管1;之后部署新包到 受管1上,最好在部署前删除该server下的stage目录。之后的几个server启停以此类推,同时配合F5的使用,先将server从F5上剔除 后再下应用。但是这样做有个小问题,每次部署时应用不能起同样的名字,这个名字是weblogic给应用的标识名,要在控制台内给资源包起不同的名字,应 用本身不用单独做改动。(建议在藤工搭建的测试环境下测试后再应用到生产上)

   更多的情况是在基本没有用户的情况下,比如凌晨统一整改,对于我们这样的内部使用系统,影响一般不会很大。

        8)">多个实例能不能同时重启

多个实例可以同时启动,没有问题

9)小机上运行weblogic server和portal有没有优势(和pc server相比),有没有劣势?你们在其他大型公司应用,他们都是用的什么机器

         这个问题咨询了我们的相关技术人员,他们的意见是小机和PC server比没有孰优孰劣,具体还要看CPU、内存、磁盘速度等。稳定性也不好下定论。目 前从生产环境上看系统运行的压力完全可以支撑当前的用户量,没有发现硬件上的瓶颈。所以不建议主机迁移。

10)对门户的备份和恢复策略(要能确实实现恢复)

建 议将中间件的安装目录/opt/bea备份一次,weblogic域目录/opt/eipdata建议和数据库的备份同步每天备份一次,备份的时候选择不 备份nohup日志,可写个脚本每天凌晨定时执行(不用停server)。关注下备份后文件的大小,一般保留最近的7个备份文件即可。我们见过的大多数客 户并没有对weblogic进行备份,一般是在计划停机前,对中间件做个备份确保重启主机后中间件运行没有问题。




赞(0)    操作        顶端 
koei
版主
等级:大校
经验:4186
发帖:7
精华:0
注册:2011-7-21
状态:离线
发送短消息息给koei 加好友    发送短消息息给koei 发消息
发表于: IP:您无权察看 2014-4-17 4:50:31 | [全部帖] [楼主帖] 2  楼

1. Portal是什么,好多软件公司都有Portal;

2. WLP是什么?

北京联动北方科技有限公司



赞(0)    操作        顶端 
总帖数
2
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论