编辑导读:系统管理员们踏上岗位,都已经具有了一些有关系统和服务的知识,如如何搭建生产环境,如何备份,如何监控系统等等,这些知识可能来自学校,可能来自自学。然而在工做了数年以后,系统管理员们对生产环境中的操做又会有了不少新的了解。下面,资深运维专家Paul Venezia为咱们总结了他认为系统管理员在生产环境中必须遵照的六大铁律。这是一些学校里不会教的知识。遵照这些规则,你几乎能够解决任何一个问题。数据库
在复杂的数据中心基础设施中,这种能力可让你经过丰富的经验和自身的知识快速而准确地发现问题之所在。这种能力只可意会,不可言传。没有人会提供和“超天然故障排除”有关的认证的。安全
可是,那些重量级的问题解决专家都会遵照一些通用的,不成文的规则。这是我本身使用的六个规则。注意,它们适用于大多数状况,可是并非全部状况。服务器
一、永远不要修改服务器或网络设备的链接接口网络
虽然这听上去很简单,可是,使人吃惊的是,人们常常会修改他们用于链接到某个设备的网络接口的属性,这种行为的失败率很高。有时,这条规则多是可选的,可是,若是有一种方法能够排除潜在的隐患,何乐而不为呢?若是你不得不修改这个接口,能够在这个接口上配置一个辅助IP(secondary IP)——经过另一个设备或子网,串行控制台,KVM等来链接。若是设备放在远程的办公室里(那里没有IT职员),那么这绝对是一条真理。运维
二、保证老是有办法回到原点ide
不管什么时候,只要有可能的话,都要提供一种能够把问题恢复到原始状态的方法。这意味着,在对故障磁盘作任何修改之前,应该为这个故障磁盘作一个映像,备份整个目录结构(你不可能知道你之后须要哪些文件,这样能够以防万一),或者,在你胡乱摆弄一个已经出现故障的操做系统之前,应该在物理服务器上抽取出这块磁盘的RAID1阵列。固然,在虚拟机环境下,这会更加容易一些,由于你能够简单地作一个快照。工具
三、文档,文档,仍是文档操作系统
在全部这些规则中,这条规则也许是你们最少遵照的规则了。毫无疑问,应该把一个问题和解决方法文档化。当你处在混乱状态之中的时候,你的解决方法也许并不明智。这就是说,当一个问题尘埃落定之后,要保留一份“尸检报告”,经过这份报告,你能够从新检查当时那个解决方案采起的步骤和途径。把它写下来,而后把它保存在安全的地方,最好是放到公司内部的wiki上;而且,应该备份到几个不一样的地方。日志
推荐阅读:系统管理员应该怎样高效的书写文档htm
四、在IT领域,不存在魔法,可是却存在幸运
就像 Thomas Jefferson 说的那样:“我发现我工做的越努力,我就越幸运。”在IT领域,也是这样的。你花费越多的时间来研究你的基础设施,关注路由器,交换机,服务器和其余设备的特定的工做条件,你的基础设施就会运行的越流畅。这些平常工做可让你在问题的早期阶段就发现这些问题,当问题真的发生的时候,你能够更加快速地做出反应。另外,在IT领域,有不少种方法能够“制造”幸运。例如,使用一些工具,让网络设备配置的备份自动化;若是使用这种方法的话,当你的交换机发疯的时候,你能够在几分钟内恢复它,而不是几个小时。
推荐阅读:系统管理员最须要自动化的十大任务
五、在你修改每一个配置文件之前,要对它们进行备份
这条规则只适用于Unix服务器和几乎各方面的配置都提供了配置文件的网络设备。在你弄坏敏感的配置之前,首先对交换机和TFTP(Trivial File Transfer Protocol)主机的配置文件进行备份。在Unix系统上,能够简单地把something.conf cp到 something.conf.orig。
在必要的时候,若是想恢复到过去那个良好的状态,只须要简单地把文件拷贝回去,而后重启那个服务就能够了。由于注册表的存在和Windows喜欢把简单的概念复杂化,因此,在Windows系统上,这一般是不可能的。即使如此,你仍是能够在胡乱摆弄注册表之前,对注册表进行备份,这样的话,若是天下大乱了。你能够从新导入备份的注册表文件。记住:当你对Windows注册表进行修改的时候,服务器的生命就掌握在你的手中。
六、监控,监控,仍是监控
一点点预防工做就能够省去一个月的周末加班时间。你应该对你的数据中心的方方面面进行监控,从房间的温度,机架,和服务器,到服务器进程检查,正常运行时间检查......你还应该为全部网络设备构建一个集中式的日志系统,除此以外,你还应该安装一些趋势分析工具来监控带宽利用率,温度,磁盘空间的使用率,和其余的参数。当这些参数超过正常的阀值的时候,那些监控工具应该经过必要的手段来通知你。
若是在一个数据库因为分区过满而被破坏的一个小时之前,能收到一个email或短信,那么能够省去无数的工做时间和宕机时间。对你的数据中心进行监控刻不容缓。
推荐专题:Linux监控工具的展览馆
这些规则不只仅是须要遵照的规则——在你平常的工做中,这些规则应该是贯彻始终的。在IT领域中,对于许多人来讲,它们是核心理念,可是对于其余人来讲,它们是神秘的——有点像忍者。