运维的工作是数据中心里最为重要的一部分工作,在整个数据中心的生命周期里,持续时间最长,拥有一批高水平的运维工程师是数据中心长期稳定运行的法宝。虽然数据中心的运行故障不可避免,但通过有效运维,可以大幅降低故障发生的频率,并在出现故障的时能够有效及时地恢复业务。在这些过程中,运维工程师的水平起到了至关重要的作用。作为数据中心里的一名运维工程师,应该掌握哪些技能,才能在工作中游刃有余。要知道数据中心里有很多设备,而作为一名运维工程师不可能,也没有必要全部掌握,要懂得应该掌握哪些技能,一些基本命令和重要设备的操作一定要掌握,这些技能往往在关键时刻可以发挥重要作用。本文将说一说运维工程师需必备的技能。
首先是服务器设备,数据中心里可以说有海量的服务器设备,几乎清一色采用的是Linux系统,掌握一些Linux操作系统的命令是必不可少的,还要至少熟悉一个内置编辑器:VI或Nano,至少熟悉一个发行版,比如Centos、Debian、Ubuntu,要熟悉很多Linux运维的命令,以便出了问题知道如何分析服务器的运行状态,对LAMP或LNMP、FTP、DNS、SAMBA、EMAIL、NTP、DHCP等Linux可以支持的基础协议要了解,熟悉这些协议的故障处理。
其次,是服务器一些虚拟化软件技术,比如KVM,虚拟化技术在数据中心里应用已非常普遍,对KVM不熟悉将很难开展运维工作,所以要掌握常用的虚拟化技术,以及KVM的工作原理,包括在CPU、内存、存储、网络等各个部分的虚拟化,最为重要的是要掌握KVM的各种管理工具:OpenStack、CloudStack、OpenNebula、Zstack等。现在虚拟化技术早已不再局限于服务器上,在数据中心的各种设备上都可以支持虚拟化,适当掌握这些虚拟化的技能,非常有利于做好运维工作。
第三,要会编写一些程序脚本,比如使用Shell、Python、Perl等脚本语言做一些自动化运行脚本、诊断故障的脚本,使用这些脚本可以提升工作效率,将重复性的简单工作交给脚本程序处理,也可以通过这些脚本判断故障发生的位置和原因,高效的运维将不再需要人工去逐个字符地去输入各种命令,而且靠大量的脚本语言快速搞定工作。在平时的工作中,可以编写一些特定脚本,然后慢慢累积形成脚本集,做什么样的工作就用什么样的脚本来完成,这将大大提升运维的工作效率。
第四,数据中心里那么设备,仅掌握服务器是不够的,网络、安全都是需要重点学习的地方。数据中心数据网采用的是以太网协议,存储网采用光纤通道协议,随着以太网技术的成熟,大有两网合一的趋势,由以太网协议技术接管存储网,掌握以太网协议是运维工程师的必修课程。当然,以太网协议包含有太多的内容,各种协议让人看得眼花缭乱,根本没有精力全部掌握,但至少应该对自己数据中心所用到的协议知晓,再不济也应该掌握抓包的本领。在出现问题时,懂得在各个网络位置抓包,来确认故障设备或线路,会使用Linux的tcpdump抓包或者ethreal、sniffer、Wireshark等抓包软件,会在网络设备上配置镜像,将关心的流量抓出来进行分析。当出现网络故障时,通过抓包来分析虽然比较土,但这种方式最直接,直接找到故障位置。还有各种安全设备,安全过滤的规则查看、调整与修改都要熟悉。要懂得查看各种接口类型,硬件信息以及各种服务器类型比如:塔式、机架式、刀片式的工作原理。
第五,要掌握一下运维平台工具,利用这些工具做运维,很多事情往往可以事半功倍,例如:SSH证书、Nagios、Puppet、Zabbix、Cacti、SaltStack、Pssh、Fabric等,这些都是开源的免费网络监控工具,虽然用起来会有一些问题,但都是开源的,都可以根据自己数据中心的实际情况,进行修改,最重要的是这些软件都是免费使用的,通过使用这些工具对数据中心进行网络监控,可以及时掌握数据中心网络的运行状况,发现问题及时解决。当然,也有一些专业性比较强的网络监控软件,一般都是网络厂商推出的,要收费的软件,这些软件具有一些独特的网络监控功能,与自己硬件设备的兼容性也更好,往往和自己的硬件设备绑定销售,这类软件运行稳定,遇到问题也可以寻求厂商帮助,比开源的网络软件要好。
第六,最后一点,也是最为重要的一点,就是工作态度。运维的技术聪明人可能掌握快些,不够聪明的人多花一点时间也可以掌握,所以很多时候并不是技术问题,而是工作责任心的问题。比如遇到问题时,具有主人翁的意识,第一时间处理各种告警,消除隐患。平时将每个工作都有条理地处理好,注意与各个不同层级的人交流,注意对不同的人采用不同的沟通技巧。在工作上要有进取心,避免消极怠工。有强烈的安全意识,尤其现在人们都对数据中心的安全问题极为关注,要避免数据中心出现数据泄露事件,在数据中心内部各个环节增加安全防护设备,对出入数据中心人员和访问进行管控,把好数据中心的安全门,万一数据中心出现严重的安全事故,那之前做的工作再好,都变得毫无意义。工作上要保持如履薄冰的心态,小心驶得万年船,谨慎对待工作中的每个细节。
数据中心涉及的技术知识包罗万象,一个人的精力是有限的,不可能全部掌握,这时就要注意选择,建议将以上列举的几个部分技能都掌握到,这些是运维工程师必须具备的技能。只有这样,您才有机会成为数据中心运维方面的专家。