Py学习  »  Git

GitHub宕机7小时47分钟,究竟发生了什么?官方发布复盘报告

CSDN • 10 小时前 • 13 次点击  
编译 | 苏宓
出品 | CSDN(ID:CSDNnews)

本周一深夜,GitHub 经历了一场长达 7 小时 47 分钟的大规模故障,Issues、Pull Requests、API、Actions 以及 Copilot 等多项核心服务受到影响。巧合的是,就在同一天,马斯克旗下的 Cursor 刚刚发布了代码托管平台 Origin,一时间也被不少人视为 GitHub 的潜在替代方案。

而这场持续近 8 小时的故障,究竟是怎么发生的?

GitHub 最新发布了事故复盘报告,终于给出了答案。报告显示,这并不是某一个服务突然“挂了”这么简单,而是从 Istio sidecar 扩容异常,到负载均衡器过载,再到客户端重试放大流量,多个环节接连出现问题,最终将一次局部故障演变成了一场影响多个核心服务的大规模事故。


一场近 8 个小时的宕机事件

根据官方发布的报告显示,8 月 17 日 13:28 UTC,GitHub.com 开始出现大面积错误和延迟,持续了 7 小时 47 分钟,直到 21:15 UTC 才完全恢复。

期间,Issues、Pull Requests、API、Actions 和 Copilot 等多个核心服务均受到影响,Web 和 API 的错误率最高一度达到约 20%,而 archive 和 raw content 下载的错误率甚至接近 50%。与此同时,SAML/OIDC 身份认证、SCIM、Team Sync 等功能也受到波及,部分依赖 GitHub.com 公共 workflow 定义的 GitHub Enterprise Cloud Actions 工作流同样出现异常。

GitHub 指出,这场事故最初发生在美国中部数据中心。

当时,一组运行 Istio sidecar 的 Pod 达到了并发限制,但由于自动扩容策略存在配置问题,扩容没有正常触发。具体来说,这套策略只监控了 host service 的容量,没有正确考虑 sidecar 的并发限制,导致服务无法正常扩容。

随后,一个故障逐渐向其他节点扩散,最终有 4 个 HAProxy 节点耗尽连接流量限制,网关认证链路开始出现大面积延迟和失败。

更麻烦的是,系统原本设计的“retry”机制没有帮上忙,反而让情况进一步恶化。

大量请求在失败后不断重试,进一步增加了内部负载均衡器的压力,形成了典型的“重试风暴”。GitHub 随后将部分流量从美国中部数据中心切换到 Northern Virginia,在那里这些请求一度可以正常处理。与此同时,暂停出现问题的 HAProxy 节点后,服务也迅速出现大范围恢复。


VS Code 的一个内部 Bug 加剧了宕机时间

不过,Copilot 的问题并没有因此结束。

GitHub 发现,某个内部接口的延迟响应又触发了 VS Code 中一个此前隐藏的重试 Bug,导致相关请求被进一步放大,流量最高被放大了约 10 倍。

Copilot Token Service 的正常流量原本只有 7000~9000 RPS,事故期间却飙升至 7万~10万 RPS。

为了控制这场“retry loop”,GitHub 临时降低了网关的 gateway retry,同时在负载均衡器层面阻断 Copilot Token Service 的相关请求,并通过返回 403、再逐站点逐步恢复流量的方式,让服务重新回到可控状态。

最终,大部分服务在 16:36 UTC 左右恢复,Actions 持续降级至约 18:03 UTC,而 Copilot Token Service 则直到 21:02 UTC 才完全恢复。


还有一个额外因素:爬取攻击

这次事故还有一个额外因素:GitHub 在故障期间还遭遇了针对 codeload 接口的多起爬取攻击,进一步增加了恢复过程中的复杂性。


GitHub 接下来会怎么改?

为了避免类似事故再次发生,GitHub 表示将采取以下措施:

  • 修正自动扩容策略,将服务网格 sidecar 的并发和容量纳入扩容判断;

  • 全面审查 Istio 在受影响服务中的请求、并发以及扩容限制;

  • 重新检查网关和客户端的重试次数及退避机制;

  • 修复 VS Code 的重试行为,避免再次放大 Copilot Token 流量;

  • 加强负载均衡器容量监控以及跨区域故障切换机制。

来源:https://www.githubstatus.com/incidents/zkxwbgr0cnmx

图片

云端筑基:重构下一代AI数据中心底座

GitHub大规模宕机7小时!马斯克旗下Cursor趁机“杀入”代码托管发布Origin,内部员工调侃:本想更早发布的

“我不会写代码,只是个Vibe Coder啊!”靠AI捣鼓的App爆火后,1亿美元大公司找他接单,他却慌了……

📢最后,说一件事
2026 奇点智能技术大会与C++及系统软件技术大会终于要和大家见面了。
11 月 20-21 日·北京,奇点智能研究院联合 CSDN,把两场技术大会放在了同一个时空里:
  • 奇点智能技术大会(始于 2016)——聊大模型、AI Native、企业级 AI 落地、多模态与世界模型;
  • C++ 及系统软件技术大会(始于 2005)——聊现代 C++ 演进、AI 算力与推理优化、高性能低时延系统。
为什么要放在一起?因为我们越来越相信——上层 AI 应用的爆发,离不开底层系统软件的支撑;而底层技术的演进方向,也正在被 AI 重新定义。
这次大会汇聚 70+ 位技术专家、18 个主题、1000+ 同行到场。
如果你也在这些方向上做研究、做产品、做工程,别错过。
图片

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/200015