一个运维的存在感:微盟36小时事件,我们该反思什么?

网络 新闻
今日,微盟发布有关微盟系统故障通告。通告指出,2月23日19点,系统监控报警,服务出现故障,大面积服务集群无法响应,生产环境及数据遭受严重破坏。

今日,微盟发布有关微盟系统故障通告。通告指出,2月23日19点,系统监控报警,服务出现故障,大面积服务集群无法响应,生产环境及数据遭受严重破坏。

此外该公司旗下SaaS业务服务出现故障,预测对有关业务带来一定负面影响。

目前,公司正进行生产环节和数据修复工作,预计2月25日晚24点前生产环境将修复完成,所有新用户可恢复服务;预计2月28日晚24点前老用户数据修复可以完成。

此次事故经调查系微盟研发中心运维人员贺某所为,贺某于2月23日晚18点56分通过个人VPN登入公司内网跳板机,因个人精神、生活等原因对微盟线上生产环境进行恶意破坏。目前,宝山公安局已将贺某刑事拘留,犯罪嫌疑人承认犯罪事实。

反思:频繁吃一堑,如何长一智

在谈反思之前,在此次事件中有几个问题我们还要关注一下,为什么这么长时间还没恢复?

为什么一个人可以有这么大的破坏性?

从公告中,我们可以看到,到目前为止,仍在进行中的恢复动作就是做数据恢复。

所以有网友说不难推断,这次故障被破坏最严重的就是生产系统的数据库,而且一定是核心库,或许应用环境也被破坏掉了,否则影响不会像现在这么大。

1. 数据恢复这么晚,说好的灾备呢?

说道数据回复的时间长可能是以下几个原因造成的:

  • 这个事件非常不幸,就是传说中删库跑路的操作,而且极有可能是直接做了rm -rf或者fdisk这样的基本不可逆转文件删除操作,更极端可能是主备一起干掉了。
  • 数据库备份没有做好。可能压根就没有备份,只能从磁盘文件系统维度恢复;有全量备份,但是无增量备份,全量有可能是一个月、一周,三天等等,这中间的增量备份没做。

不管哪一种,只要是数据库备份机制不完善,没做过完整的恢复验证,真正要恢复的时候一定会花大量的时间找回数据。

2. 论一个人的破坏性?

从这次事件看,微盟这种规模的公司不太可能像大公司,一下招很多运维或DBA,然后每个运维和DBA都严格按照不同业务授权,也就是每个DBA只能访问有限的业务库。

小公司的成本不支持这种做法,而且招了这么多人也没这么多事情可以干。

所以,对于绝大多数中小型公司来说,普遍和必然的现象就是,一个运维或DBA管整个系统,并且拥有整个系统所有主机的最大权限,比如root。

说做好权限管控,要分层分级等等,这些玩法只针对大公司有效,因为大公司有钱,有量,有事情干,招一批人,分分工,分分权限,各管各的,完全没问题。对微盟这种类型的公司基本不可行。

3. 避免问题,我们可以做什么?

以上2个问题主要集中在运维人员权限太大,方便做了极端操作;公司没有有效的备份恢复机制。针对这两个问题,网上也有网友列出了自己的想法,小编罗列了几点。

  • 使用云产品,微盟虽然跑在云上,但是很显然并没有直接使用云数据库产品,应该是用了云的裸金属或者是虚拟机,然后在服务器上自己搭建的MySQL数据库。因为从我们使用的经验看,当前任何一家公有云厂商的数据库产品,都会有比较完善的自动备份和恢复机制,而且根本没有机会去执行rm -rf 和 fdisk这样极端的操作。
  • 做好备份。如果真心觉得自己有能力自建,那一定做好全量备份,增量备份,延迟备份,全量备份要多机房,异地备份,因为数据是核心资产,应用全删了还可以重新部署。
  • 关于权限控制,中小型企业如果真的没法做到最小授权,建议上个主机安全管控软件,或者堡垒机,各个云厂商都有,类似rm -rf 、fdisk、drop等等这样的高危命令是可以实时拦截掉的。

技术人自觉才是保护用户数据的最后防线

最近几年,由于技术人员故意或者有意造成的事故不计其数。2018 年 3 月,Stack Overflow 发布了他们的开发者调查报告,并首次提出了有关道德的问题。对于“开发人员是否有义务考虑代码的道德影响”这个问题,有近 80%的人回答“是”。不过,只有 20%的人认为他们最终在为不道德的代码负责,40%的人会在被要求的情况下写不道德的代码,只有 50%的人表示在发现不道德的代码时会举报。

如果代码对世界的影响不大,那么这也许就不成问题。打个比方,如果你写了一个对 100 个人不利的算法,虽然这事不怎么光彩,但产生的影响也是有限的。但是,如果你在拥有数亿用户的 Facebook、Google、微信上做同样的事情,结果就会很严重。

对于开发者来说,光是每天写业务代码就已经让人心力交瘁了。更何况不管在国内还是国外,技术在大部分时候都是为业务服务,开发者的话语权是拗不过盈利这条大腿的。但是,遵守职业道德是最后的底线,如果技术人员做不到这一点,那保护用户数据的最后一道防线就会崩塌。

所以,技术人的自我修养,在纷繁复杂科技产物的当下显得更加关键。

 

责任编辑:赵宁宁 来源: SDNLAB
相关推荐

2020-03-02 11:14:32

技术周刊

2020-02-26 14:07:58

删库微盟运维

2021-08-08 11:17:58

谷歌Matt编程

2020-02-25 16:48:15

微盟集团人为破坏瘫痪

2020-02-25 17:15:33

微盟运维数据修复

2012-05-16 15:24:44

IT运维服务天玑科技IT管理服务

2011-01-10 14:24:35

CIO快乐运维

2017-03-27 17:49:40

戴尔服务器

2020-10-10 08:57:30

网络攻击微盟删库事件网络安全

2018-10-18 10:40:27

微博服务器运维

2020-12-09 11:00:44

Nginx 运维Tomcat

2024-04-29 13:07:00

运维保命原则Oracle

2020-10-23 10:50:39

内存泄漏语言代码

2020-12-15 10:52:44

CIO企业网

2020-12-21 06:09:39

线程Java对象

2016-09-30 09:22:55

2017-09-04 07:34:11

IT运维运营

2011-10-27 21:13:28

2009-09-16 13:33:01

运维管理

2018-04-11 10:04:55

笔记工具微信收藏
点赞
收藏

51CTO技术栈公众号