我最近一直忙着满世界出差,特别是前几天去德国法兰克福参加ISC超算行业盛会的时候,结识了不少国内外的超算供应商。在当天晚饭闲聊的时候,大家很自然的就谈到了不同品牌甚至不同国家对于计算设施,具体来说就是服务器的设计理念。
不同品牌服务器的差别究竟有多大?这个问题可谓是见仁见智。
从业的“新手”说:这东西设计不同、管理不同、这不同那不同,总之很不一样;
从业的“老人”却说:这东西没啥区别,都是英特尔的平台,能有多大区别?
后来这个话题讨论得还相当热烈,不同阵营的人都在列举各自的例子试图说服对 方,一时间在热闹的德国饭馆里,我们这伙人的聒噪显得与环境是那么的融合。
后来,某位来自国字头科研院所的领导一锤定音——不管什么品牌的服务器,只要达到一定规模,哪天还不坏个三台五台的?
于是大家都沉默了,转而纷纷举杯,沉浸在德国啤酒的苦涩与甘甜之中,就如服务器运维者那样,百感交集。
尽管在出厂时,各家服务器都有着非常严苛的测试,许多品牌还进行了这样或者那样的便捷维护方案,但是在大规模部署的时候,或多或少都会遇到宕机的问题,这也让数据中心的维护者每天疲于奔命。
所以,对于这些运维者来说,最重要的并非是采用哪家的服务器,而是如何减轻运维的包袱。依靠增加人力并不是最好的手段,很显然还需要从技术层面去解决。
这也正是华为服务器一直所努力的方向。众所周知,服务器的硬件种类多、故障原因复杂,时不时的报警与宕机更是让人摸不着头脑。许多时候,当系统发生严重故障时,由于OS不支持等原因没有记录下产生的MCE码,因此进行故障信息收集、定位分析等问题就显得愈加困难。
为此,华为推出了名为FDM的(Fault Diagnosis& Management)故障诊断管理系统,就是针对这一类问题提供的解决方案。
带外处理的OS故障解决方案
一般来说,针对服务器的应用问题,许多品牌早就有了明确的方案。一方面从硬件角度,服务器会在前面板设置报警指示灯,通过指示灯的颜色变化与闪烁频率可以简单的判断服务器的基本状态,是否有处理器、硬盘、网络等方面的问题;另一方面,通过服务器的OS或者BIOS系统,也可以简单记录服务器的运行基本信息,实现基础的运维管理。
之所以称之为“基础”,是因为这些手段仅能够支持小规模、常态化的情况。试想一下,当你步入一个承载了千百台服务器的机房当中,你如何通过某台服务器的指示灯闪烁或者报警声音来判断故障情况?甚至有可能,当你身处那个吵杂环境当中时,你根本不会关注到某台服务器的细节,直到终端客户打电话来投诉。
相比系统报警来说,OS信息记录或许是一个比较好的方式,不过更多时候这个应用的效果表现在事后的复查当中,而且由于系统已经宕机,这时候信息或报告等否被100%保存下来并不确定。因此对于有效的运维来说,仅仅依靠这两套方案是完全不够的。
华为FDM的做法可能为业界提供一个新的思路。按照FDM的计划,除了行业通用的以OS为中心的故障处理系统之外,华为的服务器中还会新增一套带外(不依赖于OS)故障处理系统,解决现有OS在严重故障系统死机无法抓取故障数据的技术难题。
这样一来,就能够有效解决OS故障的记录问题,从而使得问题得以回溯,让运维人员能够察觉到真正的问题所在,并予以解决。
全BMC的监测机制
相比于OS来说,如今许多服务器都采用了BMC的管理方式。BMC是基板管理控制器的简称,它的主要作用就是实现本地和远程诊断、控制台支持、配置管理、硬件管理和故障排除。
我记得那还是2010年的时候,当某厂商的售前为我演示BMC接口的作用时,我惊为天人。“还可以这样玩”,这可能是我当时脑子里跳出的第一个想法。
后来,BMC接口成为了许多服务器的标配,这也大大方便了管理员的日常工作。试想,在家里躺在沙发上,报个笔记本,手指轻轻一点就能把在公司的某些服务器开机或关机,那是多么惬意的事情!
当然了,BMC的能量可不只是这么一点点。在华为服务器当中,BMC功能承担了重要的角色,通过将故障信息汇聚到BMC并由BMC在带外做更进一步的故障分析、定位、预告警等,华为的服务器可以克服OS作为故障处理中心的能力不足、不可控、影响系统性能等难题,当运维真正实现便捷和智能化。
海量故障信息看不懂怎么办?
就像文章最开始那位老领导提到的,在规模庞大的数据中心,每天的服务器故障数量都是惊人的,这些数据经过日积月累,需要不断分析与判断,才能实现便捷的运维。
但是对于运维人员来说,面对这些数据显然没有足够的时间一一分析,这也就需要从技术手段实现规模化、批量化的处理。相比人类,机器对于这样重复性的筛选与排查工作显然更适合,也更能够高效的处理。
为此,基于华为对服务器故障机制的技术积累,以及对海量故障样本数据归纳总结的能力,华为服务器提供了“故障诊断定位”与“故障预告警”两大专家系统,提升故障一次性、自动化诊断准确率。
举个例子来说,当系统中的服务器出现故障的时候,“故障诊断定位”可以在第一时间告诉管理员哪排机架中、哪台机柜上的哪台服务器的哪个部件出现了问题,大大缩短了定位的时间;而“故障预告警”甚至可以在此之间就根据服务器的运行状态,结合以往的故障情况提前进行警告,比如提醒管理员需要更换散热风扇等等。
应该说,集合上述三项特色运维功能于一身的“FDM故障诊断管理系统”,可以帮助客户更好的完成故障信息(带内/带外)收集与解析、尽快的实现故障诊断定位、前瞻性的提供故障预告警,从而大大简化运维步骤,解决时间与人力成本。
如今,华为的“FDM故障诊断管理系统”已经全面部署在某大型互联网公司当中。在此之前,由于该公司某批次服务器的PCI故障原因迟迟无法定位,导致服务器故障后无法部署业务,造成了大量的浪费。在应用华为“FDM故障诊断管理系统”之后,可以实现快速定位,并成功更换故障部件,帮助该公司快速恢复业务,缓解了应用危机。
日常,我们使用微信作为社交手段、使用百度地区导航、使用淘宝、京东实现网上消费,而在这些互联网巨头的背后,都是海量的服务器在支撑着计算与存储平台,保障我们的信息化生活。华为“FDM故障诊断管理系统”的出现,正是为这些服务器提供了坚强的运维后盾,也帮助那些互联网巨头接触后顾之忧,为我们提供更便捷、更舒适的生活体验。
本文作者:刘策
来源:51CTO