20190121

一,历史回顾:20150528携程运维大事故

2015年5月28日上午11点开始,携程旅行网官方网站突然显示404错误页,App也无法使用,业务彻底中断。

据称是因为乌云网公布了携程的一个漏洞“携程旅游网服务器配置不当可导致官方邮件劫持”,携程修复后当天准备上线发布,但运维自动化系统有问题或者运维操作有问题,导致“发布不上去了,刚发就(根目录包括代码)被(物理)删”,虽然数据库还在,但应用都被删了,业务迟迟无法恢复。

当日下午,携程一度将流量切给了艺龙,但艺龙承受不了而雪崩宕机。

当晚19时许,离宕机过去8个小时后,携程旅行网手机APP首先恢复,但是提交订单仍然不稳定。

当晚22:45,携程服务全面恢复,至此,停服整整12个小时。

二,携程事故之后我们做了什么,最后落实了什么

当时我提出在Business Continuity Plan(BCP,业务持续计划)之外尽快落实Disaster Recovery Plan(DRP,灾难恢复计划)。

DCP的目标是:

  • 当IDC机房物理无法连接时,可快速异地重建生产系统。

它分为两个层级:

  • 代码和配置的灾难可恢复性;

  • 数据的灾难可恢复性。

时至今日其实通过以下做法间接达到了DCP的目标:

  • 代码和配置的灾难可恢复性:

    • Docker镜像:Web容器的配置都在Docker容器镜像里;

    • 私有分布式镜像仓库,能够做到在混合云多机房各处都有自动同步的镜像库;

    • 异地双活机制等于说异地备份了Nginx/DNS等服务配置信息;

    • CloudEngine(我们的研发协作平台)里保存了各种工程在不同环境里的应用属性(也是配置信息);

  • 数据的灾难可恢复性:

    • 异地备份:在iDB(我们的数据库自动化运维平台)的帮助下有数据库自动备份以及备份的可恢复性自动检查,并且做了异地备份;

    • 异地双活机制等于说异地同步了全量数据库。

三,20190120拼多多无门槛优惠券大事故

2019年1月20日凌晨1点到10点,整整9个小时,羊毛党徒们狂欢,从拼多多领取(而不是抢购)100元无门槛优惠券,据信拼多多损失高达数千万元。

据传,这个无门槛优惠券实际上对应于已过期的运营活动,但由于操作失误,导致凌晨又重新上线。

p.s.:

劵的来历:〃在拼多多官方的公告中指出此券为拼多多此前与江苏卫视《非诚勿扰》开展合作时,因节目录制需要特殊生成的优惠券类型,仅供现场嘉宾使用。除此之外,此种类型优惠券,从未在任何时候、以任何方式出现在平台正常的线上促销活动当中,甚至从未有任何线上入口。〃

四,拼多多事故对我们的启示,以及我们要做什么

运营规则,技术防护,风控预警,法律条款,电商行走江湖的四大护身法宝,缺一不可。

出了事儿不可怕,怕的是都没有人知道出事儿了。要不是当天上午有并发异常,拼多多技术团队也不会顺藤摸瓜发现被领走那么多券。

风控体系的建立,至关重要:

  • 我们已经上了业务保障平台和全链路追踪,能够实时监控第三方支付通道的活动,及时预警。但这还远远不够。

  • 应建立自动化的交易监控机制和风险监控模型,实时监控,及时预警;

  • 应通过分析欺诈行为特征创建反欺诈规则,对交易数据实时分析;

  • 应制定异常交易监测和处理的流程和制度;

  • 应依据已识别并确认的风险数据,建立黑名单数据库;

  • ……

每个电商都有规则漏洞,都有程序漏洞,无非是在多大范围内被黑产和赚客们薅羊毛。

风控体系包括对传统业务指标的监测和报警,至少能让我们发现系统潜在的漏洞,及时修补,而不是最后一个知道系统出事儿的人。

我们要把别人的历史当作自己的未来,这样才能知道过去人家错在哪里,我们现在应该怎么做。

欢迎关注云纵达摩院

再赠送旧文一篇,也是携程事故之后写的。

小伙伴们手滑集

郑昀 最后更新于2015/5/29


携程旅行网的技术团队今天注定是一个不眠之夜,我的猜测是自动化运维系统过于强大以至于误操作后覆水难收,加之历史悠久规模庞大各种新老系统交错,全面从新部署与平常迭代上线肯定不一样,难度系数更高。

这也就是为什么过去我反复强调审计历年来对我们做的企业内部安全审计非常重要,他们提出的意见,我们必须认真审视认真去落实。

为了警醒各位技术人员,下面列出本次携程误操作事件引发的各种手滑吐槽。

  • Rebuild:

    • 当年酷壳在亚马逊的时候,AWS的一个新人在工作第一天做熟悉开发环境自助培训时,他本来想连测试环境,结果连不上,老员工给了他一个配置,他没分清哪个是测试的,哪个是生产的,不小心联上了生产线数据库,把整个数据库给 Rebuild 了,导致全美 Netflix 停止服务数小时;

  • Recreate:

    • 某人用 hibernate 反向生成数据库的一张表,并且连的是测试库,结果一个配置没加,把所有的表都格式化掉并重新创建了一次。

  • UPDATE没有WHERE条件:

    • 十一年前,某人手写 SQL UPDATE 线上数据库,由于引号把 WHERE 子句截断,用户原创内容几乎全都被清空,不幸的是运维也出错了,备份程序停了半个月,于是全公司同事手工到搜索引擎快照中找回用户的文章。

    • 以前更新错误数据,结果手滑 where 条件还没写完呢,想动一下鼠标,结果点到执行。一下子把所有的采购单数据的某个金额给改了,后来 dba 立刻恢复我操作以前的数据,就这三五分钟的时间,客服那边就接到了超多投诉电话。

  • 配错了:

    • 有次做带宽调度算法,方向写错了,瞬间给一个 CDN 提供商搞了 100G 上下的带宽,持续 16 小时。给公司造成了近 20 万的带宽费用。某人至今最贵的bug。

  • 自己挖坑:

    • 某人曾把整个服务器全部抹掉了。事情是这样的,有一个硬盘是镜像备份,挂载的时候用 sda1 这样的名字,没有用 uuid。后来加了个硬盘,结果原来的数据盘成了 sda1,等于说从一个空盘做镜像。

    • 在高盛刚入职的时候一不小心把生产环境 compliance 数据库锁了,纽约 gsam 的 equity trading 停顿了15分钟,完了经理跟我说,没事儿,我闯过更大的祸。

  • 胆子太大

    • 好几年前刚开始学着做 windows 服务器管理,把几个 windows 服务禁用,结果造成有服务互相依赖启动不了,停机几十个小时。

  • 已然不知道该怎么说了:

    • 某年研发部所有电脑硬盘被偷,95%+的产品都丢了源代码,为了维护一个已经上线的产品不得已,挂 HttpHandler 来处理。

    • 某客户为了重新部署系统,将数据导出备份到移动硬盘,然后将 Raid 重新格式化,重新安装系统,当进行 Oracle 数据库重建,导入数据时发现,移动硬盘上的数据无法正确读取,文件缺失一半。

    • 曾经在 catch 里写过 system.exit。

    • drop 过生产环境数据库表的路过。

    • 刚入行时曾在代码里加过 system rm,然后测试环境里的大部分程序都失踪了,天真的以为是黑客干的。

    • 曾经把图片的地址都写成了“undefined”,上线后以为被 ddos 了。

  • rm -rf:

    • 血泪史参考《被小伙伴们吓哭了:可怕的命令》。

  • 理工科其他手滑方向:

    • 血泪史参考《理工宅之——那些年我们闯过的祸……系列》。

欢迎关注老兵笔记

转载于:https://www.cnblogs.com/zhengyun_ustc/p/pdd.html

中国IT史上两大严重事故对我们的警醒及预防措施相关推荐

  1. 中国互联网史上十大合并案

    中国互联网史上十大合并案:从群雄逐鹿到强强联姻, BAT依然掌权大半江山(转) 摘要:这一系列重大合并案背后,BAT魅影频现,腾讯系一枝独秀,阿里系和百度系不分伯仲.在市场竞争及利益驱动下,互联网行业 ...

  2. PC游戏史上十大最经典RPG

    PC游戏史上十大最经典RPG PC游戏史上十大最经典RPG 法师猫不凡(january-mage)于2005年12月30日   以下是偶认为的PC游戏史上10大最经典的角色扮演类游戏.由于列出的10大 ...

  3. 韩信点兵,在中国数学史上,广泛流传着一个“韩信点兵”的故事:韩信是汉高祖刘邦手下的大将,他英勇善战,智谋超群,为汉朝建立了卓越的功劳。据说韩信的数学水平也非常高超,他在点兵的时候,为了知道有多少兵,

    7 韩信点兵 在中国数学史上,广泛流传着一个"韩信点兵"的故事:韩信是汉高祖刘邦手下的大将,他英勇善战,智谋超群,为汉朝建立了卓越的功劳.据说韩信的数学水平也非常高超,他在点兵的时 ...

  4. Nature150岁生日:盘点史上十大重磅论文,中国13篇文章登上封面!

    1869年11月第一期Nature出版,今年是Nature创刊150周年.150年的漫漫长路,Nature见证了科学发展的挑战,也见证了人类历史上一次又一次重大科学突破.今天分享登上Nature封面的 ...

  5. 软件测试有多重要?史上十大软件缺陷灾难级事故

    众所周知,软件开发在一个软件项目中起主导作用,但如果软件没有测试或者测试不全面则会导致一系列的后果,有些错误甚至会造成重大的人员伤亡及财产损失, 由于软件是由人来完成的,所以它不可能十全十美,虽然不可 ...

  6. 推特史上最严重安全事故!马斯克奥巴马苹果等多位大V账号被黑,损失已达80万...

    大数据文摘出品 作者:刘俊寰.牛婉杨 对推特来说,今天注定是个不眠夜. 刚刚,这家全球最大的社交平台遭到了史上最严重.规模最大的安全攻击.大量大V认证账号被黑,包括比尔·盖茨.伊隆·马斯克.沃伦·巴菲 ...

  7. 苹果史上第二大收购!库克:掌握核心技术/苹果大中华区营收下滑4%,以上为今日内容...

    7月25日,苹果公司和Intel共同宣布,双方已经正式达成收购协议,苹果将收购 Intel 智能手机调节解调器业务的绝大部分,此次交易价值10亿美元. 对此,苹果CEO库克在周二财报会议电话上表示,以 ...

  8. 来聊聊COCO数据集上两大霸榜模型-CBNet和DetectoRS

    点击上方,选择星标或置顶,不定期资源大放送! 阅读大概需要9分钟 Follow小博主,每天更新前沿干货 [导读]今天我们来聊一聊在COCO数据集上成功刷榜的两大模型-CBNet和DetectoRS.它 ...

  9. 22亿!中国大学史上最大笔捐款诞生

    据清华大学官微介绍,10月22日上午,广东省国强公益基金会捐赠清华大学仪式在清华大学举行. 广东省国强公益基金会未来10年内将向清华大学捐资22亿元人民币,用于支持清华大学的基础前沿科学研究.人才培养 ...

最新文章

  1. tensorflow电子书(附下载链接)
  2. dwarf tower
  3. 业务直通式管理,你真的了解吗?
  4. python学习笔记 day04 列表增删改查
  5. IIS客户端证书访问配置
  6. php重放,Api 接口安全-防篡改,防重放理解总结
  7. 哪些类型的 Component 不需要参加 SAP Spartacus 的服务器端渲染?
  8. 对IEnumerableT,IDictionaryTkey,TValue,ICollectionT,IListT的总结
  9. 鱼不长肢蛇不长脚,多多益善更烦恼?人猴嵌合肥胖有救,生活还要压力要小!...
  10. MindSpore21天实战营丨基于MindSpore的ResNet-50蘑菇“君”的识别应用体验
  11. Linux防火墙配置与管理(16)
  12. mysql5.0优势_mysql5.0.1提供视图功能其优势
  13. 控制层SpringMVC和Struts2的区别
  14. CUMCM→MCM/ICM→NPMCM:关于国赛(全国大学生、研究生、博士研究生数学建模竞赛)和美赛中的数学的专业词汇详细攻略—美国数学建模竞赛
  15. 关于浏览器无法访问宝塔控制面板解决方法
  16. 明日之后维护服务器什么情况,明日之后无法连接服务器是什么原因
  17. 酷睿i5 1235u参数 i5 1235u处理器怎么样
  18. ZOJ 1788 Quad Trees
  19. linux设置sfq队列参数,Linux内核中流量控制(5)
  20. SpringBoot项目的pom.xml文件中maven-project-info-reports-plugin报红解决办法

热门文章

  1. IaaS虽好,切勿忽视SaaS
  2. Crawler168-01 | 爬取搞笑图片之青年图摘
  3. 基于YRCloudFile容器存储的WordPress HA部署方案
  4. 将最小特权原则应用到Windows XP用户帐户
  5. 星秒科技tof激光雷达PAVO的ros驱动安装与测试
  6. 融合差分进化和混合多策略的麻雀搜索算法
  7. mysql联表查询语句示例
  8. 基于安卓APP的二手汽车拍卖APP系统
  9. 单井号(#)和双井号(##)
  10. 最新超多模板的个人发卡网程序源码+支持易支付