EBPF峰会第一天总结

2020-10-30 04:04:16

EBPF峰会的第一天结束了,这当然是一个令人惊叹的一天,充满了关于eBPF的信息,这项技术正在改变Linux网络、可观察性和性能的形态。

如果你错过了第一天的主题演讲和闪电演讲,你可以观看整个活动的重播。个别讲座及其链接将在下周内提供。

托马斯·格拉夫(Thomas Graf)首先向与会者致以热情的问候,他说,团队预计会有数百人参加,但参加活动的人数远远超出了最初的预期,来自1100多家不同公司的注册人数超过了2200多人。这句话的意思是,要友善,要有人性化的态度。他接着说,团队预计会有数百人参加,但活动的到场人数远远超出了最初的预期,来自1100多家不同的公司。

然后,托马斯为接下来的主题演讲和闪电演讲做好了准备,这将是AdiVerse演讲者小组的一系列非常多样化的话题,从大学毕业生到行业领袖。无论你是eBPF的新手,还是经验丰富的老手,这里肯定会有一些新鲜的东西给你。

开场主旨演讲的题目是eBPF编程入门指南,由Aqua Security的利兹·赖斯(Liz Rice)介绍。Liz向我们简要解释了什么是eBPF程序,并解释了用户空间和内核空间之间的区别。她接着概述了什么是eBPFmap,以及如何根据事件触发eBPF计划。然后,她说明了如何轻松、快速地构建一个eBPF程序,该程序可以基于kbe打印“你好,世界”。KProbe通常用于调试或监控生产系统。在向我们展示了如何使用bcclilibrary来实现这一点之后,Liz演示了如何在eBPF映射中存储这些数据,这创建了一个更具伸缩性的解决方案,以及如何从用户空间应用程序中检索这些数据。如果您是eBPF的新手,Liz在这个开场主题演讲中提供了一个令人惊叹的介绍。

接下来,丹尼尔·博克曼(Daniel Borkmann)发表了题为“BPF是一个从根本上更好的数据平面”(BPF";BPF)的演讲。Daniel首先概述了eBPF及其作为执行引擎的功能。Daniel列举了内核对eBPF支持的改进,包括对eBPF到eBPF函数调用、有界循环、全局变量、静态链接、BTF的支持,以及对每个程序多达100万条指令的支持。所有这些都允许解决许多有趣的用例。Daniel还讨论了如何使用eBPF减少内核的攻击面,并展示了实现基于eBPF的修复的工作流程如何比等待来自特定发行版的后端口内核更快、更容易部署。他接着谈到了如何使用eBPF提高内核的可伸缩性和可扩展性,以及XDP与DPDK在负载平衡和DDoS缓解用例中的性能比较。此外,他还讨论了为容器和Pod实施基于eBPF的策略如何比传统防火墙执行得更好、更快;然后,他讨论了如何在Pod到Pod网络以及后端应用程序的服务负载平衡情况下使用基于eBPF的解决方案来提高原始性能。他详细介绍了最近合并的对BPF_REDIRECT_PEER()和BPF_REDIRECT_NEIGH()的支持如何能够提供Pod到Pod的连接,从而完全消除主机堆栈开销并带来显著的性能提升。最后,他展示了如何使用eBPF来实现与带宽管理、TCP拥塞控制等相关的附加控制。

短暂休息后,塔比莎·黑貂和劳伦特·伯纳耶在Datadog展示了我们的eBPF之旅。Datadog运行数万台主机,数十个Kubernetescluster,并在多个云提供商上运行。他们的云架构位于每个Pod可路由的IP地址上,确保每个群集都可以使用唯一的范围直接访问。这增加了管理IP地址空间的开销,并且跨群集发现变得更具挑战性。最初,Datadog为每个提供程序依赖不同的CNI插件,但不同的提供程序之间存在差异。在许多情况下缺乏网络策略支持,并且没有实现端到端加密的简单方法。对于服务负载平衡,最初的设计依赖于Kube-Proxy和iptables,然而随着规模的扩大,这一开销也变得具有挑战性。虽然IPV能够缓解一些最初的痛苦,但随之而来的是连接跟踪的额外挑战,不是在一层,而是在两层,而且IPV缺乏与ipables相同的功能。本质上,这两种解决方案都不是设计成客户端负载均衡器的,尤其不是针对Kubernetes的。由于这些要求,Datadog选择了cilium作为他们的CNI插件。借助Cilium,Datadog能够完全删除Kube-Proxy,并开始使用eBPF实施网络策略。Cilium非常适合,因为它是多个云提供商的通用CNI,并且能够轻松实现端到端实施

最后,有很多精彩的闪电演讲,每个演讲只有5分钟长,但却充满了对eBPF社区有用的信息。以下是演讲者和主题的快速列表:

Bryce Kahle(Datadog)--应该如何以及何时测量eBPF程序的CPU开销。

托马斯·格拉夫(Thomas Graf)结束了这一天的活动,感谢所有的演讲者以及在后台工作的团队,他们帮助支持了这次活动,并使其取得了成功。明天加入我们参加eBPF峰会的第二天,也一定要加入我们的SLACK。

如果您想参加10月29日的eBPF峰会第二天,请注册免费直播。