Netflix 如何利用 eBPF 提高基础设施的可观测性
创始人
2024-12-15 13:01:17
0次

作者 | Sergio De Simone

译者 | 刘雅梦

策划 | 丁晓昀

为了有效且高效地调查多租户系统的性能,奈飞(Netflix)一直在尝试使用 eBPF 来对 Linux 内核进行检测,以收集有关进程如何调度并检测“吵闹的邻居”的持续且深入的见解。

使用 eBPF,奈飞(Netflix)的计算和性能工程团队旨在规避一些通常会使“吵闹的邻居”检测变得困难的问题。这些问题包括 perf 等分析工具所带来的开销,这也意味着它们通常仅在问题发生之后才部署,以及工程师所需的专业知识水平。根据奈飞(Netflix)工程师的说法,eBPF 可以实现对计算基础设施进行低性能影响的观测,从而实现对 Linux 调度程序的持续检测。

奈飞(Netflix)工程师确定的关键指标是进程延迟,该指标可指示“吵闹的邻居”可能造成的性能问题:

为了确保依赖于低延迟响应的工作负载的可靠性,我们检测了每个容器的运行队列延迟,该延迟测量了进程在调度到 CPU 之前在调度队列中所花费的时间。

为此,他们使用了三个 eBPF 钩子:sched_wakeup 、 sched_wakeup_new 和 sched_switch 。当进程从“睡眠”状态变为“可运行”状态时,即当它准备好运行并等待一些 CPU 时间时,会调用前两个钩子。当 CPU 被分配给其他进程时, sched_switch 钩子会被触发。因此,进程延迟是通过 CPU 分配给进程的时间戳减去进程首次准备好运行的时间戳来计算的。

最后,在 Go 程序中处理通过插装内核所收集到的事件,以向 Atlas(Netflix 的度量指标后端) 发送度量指标。为了将收集到的数据传递给用户空间的 Go 程序,奈飞(Netflix)工程师决定使用 eBPF 环形缓冲区,它提供了一种高效、高性能且用户友好的机制,不需要额外的内存复制或系统调用。

除了计时信息外,eBPF 还可以收集有关进程的其他信息,包括将进程与容器关联起来的进程的 cgroup ID,这是正确诠释抢占的关键。事实上,检测“吵闹的邻居”不仅仅是测量延迟的问题,因为它还需要跟踪进程被抢占的频率以及是哪个进程导致的抢占,无论它们是否运行在同一个容器中。

例如,如果一个容器达到或超过其 cgroup CPU 的限制,调度程序将对其进行限流,从而会导致由于队列延迟而引起的运行队列延迟明显增加。如果我们只考虑这个指标,我们可能会错误地将性能下降归因于“吵闹的邻居”,而实际上这是由于容器达到了它的 CPU 配额上限导致的。

为了确保他们的方法不会影响被监测系统的性能,奈飞(Netflix)的工程师还创建了一个用于测量 eBPF 代码开销的工具 bpftop。使用该工具,他们可以确定几类优化,以进一步减少它们最初的开销,并使每个 sched_* 钩子的时延保持在 600 纳秒的阈值之下。从而使其能合理地不断运行钩子,而不必担心它们会对系统性能造成影响。

如果你对这种系统性能监测方法感兴趣,或者想更好地了解 eBPF 的内部工作原理,原始文章所提供的细节要比这里所介绍的详细得多,其中还包含了有用的示例代码。

作者介绍

Sergio De Simone 作为一名软件工程师已经有超过 25 年的工作经验了,曾在一系列不同的项目和公司工作过,包括西门子、惠普和小型初创公司等不同的工作环境。在过去的十多年里,他一直专注于移动平台和相关技术的开发。他目前就职于 BigML, Inc.,负责 iOS 和 macOS 的开发。

原文链接:

https://www.infoq.com/news/2024/09/ebpf-noisy-neighbors/

下载量超 5000 万的知名应用,开发团队“全军覆没”,从此发版人唯剩老板一个

开源 9 年后,词频数据库 wordfreq 宣布停止更新,创始人:网上全是垃圾,OpenAI 和谷歌要为此付出代价

突发!高通被曝有意收购英特尔;思科N+7裁员,员工称人性化;百度最高奖发出2800万!李彦宏:再苦不能苦技术人 | Q资讯

内部数百工程师可随意摄取 OpenAI 先进模型!OpenAI 前员工揭露:谏言即被开除,祈祷公司不报复

相关内容

新浪意甲热点小时报丨202...
  1、梅西退出国家队后 尼科·帕斯和劳塔罗成阿根廷10号潜在继承...
2026-11-11 01:47:21
新浪科技热点小时报丨202...
  1、对话赵德力:未来十年全球将迎来飞行汽车高速发展期 马斯克入...
2026-11-11 01:46:46
新浪AMD热点小时报丨20...
  1、中国电子与AMD签下75亿大单  (来源:观察者网)(文/...
2026-11-11 01:46:46
新浪5G热点小时报丨202...
  1、阳光电源澳洲连签三单,锁定1.5GW光伏+4GWh储能  ...
2026-11-11 01:46:42
新浪新能源汽车热点小时报丨...
  1、新能源车占到三分之二 为什么还有人买油车  2026年10...
2026-11-11 01:46:39
新浪硬件热点小时报丨202...
  1、他山科技成为英伟达最新数采设备触觉传感器服务商  (来源:...
2026-11-11 01:46:37
新浪NBA湖人热点小时报丨...
  1、背靠背两副皮囊:湖人无双核亦有赢球章法  背靠背,两种缺法...
2026-11-11 01:46:35
新浪旅游热点小时报丨202...
  1、上海迪士尼星愿酒店房价约3500元起,部分房已售罄  20...
2026-11-11 01:46:35
新浪中国足球热点小时报丨2...
  1、邵佳一:国足为所有符合标准的球员敞开大门,要全力以赴打好接...
2026-11-11 01:46:34

热门资讯

新浪硬件热点小时报丨2026年...   1、他山科技成为英伟达最新数采设备触觉传感器服务商  (来源:贝壳财经)新京报贝壳财经讯(记者程...
新浪影视热点小时报丨2026年...   1、金鸡奖获奖全名单出炉  10日晚第39届中国电影金鸡奖颁奖典礼在福建厦门举行梁家辉凭借电影《...
新浪机器人热点小时报丨2026...   1、亚马逊旗下Ring正式进军AI机器人赛道 推迟六年的安防无人机终于亮相  (来源:财联社)财...
新浪游戏电竞热点小时报丨202...   1、沫子杯直播被封:以为自己穿太少 结果是游戏角色  休赛四天后的PUBG沫子杯于昨日打响首轮突...
新浪足球热点小时报丨2026年...   1、邵佳一:国足为所有符合标准的球员敞开大门,要全力以赴打好接下来的比赛  北京时间11月10日...
新浪NBA森林狼热点小时报丨2...   1、球队实力榜:马刺8连胜升至榜首 雷霆森林狼杀进前三  北京时间11月10日,NBA官方公布了...
新浪半导体热点小时报丨2026...   1、美股半导体股反攻,AMD涨5%,中概股走弱,金银油集体下挫,美联储12月加息或成定局  据2...
新浪互联网热点小时报丨2026...   1、黄仁勋的CEO职务,不是"铁饭碗":英伟达董事会若要罢免,无需任何理由  每经记者|罗雪琳 ...
新浪美联储热点小时报丨2026...   1、10月美国消费者价格指数环比上涨0.4%  来源:央视财经当地时间10日,美国劳工统计局最新...
新浪基金热点小时报丨2026年...   1、有“固收+”上半年赚27%,11月倒亏19%!近六成产品下半年“飘绿”,部分回撤逾30%  ...