如何看待 2021.07.13 B 站崩溃事件

2022-07-15 08:39:10 +08:00
 Stendan

分析报告: https://www.bilibili.com/read/cv17521097

14839 次点击
所在节点    哔哩哔哩
103 条回复
dorothyREN
2022-07-15 14:43:19 +08:00
@wangyzj #43 我现在都后悔入了运维的坑
exploreexe
2022-07-15 14:43:31 +08:00
你去知乎发帖子啊,还怎么看。。。
GeorgeGalway
2022-07-15 14:48:33 +08:00
@VZXXBACQ 我感觉也是,前几楼的冷嘲热讽让我怀疑楼主发了个钓鱼文章
blless
2022-07-15 14:53:27 +08:00
本老运维出来说一点点。
核心就是 B 站对运维投入应该不够重视。几个关键字,2021 年,自建机房,OpenResty+注册中心 ,线上网络和办公网络互通,关键业务 SLB 居然还要临时新建,业务回滚极不完善。

不过也是事后 BB 罢了,线上原因多种多样。运维做多了,个人觉得核心在于不是排查出问题或者解决问题,而是快速恢复,降低影响。所以一个老运维需要很清楚知道,一些改动可能影响的范围。

这里事故的关键点其实在于,利用 OpenResty 的灵活性,接入了一个可以动态获取网关配置的注册中心。也就是说 LB 的配置变更的核心在于注册中心配置下发的配置。(我以前公司任何可能改动到网关的配置审核都是三层审核)。这里我猜很有可能 B 站注册中心下发配置权限在另一个部门,而且可能绕开了线上运维人员的审核。然后整个事故报告里面没有提到一句下发错误配置的部门,整个事故报告围绕自身问题...似乎看到了一个已经被强势业务部门 PUA 成性的背锅老运维了。所以如何把关键变更权掌控在运维手上,或者至少有效通知到运维人员,才是运维的关键。但是这一点往往因为业务线太长,需要公司更高层级的支持,所以往往一个公司的运维好坏是跟公司整体相关的。强势业务部门就会以各种理由抵制这些手段,老板也会站在业务部门角度。没有任何办法,只能等血淋淋的线上事故发生之后,趁机搞一点运维建设。

另外好多人一说事故就提高可用,问题是高可用上限是没有边界的。公司不注重运维体系建设,盲目砸钱搞高可用,本来人就不多,还要加工作量,我只能说下次事故说不定指日可待
hsiaochi
2022-07-15 14:55:44 +08:00
用手机看,用电脑看,用平板看。。。
pastor
2022-07-15 14:57:02 +08:00
@blless 感觉应该多加一些配置中心分组,不同节点连到不同的配置中心,升级的时候也可以分批次更新配置,按分组从小到大、先更新小分组,跑一阵正常了之后再更新下一批,避免一跪全跪
zapper
2022-07-15 15:04:43 +08:00
@VZXXBACQ #59
@GeorgeGalway #62
我觉得其实这个帖子大可不必使用这个标题,甚至有点文不对题。因为内容主题是这次事件的解决报告,而这次事件本身早就已经过去一年了。
而我所说的“v2 知乎化”,包括但不限于此类大量以前泛滥于知乎的主题:“如何看待 x“、”x 是什么体验”;
而“知乎贴吧化”,意为知乎现在泛滥着贴吧以前出现的各种求助类问题例如“windows 未能启动 按 F8 没用怎么办?”。
而大部分贴吧早就已经断气了
当然我没有权利去管别人发什么,只是单纯表达对现在帖子标题的一种无奈
blless
2022-07-15 15:16:01 +08:00
@pastor #66 能做的话都不是事,但是这种一般工作量太大了。涉及人和部门非常多,协作起来真的要命。除非整个 Ops 平台化建设都很完备才有可能这么搞
maguowei
2022-07-15 15:21:27 +08:00
@mmnnyycc 看到了,在微博上
HFX3389
2022-07-15 15:36:05 +08:00
@dorothyREN #61 但我学前端的是被 recoil 搞的人都蒙了,最后发现好像我不适合造东西,适合用东西...
realrojeralone
2022-07-15 15:47:08 +08:00
a90120411
2022-07-15 16:18:39 +08:00
我只知道 B 站在每个视频连接后面动态加了 vd_source 参数很恶心。
wangyzj
2022-07-15 16:25:29 +08:00
@blless #64 万事不决先重启
重启不行就多重启几遍
yujinchn
2022-07-15 16:31:17 +08:00
@shyrock 你看我回复的谁,没说找不到啊,我意思就是说这种最好能找出详细原因,不然指不定下次又出现
flyqie
2022-07-15 16:36:20 +08:00
看完了,着实没想到当时的事故居然由于这种低级错误。

通过一个缺失的 if type(b) == "number",暴露出来了这么多问题。。
yujinchn
2022-07-15 16:37:20 +08:00
@shyrock 就你回复的啊,我的问题,说的有歧义,没说 b 站没找到,是说要是原因没找到的话
A555
2022-07-15 17:16:03 +08:00
去年的事,今年发事故报告
salmon5
2022-07-15 17:32:46 +08:00
我只关心内部管理和绩效上怎么处理的,其他都是渣渣
pastor
2022-07-15 17:36:13 +08:00
会不会 2022.07.16 14:00-17:00 直播时又发生宕机,如果赶巧,就更社死了...
Cbdy
2022-07-15 17:38:34 +08:00
B 站的网站做的是真烂,令人作呕

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/866300

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX