每年回家,身为程序员的你,想必都会遇到 “你在什么厂工作、做什么工作,哪一行,工资多少,读了大学工资最少三五千起吧” 这样的问题吧? 对于这几个问题,许多程序员心中可能都有一个类似的答案:“搬砖的,拿着卖白菜的钱操着卖白粉的心”。 在这一行待久了,当指尖在键盘跳跃,每一次敲打有可能是在为公司添砖加瓦,也有可能是点燃炸弹;或者是晚上下班前还运行好好的服务器,第二天早上莫名其妙磁盘满了导致系统宕机,早上被领导狂喷;也或多或少遇到过发完版本后引发问题时在生产环境疯狂救火;又或者是在夜深人静时,受到bug之神的诅咒,无意识地敲下 “rm -rf /”。。。 这不,知名项目托管网站 Gitlab.com 今天宕机了。
Gitlab 官方对此也发布了消息称不小心删除了生产环境数据库,借助备份文件可能可以恢复。。。 GitLab.com 号称有五重备份机制:常规备份(24小时做一次)、自动同步、LVM快照(24小时做一次)、Azure备份(只对 NFS 启用,对数据库无效)、S3备份。这次事故发生时,所有备份全部无效! 要问为什么无效,现在还不得而知,IT界有很多未解之谜。。。这一次引发灾难的系统管理员,现在敲击接盘手都是抖的吧? 之所以对 “卖白菜的钱操着卖白粉的心” 有较深的感悟,是因为自己也干过这样的蠢事: 当年刚毕业,试用期,在某大厂,周五,下午五点多。 需要写个脚本批量增加某批用户(500多个)的属性,因为写的脚本有bug,在测试环境拿了有限的测试用户进行测试没发现问题。在生产环境执行时,500多个用户,就在一瞬间。。。资料完全写错了。 然后,技术总监把我叫过去拍着桌子训斥了十几分钟,我呆呆站在那里,有点发抖,眼眶湿润,就差没哭出来。要知道,当年部门每天300多w的收入,就是这500个衣食父母贡献的啊。。。 在我接受批评时,我的一些同事在根据“操作日志”、数据库冷热备份对数据进行恢复,过程持续到晚上9点,全部数据修复。 修复过后,总监把我叫过去给了一个拥抱,告诉我,“事情过去了,犯错才能成长,下一次注意就是了。我刚才太凶,向你道歉”。 这件事情过后,转正的时候部门并没有卡我,给予了宽容。但从这次卖白粉的经历,学到了几个教训: (1)对写操作代码重复、多人review,允许的话,先做灰度测试验证。 (2)不要在将近下班或休假时候执行有危险性的操作。 (3)此类操作操作审计日志必须有。 (4)生产环境的执行操作,最好双人以上同时操作、确认。 本文转载于微信公众号: 程序员和产品经理(devpdm),更多微信文章请扫描关注公众号: |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|