IT运维工程师如何规避可能发生的故障?

随着业务应用越来越复杂,设备数量越来越多,管理难度越来越高,运维人员必须高屋建瓴,全面谋划,有能力提供一个全局性、高效健壮、标准规范、自动化的解决方案并加以实现。记者就系统运维的职业技能要求、工作中会遇到哪些难点和解决方案,以及运维人员的职业发展等问题,请教了韩晓光老师。

虚拟化、容器、NoSQL、Hadoop、Spark……层出不穷,令人眼花缭乱,云计算、大数据、移动通信等互联网新技术不断演进,系统运维的技术含量越来越大,对系统运维人员的综合素质及能力要求也越来越高,系统运维也不再是部署系统、写管理脚本那么简单了。

而且,随着业务应用越来越复杂,设备数量越来越多,管理难度越来越高,运维人员必须高屋建瓴,全面谋划,有能力提供一个全局性、高效健壮、标准规范、自动化的解决方案并加以实现。51CTO记者就系统运维的职业技能要求、工作中会遇到哪些难点和解决方案,以及运维人员的职业发展等问题,请教了韩晓光老师。如下内容是采访实录,希望大家能够有所收益。

一、您是怎样入行的呢?刚入行时,遇到了哪些令人苦恼的问题?

记得90年代末,中国互联网迎来了春天,搭上了世界IT行业的末班车。那个时候,电视、冰箱、洗衣机还是奢侈三大件。我们小伙伴们还在摇杆式游戏厅度过,至于电脑是什么鬼,我们都很少接触到。后来,有一次混进电脑室,面对窗明几净,齐刷刷的电脑,我小有震撼,但体验并不好,就是学敲五笔。记得电脑里还有超级玛丽,但我很疑惑:这么神秘的电脑房怎么还不如街头游戏厅好玩呢:)。

再往后,我怀着一种憧憬选择了计算机专业。那个时候,IT互联网刚刚经历了2000年前后的阵痛。起初有了OICQ,新浪,Yahoo,邮箱,再后来有了Google,有了百度,再后来有了博客、校内、开心。再后来,我毕业了,阵痛和迷茫了,我要干什么呢?

我曾经整过ERP ,做过Symbian,干过监理,弄过项目,也讲过课,可是都没找到感觉。后来我进入航空结算中心,开始接触到运维工作,当初次进入企业级机房时,我被各种大型机,小型机,X86,以及机房(的轰鸣声)又一次震撼了。

原来IT幕后是这样的啊!我心里想,这貌似挺好玩的。从此,便了运维的“不归”,直至现在还“无法自拔”。可能人生就是这样,在各种巧合下,之中,你蓦然回首,发现自己竟然在这个人生道上已走了那么远……

在享受职业工作带来享受的同时,也会经历各种阵痛。

记得我的同事师傅喊我去机房进行设备上架布线。他带个手套,我很疑惑,他笑了笑,再然后,我的手被机架导轨划破流血了,他说他也是这么经历过的。术业有专攻,原来上架布线还有这么多学问,一个好的机房建设,其风火水电,人、事、物流程其中也都大有学问。

刚接触运维工作时,会突然冒出很多新鲜东西,有软件也有硬件的,有文档性也有技术性工作……这其中,有喜欢也有不喜欢的,有熟悉也有不熟悉的,但最终都是要面对的。

对于从新手到经验者的转变过程,往往会有一个的过程,熬得住就算入行了,熬不住则就仍然在徘徊、浮游中度过。

运维工作需要很多技能知识,有点像杂耍艺人的感觉,因此要有耐心,要虚心,多交流,一定要多实践,不要认为书本上学到的就靠谱。

干运维工作需要有责任心,勇于担当,巧干实干,但不能无脑地干,否则后果可能很严重,或许一个命令下去,全系统over,这样案例在IT圈里还是很多的,后果是不堪设想的。

二、在您近十年的工作经验里,有哪些让您印象深刻的故障发生?您是如何解决的?

作为运维工作者,故障往往是必经之。从到处救火的消防员到洞若观火的观察员职业发展道上不断磨练。这也是凤凰涅槃,浴火,运维大神的必修课。

在我这些年的运维工作中,可谓故障丛生,五花八门,有合同流程问题,也有SLA服务问题,当然更多的是具体运维故障。作为职业IT消防员,我们在面对故障问题时,请尽量保持冷静头脑,有条不絮处理问题,不可轻举妄动,避免导致次生故障。但同时也不能瞻前顾后太多,什么都不去尝试,导致故障持续时间大大延长。处理运维故障,胆大心细是关键。

下面说几个我具体经历的故障。

故障一:小型机AIX系统报ADAPTER ERROR

这种故障是比较的也比较难处理,原因在于导致该故障的原因较多,故障后果很严重。很多故障原因都可能导致该错误信息,比如网卡故障、HBA故障、存储故障、光纤线故障、交换机故障等等都可能导致该报错信息,难以快速定位故障点在哪里。该故障导致的后果很严重,不是断网就是断数据…后果可想而知……

对于故障处理要有流程规范,不能没有章法。对上述故障,通常我的解决思:

1.首先考虑该故障影响等级、范围、都关联什么业务,人员。是否需要或者请求支持。

2.查系统日志,寻找故障时间前后什么人登陆了,做了什么动作,发生了什么事情。

3.这里经查是HBA故障,那就继续查看其关联的SAN交换机端口是否状态正常。

4.这里经查SAN交换机端口不亮。那就继续查看是光纤线是否正常(有无光亮)。

5.最后定位在SFP光纤模块故障。更换后,设备、线、系统恢复正常。

6.处理业务逻辑问题。然后请业务人员验证。

故障二:CentOS系统中GlusterFS副本无法同步

对于有些故障,其对技术的准确理解是解决技术难题的重要技能。既有的经验和网络上同行类似经验都是很好的解决思。

对于上述问题,既然无法同步,那么权限是否有问题呢?很快我们发现其mount的NFS无法读写,但df显示还有很多剩余空间。随后,我们又发现原来是inode用尽了。既然问题找到,那么就随之解决inode数量问题。最后,同步glustefs,解决了问题。

故障三:小型机CPU故障

有时候设备硬件会异常故障,对此意外,往往出现在不恰当的时间、地点。我曾经遇到过小型机CPU故障,直接导致宕机,后果当然很严重。我们不得不备份恢复业务,迁移系统。

厂商配合我们解决问题,后来定位到CPU故障。其中有一个奇葩的现象和理由:同型号的产品对比国外,放到国内运行几年就很容易出问题,故障的设备往往都灰尘堆积,特别的脏。

对上述故障,我们的反思总结:什么样的故障都可能发生,不是别人都没有发生过你就不能发生,因此做好应急备份,做好系统架构才是关键。后来我们的灾备体系,HA集群都逐渐加强与完善。

三、在日常工作中,IT运维工程师如何规避可能发生的故障

故障总会发生,没有一个IT企业的运维会高枕无忧。但我们可以做到防微杜渐,大事化小,小事化了。在日常工作中,做好事前预测防范,事中解决应急,事后分析总结。

要想提高运维水平,尽量规避风险故障,从根本上需要建立一个好的运维体系。运维体系是运维的基础和核心。通过运维体系的构建及完善,使我们的运维做到稳定可靠,准确完备,规范科学。

从某种角度来看,系统运维体系可以用一个四面体来描述,包括四大方面:人、事、物、流程标准。

(责任编辑