APP下载

使用重启大招之前的思索

2016-11-26

网络安全和信息化 2016年1期
关键词:远程桌面日志交换机

故障现象

周六休息时,突然接到实验室同事报障电话,说就在刚才断电10分钟来电后,OpenLAB系统无法连接。机房服务器有UPS供电,怎么会出现这样的情况呢?赶到现场查看,机房里整套系统7台服务器从电源、硬盘和网络指示灯看均运行正常,登录一台服务器表面上看也没有问题,只是用户在办公室通过远程桌面打开OpenLAB软件时,一直显示连接中(如图1)。在机房AIC服务器上打开OpenLAB软件,仍然是同样的情况。也就是说,所有用户都无法正常启动该软件。

系统介绍

由于是周末只有个别用户加班,所以影响还算小,可以有时间来仔细检测问题原因。只是从同事那儿接手该系统两年来,没有遇到过类似情况,平日也就是每两周把所有服务器重启一次,协助厂家工程师安装过增加的系统,因一台反应慢更换过服务器,还有就是每月一次的通过SSR系统备份和每周用BE备份试验数据。

图1 OpenLAB软件启动一直连接中

OpenLAB CDS网络化色谱工作站系统是安捷伦公司基于微软.NET技术,拥有三层体系结构,由OpenLAB OLSS服务器、Agilent AIC和瘦客户端三层组成。OLSS服务器负责提供系统的安全管理、许可审核、审计追踪、仪器状态管理以及数据存储等功能。Agilent Instrument Controller(以下简称AIC)作为系统的中间层,负责提供数据的采集、仪器的反控、数据的缓存以及上传等工作。客户端使用远程桌面服务虚拟客户端模式,利用微软的RDS虚拟技术,可以实现客户端的零安装。全套系统操作系统均是Windows Server 2008 R2英文版,曾听同事讲过几次系统的大概结构:用户通过TS终端服务器的远程桌面方式去操作控制AIC服务器所连接的仪器,用户登录远程桌面是通过端服务器的本地验证,OpenLAB软件登录验证是通过OLSS服务器进行的,最后将仪器生成数据存入ECM服务器。

排错与测试

首先通过Ping命令确认了服务器间通讯正常;其次查看服务器日志,在下午2:34TS服务器有错误日志“The Terminal Server security layer detected an error in the protocol stream and has disconnected the client. Client IP:192.168.219.55.”,也就是当天来电后加班同事的连接,其他时段还有大量类似报错;在下午2:24AIC服务器有两条错误日志“The Terminal Server security layer detected an error in the protocol stream and has disconnected the client. Client IP:192.168.17.10.”也就是在停电时AIC终端服务安全层检测到TS服务器在协议流中有错误而断开了连接,同时仪器驱动也报了两条错误日志“Disconnecting because a System.Net.WebException was caught when sending a command; The request was aborted: The operation has timed out.”,但是这条日志该服务器在其他时间段也大量出现过,用户那边未曾报告出现什么问题。

由于周末厂商直接售后服务的工程不方便联系,于是拨打了安捷伦售后服务电话,服务人员得知是OpenLAB ChemStation的网络版时,说这种情况涉及到网络方面的原因,没有网络工程师值班而无法解答,建议重启服务器系统试试。咨询结果和预期的一样,使用服务器重启大招。旁边实验室的同事说这样的问题是第二次出现了,上次也是停电后发生的,那次他以为是我们IT人员在处理服务器上午有问题也未反馈,下午就正常了(而我们什么都没做)。这就很奇怪了,很想探研一下什么原因导致的发生这样的问题。

图2 软件启动报错提示

图3 OLSS服务器netstat显示端口连接a

图4 OLSS服务器netstat显示端口连接b

再回到AIC服务器上,发现OpenLAB程序有报错了如图2,大概意思是程序在已配置的3分钟内未获得OLSS服务器6577端口回应,运行中分配的时间已部分超时,可能是该运行服务仍然在进行中或者是未能发出一个应答信息,请考虑增加运行超时设置并确保客户端可以访问该服务。

有了错误提示,就多一些处理问题的线索,通过telnet服务器OLSS端口6577是通的,为什么端口是正常能连接而程序却无法连接呢?登录OLSS服务器netstat查看端口连接情况,显示很慢很多,有大量TS服务器到OLSS服务器6577端口的连接(如图3)。难道是端口异常繁忙导致无法给程序响应?可是现在周末没几个用户,而且平日也从来没有出现这种现象啊。

把TS服务器重启一下再看是什么现象,因为重启TS对数据没有任何影响,比直接重启OLSS服务器影响小。后又想,直接把TS服务器的网线拨掉也能验证刚才的想法。

拨掉服务器实验网段的网线,在OLSS服务器上仍然能看到到6577端口的连接,不同的是从TS服务器从计算机名变成了IP地址(如图4)。再把另一根用于连接办公网的网线也拨掉,用户正是通过这根网线从办公室来连接TS服务器的。奇怪的是,在OLSS服务器上到从TS到6577端口的连接仍然存在,而且不停增加,这是哪里出了问题呢?

查看了OLSS服务器上的日志,只有一个网卡网络连接在下午2:24有断开的警告记录“Broadcom BCM5709C:The network link is down.Check to make sure the network cable is properly connected”,也就是停电那会儿,应该是机房这台交换机未接入UPS电源所致,而且在每两周重启服务器也会有这么一条日志。

把显示器键盘鼠标再次切到AIC服务器上运行OpenLAB程序,这次没有显示一直在连接的状态,而是马上报出错误提示“Connection to Shared Service failed”(如图5)。这是问题测试检查有进展的标志,说明之前程序启动时一直处于连接状态确实和TS服务器大量连接到OLSS服务器的6577端口有关,导致其无法及时响应OpenLAB程序的连接。

综合分析觉得,问题是出在OLSS服务器,可是这个服务器在停电那十多分钟都是正常在运行,怎么回出现这么奇怪的问题呢?更奇怪的是上次停电出现的类似故障居然自动恢复了。难道真得用重启OLSS服务器的大招吗?

看着AIC上面程序启动时报的错误提示,忽然想到就重启下安捷伦的相关服务看行不行。立即运行“services.msc”,找到一个和错误提示类似的服务“Agilent OpenLAB Shared Services”,重启服务很顺利地完成(如图6)。再次去AIC上运行OpenLAB程序,很快出现了熟悉的登录界面。让实验室的同事登录进去查一下加班运行的仪器情况,很遗憾仪器没有配UPS断电就停止运行了,上午所做的几个分析试验得全部重来。

图5 OenLAB软件启动直接报错

图6 软件报错相关服务

图7 OpenLAB软件正常启动界面

将刚才断开的TS两条网线按标记顺序接上,实验人员就可以正常从办公室连计算机接到远程桌面操作仪器了(如图7)。

最后将上述处理截图发邮件给直接联系的厂商售后工程师,请教出现此问题的更深层次原因,从而避免此类故障给公司造成工作上的损失。还没等到厂商回复的故障原因,不到一周时间又接到供电局通知,说周五 12:30 到 14:00“将有两次短时停电,每次3到5秒”,这次试验室的同事和我们商量决定,在4台AIC服务器所连的仪器上做个测试样,以确认更具体的情况。就这几秒的停电真让信息系统受不了,结果是只有一台AIC服务器上的分析测试运行正常,这下得深入分析对比一下各服务器Windows日志和网络连接问题了。

远程登录AIC,发现有两台有非正常关机的提示,也就是说这两台服务器在几秒的断电过程中自动重启了。仔细想想这两台是后来添加的,当时电源插线板孔位不够就再串接了一个,串接时可能接到市电的电源插座上了,平常没感觉,这几次断电才知道错误了。由于之前接服务器的网络未作详细标识,网络机柜又装着6台交换机,实在不方便找出某个服务器接哪台交换机几号端口,还好都是可配置的H3C交换机,用笔记本电脑连接控制口执行“dis mac-add”将端口对应学习到的MAC地址表复制下来,再比较各服务器网卡的物理地址,终于找到网络连接的端口。有4台服务器Windows日志里在停电时出现了网络连接断开的警告记录,均连接到第一台交换机上,说明此交换机也没有接入UPS电源,和同事确认这台机器后来为了测试整个系统反应慢的问题,而增加的全千兆交换机,没有接入UPS电源。

找到问题根源,处理就好办了,同时也发现前几次OLSS服务器上的“Agilent OpenLAB Shared Services”服务异常是其网络连接断开所致。

经验总结

如果我们直接重启服务器当然也能把问题解决,但那样做并不能让我们找到问题的更进一步原因,而当某些情形不容我们去慢慢分析时,重启服务器确实也是有效的常用大招。经过此番探研,下次再出现类似问题,我们不必使用重启服务器的大招,也能精准快速解决问题,经验就此积累。通过对此次问题的深入排查,也暴露了我们在后期更新维护过程中不规范作业,机房服务器和交换机本应接UPS电源系统居然出了差错,每次遇到停电,大家都还想当然地认为机房里设备都有接入UPS电源呢。

猜你喜欢

远程桌面日志交换机
一名老党员的工作日志
扶贫日志
基于地铁交换机电源设计思考
修复损坏的交换机NOS
雅皮的心情日志
实战Windows Server 2008 R2远程桌面服务
RemoteApp客户端连接管理
使用链路聚合进行交换机互联
游学日志
安装远程桌面服务