前两天跟一个做机房运维的朋友喝酒,他说了句话让我记到现在:机房里最贵的设备不是那几百万的存储阵列,是那个半夜两点接到电话还能心平气和爬起来的人。

他说这话是有原因的。他们机房去年进了几台新存储,厂商工程师调完参数就走了。三个月后的一天凌晨,一台存储的控制器告警,双控只剩一个活着。值班的小伙子远程看了半天没敢动,最后打电话把他从被窝里叫起来。他爬起来远程进去,看了一眼日志,发现是控制器之间的心跳链路闪断导致脑裂保护触发,直接手动切换了控制器角色,五分钟搞定。

他说,其实厂商手册里写得很清楚,值班的小伙子也看过,但真到凌晨两点、业务还在跑的时候,敢不敢下手是另一回事。手册教你怎么做,但教不了你"这个操作会不会把数据搞坏"的判断。

这让我想起自己刚入行的时候。第一次独立值夜班,凌晨三点一台数据库服务器负载飙到 40,我紧张得手心全是汗,翻着文档犹豫要不要重启。最后没敢动,打电话把师傅叫起来。师傅远程上来看了两眼,说:别慌,是凌晨的备份任务在跑,正常现象,你看这个负载曲线,每天这个点都这样。挂了电话我盯着监控看到天亮,确实,每天凌晨三点都这样。

从那以后我养成一个习惯:值班的时候,先把每台机器的"正常曲线"看一遍。负载、IO、带宽、连接数,什么时间段是什么量级,心里有个谱。这样半夜报警来了,第一时间能判断是"异常"还是"日常波动"。很多凌晨的虚惊,都是因为值班的人不知道这台机器这个点的正常状态是什么样。

还有个更扎心的故事。朋友说他们机房前年有个老员工离职,走之前把机柜整理得干干净净,标签打得整整齐齐,交接文档写了十几页。结果他走后第二个月,一台交换机坏了,按文档找到对应机柜,打开柜门发现——里面的设备跟文档上写的对不上。原来那老员工走之前几个月,机房做过一次网络改造,设备挪过位置,文档是改造前写的,他自己也忘了更新。

朋友说,那晚他站在机柜前面,看着满柜的网线和标签,第一次深刻理解什么叫"文档是会过期的"。后来他们定了个规矩:每次动过设备,当天更新机柜图和标签,谁动的谁负责改,改完拍照发群里。这规矩到现在执行了两年,再没出过"按图索骥找不到设备"的事。

其实做机房运维久了你会发现,这行最难的从来不是技术。技术问题都有答案,翻手册、查资料、问厂商,总能解决。难的是那些"人"的问题:半夜敢不敢动手、文档跟不跟得上变更、交接的时候有没有把真正重要的东西传下来。

我那个朋友最后说:现在招人,我面试不问你会不会配 RAID、会不会调 BGP,我就问一个问题——凌晨三点,业务在跑,你敢不敢在没人指导的情况下动生产设备?敢的,我招;不敢的,慢慢练。因为这个行业的本质,就是替客户守着那台不能出事的机器,守夜的人靠得住,机器才靠得住。

这句话我到现在还在琢磨。可能再过十年,我也能拍着胸脯说:我靠得住。