最近公司购买了两台Windows Server 2008 R2服务器用于提供提供Web服务,A机器安装了IHS+DM+WAS8.5集群,B机器安装了Oracle11gR2用于数据存储,两台机器均可连接互联网。
服务部署头天晚上部署,测试没有任何问题,早上用户打电话反馈无法正常访问站点,远程登录后发现IHS+DM服务正常,但是集群没有启动,查看任务管理器发现没有nodeagent和集群中server的进程,手动启动nodeagent后启动集群,两个Server正常启动,随后正常提供服务。当时怀疑服务器是否重新启动导致服务异常,也怀疑是程序的问题,但手头事情比较多就没有持续跟进;可是同样的事情在第二天又发生了,早上一起来就发现服务无法访问。这次不能无视了。。。收集了相关日志后,手动启动nodeagent和集群并提供服务后就开始进行问题排查。
1、检查WebSphere Server日志
检查了集群各几点Server的SystemOut.log日志,发现在3点15分突然爆出如下日志:
[16-3-22 3:15:16:482 CST] 0000004e Peer I ODCF8534I: 已除去邻居 ip=192.168.1.8 udp=11011 tcp=11012 ID=a0afd7f939ef4c971fe6825780126b1741b2f9ff version=0;cellName=WIN-RU03CB21QGACell01;bridgedCells=[];structuredGateway=false;properties={inOdc=1, epoch=1458522523691, MEMBER_STARTUP_TIME=1458522519269, memberName=WIN-RU03CB21QGACell01WIN-RU03CB21QGANode01AppSrv02, MEMBER_VERSION=4},邻居集现在为 2 nodes 0 ip=192.168.1.8 udp=11008 tcp=11007 ID=f271d5e15b5f3696eb6b30d9ef41532f9c5a81e8 version=0;cellName=WIN-RU03CB21QGACell01;bridgedCells=[];structuredGateway=true;properties={inOdc=1, epoch=1458522483936, MEMBER_STARTUP_TIME=1458522480920, memberName=WIN-RU03CB21QGACell01WIN-RU03CB21QGANode01 odeagent, MEMBER_VERSION=4} 1 ip=192.168.1.8 udp=11005 tcp=11006 ID=63a7efddbd567d67083efb4fc6a7727dd79c4c32 version=0;cellName=WIN-RU03CB21QGACell01;bridgedCells=[];structuredGateway=true;properties={inOdc=1, MEMBER_VERSION=4, epoch=1458503412906, ODC_PUBLISHER_ONLY=false, MEMBER_STARTUP_TIME=1458503408859, memberName=WIN-RU03CB21QGACell01WIN-RU03CB21QGACellManager01dmgr} 。
其余几行无关紧要的信息输出后就一片沉寂了。
2、检查WebSphere DM日志
检查DM SystemOut.log日志发现DM在晚上3点15分左右输出服务停止和启动的日志,但停止和启动原因不明。
3、检查WebSphere FFDC日志
通过对dmgr的ffdc目录中的日志文件按照日期进行排序,发现3月22日有两个日志文件;
dmgr_exception.log.1458587814531.txt
dmgr_25be7f2a_16.03.22_03.16.54.5782445606813376690951.txt
发现如下输出:
[16-3-22 3:16:54:578 CST] FFDC Exception:java.io.IOException SourceId:com.ibm.ws.management.discovery.DiscoveryService.sendQuery ProbeId:189 Reporter:com.ibm.ws.management.discovery.DiscoveryService@48071f19 java.io.IOException: ADMD0004E: 无法打开 TCP 套接字:WIN-RU03CB21QGA:7272。请检查远程进程是否已打开端口。
“无法打开TCP套接字”是不是网络的问题,那么网络出现什么问题呢?断网也不至于让服务重启啊?是不是操作系统本身在做什么操作呢?那就根据时间点查看一下操作系统的日志吧。
4、检查Windows事件查看器中的日志
点击“开始--》管理工具--》事件查看器”,在Windows日志节点下点击“系统”,在右侧的事件列表中按照时间点3.15左右进行事件的过滤,最终找到了问题所在;
原来云服务提供商的这台操作系统设定在凌晨三点进行系统更新,系统更新后自动进行系统重启。
IHS+DM在Windows平台下默认以服务形式启动,能够跟随操作系统启动,而nodeagent不是服务,不能随操作系统启动而启动,这就导致了服务无法正常启动的原因。