云环境网络流量镜像 Packet-Agent

BSD
C/C++ Python SHELL
跨平台
2019-09-11
jooce

项目背景

传统网络数据分析会在交换机上配置网络数据镜像, 将 Packet 复制后发送到目标机器,实现网络流量镜像的功能。而在云平台上,目前网络数据采集还没有统一的方案。

针对私有云平台,目前有流表数据包复制采集,在 hypervisor 上监听采集、vmware 平台分布式虚交换机配置采集、libpcap 抓包采集等方案。对于 vmware 平台分布式虚交换机配置采集的方案,性能较好,不占用客户机资源,但其属于商业产品,且只适用于购买 vmware 私有云用户;而在 hypervisor 上监听采集,目前有产品开发,性能较好,但只适用于 OpenStack 私有云;采用 OVS 流表方案,优势是免费,不占用客户机资源,但是配置复杂,且只能用于 OpenStack 私有云。


因此,开发基于libpcap + GRE封装转发的应用,或许是云平台目前最优的网络流量镜像方案。其使用简单、开源、适用于各类公有云和私有云。

Packet-Agent 简介

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

该项目提供一套低开销但是高性能的抓包工具:

  • pktminerg 是第一个发布的工具。该工具可以轻松地在网卡上抓数据包,用GRE头进行封装并发送到远端的设备,来进行数据包监控和分析

  • pcapcompare 用于比较两个 pcap 文件
  • gredump 根据特定的过滤规则抓取GRE数据包,并存储为 pcap 文件
  • gredemo 是一个 demo 应用程序,可以从 pcap 文件读取数据包,然后把它们发送到远端网卡。这个程序只能通过源代码编译生成

Docker Kubernetes 支持

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

参与 Packet-Agent 项目

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

的码云指数为
超过 的项目
加载中

评论(0)

暂无评论

暂无资讯

暂无问答

Google 的 Git v2 带来颠覆性性能提升?恐怕未必

作者简介 王振威,CODING 创始团队成员之一,多年系统软件开发经验,擅长 Linux,Golang,Java,Ruby,Docker 等技术领域,近两年来一直在 CODING 从事系统架构和运维工作 前言 最近 Google...

2018/05/27 11:23
7
0
探索 OpenStack 之(8):Neutron 深入探索之 OVS + GRE 之 完整网络流程 篇(转)

同 学习OpenStack之(7):Neutron 深入学习之 OVS + GRE 之 Neutron节点篇 中所使用的环境。 简单总结一下: Compute 节点上由Neutron-OVS-Agent负责: br-int:每个虚机都通过一个Linux b...

2016/03/29 10:10
71
1
码云已经支持 Git Wire Protocol

前言 两个半月前,Google 开发者宣布了 Git Wire Protocol,即 Git v2 协议,Git Wire Protocol 协议改进了 Git 的传输过程,增加了可扩展性。关于协议的背景和细节介绍,大家可以去 《码云即...

2018/09/05 16:04
1K
8
远程唤醒基础知识

远程唤醒基础知识 http://www.qiniankj.com/serviceShow.asp?id=243&filesort=19 了解远程唤醒 远程唤醒计算机的实现是计算机管理的一项重大发展。 在过去几年中,此功能从简单的远程开启电源...

2013/07/28 20:24
73
0
an openstack tech blog

The Quantum L3 router and floating IPs This post shows how the Quantum L3 Agent uses the Linux IP stack to implement the Quantum L3 Routing and NAT API extensions. It explains i...

2013/09/16 23:17
110
0
Multicast IP Address List

Introduction This page contains all the Multicast IP Addresses and shows what protocol they are mapped to. Should you ever use a packet sniffer to try and see what's on the netw...

2012/06/05 16:39
90
0
zabbix+oracle 由mysql转换为oracle

背景描述: 1、原来安装zabbix是在LAMP的环境下是可以正常运行;(Linux CentOS 7) 2、现想把mysql换成oracle,通过安装oracle客户端远程访问另外一台机器上oracle服务,客户e端和zabbix是同...

2016/07/06 12:03
66
0
OTRS在openSUSE11.3上的安装部署

OTRS在openSUSE11.3上的安装部署 一、具体安装说明可以登录OTRS的官网http://www.otrs.com/en/查看。在这里我们使用openSUEE 11.3版本的Linux系统环境。在安装OTRS之前要安装相应的应用,如m...

2012/07/29 11:17
431
0
微服务spring-cloud 链路追踪skywalking6.x引入

一、准备工作 环境: 1.jdk1.8,高于不支持 2.elasticsearch6.5.4搜索引擎: wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.5.4.tar.gz 解压:tar -zxvf ela...

07/02 18:32
532
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部