VMware NSX网络虚拟化概览

更新时间:2024-06-19 02:46:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

VMware NSX网络虚拟化概览

目录

序言................................................................................................................................................................................... 2 1. VMware NSX网络虚拟化解决方案简介..................................................................................................................... 2 1.1 VMware服务器虚拟化的前世今生 ..................................................................................................................... 2 1.2 服务器虚拟化的优势移植到了网络虚拟化 ........................................................................................................ 8 1.3 NSX解决方案概览 ............................................................................................................................................... 10 1.4 NSX网络虚拟化应用场景 .................................................................................................................................. 14 2.当前主流的Overlay隧道技术 ................................................................................................................................ 16 2.1 VXLAN技术 ........................................................................................................................................................... 16 2.2 NVGRE技术 .......................................................................................................................................................... 18 2.3 STT技术 ................................................................................................................................................................ 18 2.4 三种Overlay技术的对比和应用场景 ............................................................................................................... 19 2.5 下一代Overlay技术——Geneve........................................................................................................................ 20 3.各厂商的网络虚拟化解决方案 ............................................................................................................................... 21 3.1 Cisco ACI解决方案 ............................................................................................................................................... 22 3.2 在MicrosoftHyper-V中实现网络虚拟化 ........................................................................................................... 23 3.3 JuniperContrail解决方案 ..................................................................................................................................... 24 3.4 各厂商网络虚拟化解决方案的比较 .................................................................................................................. 26 4.与VMwareNSX相关的认证 .................................................................................................................................... 28 4.1 VMware认证体系简介 ........................................................................................................................................ 28 4.2 与NSX相关的VMware认证与考试 ................................................................................................................. 30 总结................................................................................................................................................................................. 31

序言

网络虚拟化技术诞生后,有不少厂商都推出了所谓的网络虚拟化解决方案。这些厂商实现“网络虚拟化”的方式各异,有些是自己研发的项目,有些是通过收购,有些是利用开源项目进行再开发。而VMware NSX网络虚拟化平台的基本架构到底是怎样的,它与别的厂家有哪些不同?这些问题会在本章进行探讨。

1. VMware NSX网络虚拟化解决方案简介

尽管VMware NSX网络虚拟化平台是通过收购Nicira而获得的,但是在收购一年多时间之后,NSX才正式发布。在这一年多时间里,VMware的研发人员与前Nicira的极客们一起通力合作,将VMware服务器虚拟化平台与Nicira网络虚拟化平台进行了融合,我们现在会发现NSX架构和技术细节(尤其是用于vSphere平台的NSX-V),其实与早期的Nicira NVP平台还是有很大区别,它增加了很多VMware的基因在里面。

本节在介绍VMware NSX的一些功能和特性之前,还简单介绍了虚拟化技术以及VMware公司诞生和发展的历史,这些都是值得去了解的故事。

IT行业已经直接从服务器虚拟化中获得了显著好处。服务器虚拟化解决方案降低了物理硬件的复杂性,提高了运营效率,带来了更好的安全性和冗余性,并且能够动态地重新调整底层资源的用途,以便以最佳方式快速满足日益动态化的业务应用需求。除此之外,服务器虚拟化还能节省机房空间,节省用电和制冷成本。

VMware NSX网络虚拟化技术与VMware一直致力推动的服务器虚拟化技术,究竟有什么联系,有哪些类似的地方?读者可以在这一节找到答案。本节会介绍NSX基本架构和基本组件。

1.1 VMware服务器虚拟化的前世今生

介绍VMware网络虚拟化之前,不得不先提VMware服务器虚拟化的发展历史和一些功能特性,因为NSX的很多设计思路和理念,都像极了已经深入人心的服务器虚拟化解决方案。有很多读者可能近几年才接触到服务器虚拟化,其实早在1959年,计算机科学家克里斯托弗· 斯特雷奇(Christopher Strachey)就发表了一篇名为Time Sharing in Large Fast Computers(大型高速计算机中的时间共享)的学术报告。在该报告中,他第一次提出了

虚拟化的概念,即使用“时间共享”技术,使多操作系统可以运行在一台计算机之上。但是在当时,他的思想太超前了,计算机也完全没有普及,实现其想法也就困难重重。在相当长的时间内,虚拟化只能作为一个概念存在于新兴的计算机学世界里。

随着科技的发展,大型机出现了,但是它的价格非常昂贵,如何有效利用之成了一个难题。伟大的IT公司IBM基于斯特雷奇的理论,开发了最早的虚拟机技术,允许在一台IBM大型机上运行多个操作系统,让用户尽可能地充分利用和共享昂贵的大型机资源。

20世纪七、八十年代,虚拟化技术进入低谷期——因为随着大规模集成电路的出现,计算机硬件变得越来越便宜,需要增加操作系统时,人们往往选择再购买一台计算机。当初为了共享昂贵的大型机资源而设计的虚拟化技术就无人问津了。

虚拟化技术在20世纪90年代末期迎来复兴。随着x86计算机的普及、CPU的处理能力越来越强、内存容量越来越大,新的基于x86平台的虚拟化技术诞生了,其主要目的是充分利用x86计算机的闲置资源。1998年成立的VMware公司于1999年最早正式发布了基于x86计算机的虚拟化软件,虽然VMware虚拟化技术在刚刚推出时并没有引起轰动,但是为之后的IT变革埋下了伏笔——基于x86计算机的虚拟化技术的飞速发展,使得计算资源可以实现池化,进而催生了之后的云计算。

1997年,斯坦福大学的蒙德尔·罗森布洛姆(Mendel Rosenblum)、艾德瓦德·巴格宁(Edouard Bugnion)和斯科特·迪瓦恩(ScottDevine)三人,在ACM SOSP(Symposiumon Operating Systems Principles,计算机操作系统研究领域的旗舰会议)上发表了著名论文Disco: Running Commodity OperatingSystems on Scalable Multiprocessors。Disco其实就是他们在斯坦福大学里的一项科研课题,即在x86计算机之上同时运行多个多操

作系统,这也是现代虚拟化技术的开山之作。一年之后,罗森布洛姆在加州大学伯克利分校求学时相识的妻子戴安

娜·格林(DianeGreene)也加入了他们的团队(夫妇俩的照片见图2.1),加上一名华裔青年爱德华·王

(EdwardWang),他们五人在美国加州的Palo Alto市创立了这家之后在IT界扬名立万的VMware公司。VMware公司的名字是Virtual Machine Software的缩写,公司名字彰显了它从成立之初就一直在坚持的事情——致力于推动虚拟机软件的发展。如今,罗森布洛姆夫妇分别是斯坦福大学教授和Google董事会成员。值得一提的是,巴格宁后来还成为了Cisco UCS之父。

图2.1 戴安娜·格林与蒙德尔·罗森布洛姆

1999年5月,具有划时代意义的VMwareWorkstation产品被这群具有创新精神的年轻人研发出来了。这是业内第一款基于x86平台的虚拟化软件,它允许在一台x86计算机上同时运行多个操作系统,安装环境是Windows98/NT 4.0。2001年,专门用于x86服务器的虚拟化软件VMware ESX Server正式发布,它无需Windows操作系统,而是直接运行在计算机底层。ESX(现在叫做ESXi)这个一直沿用到今天的VMware服务器虚拟化软件内核程序(Hypervisor),是当时VMware实验室里的研发代号Elastic Sky X的缩写。2003年,vCenter发布,它允许多台物理计算机上的所有虚拟机被同一个集中式的管理平面来管理,且可以利用同时发布的vMotion技术在不同物理机之间实现迁移。2004年,这家成立不到6年的年轻公司,被存储巨头EMC公司斥资6.35亿美

金收购。今天,VMware的市值较EMC收购时翻了近100倍,有人不禁感慨:如果晚几年再卖掉,能卖多少钱?如果不卖,现在的VMware又可能是什么样子?

在VMware被EMC收购后,EMC并没有将其并入自己的一个业务部门,或融入自己的产品和解决方案中,而是任由其独立发展,其目的可能是为了2007年的VMware拆分上市——一旦并入EMC的一个部门中,就无法上市了。就结果而言,VMware因为独立发展,势头非常良好。随着CPU和内存的能力不断提升、应用越来越多,市场对虚拟化的需求量也越来越大——企业自然不希望闲置的CPU和内存不能被有效利用,而且通过购买更少的服务器,安装虚拟化软件,还能有效节省物理服务器的采购成本,节省机房空间、用电和制冷成本。VMware将自己的虚拟化软件以每个物理CPU需要一个license的形式卖给客户,从中取了利润,加上上市和融资,VMware有了更多资金,可以不断完善自己解决方案中的功能。

2008年,Microsoft公司和Citrix公司也开始推出自己的虚拟化软件,其中Citrix公司通过收购得到了开源的Xen虚拟化系统的核心技术,而另外一款基于开源代码的KVM虚拟化系统也开始兴起。服务器虚拟化技术蓬勃发展,理念已深入人心,越来越多的企业近几年运用各种虚拟化解决方案来实现P2V,即将物理服务器迁移至虚拟化环境。

有竞争对手的市场总比垄断要好,竞争促使VMware公司研发新的解决方案。如今,VMware不断更新服务器虚拟化的功能,在vSphere 5.5版本中,VMware加入了存储的DRS和存储的I/O控制等功能;在vSphere6.0版本发布之后,跨越vCenter的vMotion、长距离vMotion的功能实现,FT也突破了一个vCPU的限制。此外,最近几年,用来管理云环境的工具的功能也不断完善,加上VSAN和NSX解决方案的提出,都与VMware传统虚拟化解决方案一起成为了VMwareSDDC的拼图。VMware公司还有能力通过桌面虚拟化(VDI)技术帮助企业打造虚拟桌面。

VMware vSphere解决方案的底层使用了ESXi(以前叫做ESX)的虚拟机管理程序,它不依赖于任何一个操作系统,可以被安装到本地物理硬盘、外置SAN环境、闪存、USB驱动器等地方,但必须能够直接访问物理服务器的底层,作为物理服务器的Hypervisor,知晓物理服务器所有信息。安装了ESXi程序的物理服务器叫做ESXi主机。图2.2阐述了VMware vSphere的底层体系结构。VMware服务器虚拟化解决方案的核心思想有以下几点。

?在一台物理服务器底层安装虚拟化软件,使得一台物理服务器上可以运行多个操作系统,安装多个应用。这些操

作系统运行在多虚拟机上,而且其上安装的应用与物理主机上实现的功能完全相同。

?就用户端而言,每台虚拟机看起来与物理服务器没有任何区别。

?能够快速并有效地更换虚拟机的虚拟硬件组件,如增加vCPU、增加内存、增加虚拟网卡等。

?跨物理服务器运行的多个虚拟机可以通过统一的管理平台进行部署、维护。复制、增加、删除虚拟机非常便捷。 ?虚拟机能够在不同物理机中进行快速、安全的迁移,借此技术还能实现高可用性(High Availability,HA)和动

态资源分配(Distributed Resource Scheduler,DRS)。

图2.2 VMware vSphere的底层体系结构

VMware使用了vCenter系统来统一部署和管理安装在跨多个物理服务器上的虚拟机。vCenter系统在一个统一的平台管理多台物理服务器上的虚拟机后,能够实现的其他主要功能如下。

?通过在线迁移(vMotion)技术,将正在运行的虚拟机从一台物理服务器迁移到其他物理服务器,而无需中断。

这是VMware最重要的技术之一,DRS、HA等高级功能都基于这个技术。

?动态资源分配技术,使得多台物理服务器中运行的虚拟机可以实现负载均衡。DRS利用了vMotion技术来实现这

个功能——一旦检测到负载升高到一定程度,就能通过vMotion技术进行在线迁移。

?分布式电源管理(Distributed PowerManagement,DPM)可以结合DRS功能,将多个负载较低的虚拟机集中

到少数物理服务器上,把无用的物理服务器关机,节省电力;而在虚拟机负载开始增多时,对没有使用的物理服务器加电开机,再通过DRS实现负载均衡。

?存储在线迁移(Storage vMotion)技术,允许正在运行的虚拟机的硬盘资源从一个存储设备迁移到另一个设备

上。

?存储的动态资源分配技术(StorageDRS)功能,允许虚拟机从存储的角度进行负载均衡。 ?数据保护(Data Protection)功能,可以备份虚拟机。

?高可用性,当一台物理服务器出现故障时,将虚拟机迁移到其他物理服务器上。迁移过程又是基于vMotion技术

并遵循DRS的。

?容错(Fault Tolerance,FT)功能,允许在不同物理服务器上运行两台完全一模一样的虚拟机,提供最高等级的

冗余性,即使一台物理服务器(或虚拟机)发生故障,业务也不会中断运行。值得注意的是,在vSphere5.5版本之前,FT功能仅能支持1个vCPU,这个限制在vSphere 6.0版本进行了极大的改进,可以支持4个vCPU。企业可以对最核心的应用部署FT,对一般应用部署HA。

?复制(Replication),可以复制虚拟机的所有镜像到到另一个站点(如灾备中心),进行灾难恢复,保障数据安

全。

目前最新的VMware vSphere软件已走到了第六代,它有多个版本,分为基础版(Essentials)、基础加强版(EssentialsPlus)、标准版(Standard)、企业版(Enterprise)、企业加强版(Enterprise Plus)五种。不同的版本能实现的功能也不同,其价格是随着其版本不同而不同。表2.1所示为每个版本能实现的功能概览。

表2.1 vSphere不同版本的功能比较

值得注意的是,VMware vSphere试用版本支持所有功能,但是使用期有60天的限制。

此外,可以看到,只有企业加强版(EnterprisePlus)的license才能够支持分布式交换机(VDS),而NSX-V网络虚拟化平台必须建立在分布式交换机之上。因此,搭建NSX-V网络虚拟化平台时,必须确保企业中vSphere的license是企业加强版。但是这个限制在NSX 6.2版本发布之后已经消除——NSX6.2 licence自带VDS功能,这意味着现在低版本的vSphere同样可以支持NSX-V网络虚拟化环境。

1.2 服务器虚拟化的优势移植到了网络虚拟化

以前的大二层技术一般是在物理网络底层使用IS-IS路由技术,再在此基础之上实现数据中心网络的二层扩展,如公有的TRILL、SPB技术和Cisco私有的OTV、FabricPath技术。前沿一些的网络虚拟化技术使用了VXLAN、NVGRE等协议,突破VLAN和MAC的限制,将数据中心的大二层网络扩展得更大(这些在第1章都做了阐述)。而使用VMwareNSX,则更进一步——可以对网络提供与对计算和存储实现的类似的虚拟化功能。就像服务器虚拟化可以通过编程方式创建、删除和还原基于软件的虚拟机以及拍摄其快照一样,在NSX网络虚拟化平台中,也

可以对基于软件的虚拟网络实现这些同样的功能。这是一种具有彻底革命性的架构,不仅数据中心能够大大提高系统的敏捷性、可维护性、可扩展性,而且还能大大简化底层物理网络的运营模式。NSX能够部署在任何IP网络上,包括所有的传统网络模型以及任何供应商提供的新一代体系结构,无需对底层网络进行重构,只需要注意将底层物理网络的MTU值设置为1600即可,这是因为VXLAN封装之后的IP报文会增加一个头部。不难看出,VMware NSX的核心思想其实就是将VMware多年致力发展的服务器虚拟化技术移植到了网络架构中,如图2.3所示。

图2.3 服务器虚拟化逻辑架构与网络虚拟化逻辑架构

实现服务器虚拟化后,软件抽象层(服务器虚拟化管理程序Hypervisor)可在软件中重现人们所熟悉的x86物理服务器属性,例如CPU、内存、磁盘、网卡,从而可通过编程方式以任意组合来组装这些属性,只需短短数秒,即可生成一台独一无二的虚拟机。而实现网络虚拟化后,与Hypervisor类似的“网络虚拟化管理程序”可在软件中重现二到七层的整套网络服务,例如交换、路由、访问控制、防火墙、QoS、负载均衡。因此,与服务器虚拟化的理念相同,可以通过编程的方式以任意组合来部署这些服务,只需短短数秒,即可生成独一无二的虚拟网络(逻辑网络)。

除此之外,基于NSX的网络虚拟化方案还能提供更多的功能和优势。例如,就像虚拟机独立于底层x86平台并允许将物理服务器视为计算容量池一样,虚拟网络也独立于底层网络硬件平台并允许将物理网络视为可以按需(如按使用量和用途)进行自动服务的传输容量池。对于第1章中提到的业务或应用的激增和激退的情形,数据中心就实

现了网络资源的快速分配。与传统体系结构不同,NSX可以通过编程方式调配、更改、存储、删除和还原虚拟网络,而无需重新配置底层物理硬件或改变拓扑。这种革命性的组网方式与企业已经非常熟悉的服务器虚拟化解决方案有着异曲同工之妙。

由于使用了NSX解决方案后的逻辑网络架构产生了质的变化,以NSX网络平台搭建的数据中心最终达到的效果就是:无论系统规模多大,无论物理服务器、虚拟机有多少台,无论底层网络多么复杂,无论多站点数据中心跨越多少地域,在NSX网络虚拟化解决方案的帮助下,对于IT管理人员和用户来说,这些运行在多站点数据中心复杂网络之上的成千上万台的虚拟机,就好像是连接在同一台物理交换机上一样。有了VMwareNSX,就有可以部署新一代软件定义的数据中心所需的逻辑网络。

之前讨论过NSX无需关心底层物理网络,那么它是否一定要部署在VMware的虚拟化环境中?答案也是否定的。NSX可以部署在VMwarevSphere、KVM、Xen等诸多虚拟化环境中,这也是Nicira NVP平台本来就具备的功能。

1.3 NSX解决方案概览

NSX网络虚拟化分为vSphere环境下的NSX(NSX-V)和多虚拟化环境下的NSX(NSX-MH)。它们是不同的软件,最新版本(2016年3月3日更新)分别是6.2.2和4.2.5。这点在部署之前就需要了解,以避免错误部署。之后会分别详细讨论这两种不同环境下部署的NSX网络虚拟化平台。

无论使用NSX-V还是NSX-MH,其基本逻辑架构都是相同的,不同点仅体现在安装软件和部署方式、配置界面,以及数据平面中的一些组件上(NSX-V中的虚拟交换机为vSphere分布式交换机,而NSX-MH中的虚拟交换机为OVS)。图2.4是NSX网络虚拟化架构的基本示意图,它分为数据平面、控制平面(这两个平台的分离,与第1章提到的SDN架构完全吻合)、管理平面。其中数据平面中,又分分布式服务(包括逻辑交换机、逻辑路由器、逻辑防火墙)和NSX网关服务。控制平面的主要组件是NSX Controller(还会包含DLRControl VM),而管理平面的主要组件是NSX Manager(还会包含vCenter)。

图2.4 NSX逻辑架构

下面简单说明一下各个组件(后续章节会进行更具体的分析)。

NSX数据平面主要由NSX虚拟交换机组成。虚拟机交换机基于vSphere中的分布式交换机(VDS),或基于非VMware虚拟化环境中的OVS(Open vSwitch)。通过将内核模块(VIB)安装在Hypervisor之上,实现VXLAN、分布式路由、分布式防火墙等服务。

这里的NSX虚拟交换机可以对物理网络进行抽象化处理并直接在Hypervisor层之上提供交换、路由、防火墙功能。这样能获得哪些好处呢?首先,NSX虚拟交换机有了一个统一的配置界面。此外,NSX虚拟交换机利用VXLAN或STT协议实现Overlay功能,在现有物理网络之上创建一个与之解耦的独立虚拟网络,容易部署和维护。而这

个虚拟网络和以前我们所熟悉的网络架构并不一样——传统的网络,不同VLAN之间地址是不能重复、冲突的,而运行在Overlay之上的虚拟网络,允许不同租户使用相同的网关或IP地址,同时保持隔离。NSX虚拟交换机连接的虚拟机是独立于虚拟网络的,并且就像连接到物理网络一样运行,新创建的虚拟交换机可以有效进行配置备份和还原,而它在连接虚拟机时还能实现QoS和链路聚合等诸多功能。NSX虚拟交换机还有利于实现大规模扩展,而端口镜像、NetFlow、网络运行状况检查等多种功能可以在虚拟网络内进行全面的流量管理、监控和故障排除。

数据平面还包含边界网关设备,它可以作为虚拟网络和物理网络进行通信的网关。这种设备通常是NSX Edge(NSX-V中)或二/三层网关(NSX-MH中),它以虚拟服务的形式注册到NSXManager,在虚拟网络与外界通信时,VXLAN到VLAN的转换无论发生在二层网络(桥接时)还是三层网络(路由),都可以由边界网关来进行处理。Edge、二/三层网关除了处理南北向流量外,也提供了类似NFV的一些功能,如实现NAT、VPN、负载均衡等。

NSX控制平面中的主要组件是NSX Controller。它仍然是以虚拟机的形式安装,并以虚拟服务的形式与NSX Manager集成。NSXController在虚拟网络内部,可以看作是数据平面的控制单元。它与数据平面之间不会有任何数据流量的传递,只会将信令发布给数据平面,再由数据平面进行工作。因此NSXController发生任何故障都不会对数据平面的流量造成影响(其实这种故障也不常见,因为NSXController一般都是冗余部署的)。而对外(物理网络),NSX Controller可以使用OVSDB和OpenFlow协议,作为物理网络的SDN控制器,但是VMware尚未针对这个功能提供官方的图形化配置界面,因此要实现这个功能,需要开发人员在API之上通过编程来实现。目前Arista Networks和Brocade两家物理硬件网络厂商的研发人员通过再开发,实现了其网络设备可以交由NSX Controller控制。

除了NSX Controller,控制平面中的其他组件还包括DLR Controller VM,用来处理三层路由协议的控制。

NSX管理平面中的主要组件是NSX Manager,可以通过NSX Manager提供的Web界面配置和管理整个NSX网络虚拟化环境的所有组件。NSX Manager提供的REST API可以为VMware高级云管理平台或第三方云管理平台(CMS/CMP)提供接口。OpenStack同样可以在这里与NSX Manager集成,使得NSX与OpenStack实现融合。

有了这些组件,我们不难看出,NSX可以提供如下网络服务(见图2.5)。

图2.5 NSX网络虚拟化平台能够提供的服务

?交换:在物理网络中的任何位置实现大二层交换网络的扩展,而无需关心底层物理网络架构。

?路由:IP子网之间的路由,可以完全在逻辑网络中完成。由于三层网关由NSXController控制并下发至所有

Hypervisor,因此流量无需经过物理路由器或三层交换机。NSX网络虚拟化环境中的路由是在Hypervisor层通过分布式的方式执行的,每台ESXi主机的CPU消耗很小,可为虚拟网络架构内的路由表提供最佳路径。

?防火墙:安全防护可以在Hypervisor层以及虚拟网卡层面执行。它使用可扩展的方式实施防火墙规则,而不会像

传统部署中在物理防火墙设备上形成流量的瓶颈。NSX防火墙分布式基于Hypervisor内核,只产生极少的CPU开销,并且能够线速执行。

?逻辑负载均衡:支持四到七层的负载均衡服务。 ?VPN服务:可实现二、三层VPN服务和SSLVPN。

?物理网络连接:NSX Edge(或网关)提供虚拟网络到物理网络的二层桥接或三层路由功能。

有了NSX网络虚拟化解决方案,VMware进一步完善了软件定义数据中心(Software Defined Data Center,SDDC)解决方案,即在数据中心中同时满足软件定义网络、软件定义计算、软件定义存储,并实现应用交付的自动化、新旧应用的快速创建和删除,如图2.6所示。SDDC解决方案的核心是让客户以更小的代价来获得更灵活的、快速的业务部署、运维和管理。

图2.6 VMware的完整SDDC解决方案架构

SDDC是相对于传统的硬件定义数据中心(HDDC)提出的。由于没有任何一家IT厂商可以提供底层网络、存储、x86服务器平台与虚拟化软件的全套产品,对不同厂商的产品,也没有一个统一的管理界面,因此传统的HDDC解决方案的效率比较差——IT管理人员需要一一登录到不同设备中进行特殊的、差异化的配置。这样的模式不仅部署和运维的效率较低,而且根本无法实现自动化。而SDDC的核心理念就是通过一套单一的数据中心管理软件,可以在任何x86平台、存储平台、网络平台之上,实现高效地部署和运维,最终实现数据中心自动化。

尽管VMware并不生产物理硬件,但对于数据中心的底层功能而言,其在SDDC拥有全套解决方案——软件定义网络(NSX)、软件定义计算(vSphere)、软件定义存储(VSAN)。该解决方案无需绑定任何物理硬件厂商设备,即可实现数据中心自动化。VMware还有针对SDDC统一部署和管理的云管理平台。

1.4 NSX网络虚拟化应用场景

NSX网络虚拟化平台,适用于所有不同类型的行业中的各种客户。

?对于政府和国企用户,由于其网络设备购买方式往往是集中采购,导致每年不同项目的网络设备的品牌可能都不

相同,而IT管理人员也希望这些不同品牌的网络设备搭建的复杂的大规模网络能够易于维护。NSX网络虚拟化平

台独立于物理网络之上,提供了一套逻辑网络,它不关心底层架构,只要底层网络互通,IT管理人员就可以针对不同应用便捷地创建和删除逻辑网络,使得IT底层架构更加灵活。

?对于医疗和教育行业,它们的数据中心往往会分布在不同院区或校区,NSX网络虚拟化平台可以跨越不同数据中

心实现一套单一的逻辑网络。

?对于金融和证券行业,它们同样有异地数据中心的需求。此外,它们对安全的要求会更高。NSX基于微分段的分

布式防火墙可以帮助这些对安全有着更高要求的用户实现数据中心内部不同应用和业务资源池的精细化安全控制。该行业客户都需要满足各自上级的合规性监管要求,需要可追溯和审计,甚至实时把控其流量和交易的具体信息。该行业的一些应用,如在线交易系统,对流量的延迟、抖动都非常敏感。NSX网络虚拟化平台通过Hypervisor之上的分布式路由、防火墙、负载均衡服务,可以大幅优化流量路径,有效解决了延迟、抖动等问题。

?对于电信运营商,除了异地数据中心的需求和需要实现高灵活性、高可扩展性外,往往还需要实现多租户。NSX

基于主机的Overlay技术,可以创建多个独立的逻辑网络,有效解决了多租户问题。

?对于OTT和互联网行业,业务需要极快的上线、下线速度。NSX网络虚拟化平台可以像在vSphere中创建和删

除虚拟机一样,针对新旧业务快速创建和删除逻辑网络,实现完全自动化的计算资源池。此外,该行业对异地数据中心、安全性和可扩展性也有很高的要求,而这些都是NSX网络虚拟化平台所擅长的。

?对于制造业或设计公司,为了安全起见,其研发、测试、生产环境往往需要在物理上进行隔离,而研发并成功通

过测试的产品,需要快速投放到生产网络中。在以往,这些研发和测试往往需要在独立的网络中进行,导致将产品迁移到生产环境的过程繁琐而漫长。NSX网络虚拟化平台可以创建完全隔离的逻辑网络供研发和测试使用,并在研发和测试成功后,通过去除微分段的安全策略和重新关联子网,无缝切换到生产环境。此外,设计公司往往会使用桌面虚拟化解决方案,而在以往,虚拟桌面之间(尤其是同一网段内的虚拟桌面)可能并没有有效的安全防护措施。NSX基于微分段技术的分布式防火墙可以完美地解决这个问题。

?对于一般企业,还可能产生公司并购、合并的问题,而合并后的公司网络由于合并之前存在架构差异,就算路由

可以互通,也可能产生流量不优化的问题。NSX网络虚拟化平台独立于物理网络,可以帮助这种类型的公司解决物理网络的路由难题。此外,一般的企业都会面临灵活性、安全性等问题,NSX网络虚拟化平台都可以帮助这些企业解决这些难题。

图2.8 Geneve设想的报文结构

在将来,Geneve协议会非常适用于服务链的场景。例如,NSX可以创建一个服务的逻辑连接(如图2.9所示,它可以为VPN服务、防火墙服务、第三方服务之间的关系创建成一个逻辑关系),而这些逻辑链的节点之间需要传递元数据。有了Geneve协议,头部可以进行变更和扩展后,就可以指示报文的下一个链节点,并将报文分类(Classification)的结果传递到一个服务。

图2.9 服务链的逻辑关系

Geneve协议不仅支持将IPv4封装在UDP里,还支持IPv6。该研发项目已提交IETF。或许在不久的将来,我们就可以看到这种技术被标准化,并广泛用于数据中心内部。

3.各厂商的网络虚拟化解决方案

介绍完几种Overlay技术之后,我们就需要对比一下几大厂商基于Overlay技术的网络虚拟化解决方案了。各家厂商的解决方案各有千秋,各有利弊。在这里介绍它们的网络虚拟化解决方案,目的是让读者对整个行业的趋势有一个了解,也让读者了解VMwareNSX网络虚拟化解决方案在行业中所处的地位。

3.1 Cisco ACI解决方案

Cisco ACI是Cisco公司提出的SDN和网络虚拟化解决方案,它的主要组件有应用策略基础设施控制器(APIC)和ACI交换矩阵,其逻辑架构如图2.10所示。

图2.10 Cisco ACI解决方案逻辑架构

1.Cisco应用策略基础设施控制器(APIC)

APIC是Cisco ACI解决方案的主要组件。它是CiscoACI解决方案中实现交换矩阵、策略实施、健康状态监控、自动化和进行中央管理的统一平面。目前,APIC一般是以软件形式安装在Cisco UCS服务器中,一般建议购买3台以上从而实现集群和冗余。

Cisco APIC负责的任务包括交换矩阵激活、交换机固件维护、网络策略配置和实例化。CiscoAPIC完全与数据转发无关,对数据平面只有分发指令功能。这意味着即使与APIC的通信中断,交换矩阵也仍然可以转发流量。

Cisco APIC通过提供CLI和GUI来管理交换矩阵。APIC还提供开放的API,使得APIC可以管理其他厂家的设备。

2.CiscoACI交换矩阵

Cisco在推出ACI解决方案的同时,还推出了CiscoNexus 9000系列交换机。Nexus 9500为机箱式的核心交换机(骨干节点交换机),Nexus9300为2U或3U高度的非机箱式汇聚/接入交换机(枝叶节点交换机)。Cisco Nexus 9000系列交换机可以部署在ACI环境下,也可以独立部署。如果是独立部署,以后也可以升级到ACI环境,但需要其软件和板卡支持ACI才行。这些Nexus 9000系列交换机实现了ACI环境下的底层物理网络,在这套物理网络之上,可以非常便捷地通过VXLAN实现虚拟网络。

除了物理交换机外,ACI解决方案还可以在虚拟化环境中安装CiscoAVS(Cisco Application Virtual Switch),作为虚拟交换机。

Cisco在Nexus 9000交换机中混用了商用芯片和自主研发的芯片——商用芯片处理普通流量,而自主研发的芯片处理ACI流量,即SDN和网络虚拟化中的流量。APIC控制器直接将指令发布给Nexus 9000中的自主研发芯片,再由芯片分布式地处理数据流量。换言之,ACI环境中真正的控制平面是Nexus 9000交换机中的自主研发芯片。这样设计的好处是,数据控制和转发都与软件无关,而是听命于芯片,消除了软件控制可能带来的瓶颈。因此Cisco的ACI解决方案与SDN反其道而行之,其实是一种HDN(H为Hardware)。

对于传统SDN集中了网络复杂性的问题,CiscoACI解决方案中引入了一个完全与IP地址无关的策略模型。这个模型是一种基于承诺理论的面向对象的导向模型。承诺理论基于可扩展的智能对象控制,而不是那种管理系统中自上而下的传统命令式的模型。在这个管理系统中,控制平面必须知晓底层对象的配置命令及其当前状态。相反,承诺理论依赖于底层对象处理,由控制平面自身引发的配置状态变化作为“理想的状态变化”,然后对象作出响应,将异常或故障传递回控制平面。这种方法减少了控制平面的负担和复杂性,并可以实现更大规模的扩展。这套模型通过允许底层对象使用其他底层对象和较低级别对象的请求状态变化的方法来进行进一步扩展。

3.2 在MicrosoftHyper-V中实现网络虚拟化

Microsoft也提供了基于Hyper-V虚拟化平台的网络虚拟化产品,由于它不像NSX、ACI那样有完整的解决方案,因此目前还没有被正式命名,一般被称为HNV(Hyper-V Network Virtualization),它以WindowsServer 2012中的网络附加组件形式加载在Hyper-V的虚拟化平台之上。

Microsoft HNV的研发代码是通过Scratch编写的,且只支持Hyper-V一款Hypervisor,没有进行公开化。也就是说,这种网络虚拟化平台只能部署在纯Hyper-V环境。部署HNV所需的最低Hyper-V版本为3.0,它在WindowsServer 2012(包括R2)操作系统中以角色的方式提供给Hyper-V,作为服务模块加载。在HNV中,使用的是NVGRE协议实现Overlay(之前已阐述)。为了将流量从物理环境迁移到虚拟环境,或者将虚拟网段迁移到其他虚拟网段,需要部署WindowsServer 2012 R2 Inbox Gateway或者第三方网关设备。Microsoft使用Hyper-V可扩展交换API对HNV进行了扩展,我们可以使用PowerShell cmdlets对API进行再编程,最终实现网络虚拟化的自动化部署,进而实现整个数据中心的自动化。

HNV可以通过以下两种方式进行部署:System Center VirtualMmachine Manager(SCVMM)和

HNVPowerShell cmdlets。SCVMM其实也是在后台使用HNVPowerShell cmdlets,在Hyper-V平台上配置HNV组件,有一个统一的图形化界面。

在管理上,SCVMM提供了跨越部署Hyper-V的物理服务器之间的HNV配置管理。同时,SCVMM是一款服务器虚拟化与网络虚拟化一体化的管理工具。

但是,由于Microsoft的网络虚拟化平台并没有基于SDN的理论基础实现,且只能支持Hyper-V平台,很多高级的网络功能也是缺失的,因此它不能算完整的网络虚拟化解决方案。当然,当Hyper-V结合其System Center产品的时候,还是能达到较高的用户使用体验——SystemCenter可以为数据中心从基础架构到上层应用的绝大部分角色提供统一、便捷的管理。

3.3 JuniperContrail解决方案

2012年初,Cisco、Google、Juniper和Aruba公司的几名前高管创立了Contrail公司,专注于SDN解决方案。12月,这家公司以1.76亿美元被Juniper公司收购,其产品和解决方案融入Juniper,Contrail也成为Juniper的SDN和网络虚拟化解决方案的代名词。

Juniper认为,当今数据中心逐渐采用基于OpenFlow的SDN控制器来对物理交换机进行编程,以实现自动化。然而,这种方法具有与基于VLAN的多租户虚拟化方法相似的缺陷,即存在可扩展性、成本和可管理性的缺陷。OpenFlow是基于流表转发的,数据中心内存在数以千计的虚拟机,更有数百种数据流,因此在现今的低成本物理交换硬件中进行流编程是一项艰巨的任务和挑战,或是仅能通过支持流管理的昂贵交换设备加以缓解。此外,这种方法会降低管理基础结构的能力,因为租户/应用程序的状态编程在底层硬件之中,一个租户/应用程序的问题会影响到其他租户/应用程序。

Juniper认为它们的Contrail解决方案通过Overlay提供高级网络特性,从而解决了这些自动化、成本、扩展性和可管理性的问题。所有网络特性(包括交换、路由、安全和负载均衡)都可从物理硬件基础结构转移到Hyperisor中实现,并有统一的管理系统。它在支持系统扩展的同时,还降低了物理交换基础结构的成本,因为交换硬件不贮存虚拟机或租户/应用程序的状态,仅负责在服务器之间转发流量。此外,Contrail系统还解决了敏捷性问题,因为它提供了全部必要的自动化功能,支持配置虚拟化网络、联网服务。

Contrail是一种横向扩展的网络堆栈,支持创建虚拟网络,同时无缝集成现有物理路由器和交换机。它能支持跨公共云、私有云和混合云编排网络,同时提供有助自动化、可视化和诊断的高级分析功能。图2.11是Contrail解决方案的架构。可以看到,Contrail可以控制物理网络,还可以通过XMPP协议管理虚拟化环境中的逻辑网络,它支持的网络功能包括交换、路由、负载均衡、安全、VPN、网关服务和高可用性,此外,它还提供面向虚拟网络和物理网络的可视化和诊断功能,以及用于配置、操作和分析的REST API,并能够无缝集成到云编排系统(例如CloudStack或OpenStack)或服务提供商运营和业务支持系统(OSS/BSS)。

图2.11 Juniper Contrail解决方案架构

Juniper的Contrail解决方案在Overlay层面其实并不是通过VXLAN或NVGRE协议来搭建的,它的架构比较复杂。首先,它通过再编程,在KVM或Xen虚拟机上生成一个vRouter(VituralRouter,虚拟路由器),值得注意的是,vRouter不是虚拟交换机,而是虚拟路由器。Contrail控制器是通过XMPP协议控制vRouter,使得加载vRouter的KVM或Xen主机之间实现了基于MPLS技术的互连。而Contrail控制器在物理网络层面使用BGP协议来互连和扩展物理网络。

3.4 各厂商网络虚拟化解决方案的比较

各个厂商的网络虚拟化解决方案其实各有千秋,本节将对其进行比较。

NSX有如下优势:它无需关心底层物理网络架构,实现了真正的物理网络和逻辑网络的解耦,并将防火墙、负载均衡等功能集成到网络虚拟化平台中,无需特别加入第三方插件。NSX可以使用分布式的架构部署多台NSX Controller作为集群,消除基于软件的SDN控制器带来的瓶颈,且VMware的分布式交换机、分布式路由器有与自身服务器虚拟化的天然集成优势,能做到一致的策略,简化复杂性,保证虚拟机在迁移时,各种网络策略无需绑定其IP地址或端口。其私有的STT协议可以使用网卡进行大包分片工作,也能在NSX-MH环境中大大减轻了服务器CPU的负担。此外,由于NSX的前身是OpenFlow和OVS的发明者Nicira公司的NVP平台,因此NSX

对OpenFlow和OVS的支持非常好。NSX适用于几乎所有行业和客户的数据中心场景——现有数据中心的改造、数据中心新建、数据中心大规模扩容、在多数据中心打通连接、多租户数据中心、对东西向流量安全有需求的数据中心环境、大量部署虚拟桌面的数据中心环境,还能支持混合云,打通公有云和私有云间的隧道。

Cisco认为其ACI架构是完全以应用为中心的,并指责NSX解决方案是“以VMware为中心”的。其实,NSX解决方案支持所有主流开源虚拟化平台和开源数据中心管理平台,并无“以VMware为中心”一说。而NSX解决方案与F5等应用交付解决方案提供商的软件定义应用服务(SoftwareDefined Application Service,SDAS)解决方案相结合,同样可以构筑一套以应用为中心的架构。其实CiscoACI本身也需要F5这样的应用交付厂商的支持,才能实现真正的以应用为中心的架构。就目前而言,ACI“以应用为中心”的理念,其实看起来更像是“更好地实现了应用的QoS”而已,而无法独立地对应用进行自动化的部署和运维。

ACI的优势在于可以更好地支持有物理服务器的数据中心环境,因为连接物理服务器的Nexus9000系列交换机可以直接作为VXLAN的VTEP终结点,并且其解决方案提出的承诺模型能够有效地解决应用的QoS配置难题。另外,物理网络和虚拟网络得到了APIC控制器的统一管理和一致的可视化视图。然而,ACI解决方案最大的问题在于其物理网络硬件的局限性——ACI架构必须使用Cisco Nexus 9000系列交换机搭建底层物理网络,且在Nexus9000上需要配置专门的支持ACI的板卡,其他任何网络厂商的设备,甚至Cisco自己的其他型号交换机,都无法支持ACI。因为这个原因,ACI架构无法适用于数据中心改造和扩容项目,只能用于数据中心新建或重建。

Microsoft HNV网络虚拟化解决方案的优势在于价格,因为使用HNV解决方案不会产生任何额外的费用,它只是Hyper-V的一个附加功能。实现NSX网络虚拟化环境,需要在每台安装ESXi的物理服务器上按照CPU数量购买license,或根据部署KVM或Xen的物理服务器的CPU数量进行收费;而实现ACI,则需要将底层交换机全部换成Nexus 9000系列及支持ACI的二层、三层板卡,且至少需要购买3台物理APIC控制器。另外,对于Microsoft的应用,如SharePoint、Exchange,其网络虚拟化解决方案能达到最佳融合。Microsoft解决方案的劣势在于不能安装在非Hyper-V环境,NVGRE协议负载均衡较差,不能将物理网络和虚拟网络进行融合,并且它的管理平台也不是单一、集中的,而其底层的WindowsServer操作系统,也需要经常停机维护并进行打补丁和升级的工作——这是Windows Server所有应用的通病。

根据前面的介绍可知,Juniper的Contrail解决方案其实存在不少问题。首先,它只能运用在KVM和Xen环境,对于非开源的ESXi和Hyper-V无能为力。此外,它实现Overlay的方式极其复杂,是通过安装vRouter并在vRouter之上实现基于MPLS的互联,租户之间的隔离则是使用传统的VRF技术。最后,Contrail通过XMPP协议管理vRouter,对于物理网络,用的又是BGP协议,整个架构非常复杂,而且打造的也不是一个真正意义上的大二层网络(可以看成是一个大三层网络)。Juniper公司是一家以运营商网络和安全著称的公司,因此在数据中心架构的设想上,结合了大量运营商的路由技术。虽然其在功能上有优势,但是由于实现复杂,流量不优,不易实现大二层网络,因此现在在市场推广上阻力重重。

4.与VMwareNSX相关的认证

资格认证是IT行业的生命线,这些认证可以标识一名工程师或销售人员对某具体领域的知识和能力掌握的特定级别。有一些认证是通用的,不会具体到特定产品,如PMP、CISSP等。而几乎每家IT厂商都会为自己的产品和解决方案设计特定的资格认证,如Cisco、Microsoft、Oracle等。VMware自然也不会例外。本节会介绍VMware的认证体系以及与NSX相关的认证考试。

4.1 VMware认证体系简介

VMware于2003年开始针对自己的服务器虚拟化产品推出了相关认证,即VMware认证工程师(VCP,VMware CertifiedProfessional)。

苏珊·古登考夫(Susan Gudenkauf)是VMware在美国明尼苏达州的一名员工,她在2003年获得了VCP认证,也是全球第一位VCP。当时这个认证考试以笔试形式出现,其中一部分为多项选择题,一部分为主观题,试题都是基于ESX1.5版本的。现在全球差不多有近十万名工程师拥有VCP认证。VCP认证考试这些年来随着产品版本的不断变化而更新。

想要成为一个VCP,首先必须参加认证的培训课程,并且通过笔试。参加培训课程是强制性的——即使是经验丰富的工程师也必须参加一个基础课程才有资格参加考试。之后在测试中得分达线的话,就成为VCP了。

之后,Vmware针对初级工程师又推出了VCA(VMware Certified Associate)级别的认证。该认证考试并不强迫参加培训。而对于高级工程师,VMware推出了高于VCP的VCAP(VMwareCertified Advanced Professional)认证,必须在获得VCP之后才有资格参加该考试。而最高级别的认证VCDX(VMwareCertified Design Expert)是IT行业内难度最大的认证之一,拥有业内最高的含金量。至本书截稿为止,全球VCDX的总人数也仅为200余人,其中一半以上是VMware员工,而国内还没有人员获得任何方向的VCDX认证(国际上,有极少数的几名外籍华人获得了数据中心虚拟化方向的VCDX认证)。

之后,VMware的产品不再局限于服务器虚拟化,还涵盖了桌面虚拟化软件和数据中心运维和管理工具。2013年,随着NSX网络虚拟化平台的推出,VMware的产品线更加丰富。因此,VCP、VCAP、VCDX的认证方向越来越多——包含了4个方向。表2.3为2015年12月之前的VMware认证考试框架。

表2.3 2015年12月之前的VMware认证考试框架

4.2 与NSX相关的VMware认证与考试

VMware于2014年推出了与NSX网络虚拟化相关的认证考试,分别为VCP-NV、VCIX-NV、VCDX-NV,难度逐渐递增,证书含金量逐级增加。2015年,又增加了VCA-NV考试项目。2015年11月30日之后,认证考试分别更新为VCA6-NV、VCP6-NV、VCIX6-NV、VCDX6-NV,考试环境基于NSX 6.2和vSphere 6.0版本,而旧的考试项目是基于NSX 6.0和vSphere 5.5的。

VCA6-NV的全称为VMware Certified Associate 6- Network Virtualization,它是VMware推出的网络虚拟化助理工程师认证,即入门级。在VUE考试中心注册并付款后,即可参加考试。考试形式为开卷的网络在线考试,只要有互联网连通即可进行考试,考试内容全部为选择题,本书完全涵盖该门考试的所有考点。

VCP6-NV的全称为VMware Certified Professional6 - Network Virtualization,它是VMware推出的网络虚拟化专业工程师认证,拥有较高的含金量。想要获得该门考试资格,必须持有其他任何一门方向的VMwareVCP证书。如果没有其他方向的VCP证书,就必须参加VMwareNSX的原厂培训课程,之后才能获得该门考试资格。获得考试资格后,需要在VUE考试中心注册并付款,然后前往指定的VUE考点参加考试。考试形式为闭卷,内容全部为选择题,本书完全涵盖该门考试的所有考点。

VCIX6-NV的全称为VMware CertifiedImplementation Expert 6 - Network Virtualization,它是VMware推出的网络虚拟化部署专家认证,拥有极高的含金量。想要获得该门考试资格,需持有至少一门任何方向的VMware VCP证书(当然包括VCP-NV)。获得考试资格后,需要在VUE考试中心注册并付款,然后必须前往指定的VUE考点,才能参加考试。考试形式为闭卷,内容全部为操作题,4小时内完成约10个实验,在实现考试要求的大部分实验现象后,才算通过该门考试。本书完全涵盖该门考试的所有考点,但是需要考生在考试前进行大量实验,对部署、配置和排错能力进行训练,以熟悉NSX各组件的动手操作过程。国内目前获得该门认证的人数寥寥无几。

VCDX6-NV的全称为VMware Certified DesignExpert 6 - Network Virtualization,它是VMware推出的网络虚拟化设计架构师认证,与其他方向VCDX证书一样,是虚拟化行业内最高等级的认证证书,拥有业内最高的含金量,也是IT行业内最难通过的考试之一。想要获得该门考试资格,必须持有VCIX-NV证书。在考试付款成功后,

VMware总部会安排考生进行英文面试,现场回答面试官提出的各种问题,并按照面试官要求设计出一整套完整的网络虚拟化架构。至本书截稿为止,全球通过VCDX-NV方向认证的人数仅为40余人。

总结

? NSX的核心设计思想与服务器虚拟化的设计思路如出一辙,都是在底层硬件中抽象出所需的服务 ? NSX分为管理、控制、数据三个平面,每个平面各有自己的组件。

? 目前,NSX-V中使用的Overlay技术是VXLAN,NSX-MH则使用STT作为默认的隧道技术。VMware正针

对其现存问题与其他厂商共同研发新的Geneve协议。

? NSX、CiscoACI、Microsoft的网络虚拟化解决方案各有千秋。

? NSX有4门相关的认证考试——VCA6-NV、VCP6-NV、VCIX6-NV、VCDX6-NV,考试难度与证书含金量逐

级递增。

VMware总部会安排考生进行英文面试,现场回答面试官提出的各种问题,并按照面试官要求设计出一整套完整的网络虚拟化架构。至本书截稿为止,全球通过VCDX-NV方向认证的人数仅为40余人。

总结

? NSX的核心设计思想与服务器虚拟化的设计思路如出一辙,都是在底层硬件中抽象出所需的服务 ? NSX分为管理、控制、数据三个平面,每个平面各有自己的组件。

? 目前,NSX-V中使用的Overlay技术是VXLAN,NSX-MH则使用STT作为默认的隧道技术。VMware正针

对其现存问题与其他厂商共同研发新的Geneve协议。

? NSX、CiscoACI、Microsoft的网络虚拟化解决方案各有千秋。

? NSX有4门相关的认证考试——VCA6-NV、VCP6-NV、VCIX6-NV、VCDX6-NV,考试难度与证书含金量逐

级递增。

本文来源:https://www.bwwdw.com/article/e3q3.html

Top