通过跨多个虚拟私有云共享的控制虚拟私有云为工作负载提供联网和安全的制作方法

文档序号:20516478发布日期:2020-04-24 19:09阅读:219来源:国知局
通过跨多个虚拟私有云共享的控制虚拟私有云为工作负载提供联网和安全的制作方法

相关申请的交叉引用

本申请要求于2018年1月26日提交的题目为“通过跨多个虚拟私有云共享的控制虚拟私有云为工作负载提供联网和安全(providingnetworkingandsecuritytoworkloadsviaacontrolvirtualprivatecloudsharedacrossmultiplevirtualprivateclouds)”的15/881,710号美国非临时申请的权益。

本申请涉及:于2016年8月27日提交的题目为“将网络控制系统扩展到公共云中(extensionofnetworkcontrolsystemintopubliccloud)”的62/380,411号美国临时申请;于2016年8月31日提交的题目为“将网络控制系统扩展到公共云中(extensionofnetworkcontrolsystemintopubliccloud)”的15/253,829号美国申请;于2016年8月31日提交的题目为“无需覆盖网络的公共云数据计算节点中的管理转发元素执行(managedforwardingelementexecutinginpublicclouddatacomputenodewithoutoverlaynetwork)”的15/253,832号美国申请;于2016年8月31日提交的题目为“在具有不同内部和外部网络地址的公共云数据计算节点中进行管理转发元素执行(managedforwardingelementexecutinginpublicclouddatacomputenodewithdifferentinternalandexternalnetworkaddresses)”的15/253,833号美国申请;于2016年8月31日提交的题目为“在公共云数据计算节点的单独命名空间中而不是在工作负载应用程序中的管理转发元素执行(managedforwardingelementexecutinginseparatenamespaceofpublicclouddatacomputenodethanworkloadapplication)”的15/253,834号美国申请;于2016年9月28日提交的题目为“公共云中的逻辑网络的南北流量的集中处理(centralizedprocessingofnorth-southtrafficforlogicalnetworkinpubliccloud)”的15/279,382号美国申请;于2016年9月28日提交的题目为“用于在公共云中实现的逻辑网络的分布式网络加密(distributednetworkencryptionforlogicalnetworkimplementedinpubliccloud)”的15/279,394号美国申请;于2016年9月28日提交的题目为“公共和私有数据中心之间扩展的逻辑网络域(logicalnetworkdomainsstretchedbetweenpublicandprivatedatacenters)”的15/279,403号美国申请;于2016年9月28日提交的题目为“公共云中的逻辑网络的南北流量的分布式处理(distributedprocessingofnorth-southtrafficforlogicalnetworkinpubliccloud)”的15/279,409号美国申请;于2016年12月5日提交的题目为“网络虚拟化平台的策略定义和执行(policydefinitionandenforcementforanetworkvirtualizationplatform)”的15/369,580号美国申请;于2016年12月5日提交的题目为“网络虚拟化的多层策略定义和执行框架(multi-layerpolicydefinitionandenforcementframeworkfornetworkvirtualization)”的发行为9,762,619号美国专利的15/369,596号美国申请;于2017年1月13日提交的题目为“基于逻辑端口标识符的虚拟交换机中的网络流量管理(managingnetworktrafficinvirtualswitchesbasedonlogicalportidentifiers)”的15/406,249号美国申请;于2017年12月4日提交的题目为“公共云逻辑网络中的状态服务的高可用性(highavailabilityforstatefulservicesinpubliccloudlogicalnetworks)”的15/831,372号美国申请;以及于2017年12月4日提交的题目为“公共云逻辑网络中集中式路由器的故障转移(failoverofcentralizedroutersinpubliccloudlogicalnetworks)”的15/831,369号美国申请。这些申请的全部内容通过引用合并于本文。

本公开总体上涉及逻辑网络,并且更具体地涉及实现分层逻辑网络,该分层逻辑网络部署跨多个计算虚拟私有云共享的控制虚拟私有云。



背景技术:

越来越多的用户(例如,组织、公司)将其网络转移到构建在数据中心的云中。该网络可以包括私有数据中心和公共数据中心,或几个私有和/或公共数据中心的组合。软件定义的数据中心使网络管理员能够通过提供软件覆盖图来更轻松地管理在多个数据中心上运行的网络,以便从管理员的角度将在多个数据中心上运行的网络视为一个集中的系统——逻辑网络。

与任何网络一样,逻辑网络可以包括多个主机计算系统(例如,虚拟私有云),每个部署一个或更多个虚拟机,这些虚拟机遍布组成软件定义的数据中心的整个数据中心。为了在整个逻辑网络的端点上实施网络策略(例如,安全策略、路由策略、实施策略),每个主机计算系统(例如,每个虚拟私有云)可以在本地操作代理控制平面,该代理控制平面管理在其相应的主机计算系统内的网络策略规则的转发。

然而,针对每个主机计算系统(例如,针对每个虚拟私有云)本地操作代理控制平面可能是计算资源密集且昂贵的任务(例如,因为控制平面可以由虚拟机集群来操作和/或操作控制平面可能需要专用硬件,其与操作工作负载虚拟机的硬件不同)。随着网络规模的扩大,这个问题变得越来越大-网络中存在大量的主机计算系统(例如,更多的虚拟私有云),网络管理员操作逻辑网络耗费更多的计算资源,且成本更加昂贵。因此,使用传统技术来操作逻辑网络对于网络管理员而言变得繁重。



技术实现要素:

本文公开的发明旨在实现在软件定义的数据中心上操作的分层逻辑网络,该分层逻辑网络在由逻辑网络的多个计算虚拟私有云共享的控制虚拟私有云中部署代理控制平面和/或南北数据平面(north-southdataplane)。

在一些实施例中,一种用于使用控制虚拟私有云(例如,在软件定义的数据中心上实现的逻辑网络的控制虚拟私有云)跨虚拟私有云在虚拟机上实施策略(例如,安全策略、路由策略、实施策略)的方法。该方法包括,在包括代理控制平面的控制虚拟私有云(例如,软件定义的数据中心的公共数据中心的控制虚拟私有云)处,其中该代理控制平面与第一(计算)虚拟私有云的至少第一虚拟机和第二(计算)虚拟私有云的至少第二虚拟机直接通信,接收策略并直接传输策略的第一规则至第一虚拟机并且传输策略的第二规则至第二虚拟机,而无需通过第一(计算)虚拟私有云或第二(计算)虚拟私有云本地的中间代理控制平面。该方法还包括,在第一(计算)虚拟私有云的第一虚拟机处,从控制虚拟私有云的代理控制平面接收第一规则,并(通过第一本地控制平面代理)在第一虚拟机实施第一规则。该方法还包括,在第二(计算)虚拟私有云的第二虚拟机处,从控制虚拟私有云的代理控制平面接收第二规则,并(通过第二本地控制平面代理)在第二虚拟机实施第二规则。

在一些实施例中,描述了一种或更多种非暂时性(和/或暂时性)计算机可读存储介质(可选地包括用于执行多种功能的一个或更多个模块、程序和/或指令集),其存储一个或更多个被配置为由一个或更多个处理器执行的程序,以使用控制虚拟私有云(例如,在软件定义的数据中心上实现的逻辑网络的控制虚拟私有云)跨虚拟私有云在虚拟机上实施策略(例如,安全策略、路由策略、实施策略)。一个或更多个程序还包括用于如上所述在控制虚拟私有云、在第一虚拟私有云的第一虚拟机和第二虚拟私有云的第二虚拟机上执行该方法的指令。

在一些实施例中,描述了一种用于使用控制虚拟私有云(例如,在软件定义的数据中心上实现的逻辑网络的控制虚拟私有云)跨虚拟私有云在虚拟机上实施策略(例如,安全策略、路由策略、执行策略)的系统(其可选地包括存储器以及一个或更多个模块、程序和/或存储器中的用于执行多种功能的指令集)。该系统包括如上所述的被配置为实施该方法的控制虚拟私有云、第一虚拟私有云的第一虚拟机和第二虚拟私有云的第二虚拟机。

附图说明

以下描述和相关附图教导了本发明的最佳模式。因此,本领域技术人员将理解落入本发明范围内的最佳模式的变化。本领域技术人员将理解,以下描述的特征可以以各种方式组合以形成本发明的多种变型。因此,本发明不限于以下描述的具体示例,而是仅由权利要求书及其等同物限制。

图1示出了在控制虚拟私有云中部署代理控制平面的示例性逻辑网络。

图2示出了在控制虚拟私有云中部署代理控制平面的逻辑网络上分布配置规则的示例操作场景。

图3示出了在控制虚拟私有云中部署代理控制平面的示例性逻辑网络,该控制虚拟私有云管理跨不同区域的数据中心的工作负载。

图4示出了在控制虚拟私有云中部署多个代理控制平面的示例性逻辑网络。

图5示出了在控制虚拟私有云中部署代理控制平面和南北数据平面的示例性逻辑网络。

图6示出了在控制虚拟私有云中部署南北数据平面以及在计算虚拟私有云中部署代理控制平面的示例性逻辑网络。

具体实施方式

本文公开的发明针对用于实现分层逻辑网络(也被称为软件定义网络(sdn))的实施例,该分层逻辑网络包括控制虚拟私有云中的代理控制平面和/或南北数据平面,所述控制虚拟私有云(例如,共享虚拟私有云)由逻辑网络的多个计算虚拟私有云共享,并充当多个计算虚拟私有云的中央控制网关。

在一些实施例中,逻辑网络在软件定义的数据中心上操作。也就是说,逻辑网络跨越一个私有数据中心和/或一个或更多个公共多租户数据中心,在私有数据中心中系统可以访问和控制转发元素,在一个或更多个公共多租户数据中心中系统不能访问转发元素。此外,一个或更多个公共云数据中心可以是同一云服务提供商的或不同云服务提供商的。

典型的数据中心(无论是公共的还是私有的)包括多个主机计算系统,每个主机计算系统由一个或更多个处理器技术支持,并且每个主机计算系统包括存储器。存储器可以包括一个或更多个计算机可读存储介质。一个或更多个计算机可读存储介质可以是有形的和非暂时性的,和/或可以是暂时性的。存储器可以包括高速随机存取存储器,并且还可以包括非易失性存储器(例如,一个或更多个闪存存储设备、一个或更多个磁盘存储设备和/或其他非易失性固态存储器设备)。存储器中包括的一个或更多个计算机可读存储介质可以存储包括指令的一个或更多个程序。指令可以被配置为实现逻辑网络(至少一部分)。

在一些实施例中,逻辑网络基础设施还包括sdn管理器(例如,管理平面),其建立策略规则集(例如,由逻辑网络的拥有者的网络管理员经由网络管理接口配置)和通过网络传播策略的sdn控制器。sdn管理器和sdn控制器可以在网络管理员的相同私有服务器(例如,私有数据中心)上运行,或者可以在不同数据中心上运行。在一些实施例中,sdn控制器将配置规则(例如,联网和/或安全策略的配置规则)传播到逻辑网络的一个或更多个代理控制平面(例如,部署在一个或更多个公共数据中心上)。

在一些实施例中,部署逻辑网络的软件定义的数据中心包括一个或更多个公共数据中心,并且每个公共数据中心提供一个或更多个隔离的计算资源集合(例如,一个或更多个隔离的虚拟机集合),网络管理员对其有控制权——由公共数据中心提供的每个隔离的计算资源集合在行业中有时也被称为“虚拟私有云”。在某些实施例中,逻辑网络可以包括多个虚拟私有云(例如,包括一个或更多个控制虚拟私有云和一个或更多个计算虚拟私有云)。

在一些实施例中,计算虚拟私有云包括运行工作负载应用程序的一个或更多个虚拟机(和/或一个或更多个容器)。在一些实施例中,控制虚拟私有云(也被称为共享虚拟私有云)由逻辑网络的多个计算虚拟私有云的一个或更多个虚拟机(和/或更多个容器)共享。在一些实施例中,控制虚拟私有云包括被配置为与其相应的公共数据中心的(第三方)云服务提供商的应用编程接口通信的云插件。

在一些实施例中,虚拟私有云(无论是共享虚拟私有云还是计算虚拟私有云)包括代理控制平面,该代理控制平面由单个虚拟机或其相应虚拟私有云的虚拟机集群实现。在一些实施例中,代理控制平面从sdn控制器接收配置规则(例如,联网和/或安全策略的配置规则),并且进一步将规则传播到其各自的虚拟机(和/或容器)。在一些实施例中,代理控制平面(无论是在共享虚拟私有云还是在计算虚拟私有云中)可以水平扩展到多个(或附加)虚拟机。向外扩展代理控制平面以覆盖多个虚拟机或虚拟机群集有助于减轻代理控制平面上的网络负载。在并入的15/831,372号美国申请和15/831,369号美国申请中更详细地描述了这种技术(也被称为“分片(sharding)”(例如,参考数据平面))。

在一些实施例中,虚拟私有云(无论它是共享虚拟私有云还是计算虚拟私有云)还包括由单个虚拟机或其相应的虚拟私有云的虚拟机集群实现的南北数据平面。在一些实施例中,南北数据平面充当其各自的虚拟私有云的网关——虚拟私有云的所有南北向流量都通过其各自的南北数据平面。在一些实施例中,与代理控制平面一样,南北数据平面(无论是在共享虚拟私有云中还是在计算虚拟私有云中)可以水平扩展到多个(或附加)虚拟机。与实现代理控制平面的一个或更多个虚拟机一样,将南北数据平面分片可以帮助减轻南北数据平面上的网络负载。如上所述,在并入的美国申请号15/831,372号美国申请和15/831,369号美国申请中更详细地描述了对数据平面的分片。

在一些实施例中,逻辑网络基础设施还包括网络控制器(例如,本地控制平面代理)和计算虚拟私有云的虚拟机内部(和/或容器内部)的管理转发元素,以实施网络安全和转发规则,以用于虚拟机之间(和/或容器之间)通信的数据包。

如以下更详细描述的,本文描述的技术通过替代地在控制虚拟私有云(例如,共享虚拟私有云)中部署一个或更多个代理控制平面,和/或在控制虚拟私有云中部署一个或更多个南北数据平面,解决了在逻辑网络的每个计算虚拟私有云(部署在一个或更多个公共数据中心上)上本地部署代理控制平面和/或南北数据平面的缺点。

图1示出了根据一些实施例的在控制虚拟私有云(例如,共享虚拟私有云)中部署代理控制平面的示例性逻辑网络100。在逻辑网络100(该逻辑网络100在控制虚拟私有云中部署了代理控制平面)上分布配置规则(例如,联网和/或安全策略的配置规则)的示例性操作场景参考图2的流程图200的框210-250进行描述。在一些实施例中,逻辑网络100被部署在软件定义的数据中心上,其中软件定义的数据中心至少包括私有数据中心110和公共数据中心111。在一些实施例中,软件定义的数据中心可选地还包括在其权限范围内的一个或更多个附加数据中心(未示出)。在一些实施例中,软件定义的数据中心仅包括一个或更多个附加公共数据中心。

逻辑网络100在公共数据中心111内包括第一虚拟私有云130(例如,计算虚拟私有云)和第二虚拟私有云131(例如,计算虚拟私有云)。在一些实施例中,逻辑网络100还包括一个或更多个附加计算虚拟私有云(未示出)。一个或更多个附加计算虚拟云可以被部署在公共数据中心111和/或不同的数据中心中。

逻辑网络100还包括部署在数据中心110(例如,私有数据中心)中的由sdn管理器101控制的sdn控制器102。sdn管理器101建立一组可由逻辑网络100的拥有者的网络管理员经由网络管理接口配置的策略规则(例如,安全规则、路由规则、转发规则、实施规则),并将策略规则转发到sdn控制器102,以通过网络进行分配。在接收到策略规则之后,sdn控制器102将策略规则跨网络发送到第一级网络控制器(例如,操作为中央控制网关的控制虚拟私有云)。

第一虚拟私有云130本地包括南北数据平面146和多个虚拟机(连接到南北数据平面146),包括虚拟机140-142。南北数据平面146可以是第一虚拟私有云130的单个虚拟机或第一虚拟私有云130的虚拟机集群。类似地,第二虚拟私有云131本地包括南北数据平面147和多个虚拟机(连接到南北数据平面147),包括虚拟机143-145。在一些实施例中,第一虚拟私有云130和/或第二虚拟私有云131包括也连接到其各自的南北数据平面的一个或更多个容器。在一些实施例中,南北数据平面146和147的每个都连接到外部网络190。

在一些实施例中,逻辑网络100的每个虚拟机(和/或每个容器)操作工作负载应用程序(例如,应用程序工作负载、数据库工作负载、网络(web)工作负载)。例如,在逻辑网络100中,虚拟机140-142可以分别操作网络工作负载150、数据库工作负载151和应用程序工作负载152,并且虚拟机143-145可以分别操作网络工作负载153、应用程序工作负载154和数据库工作负载155。

在一些实施例中,逻辑网络的每个虚拟机包括本地控制平面代理,该本地控制平面代理控制用于监视输出分组和输入分组的管理转发元素。例如,虚拟机140-145每个分别包括本地控制平面代理160-165和每个分别包括管理转发元素170-175。逻辑网络的每个虚拟机还包括用于从网络发送和接收分组的虚拟网络接口。例如,在逻辑网络100中,虚拟机140-145每个分别包括虚拟网络接口180-185。

如图1所示,公共数据中心111还包括与第一虚拟私有云130和第二虚拟私有云131通信的控制虚拟私有云120。控制虚拟私有云120也可以与逻辑网络(未示出)的一个或更多个附加虚拟私有云通信。控制虚拟私有云120操作为逻辑网络的计算虚拟私有云(例如,第一虚拟私有云130和第二虚拟私有云131)的中央控制网关。

在一些实施例中,经由虚拟私有云之间的对等(peer)来提供控制虚拟私有云120与计算虚拟私有云130和131之间的连接。在一些实施例中,经由虚拟私有云之间的虚拟私有网络(vpn)连接来提供连接控制虚拟私有云120与计算虚拟私有云130和131之间的连接,这可以使用由租户实例化的虚拟设备或通过使用由公共云提供商提供的vpn服务来实现。在一些实施例中,控制虚拟私有云120与计算虚拟私有云130和131之间的连接由数据中心111的云服务提供商所支持的任何其他虚拟间私有云连接机制提供。

同样如图1所示,控制虚拟私有云120包括代理控制平面121,该代理控制平面121连接到第一虚拟私有云130的虚拟机140-142和第二虚拟私有云131的虚拟机143-145,并且被配置为向虚拟机140-142和虚拟机143-145提供配置规则(例如,联网和/或安全策略的配置规则)。在该实施方式中,第一虚拟私有云130和第二虚拟私有云131均未在本地部署代理控制平面。在一些实施例中,除了代理控制平面121之外,控制虚拟私有云120包括一个或更多个附加代理控制平面作为备用代理控制平面。

参照图2,在框210处,sdn管理器101建立第一配置规则集合(例如,由逻辑网络100的拥有者的网络管理员经由网络管理接口配置),其在本文中被称为“第一策略”。第一策略例如是统一的全局安全策略。在框220处,sdn管理器101将第一策略转发给sdn控制器102以在逻辑网络上分发。

在一些实施例中,在分发策略之前,sdn控制器102基于策略的规则(例如,通过执行跨度计算)确定哪些第一级网络控制器(例如,哪个(哪些)中央控制网关,如果网络部署有多个中央控制网关)应接收该策略规则。在逻辑网络100中,部署了单个中央控制网关(控制虚拟私有云120)。因此,在框230处,sdn控制器102将第一策略发送至公共数据中心111的控制虚拟私有云120。

在框240处,在接收到第一策略后,控制虚拟私有云120的代理控制平面121对已接收的策略规则执行跨度计算以确定逻辑网络的端点(例如,虚拟机140-142、虚拟机143-145),以在其上实施策略规则。在一些实施例中,端点是逻辑网络的计算虚拟私有云的一个或更多个虚拟机和/或一个或更多个容器。

在框250处,在基于策略规则确定应在第一虚拟私有云130和第二虚拟私有云131的虚拟机上实施策略后,代理控制平面121将策略规则传输到第一虚拟私有云130的虚拟机140-142和第二虚拟私有云131的虚拟机143-145。在一些实施例中,在每个虚拟机上,本地控制平面代理配置各自的管理转发元素以在其各自的虚拟机上实施策略规则。

替代地,在框251处,在基于策略规则确定应在第一虚拟私有云130的虚拟机上实施策略而不是在第二虚拟私有云131的虚拟机上实施策略后,代理控制平面121将该策略规则传输到第一虚拟私有云130的虚拟机140-142以执行,但不将策略规则传输至第二虚拟私有云131的虚拟机143-145。

如以上参考图2的流程图200所描述的,在一些实施例中,逻辑网络的所有工作负载(例如,虚拟机140-142和虚拟机143-145的工作负载)在控制虚拟私有云中连接到共享代理控制平面(例如,代理控制平面121),而不是本地连接到工作负载虚拟机的(或工作负载容器的)各自的虚拟私有云中的代理控制平面上,以从sdn控制器102接收策略规则。

利用控制虚拟私有云(操作为中央控制网关)中的共享代理控制平面来将策略规则分发给逻辑网络的端点,可以减少操作逻辑网络所需的主机计算资源量(例如,通过操作较少的虚拟机),通过这样减少了逻辑网络拥有者在由一个或更多个云服务提供商提供的一个或更多个公共数据中心上维持逻辑网络的使用的技术管理和财务负担。

如上所述,部署逻辑网络100的软件定义的数据中心可选地包括在相同或不同数据中心中的一个或更多个附加计算虚拟私有云。在一些实施例中,软件定义的数据中心包括第三计算虚拟私有云,该第三计算虚拟私有云在与公共数据中心111不同的第二公共数据中心上运行,但是与公共数据中心111在相同的地理区域中(例如,美国西部区域)。在一些实施例中,与第一虚拟私有云130和第二虚拟私有云131一样,第三虚拟私有云与公共数据中心111的控制虚拟私有云120对等,并且第三虚拟私有云的工作负载(虚拟机和/或容器的工作负载)直接从控制虚拟私有云120的代理控制平面121接收策略规则。

然而,在某些情况下,逻辑网络所包括的公共数据中心可能与该逻辑网络所包括的另一个公共数据中心位于不同的地理区域(例如,一个数据中心可能位于美国西部区域,而另一个数据中心可能位于在美国东部区域)。图3示出了根据一些实施例的在软件定义的数据中心上实现的示例性逻辑网络300,该软件定义的数据中心在管理跨不同地理区域的数据中心的工作负载的控制(共享)虚拟私有云中部署代理控制平面。

如图3所示,逻辑网络300的软件定义的数据中心包括部署sdn管理器301(其建立策略规则)和sdn控制器302(其在网络上分发策略规则)的私有数据中心310。逻辑网络300的软件定义的数据中心还包括第一公共数据中心311和第二公共数据中心312,其中第二公共数据中心312与第一公共数据中心311位于不同的地理区域(例如,第一公共数据中心311在美国西部区域,第二公共数据中心312位于美国东部区域)。

第一公共数据中心311包括部署代理控制平面321的控制虚拟私有云320(共享虚拟私有云)。代理控制平面321可以是单个虚拟机或属于操作控制虚拟私有320的隔离的计算资源集合的虚拟机集群。

第一公共数据中心311还包括部署南北数据平面335的第一虚拟私有云330(计算虚拟私有云)和部署南北数据平面336的第二虚拟私有云331(计算虚拟私有云)。南北数据平面335和南北数据平面336每个可以是单个虚拟机或属于其各自的虚拟私有云的隔离的计算资源集合的虚拟机集群。

在一些实施例中,控制虚拟私有云320与第一虚拟私有云330和第二虚拟私有云331对等——因此,第一虚拟私有云330的虚拟机340-342和第二虚拟私有云331的虚拟机343-345连接到控制虚拟私有云320的代理控制平面321并与其(直接)通信。

类似地,第二公共数据中心312包括部署南北数据平面337(例如,作为单个虚拟机或虚拟机集群)的第三虚拟私有云332(计算虚拟私有云)和虚拟机346-347和具有南北数据平面368(例如,作为单个虚拟机或虚拟机群集)的第四虚拟私有云333和虚拟机348-349。如上所述,第二公共数据中心312与第一公共数据中心311位于不同的地理区域。

因为数据中心在不同的地理区域中,第二公共数据中心312的第三虚拟私有云332和第四虚拟私有云333都不与第一公共数据中心311的控制虚拟私有云320对等。在一些实施例中,第二公共数据中心312的虚拟私有云中的虚拟机替代地经由虚拟私有网络(vpn)连接与控制虚拟私有云320通信。一旦在共享虚拟私有云(例如,控制虚拟私有云320)的代理控制平面(例如,代理控制平面321)与部署在不同地理位置的公共数据中心的主机系统上的其他虚拟机(例如,虚拟机346-349)之间建立了vpn连接,这些其他虚拟机可以(直接)与共享虚拟私有云的代理控制平面(例如,代理控制平面321)通信以直接接收策略规则。

在某些情况下,逻辑网络可以是包括部署多个虚拟机的多个虚拟私有云的蔓延网络(sprawlingnetwork)。例如,作为公司的网络管理员可能需要一个大型网络,该大型网络包括跨一个或更多个数据中心部署的数百个虚拟私有云(或更多个虚拟私有云)。图4示出了根据一些实施例的在软件定义的数据中心上实现的示例性逻辑网络400,该软件定义的数据中心包括经由分片而水平缩放的代理控制平面(在控制虚拟私有云内)。逻辑网络400的软件定义的数据中心包括部署sdn管理器401(其建立策略规则)和sdn控制器402(其在网络上分发策略规则)的私有数据中心410。逻辑网络400的软件定义的数据中心还包含第一公共数据中心411和第二公共数据中心412(例如,在与第一公共数据中心411相同的地理区域内)。

第一公共数据中心411包括控制虚拟私有云420(操作为中央控制网关),其部署一个或更多个代理控制平面,并且包括多个虚拟机(例如,虚拟机421-423)。每个代理控制平面可以是单个虚拟机和/或由实现控制虚拟私有云420的隔离的计算资源集合操作的虚拟机集群。

第一公共数据中心411还包括多个计算虚拟私有云431a-431z,其中每个计算虚拟私有云包括多个工作负载虚拟机(和/或工作负载容器)。类似地,第二公共数据中心412包括多个计算虚拟私有云432a-432z,其中每个计算虚拟私有云包括多个工作负载虚拟机(和/或工作负载容器)。这样,由控制虚拟私有云420的单个虚拟机(例如,虚拟机421)实现的代理控制平面可能没有足够的带宽和/或计算资源,来管理代理控制平面的单个虚拟机(例如,虚拟机421)以及整个逻辑网络中部署的所有工作负载(例如,虚拟私有云431a-431z和432a-432z)之间的所有网络流量。

在一些实施例中,为了解决带宽不足的问题,将代理控制平面水平扩展到多个虚拟机(例如,虚拟机421-423)或虚拟机集群。这样,在逻辑网络400中,虚拟私有云431a-431m的工作负载、虚拟私有云431n-431z的工作负载以及虚拟私有云432a-432z的工作负载的处理在当下实现代理控制平面的控制虚拟私有云420的多个虚拟机(例如,虚拟机421-423)之间进行划分,从而减轻了可能因过载的控制平面而引起的网络问题(例如,网络速度的损失)。

如上所述,逻辑网络的计算虚拟私有云每个可以包括一个或更多个南北数据平面,其中南北数据平面可以是单个虚拟机或由其各自的虚拟私有云的隔离的计算资源集合实现的虚拟机集群。在一些实施例中,也可以将南北数据平面与代理控制平面一起从计算虚拟私有云推出到控制虚拟私有云。图5示出了根据一些实施例的在软件定义的数据中心上实现的示例性逻辑网络500,该软件定义的数据中心包括部署代理控制平面和南北数据平面的控制虚拟私有云。逻辑网络500的软件定义的数据中心包括部署sdn管理器501(其建立策略规则)和sdn控制器502(其在网络上分发策略规则)的私有数据中心510。逻辑网络500的软件定义的数据中心还包括部署控制虚拟私有云520和多个计算虚拟私有云的公共数据中心511,其中至少包括第一虚拟私有云530和第二虚拟私有云531。

如图5所示,控制虚拟私有云520部署代理控制平面521和南北数据平面522。在一些实施例中,控制虚拟私有云520部署一个或更多个附加南北数据平面作为备用南北数据平面。第一虚拟私有云530和第二虚拟私有云531都不在本地包括代理控制平面或南北数据平面。而是,第一虚拟私有云530的工作负载(例如,虚拟机540-542的工作负载)和第二虚拟私有云531的工作负载(例如,虚拟机543-544的工作负载)与控制虚拟私有云520的中央控制平面521和南北数据平面522中的每个(直接)通信。在一些实施例中,控制虚拟私有云520的南北数据平面522也经由不同的网络隧道直接连接到外部网络590。

在某些情况下,在控制虚拟私有云(操作为中央控制网关)中部署南北数据平面可能会限制虚拟机与外部网络之间的双向通信。例如,由于公共数据中心511的云服务提供商实施的限制,如果传入流量的目的因特网协议(ip)地址不是与接收虚拟私有云(即控制虚拟私有云)相关联的公共ip地址,则因特网网关可能会丢弃从外部网络590传入到控制虚拟私有云520的返回流量。类似地,如果传入流量的目的ip地址不是虚拟私有云(即控制虚拟私有云520)内部的ip地址,则vpn网关也可能会丢弃经由vpn从外部网络590传入的返回流量。

在一些实施例中,为了克服由云服务提供商对返回网络流量施加的限制引起的这个问题,当将分组发送到外部网络时逻辑网络500部署覆盖机制。具体地,在将分组(例如,从计算虚拟私有云的虚拟机,例如第一虚拟私有云530的虚拟机540)推出控制虚拟私有云520到外部网络590之前,控制虚拟私有云520对分组执行地址转换(例如,通过由本地控制平面代理管理的代理控制平面的管理转发元素)。在一些实施例中,本地控制平面代理指示管理转发元素用与控制虚拟私有云520的本地地址(而不是原始计算虚拟私有云例如虚拟私有云530的地址)相对应的源ip地址封装分组。这样做以后,云服务提供商就允许与该数据包相对应的返回流量从外部网络590进入逻辑网络500(经由控制虚拟私有云520)。接收到该返回流量之后,控制虚拟私有云520的代理控制平面521解封装该返回流量并将该流量转发到其预期的目标虚拟机(例如,第一虚拟私有云530的虚拟机540)。

如上所述,逻辑网络的计算虚拟私有云每个可以本地包括一个或更多个代理控制平面,其中代理控制平面是单个虚拟机或由其各自的虚拟私有云的隔离的计算资源集合实现的虚拟机集群。在一些实施例中,当在计算虚拟私有云上本地维护代理控制平面的部署时,南北数据平面被推出到控制虚拟私有云(例如,共享虚拟私有云)。图6示出了根据一些实施例的在软件定义的数据中心上实现的示例性逻辑网络600,该软件定义的数据中心包括部署从逻辑网络的端点(例如,虚拟机640-642和虚拟机643-645)(直接)接收南北网络流量的南北数据平面621的控制虚拟私有云620。在一些实施例中,控制虚拟私有云620包括一个或更多个附加南北数据平面作为备用南北数据平面。逻辑网络600的软件定义的数据中心包括私有数据中心610sdn管理器601(其建立策略规则)和sdn控制器602(其在网络上分发策略规则)。逻辑网络600的软件定义的数据中心还包括部署控制虚拟私有云620(例如,操作为中央控制网关的共享虚拟私有云)的公共数据中心611和多个计算虚拟私有云,其中至少包括第一虚拟私有云630和第二虚拟私有云631。

如图6所示,第一虚拟私有云630本地包括直接控制其各自的本地虚拟机(例如,虚拟机640-642)和/或容器的代理控制平面646。类似地,第二虚拟私有云631本地包括直接控制其各自的本地虚拟机(例如,虚拟机643-645)和/或容器的代理控制平面647。

在一些实施例中,控制虚拟私有云620(而不是计算虚拟私有云)部署由逻辑网络的多个计算虚拟私有云(例如,第一虚拟私有云630和第二虚拟私有云631)中的虚拟机(例如,虚拟机640-642和虚拟机643-645)共享的一个或更多个南北数据平面(例如,南北数据平面621)。在一些实施例中,南北数据平面621也经由不同的网络隧道直接连接到外部网络690。在一些实施例中(例如,如参考图4中的代理控制平面所描述的),南北数据平面621被水平缩放多个虚拟机或虚拟机集群(例如,通过分片)以减少实现南北数据平面的任何虚拟机上的过载。

通过在每个计算虚拟私有云内本地实现代理控制平面(例如,代理控制平面646和647)以及集中实现由虚拟机(和/或容器)在不同的虚拟私有云之间共享的南北数据平面(例如,南北数据平面621),逻辑网络在计算虚拟私有云之间(例如,在第一虚拟私有云630和第二虚拟私有云631之间)提供隔离。这种隔离的一个好处是增强了安全性。例如,恶意虚拟机可能会影响在其各自的虚拟私有云上本地实现的代理控制平面。但是,恶意虚拟机只能影响在其各自的计算虚拟私有云中的策略传播-该恶意虚拟机不能影响网络中其他计算虚拟私有云中的策略传播。

此外,操作南北数据平面通常需要大量使用主机计算资源(例如,虚拟机集群)。例如,网络通常需要更大的虚拟机(或更大的虚拟机集群)来运行与控制平面相反的南北数据平面。这样,在由网络上的多个计算虚拟私有云共享的控制虚拟私有云上集中实现南北数据平面(与在每个计算虚拟私有云上本地实现南北数据平面相反)可以提供要求减少使用主机计算资源的额外好处。这又可以进一步为逻辑网络的拥有者节省成本,因为该所有者可以由公共数据中心的云服务提供商根据网络所使用的主机计算资源的数量来收费。

所包括的描述和附图描绘了具体的实现方式,以教导本领域技术人员如何制作和使用最佳模式。为了教导发明原理,已经简化或省略了一些常规方面。本领域技术人员将意识到落入本发明范围内的来自这些实现方式的变型。本领域技术人员还将意识到,上述特征可以以各种方式组合以形成多种实现方式。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1