现有解决方案及问题
由于一个虚拟机上可能存在多个虚拟后的系统,系统之间通讯就需要通过网络,但和普通的物理系统间通过实体网络设备互联不同,虚拟系统的网络接口也是虚拟的,因此不能直接通过实体网络设备互联。
目前流行的一种解决方案是:vSwitch技术。vSwitch作为最早出现的一种的网络虚拟化技术,已经在Linux Bridge、VMWare vSwitch等软件产品中实现。所谓的vSwitch,就是VEB技术,即将虚拟网桥完全在服务器(终端)硬件上实现,不涉及外部交换机的协作。
参考虚拟机的实现方式,将网络设备也虚拟化,并绑定在虚拟机中,这样虚拟机上的网络接口可以不需要经过实体网络,直接在虚拟机内部通过虚拟交换机等虚拟的网络设备进行互联。
如上图所述,跟普通服务器设备一样,每个虚拟机有着自己的虚拟网卡(virtual NIC),每个virtual NIC有着自己的MAC地址和IP地址。Virtual Switch(vSwitch)相当于一个虚拟的二层交换机,ABCDE便是交换机上的虚拟端口,该交换机连接虚拟网卡和物理网卡,将虚拟机上的数据报文从物理网口转发出去。根据需要,vSwitch还可以支持二层转发、安全控制、端口镜像等功能。
物理主机(服务器)虚拟交换机,用于虚拟机互访(本质上就是一种“软”交换机的行为,软件虚拟出来交换机):
性能低,特性少;
模糊了主机和网络管理界面;
带来的问题:
1、流量无法监控 ,存在安全隐患
从虚拟机到物理服务器之外的流量可以通过交换机镜像、网流分析设备进行监控;虚拟机之间的流量无法进行监控;
2、无法实施安全策略
数据中心服务器之间采用了矩阵式的访问控制策略。问题: ①不同的虚拟机之间需要通过ACL实现访问控制; ②传统的VSwitch 实现ACL需要消耗CPU资源,对服务器性能有影响; ③安全策略与VM的迁移紧绑定问题需解决;
3、管理边界不清 (模糊了主机和网络管理界面,服务器和网络管理员的管理界面)
物理服务器中的逻辑网络由谁管?相似的情况:刀片服务器中的交换机模块由谁管?在管理权限上,网络管理员基本不能管理到vSwitch,而主机管理员也不愿意在网络配置上花太多的时间,这样导致vSwitch游离于网络整体管理之外,不利于整体网络策略以及网络安全的实现。
4、影响服务器性能
考虑到在一台物理服务器上可能运行数十个虚拟机,再掺杂上数据中心的交换时,情况会非常复杂。给虚拟机增加这样一种智能,会给服务器额外增加大量的网络处理负载,并且由于虚拟交换机仅仅是通过一种软件实现,在功能和性能上必然无法与传统的实体网络设备相媲美。既然实体交换机已经实现了所有这些功能,就没有必要在虚拟机上进行这些重复操作。
数据中心接入层虚拟交换
物理主机(服务器)虚拟交换机,用于虚拟机互访(本质上就是一种“软”交换机的行为,软件虚拟出来交换机)。
采用一种“硬”交换机的思路,将虚拟机的交换能力回归到交换机 ,性能保证,特性丰富 ,管理界面清晰 。
指定一种Edge Virtual Bridging(EVB)标准,该标准基于一个名为Virtual Ethernet Port Aggregator (VEPA) 的技术。通过VEPA,来自于VM的所有流量都会被转发到邻近的物理接入交换机,或者当目标VM也位于同一个服务器时被转回到相同的物理服务器。
部署方案:
在数据中心接入层部署支持EVB国际标准的数据中心交换机,与服务器端虚拟化软件联动即可支持将流量上引至交换机上。
通过VEPA和VSI发现功能,将VM的流量统统转移到交换机上来进行传输,可以实现基于VM的流量控制。例如,网络管理员可以应用安全策略阻断某个VM和其他VM的通讯,或者控制该VM只能和某些指定的VM通讯。
带来的好处
提升性能、降低复杂性 ,实现:将高级复杂的网络功能从VM转移到外部网络。
保持NIC(网卡)的低成本电路 ,实现:将高级网络功能调整到外部网络。
一致性控制策略实现 ,实现:将所有流量转发到外部网络,网络实现更加完备的的强制控制策略。
VM间流量可视性 ,实现:外部网络提供完善的管理工具。
清晰管理边界 ,降低服务器管理人员的网络配置要求 ,降低网络管理人员的配置复杂性。