如何规划建设虚拟化环境的网络流量镜像?

目前,公司正在建设基于网络流量镜像的相关系统,如npm、bpc、数据库sql语句审计等。并已初步搭建了type交换机网络。但虚拟化平台中,部分虚拟机的网络流量可能在物理机内部的虚拟交换机中完成交互,无法从物理交换机上获取流量镜像。我们了解到了虚拟化环境的网络流量镜像的以...显示全部

目前,公司正在建设基于网络流量镜像的相关系统,如npm、bpc、数据库sql语句审计等。并已初步搭建了type交换机网络。
但虚拟化平台中,部分虚拟机的网络流量可能在物理机内部的虚拟交换机中完成交互,无法从物理交换机上获取流量镜像。
我们了解到了虚拟化环境的网络流量镜像的以下三种方式:
1、使用vmware VDS分布式交换机的端口镜像功能
2、在每台宿主机上安装第三方的虚拟机,用于收集这台宿主机内部的虚拟机网络流量
3、在需要镜像流量镜像的虚拟机上安装第三方agent,收集自身的网络流量
三种方式都将通过区别业务网卡的单独网卡将镜像流量传送至type网络。
本人目前倾向于选择第一种方案,但是对于vmware的端口镜像功能是否会影响宿主机的整体性能存在担忧。
想向各位金融行业的前辈们请教下三种方案的优劣,大家都是使用哪种方式来实现的?实施过程中有没有踩过什么坑?

收起
参与48

查看其它 7 个回答杨文云的回答

杨文云杨文云数据库管理员GBS

虚拟化及云环境下审计尤其是数据库审计普遍三种模一般如下

a 、虚拟机虚拟网卡绑定物理网卡

要求宿主主机有多个物理网卡,每个物理网卡和上层交换机直连,虚拟机层面在安装时可以指定将虚拟网卡绑定在对应的宿主主机的物理网卡上,然后使用传统的镜像方式镜像物理网卡的流量完成审计,这种缺点非常明显,要求物理服务器要有多个网卡,因此,在实际部署上并没有那么多网卡可供绑定,存在诸多限制,实际上并无法实施。

b 、在 VDS 上配置流量镜像

Vmware ESX 推出的功能,将某虚拟机网卡流量通过 GRE 封包,直接通过 TCP 协议发送到某个 IP 地址上(数据库审计设备),数据库审计设备接收 GRE 数据包完成审计,但是这种解决方案的缺点如下:

Vmware 版本及 VDS (分布式虚拟交换机),因为版本原因部分客户现场环境实际并不支持部署。一般通过 GRE 封装做流量镜像对宿主主机的物理网卡性能影响非常严重,所有镜像流量都要通过宿主主机的物理网卡进出,极大影响了物理网卡的性能, VDS 属于虚拟交换机,其对数据包的处理依赖于 CPU ,并不像传统交换机靠硬件进行流量转发, 目前大部分客户为了避免单一硬件的故障,基本上都采用虚拟化集群的方式实现企业的虚拟化,当碰到单一硬件的故障,虚拟机会在整个硬件虚拟化资源池中自动迁移 。

c 、开启流量广播

这种方式将数据库审计以虚拟机的方式部署在对应的宿主主机,当做宿主宿主机的一个虚拟机看待,然后开启 Vmware 的流量广播功能,每个虚拟机都将收到 Vswitch 上每个端口通信的 IP 流量,因此 DB 审计设备只需要采集其虚拟网卡上的流量就可以采集到目标数据库服务器的流量,只需要在采集阶段过滤掉其他流量即可完成审计, 开启流量广播虽然大部分 Vswitch 都支持,但是这种方式就好比早期的 Hub 一样, tcp 通信能力将明显降低,严重影响整体网络传输的时延及可靠,

总体上讲,如果虚拟交换机端口资源足够的情况下, 在 VDS 上配置流量镜像更好,把镜像流量从单独的网口走出,确保宿主机影响降低到最小

IT咨询服务 · 2019-10-09
浏览3901

回答者

杨文云
数据库管理员GBS
擅长领域: 数据库云计算服务器

杨文云 最近回答过的问题

回答状态

  • 发布时间:2019-10-09
  • 关注会员:15 人
  • 回答浏览:3901
  • X社区推广