开源一个云环境网络流量镜像项目 Packet-Agent(参与送 PS4)

2019-09-12 16:03:31 +08:00
 joocejie

项目背景

  传统网络数据分析会在交换机上配置网络数据镜像, 将 Packet 复制后发送到目标机器,实现网络流量镜像的功能。
  而在云平台上,目前网络数据采集还没有统一的方案。针对私有云平台,目前有流表数据包复制采集、在 hypervisor 上监听采集、vmware 平台分布式虚交换机配置采集、libpcap 抓包采集等方案。
  对于 vmware 平台分布式虚交换机配置采集的方案,性能较好,不占用客户机资源,但其属于商业产品,且只适用于购买 vmware 私有云用户;而在 hypervisor 上监听采集,目前有产品开发,性能较好,但只适用于 OpenStack 私有云;采用 OVS 流表方案,优势是免费,不占用客户机资源,但是配置复杂,且只能用于 OpenStack 私有云。
  因此,开发基于 libpcap + GRE 封装转发的应用,或许是云平台目前最优的网络流量镜像方案。其使用简单、开源、适用于各类公有云和私有云。

Packet-Agent 简介

  Netis Packet Agent ( https://github.com/Netis/packet-agent) 基于 libpcap 技术,从业务网卡抓包,进行 GRE 封装后将采集到的数据包发送到另一台远端机器,供分析使用。

Docker Kubernetes 支持

  Packet-Agent 对 Kubernetes 也提供了支持方案。简单来说,Packet-Agent 封装成容器后,与需要监控的业务容器放在同一个 K8S Pod 中,与其共享网络层并抓包镜像网络流量。
  具体方案见项目文档:K8S_traffic_mirror

参与 Packet-Agent 项目

  欢迎大家参与此项目,包括 star, fork, 提交 pull-request, 报告 bug, 提出任何意见或建议,或者将该项目介绍给相关的朋友。衷心感谢。

抽奖回馈社区

  为感谢大家的支持,抽奖送一台 PS4 主机,抽奖方法如下:

  1. 在这个帖子下面回复参与讨论。
  2. 获奖资格:从现在起到 2019/09/18 23:59:59 参与讨论的前 500 名用户具有获奖资格。
  3. 中奖号码 = 2019/09/19 日 A 股大盘收盘点数 * 100 % 所有具有获奖资格的用户排序去除重复后的总数('*'是乘法,'%'是数学取余数)
  4. 比如:有 @y_user @x_user @z_user @x_user 3 个用户依次回复了 4 次,那么所有具有获奖资格的用户排序去除重复后就是 @x_user @y_user @z_user,分配给他们的抽奖号码依次是 0,1,2。假设 A 股收盘点数是 3012.34 点,那么 3012.34 * 100 % 3,中奖号码就是 1,中奖用户就是 @y_user
  5. 提示:因为会排序去重,多次回复不会增加中奖概率。
22286 次点击
所在节点    分享创造
549 条回复
joocejie
2019-09-12 23:16:50 +08:00
@Macolor21 项目 docs 目录下有个 benchmark:Packet-Agent 性能评测.md
如背景介绍,其他产品有类似功能,但是不是同样的原理,不方便简单做性能对比。
ptlkStar
2019-09-12 23:17:49 +08:00
分母
joocejie
2019-09-12 23:18:04 +08:00
@bullettrain1433 还有这种事情😓,我这个是公司出预算。
duola
2019-09-12 23:21:24 +08:00
分母来了。
zongwan
2019-09-12 23:21:34 +08:00
开源项目都送东西。。。分母分母
joocejie
2019-09-12 23:24:04 +08:00
@allencloud 与 tcpdump 相同的地方是都使用了 libpcap,不同点是 tcpdump 一般保存为本地 pcap 文件,Packet-Agent 将数据包做 GRE 封装后发送到其他机器。
joocejie
2019-09-12 23:32:42 +08:00
@harryge 确实和 Istio 同样使用 Sidecar 模式,将容器植入到 Pod 中,但我们只做简单的流量采集工作。
yyork
2019-09-12 23:33:19 +08:00
分母
joocejie
2019-09-12 23:36:44 +08:00
@c0878 没有用过 AWS 的 VPC Flow,看了一下它好像只采集 meta 信息,没有采集完整数据包。
可能我理解不到位,如果采集完整包,那功能就是接近的。
glorifiedatom
2019-09-12 23:42:03 +08:00
分母........
yeya24
2019-09-12 23:42:37 +08:00
如果要网络流量的话,直接用 goreplay 不是也可以吗? 顺便分母+1
mlhadoop
2019-09-12 23:45:19 +08:00
WilliamYang
2019-09-12 23:48:15 +08:00
支持
iamalive2008
2019-09-12 23:49:41 +08:00
支持一波
dewi
2019-09-12 23:49:58 +08:00
来看看
joocejie
2019-09-12 23:50:07 +08:00
@yeya24 谢谢,我改天借鉴一下这个 goreplay
810244966
2019-09-12 23:51:49 +08:00
顶一个
OrangeM21
2019-09-12 23:59:16 +08:00
分母来了。
Ultraman
2019-09-13 00:23:50 +08:00
PS4 啥的不重要,主要是我觉得对你们这个项目感兴趣🐶
arrebol42
2019-09-13 00:27:43 +08:00
for PS4 haha

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

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

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

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

© 2021 V2EX