运维是数据中心的重要工作,数据中心一旦建成,后期要经历一段漫长的运维期,期间不仅要保证业务的平稳运行,还要不断对系统进行升级和扩容,以便数据中心可以不断开展新的业务。所以,数据中心对运维的工作都异常重视,运维的水平高低反映出了这个数据中心整体业务水平的高低。随着数据中心领域的蓬勃发展,对运维的工作提出了更高要求,运维的工作也需要持续改进,去适应新形势,数据中心发展的需要。本文就来详细讲一讲数据中心运维的水平发展路标,看看高水平运维的工作体现在哪些方面。
数据中心运维的发展原则有两个方面:一个是尽量不去依赖人去管理,要知道数据中心里百分之八十的故障是人为故障,人参与程度越高的工作出错概率越高,反而机器永远都按照预定的程序去执行,除非设备出了BUG,否则永远都不会出错,当然BUG也是人造的,所以往往一个数据中心自动化运维的水平越高,反而越安全,故障发生的概率更低;另一个是要尽量避免发生故障,而不是事后诸葛,“亡羊补牢,为之晚矣”,不要总去做亡羊补牢的事情,要把可能预知的风险消除掉,避免故障的发生。故障发生后,迅速解决故障是一种能力,但不要过于依赖这个,不能什么问题都要等到故障发生后才去解决,早早就应该规避风险。“覆水难收”,故障发生后给数据中心带来的负面影响,往往要花更多的精力去修复,有时发生的故障是致命的,数据中心可能会从此一蹶不振,只能关门大吉了。任何一个数据中心运维的工作,都要依照这两个原则去发展,这样才能不断提升其数据中心运维的水平。
数据中心运维的水平高低也可以从两个方面来看,一方面是运维效率,另一个方面是规范建立机制。首先,在运维的效率方面,从低到高要经历四个阶段:一是全人工运维。这种运维的方式适用于早期数据中心规模不大或者业务流量不大的情况,这类数据中心系统复杂度不高,设备数量较少。日常的业务运维操作,更多的是依靠手工逐台登录设备进行操作,缺少必要的操作标准、流程机制。运维的人员个人经验非常重要,可继承性不强,数据中心要过度依赖个别的几个运维的技术大牛来维持,其它人员操作犯错概率会增高,同时工作效率底下;二是工具化的运维。这种运维的方式适用于较大规模的数据中心,运维的人员开始使用批量化的操作工具,针对不同操作类型出现了不同的脚本程序,需要做设备配置变更时,通过脚本程序统一执行,提升操作效率。比如设备批量升级,可以提前写好脚本程序,然后到了指定时间,脚本程序自动运行,将服务器上的软件程序下载到设备上,然后执行升级命令,所有设备的执行步骤都一样,可以大大节省人力,以往人工升级每晚只能升级几台设备,通过脚本一个晚上就可以将整个数据中心的设备升级完毕。不过,每次操作需求都不同,需要不断调整脚本工具,可程序化处理能力较弱,批量执行还可能导致更大规模的问题出现,此时仍需要人工监督脚本执行情况,发现脚本有问题及时调整,运维效率并不高;三是平台运维。这种运维对运维效率和误操作率有了更高要求,通过平台承载标准、流程,进而解放人力和提高质量。平台运维对服务的变更动作进行了抽象,形成了操作方法、服务目录环境、服务运行方式等统一的标准,通过平台来约束操作流程;四是自运维系统。这种运维适用于更大规模的服务数量、更复杂的数据中心系统,是当前数据中心推崇的运维方式,极大地解放人力。自运维系统对服务变更进行抽象,由调度系统根据资源使用情况,将服务调度、部署到合适的服务器上,自动化完成与周边各个运维系统联动,比如监控系统、日志系统、备份系统等。自运维的系统还具备发现故障,并自动消除故障的能力。
另一方面是规范机制的建立。俗话说“没有规矩,不成方圆”,数据中心里也要立规矩,制定各种规章制定,并有效地执行下去,规范的建立同样也要经历从低到高的四个阶段:一是无规范机制,整个数据中心运维的工作处于无序状态,工作效率低下,这在一些小型的数据中心或机房普遍存在,过多规范制度反而显得有些累赘;二是建立规范人工约束,这个阶段通过规范制度加强对人的管理,通过规范人的操作流程,从而减少人为出错的概率。数据中心制定了一系列操作规范,哪些不能做,哪些可以做,哪些人能做哪些事儿等等,运维的人员要按照规范来执行;三是完善规范,不断对规范进行改进,防止出现管理漏洞,运维的工作开展遵从一系列规范制度,有理有据去做,提升数据中心的运维效率,对运维的人员奖罚分明,依据就是这些之前制定好的规范制度;四是系统自动约束,此时数据中心已经完全采用自运维的系统方式,人工参与极少,所以以往制定的一系列规范制度成为了废纸,我们只要将标准的操作输入给运维的系统即可,系统可以自我调整,自动运行完成,保证不会出现不符合规范操作的情况。
数据中心建设的规模越来越大,采用人工方式已不现实。要将所有运维的工作都能走向自动化,减少人的重复工作,使我们的运维交付更高效、更安全。数据中心运维的技术发展宗旨就是将人从复杂枯燥的运维工作中解脱出来。数据中心的所有运维活动,均由人工处理变成系统自动实现。