【原稿】任何一个计算机系统出现故障,小到一个终端软件无法使用,大到整个系统系统瘫痪,所有业务无法使用。处理。这也是系统管理员或者运维人员最担心的事情。如何快速定位故障问题,合理分析故障原因,找出故障排除方案,是管理者需要了解的事情。在阿里巴巴集团主办的ADC·阿里科技嘉年华上,记者有幸采访到阿里巴巴集团云计算平台一线运维刘毅(@耶怡),看看他是怎么做到的。以下为采访实录:不同平台运维工作对比:刘义你好,首先请简单介绍一下自己的经历和目前的工作职责。刘毅:我曾在eBayCOC负责UNIX系统运维。离开COC后,我在2010年加入了阿里巴巴集团,其实阿里云是第一个招我的。随着云计算平台逐渐壮大,参与了集团云计算平台的一线运维工作。:那么您的一些主要关注领域与云计算有关吗?两家公司的工作模式和工作职责是否有很大不同?刘毅:有很大的不同。eBay负责成熟应用的运维。整个应用架构是全冗余的,高可用的,使用了更多的商业解决方案,他们对商业解决方案的预算相对来说,底层运维的稳定性会依赖于厂商的支持,而商用负载均衡设备的广泛使用,不会因为单台服务器不可用而给我们的运维带来麻烦。刚接触云计算平台运维的时候,感觉回到了石器时代。大概意思是运维环境很差,每天两三台服务器宕机很正常。没有存储,没有磁带库,数据存储在本地硬盘上。每个硬盘上的数据随时都可能丢失,数据冗余完全由云平台自己解决。这迫使我们必须努力运营和维护。我们需要帮助云平台解决各种问题。解决了数据冗余的问题,但不代表机器不用恢复,硬盘不用更换,突发事件不用处理。前3个月,最频繁的就是重复性劳动,感觉不值钱,简直是劳动密集型行业。该怎么办?我们需要工具,自动化的工具来帮助我们摆脱重复劳动,shell,perl,python,只要能提高效率,我们不区分工具语言,但Python仍然是使用最广泛的。渐渐地,从命令行自动化到web自动化,5000个服务集群的停止、升级、查看状态信息,只需点击鼠标即可完成。感觉他妈的?还没有,这些只是表面的改进。我们现在期望,从运维的几十万台服务器,每天产生的硬件日志、系统日志、应用日志中,在这些庞大的数据中,就像开采金子一样。像矿山一样,挖掘出可以改进我们运维和应用的方法。我今天演讲的题目是一个数据化运维的例子。:你们团队目前的规模是多少?刘毅:我所在的团队目前不到20人,也从4-5人发展而来。负责线下平台运维、线上平台运维以及相关运维自动化。基本上人人都会写代码,会看代码,提高运维效率。将大部分精力花在维护和优化自己的运维工具上。工具写的越多,我们越觉得需要借助数据分析来帮助我们判断如何高效的去做,借助于我们背后平台的力量。:你的客户相当于为阿里云提供?刘毅:我们主要服务于内部开发客户,但我们的运维业务也服务于外部客户。如药品监管法规。通过监管码,可以对药品生产、储存、销售的全过程进行跟踪,这些数据都存储在我们的运维服务中。但这些还是少数,我们目前主要是支持集团内部的业务和开发客户。#p#阿里云平台运维排查:你的平台是否经常出现故障?刘毅:平台建设初期,因为不稳定,失败的很多,那个时候挺累的。随着平台稳定和自动化工具的成熟,潮流已经转变。举个最简单的例子:以前在做运维的时候,因为底层硬件的高可用和冗余,宕机率是按年计算的。现在这些廉价的PC服务器几乎每天都宕机,这对同样处于起步阶段的云计算平台还是有影响的,所以一台服务器或者一块硬盘都可能影响到整个服务集群的稳定性。现在随着这些经验的积累,无论是平台本身还是运维方式都有办法避免底层硬件的不稳定。我举个更详细的例子:以前运维是不需要关心硬盘维修的。众所周知,识别坏盘是存储设备的基本功能,往往可以贴心地点亮指示灯。可以说,整个过程除了主动向厂商报修外,运维什么都不用做。但是,在我们云计算平台的早期,并不好。我们开始像保姆一样跟踪整个过程。我们只好主动发现并及时修复。如果我们发现晚了,那可能是一个错误。如果维修不及时,空间可能会紧张。好像有点夸张。如果你看了我分享的运维资料,真的是一回事。这些东西非常重要,而且重复性很强,尤其是在大型服务器的情况下。我们不能每天重复工作。对运维价值的提升不大,对平台的稳定性也无益。我们使用自动化来解决它。解决这些廉价服务做不到的问题,使用我们的自动化工具,变得像以前昂贵的存储设备一样智能。这很有趣。你会觉得自己在和云平台一起成长,停不下来。例如,仅仅发现是不够的,我们还需要做出预测。硬盘作为一种机械设备,随着时间的推移肯定会老化。带来各种问题,比如性能慢,反应迟钝。然后我们可以通过研究磁盘参数来预测磁盘的健康状况。首先,这些参数是厂家定义的,比较理论化,但是到底能不能用,好不好用,但是我们有庞大真实的实际数据,收集这些数据,做下数据分析和挖掘云平台,提炼出来适合我们不同的业务。对于场景中的磁盘监控度预测,最重要的是获得好的结果和反馈,尤其是在双11之前的关键战役中,提前让预测结果不好的硬盘下线,避免掉链子。关键时刻。举两个例子,平台不稳定和频繁故障不会成为常态。通过运维自身的演进,将那些紧急的、有害的运维异常转化为影响较小的可控运维事件。:除了刚才提到的硬盘,还有哪些比较容易出故障的?刘毅:硬盘只是一个例子。我们将其归因于硬件故障。此外,还有软件错误。此外,它是由人为疏忽造成的。:你刚才说运维有很多种。出了问题流程会不会很复杂?刘毅:复杂是相对的。公司人少,再复杂也不复杂。像阿里这么大的公司,肯定是比较复杂的,但是我们组里有一个团队会负责和完善流程。无论是故障流程还是各种日常流程。:就是说是哪方面的故障,然后有人判断,然后确定是哪个组负责,然后派那个组去解决?刘毅:是的,会有一个负责人或责任部门,但原因和改进措施需要大家配合。:您如何评价您在这里的工作成效?因为这几天我也听阿里其他团队的人说,比如做云的,他可以说我给你提供这个服务。或者提高软件的性能,他也可以说作为一个企业,我提供给你,帮助你的服务做的更好。对你来说,客户已经固定,变成了保障部。那么你这里的具体考核方式是什么?刘毅:考核不是一成不变的。个人的考核方式必须是保证团队目标的前提,而团队又要保证公司的目标。这很值得。这个时候,我不能挑生意。不能说这个业务很容易发光,运维风险就小。我要操作和维护它。我为什么要让给你?对,一开始,你想怎么运维就怎么操作。主要考核的是你有没有做好运维,有没有故障,有没有提高效率。这些死板的运维指标。随着业务的增长,运维场景越来越多。招人可以作为一个考核指标。一是业务扩张,二是团队成长,都需要新鲜血液。还有就是资源利用,如何用好手头的服务器,这对我们的运维是一个考验。还有双11,也是一个重要的考核指标。:***谈谈你个人的未来发展。你如何为自己做计划?是不是一直在做运维?还是转向开发,或者别的什么?刘毅:我不认为我会转向开发。我觉得运维不错,会继续做下去。因为我觉得这个阶段的运维是非常有趣和挑战的。想想如何收集各种系统数据和应用数据,利用云平台帮我们分析,提炼出有帮助和有价值的内容,真的很有意思。因为***,很多方面我们都没有接触过,比如数据挖掘,这需要我们不断的充电。第二,我们常常有被颠覆的感觉,其实不然。一个值,越大越好或者越小越好,真实的数据告诉我们有一个临界区间,找到这个临界区间。这个很有意思也很有挑战性,把日常杂乱无章的运维数据变成有用的,很有成就感。在云计算时代,真切感受到了数据的力量。我想我会往数据化运维的方向走,把那些运维异常变成可控的运维事件。:变得可控。刘毅:对,很有意义。可控很有意义,但也很难。过去,我们会说它是凭经验和感觉。世界变化如此之快,我们如何知道经验是否可靠?靠一次次的失败来积累经验还值得吗?业务是不断变化的,并适应客户的要求。我们的运维应该怎么办?很多事情可以这样那样做,我怎么说服你呢?其实,这些问题的答案就是数据。现在感觉所有的自动化都是为数据运维做准备的。不知道有没有找到数据运维的大门。我不知道在哪里。举个例子吧,可能是对的,可能是数据样本不够,不够准确,这才是有趣和有挑战性的地方,我想我暂时还纠结于这些,呵呵,嗯。好了,采访到此结束,非常感谢刘毅的分享!如有其他问题或建议,欢迎留言讨论。【小编推荐】云计算时代容灾Linux服务器故障处理实用指南提升系统故障处理效率的五大法宝IT故障处理工作六大不变法则云计算时代:运维也能精彩Linux服务器高负载现象故障排查导读【责任编辑:黄丹电话:(010)68476606】
