面试必问高可用,为何语雀宕机8小时
出品 | OSC开源社区(ID:oschina2013)
前情提要:
10 月 23 日 14 点左右,蚂蚁集团旗下的在线文档编辑与协同工具语雀出现服务器故障,在线文档和官网目前均无法打开。
随后,语雀官方在微博回应称:语雀出现网络故障,导致无法访问,此故障不会影响用户在语雀存储的数据,不会引起数据丢失,目前正在紧急恢复中。“语雀崩了”也登上热搜。
10.23 日当晚 22:24,语雀发布微博称:语雀的服务已全部恢复正常,用户访问各端语雀都可正常使用。
语雀此次宕机事故长达 8 个小时,在网络上引起巨大讨论。昨日,语雀团队就 10 月 23 日重大服务故障发布了复盘分析:
各位语雀的用户:
10 月 23 日语雀出现重大服务故障,且持续 7 个多小时才完全恢复,给用户使用造成极大不便,对此我们深感抱歉。经过复盘,我们在这里向大家进一步说明故障原因、修复过程和改进措施。
故障原因及处理过程:
10 月 23 日下午,服务语雀的数据存储运维团队在进行升级操作时,由于新的运维升级工具 bug,导致华东地区生产环境存储服务器被误下线。受其影响,语雀数据服务发生严重故障,造成大面积的服务中断。
为了尽快恢复服务,我们和数据存储运维团队全力进行数据恢复工作,但受限于恢复方案、数据量级等因素,整体用时较长。具体过程如下:
14:07 数据存储运维团队收到监控系统报警,定位到原因是存储在升级中因新的运维工具 bug 导致节点机器下线;
14:15 联系硬件团队尝试将下线机器重新上线;
15:00 确认因存储系统使用的机器类别较老,无法直接操作上线,立即调整恢复方案为从备份系统中恢复存储数据。
15:10 开始新建存储系统,从备份中开始恢复数据,由于语雀数据量庞大,此过程历时较长。
19 点完成数据恢复;同时为保障数据完整性,在完成恢复后,用时 2 个小时进行数据校验;
21 点存储系统通过完整性校验,开始和语雀团队联调,最终在 22 点恢复语雀全部服务。用户所有数据均未丢失。
改进措施:
通过这次故障我们深刻认识到,语雀作为一款服务千万级客户的文档产品,应该做到更完善的技术风险保障和高可用架构设计,尤其是面向技术变更操作的 “可监控,可灰度,可回滚” 的系统化建设和流程审计,从同 Region 多副本容灾升级为两地三中心的高可用能力,设计足够的数据和系统冗余实现快速恢复,并进行定期的容灾应急演练。
只有这样,才能提升严重基础设施故障时的恢复速度,并从根本上避免这类故障再次出现。为此我们制定了如下改进措施:
1、升级硬件版本和机型,实现离线后的快速上线。该措施在本次故障修复中已完成;
2、运维团队加强运维工具的质量保障与测试,杜绝此类运维 bug 再次发生;
3、缩小运维动作灰度范围,增加灰度时间,提前发现 bug;
4、从架构和高可用层面改进服务,为语雀增加存储系统的异地灾备。
赔偿方案:
为了表达我们的歉意,我们将向所有受到故障影响的用户提供如下赔偿方案:
针对语雀个人用户,我们赠送 6 个月的会员服务。操作流程:进入工作台「账户设置」,点击左侧「会员信息」,在会员信息页面点击「立即领取」,即可获得赠送服务。
针对语雀空间用户,由于情况比较复杂,我们会单独制定赔偿方案。请空间管理员留意语雀站内信。
这次的故障让我们深切地感受到了用户对语雀的依赖以及语雀肩上的重大责任。再次向所有语雀用户表达我们诚挚的歉意。我们将持续提升语雀的服务质量和服务稳定性,不辜负每一位用户的信任!
语雀团队
2023 年 10 月 24 日
语雀是蚂蚁集团旗下的在线文档编辑与协同工具,使用了 “结构化知识库管理”,形式上类似书籍的目录。与其他产品可以随意建立文档不同,语雀上的每一篇文档必须属于某一个知识库,语雀希望通过这样的产品设计,来从源头上帮助用户建立起知识管理的意识,培养良好的知识管理习惯。2022 年 2 月 22 日正式推出移动端版本,移动端 iOS 与 Android 是同步上线。
相关链接:
除了技术分析,语雀的故障又推动了本地优先软件 (local-first) 的讨论。不少人认为“数据在本地才是最靠谱的”,你怎么看待,欢迎来留言区分享。
活动推荐
10 月 28 日,本周六,源创会苏州站暨 Techo TVP 技术沙龙将正式拉开帷幕。
这一次,我们以“寻宝 AI 时代”为主题,希望能给每一位开发者新的启发,一起在 AI 新时代更上一层楼。同时,我们将沙龙地点定在了轰趴馆,希望各位玩得开心!
快扫描下方二维码,或点击“阅读原文”即刻报名🎁🎁
阅读原文立即报名