CN107769938B - 一种Openstack平台支持多网络区域的系统和方法 - Google Patents

一种Openstack平台支持多网络区域的系统和方法 Download PDF

Info

Publication number
CN107769938B
CN107769938B CN201610677094.5A CN201610677094A CN107769938B CN 107769938 B CN107769938 B CN 107769938B CN 201610677094 A CN201610677094 A CN 201610677094A CN 107769938 B CN107769938 B CN 107769938B
Authority
CN
China
Prior art keywords
network
area
areas
nodes
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201610677094.5A
Other languages
English (en)
Other versions
CN107769938A (zh
Inventor
马世佳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud Technology Co Ltd
Original Assignee
Beijing Kingsoft Cloud Network Technology Co Ltd
Beijing Kingsoft Cloud Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Kingsoft Cloud Network Technology Co Ltd, Beijing Kingsoft Cloud Technology Co Ltd filed Critical Beijing Kingsoft Cloud Network Technology Co Ltd
Priority to CN201610677094.5A priority Critical patent/CN107769938B/zh
Publication of CN107769938A publication Critical patent/CN107769938A/zh
Application granted granted Critical
Publication of CN107769938B publication Critical patent/CN107769938B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies

Abstract

本申请提出一种Openstack平台支持多网络区域的系统和方法,涉及云计算管理平台技术领域,包括:根据Openstack平台所在的物理拓扑或者逻辑拓扑部署多个网络区域,所述多个网络区域内实现数据网络连通,并为每个网络区域设置对应的区域属性;根据设定的区域属性确定每个网络区域对应的网络节点和计算节点,控制节点将所述Openstack平台内的网络节点和计算节点根据每个网络区域对应的区域属性划分至对应的网络区域。本发明不仅满足客户对对多区域的物理隔离需求,还能实现区分网络节点的能力和提供不同可靠性服务的能力,更好的与计算节点的AZ和HA匹配,对用户提供整套的差异化服务。

Description

一种Openstack平台支持多网络区域的系统和方法
技术领域
本发明涉及云计算管理平台技术领域,具体涉及一种Openstack平台支持多网络区域的系统和方法。
背景技术
如图1所示,现有的Openstack自上而下可以分为不同的区域:Regions(地区),Availability Zones(可用域)和Host Aggregates(主机集合)。
1、Region是一个地理上的区域概念,Regions之间完全隔离,每个Region都有一个完整的Openstack部署,每个Region有自己独立的Service Endpoint(服务端点)、网络和计算资源。不同的Region共享一套Keystone(认证)和Horizon(用户界面)来提供访问控制与Web(网络)操作,所以除了提供隔离的功能,Region的设计更多侧重地理位置的概念,用户可以选择离自己更近的Region来部署自己的服务。
2、Availability Zones,简称AZ,含义是可用域,代表了一组节点的集合,这组节点具有独立的电力供应设备,比如一个个独立供电的机房,一个个独立供电的机架都可以被划分成AZ。所以,AZ主要是通过冗余来解决可用性问题。AZ是用户可见的一个概念,用户在创建instance(虚拟机实例)的时候可以选择创建到哪些AZ中,以保证instance的可用性。一个Region中的计算结点可以被逻辑上划分为不同的AZ。启动虚拟机时,可以指定特定的AZ甚至该AZ下的特定主机,主要用来给nova-scheduler(计算服务调度器)通过某一属性来进行instance的调度。其主要功能就是实现根据某一属性来划分物理机,比如按照地理位置,使用固态硬盘的机器,内存超过32G的机器,根据这些指标来构成一个Host Group。
3、Host Aggregate,简称HA,含义是主机集合。除了AZ,计算结点也可以在逻辑上划分为主机集合。主机集合使用元数据去标记计算结点组,比如使用一个带有SSD(SolidState Drives,固态硬盘)的主机集合,或一个装有万兆网卡的主机集合。一个计算结点可以同时属于一个主机集合以及AZ,而不会有冲突,它也可以属于多个主机集合,然而一个计算节点只能属于某一个AZ。主机集合仅能被管理员看到,对于终端用户而言,只能创建带有主机集合元数据链接的flavor定义的虚拟机。Host Aggregates也是一组节点的组合,但强调这组节点具有共同的属性,比如:CPU(Central Processing Unit,中央处理器)是特定类型的一组节点,disks(磁盘)是SSD的一组节点,OS(Operating System,操作系统)是Linux或Windows的一组节点等等。Host Aggregates是用户不可见的概念,主要用来给nova-scheduler通过某一属性来进行instance的调度,比如将数据库服务的instances都调度到具有SSD属性的Host Aggregate中,又或者让某个Flavor(模板,包括RAM和硬盘大小、CPU核数等)或某个Image(镜像)的Instance调度到同一个Host Aggregates中。
AZ用于让用户指定从哪个特定的服务器组合里发起虚拟机,主机集合主要用来为具有特定性能的主机分组以此让调度器根据某种特性在特定的集合中发起虚拟机。一个主机可以属于多个主机集合,但是只能属于一个AZ,主机集合以Availability Zone的形式展现给用户。
现有的Openstack网络架构在部署一套Openstack环境时无法满足用户自定义的网络连接需求,无法按照性能提供不同级别的QoS(Quality of Service,服务质量)服务,无法满足客户对网络的可靠性或者安全等级的不同需求。
发明内容
本发明提供一种Openstack平台支持多网络区域的系统和方法,可以将Openstack平台在物理拓扑上或者逻辑上划分成为多个网络区域(network area),更好的匹配客户对网络的需求,更好的利用网络节点的能力,提供更好的服务解决方案。
为了实现上述发明目的,本发明采取的技术方案如下:
一种Openstack平台支持多网络区域的系统,包括:
所述Openstack平台所在的物理拓扑或者逻辑拓扑部署成一个或者多个网络区域,所述多个网络区域内实现数据网络连通,不同的网络区域通过管理网络和控制节点进行连通,每个网络区域设置对应的区域属性;
每个网络区域包含多个网络节点以及一个或者多个可用域;每个可用域包含一个或者多个计算节点。
可选地,所述多个网络区域部署独立的数据网络和存储网络,所述控制节点通过管理网络连通并管理所有网络区域,所述多个网络区域共享一套Openstack平台的数据库资源。
本发明还提供一种Openstack平台支持多网络区域的方法,包括:
根据Openstack平台所在的物理拓扑或者逻辑拓扑部署多个网络区域,所述多个网络区域内实现数据网络连通,并为每个网络区域设置对应的区域属性;
根据设定的区域属性确定每个网络区域对应的网络节点和计算节点,控制节点将所述Openstack平台内的网络节点和计算节点根据每个网络区域对应的区域属性划分至对应的网络区域。
可选地,所述区域属性包括以下的一项或者多项:
所述网络区域对应级别的服务质量QoS、所述网络区域对应的网络可靠性指标、所述网络区域对应的安全等级。
可选地,根据Openstack平台所在的物理拓扑或者逻辑拓扑部署多个网络区域包括:
根据客户的需求和场景在Openstack平台所在的物理拓扑或者逻辑拓扑部署多个网络区域。
可选地,控制节点将所述Openstack平台内的网络节点和计算节点根据每个网络区域对应的区域属性划分至对应的网络区域包括:
所述控制节点将对应的网络节点和计算节点加入到预设区域,所述控制节点管理所有网络区域的区域操作,所述区域操作包括向所述网络区域添加或者删除网络节点和计算节点以及创建网络计算资源。
可选地,根据设定的区域属性确定每个网络区域对应的网络节点和计算节点之后还包括:部署所述网络区域对应的数据网络和存储网络。
可选地,将所述Openstack平台内的网络节点和计算节点根据每个网络区域对应的区域属性划分至对应的网络区域之后还包括:
根据所述网络区域对应的区域属性在所述网络节点上设置网络服务。
可选地,将所述Openstack平台内的网络节点和计算节点根据每个网络区域对应的区域属性划分至对应的网络区域之后还包括:
根据所述网络区域对应的区域属性创建网络资源和计算资源。
可选地,根据所述网络区域对应的区域属性创建网络资源包括以下的一项或者多项:
根据所述网络区域对应的区域属性选择所需的区域创建网络;
根据所属网络区域下创建的网络,在该网络下添加所需的子网;
根据所述网络区域对应的区域属性选择所需的区域创建虚拟路由器;
将虚拟路由器关联到相同区域的子网;
将虚拟主机绑定浮动IP。
可选地,根据所述网络区域对应的区域属性创建计算资源包括以下的一项或者多项:
根据用户对网络以及计算资源的需求选择相应的网络区域创建可用域;
向可用域添加该区域内满足需求的计算节点;
选择该可用域内的计算资源以及该网络区域内的网络资源创建虚拟主机VM。
可选地,根据所述网络区域对应的区域属性选择所需的区域创建网络包括:
设定待创建的网络的基本信息;
根据网络区域对应的区域属性确定一个创建该网络的网络区域;
控制节点根据创建网络的基本信息和所选的网络区域,创建数据库记录,并将该请求调度到所选该区域内的网络节点进行处理。
可选地,根据所属网络区域下创建的网络,在该网络下添加所需的子网包括:
选择创建的网络,添加子网;
设定待创建的子网的基本信息;
控制节点根据待创建子网对应的基本信息创建数据库记录,并将该请求调度到该网络所属的区域内的网络节点处理。
可选地,根据所述网络区域对应的区域属性选择所需的区域创建虚拟路由器包括:
设定待创建的虚拟路由器的基本信息;
根据待创建虚拟路由器对应的基本信息和网络区域对应的区域属性确定一个网络区域作为创建该虚拟路由器加入的网络区域;
控制节点根据虚拟路由器的基本信息和所选的网络区域,创建数据库记录,并将该请求调度到所选该区域内的网络节点进行处理。
可选地,将虚拟路由器关联到相同区域的子网包括:
确定待关联的虚拟路由器;
从所述网络区域的子网中确定一个或者多个子网进行关联;
控制节点根据创建请求,将所述待关联的虚拟路由器关联至所述确定的子网。
可选地,将虚拟主机VM绑定浮动IP包括:
选择外网区域;
创建浮动IP;
将创建的浮动IP关联到该VM端口。
可选地,根据用户对网络以及计算资源的需求选择相应的网络区域创建可用域包括:
设定待创建的可用域的基本信息;
根据待创建可用域对应的基本信息,根据网络区域对应的区域属性确定一个网络区域作为加入的网络区域;
在加入的所述网络区域添加计算节点作为可用域的执行设备。
可选地,向可用域添加该区域内满足需求的计算节点包括:
选择可用域;
根据可用域所属的网络区域,列出该网络区域下的所有计算节点;
根据该可用域所需物理主机的属性,添加该网络区域满足条件的计算节点。
可选地,选择该可用域内的计算资源以及该网络区域内的网络资源创建虚拟主机VM包括:
设定待创建的虚拟主机VM的基本信息;
根据待创建虚拟主机VM对应的基本信息,选择一个可用域作为过滤主机;
根据网络区域对应的区域属性确定一个网络区域内的网络作为所述VM获取IP地址的网络。
本发明和现有技术相比,具有如下有益效果:
本发明实施例提出的网络区域(network area)属于对一个Region内部进行划分,划分的依据是网络节点。所有的对HA和AZ的划分,都需要通过网络节点才能够提供对外网络服务和内部网络通信。因此需要对网络节点进行分区,不仅满足客户对对多区域的物理隔离需求,还能实现区分网络节点的能力和提供不同可靠性服务的能力,更好的与计算节点的AZ和HA匹配,对用户提供整套的差异化服务。通过对上面描述的功能进行多种组合,可以满足不同客户的多方面需求。
附图说明
图1为本发明相关技术的Openstack平台的划分示意图;
图2为本发明实施例的Openstack平台的划分示意图;
图3为本发明实施例的Openstack平台支持多网络区域的方法的流程图;
图4为本发明实施例的根据所述网络区域对应的区域属性创建网络流程的流程图;
图5为本发明实施例的根据所述网络区域对应的区域属性创建子网的流程图;
图6为本发明实施例的根据所述网络区域对应的区域属性创建虚拟路由器;
图7为本发明实施例的将虚拟路由器关联子网的流程图;
图8为本发明实施例的将虚拟主机VM绑定浮动网络互连协议Floating IP的流程图;
图9为本发明实施例的创建可用域AZ的流程图;
图10为本发明实施例的添加主机节点的流程图;
图11为本发明实施例的创建虚拟主机VM的流程图;
图12为本发明实施例1的Openstack平台支持多网络区域的系统的结构框图;
图13为本发明实施例2的Openstack平台支持多网络区域的系统的结构框图;
图14为本发明实施例2的Openstack平台支持多网络区域的系统的数据网络的结构框图;
图15为本发明实施例2的Openstack平台支持多网络区域的系统的管理网络结构框图;
图16为本发明实施例2的Openstack平台支持多网络区域的系统的计算节点安装的流程图。
具体实施方式
为使本发明的发明目的、技术方案和有益效果更加清楚明了,下面结合附图对本发明的实施例进行说明,需要说明的是,在不冲突的情况下,本申请中的实施例和实施例中的特征可以相互任意组合。
如图2所示,本发明实施例提供一种Openstack平台支持多网络区域的系统,包括:
所述Openstack平台包括一个或者多个控制节点,将所述Openstack平台所在的物理拓扑或者逻辑拓扑部署成一个或者多个网络区域,所述多个网络区域内实现数据网络连通,不同的网络区域通过管理网络和控制节点进行连通,每个网络区域设置对应的区域属性;
每个网络区域包含多个网络节点以及一个或者多个可用域;每个可用域包含一个或者多个计算节点。
本发明提到的网络区域network area与Region、AZ、主机的关系如图2所示。一个Region内部,可以包含若干个network area,每个network area内部又可以包含若干个网络节点和若干个AZ,每个AZ内部又包含若干计算节点。
其中,所述多个网络区域部署独立的数据网络和存储网络,所述控制节点通过管理网络连通并管理所有网络区域,所述多个网络区域共享一套Openstack平台的数据库资源。
本发明实施例公开的一种Openstack平台支持多网络区域的系统,具有如下优点:
1、由于根据客户的需求和场景的特殊需求,设定多个网络区域,比如办公区和实验区,普通区域和隔离区域DMZ。这些网络区域之间,通过物理防火墙连接,再配置防火墙的安全规则实现用户自定义的网络区域的连通需求。
2、当客户部署Openstack环境时,具有多种类型的主机作为网络节点,希望将网络节点按照性能划分成不同的网络区域,不同网络区域提供不同级别的QoS服务。例如将网络节点的接口带宽为10G、双核8CPU的物理主机归到一个网络区域,它们价格较贵,但可以提供高带宽,低时延服务。例如将网络节点带宽为1G、单核4CPU的物理主机化为另外一个网络区域,它们廉价,可以提供基本的网络需求,对带宽和时延没有过高要求的可以选择该区域部署网络服务和创建虚拟机。
3、当客户的应用对网络可靠性或者安全等级具有不同需求时,不同网络区域的部署可以采用不同的可靠性和安全等级。例如对于可靠性,可以使用双网卡绑定,多个交换机堆叠,保证网络拓扑的冗余。同时该区域部署多个网络节点,每个网络节点安装L3agent服务,用户的每一个网络服务创建请求被调度该区域的到多个agent,再配合VRRP提供active/passive的弹性以太网服务。通过这些措施,使得该区域中部分网络设备出现故障,仍然能够提供高可靠的服务,带来的代价就是消耗更多的资源,包括机器数目、交换机数目、网卡数目等。可靠性要求较低的区域,可以不考虑备份的需求,只是提供网络的可用性服务,当监控到网络节点故障,可以手动进行恢复。
4、现有的Openstack支持同时部署多种底层网络,然而当FLAT、VLAN、VXLAN、GRE等underlay(底层)需要同时部署时,对于硬件交换机以及网络设备的运维和故障定位和恢复非常复杂。这样的场景可能是客户需要同时支持创建VM、Docker、Iroinc,然而目前Ironic底层仅支持Flat网络,而VM需要使用VLAN网络进行二层物理隔离。通过设置不同网络区域的不同的underlay(承载)网络类型,更好的匹配客户对底层网络的需求,使得整个Openstack的网络结构更加清晰。
通过本发明可以将Openstack在物理拓扑上或者逻辑上划分成为多个网络区域(network area或简称area),更好的匹配客户对网络的需求,更好的利用网络节点的能力,提供更好的服务解决方案。
如图3所示,本发明实施例还提供一种Openstack平台支持多网络区域的方法,包括:
根据Openstack平台所在的物理拓扑或者逻辑拓扑部署多个网络区域,所述多个网络区域内实现数据网络连通,并为每个网络区域设置对应的区域属性;
根据设定的区域属性确定每个网络区域对应的网络节点和计算节点,控制节点将所述Openstack平台内的网络节点和计算节点根据每个网络区域对应的区域属性划分至对应的网络区域。
本发明实施例提供的方法具有以下优点:
首先,本发明实施例在某一Region范围内,即仅部署一套Openstack时,对该Region内进行划分网络区域。部署一套Openstack的好处不仅可以节省资源,多个网络区域可以共用控制节点机器,共享数据库的资源,同时便于统一管理。因此本发明实施例能够实现针对客户的安全性需求,隔离不同区域之间的物理网络。或者相近的机房的部署可以一套Openstack,这些机房属于不同的网络区域(network area),这些区域之间只需要管理网络能够连通,数据网络、存储网络可以分区域部署。
其次,对于AZ或者HA,主要描述的是客户对计算节点按照物理集群或者机器性能进行分类,使得创建虚拟机时,通过指定AZ或者HA的范围,指定该虚拟机创建到哪台物理机,都不涉及对网络节点性能进行分类。现有Openstack搭建网络节点以及创建网络服务时(这些服务包括:路由、网络、Load-Balance等),并不区分网络节点能力。在部署一套Openstack时,不能根据网络节点性能不同提供差异性服务。因此本发明实施例能够区分网络节点的性能,将不同性能的网络节点进行区分,划分到不同网络区域。针对用户对于网络性能的不同需求,选择不同区域创建网络服务。
再次,现有的Openstack创建网络服务时,并不区分和感知底层网络可靠性,本发明实施例能够针对用户对网络可靠性的不同需求,支持在不同的区域部署不同可靠性网络架构,提供不同LSA等级的网络服务。
再次,现有Openstack可以同时支持多种底层网络架构,然而,部署时,需要将多种网络架构进行混合部署,这给底层网络的部署带来了困难,使得底层需要将VLAN、VXLAN、GRE进行堆叠。本发明实施例能够通过划分网络区域,可以将不同的底层网络架构进行拆分,设计出更加清晰的网络架构。
所述区域属性包括以下的一项或者多项:
所述网络区域对应级别的服务质量QoS、所述网络区域对应的网络可靠性指标、所述网络区域对应的安全等级。
将所述Openstack平台所在的物理拓扑或者逻辑拓扑部署多个网络区域包括:
根据客户的需求和场景在Openstack平台所在的物理拓扑或者逻辑拓扑部署多个网络区域。
本发明实施例在部署Openstack的网络区域配置时,根据用户不同场景的需求,设置不同网络区域的各自区域属性,首先需要明确客户需求,针对客户的需求和场景(包括,是否物理隔离、区分性能、区分可靠性、区分底层网络架构等),规划不同Openstack部署方案,部署一个或者多个网络区域。
本发明实施例中控制节点将所述Openstack平台内的网络节点和计算节点根据每个网络区域对应的区域属性划分至对应的网络区域包括:所述控制节点将对应的网络节点和计算节点加入到预设区域,所述控制节点管理所有网络区域的区域操作,所述区域操作包括向所述网络区域添加或者删除网络节点和计算节点以及创建网络计算资源。
本发明实施例中配置多个控制节点解决了控制节点的单点故障问题。
本发明实施例根据每个网络区域对应的区域属性确定相应网络节点,进而配置该网络区域相应的底层网络架构,实现将不同性能或者不同物理区域的物理主机进行区分。
根据设定的区域属性确定每个网络区域对应的网络节点和计算节点之后还包括:在所述控制节点上部署所述网络区域对应的数据网络和存储网络。
本发明实施例在控制节点部署所需的服务,包括dashboard(用户界面)、数据库、glance(镜像)、neutron-server(网络服务)、nova-api(计算服务接口)、nova-conductor(计算幅度调度)等,同时创建各种服务所需的数据库database和数据表table。
为了使得Openstack支持多网络区域的能力,在nova数据库中创建区域信息表areas以及主机区域信息表host_area。分别定义如下:
areas表
Figure BDA0001080623030000111
Figure BDA0001080623030000121
其中,area_name字段描述了该区域的名称。description字段描述了该区域的基本信息,例如位置、机架、底层架构等等。id作为主键,用于其他需要增加增加区域属性的表进行关联。部署区域是,通过设置lsa一个数值展示给用户该区域提供网络可靠性等级。通过设置QoS的一个数值展示给用户该区域提供的QoS能力(带宽\时延\抖动)。type表明该网络底层拓扑架构。
host_area表
Figure BDA0001080623030000122
其中,host_name指定了主机的名称,包括网络节点和计算节点的机器。id作为物理机的UUID,全局唯一。area_id为areas表的id外键关联。
修改nova中的aggregates与available_zones表,以及neutron中的agents,networks,routers,lbaas_loadbalancers表格,增加area_id字段,并将area_id通过外键与areas表格进行关联。
根据对区域网络和物理机的规划,在areas表格添加所需的区域信息,并根据规划设置这些区域的lsa、qso和type等字段。接下来,将网络节点、计算节点的机器根据规划添加到host_area表格。
根据上述规划,配置不同区域底层网络架构,包括配置数据网络、外部网络和管理网络等。
将所述Openstack平台内的网络节点和计算节点根据每个网络区域对应的区域属性划分至对应的网络区域之后还包括:
根据所述网络区域对应的区域属性在所述网络节点上设置网络服务。
主机节点包括网络节点和计算节点,设置网络节点对应的网络服务包括:安装各种网络服务agent(代理),包括L3agent、DHCP agent、Load-Balance agent等。修改agent代码,增加对网络area的支持。具体的方法为,网络节点上运行的各种agent服务通过读取area_host表格设置该agent的area_id,并将该信息存储到neutron的agents表。该网络区域内的剩余节点作为计算节点。计算节点安装nova-compute服务。通过实现将网络节点和计算节点进行分区,后续创建vRouter、Network、Load-Balance等网络资源以及创建VM、AZ等计算资源都需要选择所需创建的区域。
将所述Openstack平台内的网络节点和计算节点根据每个网络区域对应的区域属性划分至对应的网络区域之后还包括:
根据所述网络区域对应的区域属性创建网络资源和计算资源。
根据所述网络区域对应的区域属性创建网络资源包括:
根据所述网络区域对应的区域属性选择所需的区域创建网络;根据所属网络区域下创建的网络,在该网络下添加所需的子网;根据所述网络区域对应的区域属性选择所需的区域创建虚拟路由器;将虚拟路由器关联到相同区域的子网;将虚拟主机绑定浮动IP。
根据所述网络区域对应的区域属性创建计算资源包括:
根据用户对网络以及计算资源的需求选择相应的网络区域创建可用域,向可用域添加该区域内满足需求的计算节点,选择该可用域内的计算资源以及该网络区域内的网络资源创建虚拟主机VM。
如图4所示,本发明实施例中根据所述网络区域对应的区域属性创建网络流程包括:
设定待创建的网络的基本信息;
根据网络区域对应的区域属性确定一个创建该网络的网络区域;
控制节点根据创建网络的基本信息和所选的网络区域,创建数据库记录,并将该请求调度到所选该区域内的网络节点进行处理。
创建网络流程,通过命令行或者前端界面进行网络创建操作,设定创建网络的名称等基本信息,再选择该网络需要创建在哪个区域。该命令由neutron-api收到请求到,经过参数检查,权限检查,成功之后,由neutron server操作数据库创建该网络记录。接下来,neutron server查找neutron数据库中的agents表格,列出所选区域的所有可用DHCPagent,根据用户部署High available参数,选择相应数目的DHCP agent下发创建网络请求。DHCP agent收到请求后,处理请求,创建namespace(命名空间),以及创建metadata(源数据)等。对于External网络,也需要进行隔离,不同的区域创建不同的External网络,创建时,同样指定创建External网络的区域并设置子网地址范围。
如图5所示,本发明实施例中根据所属网络区域下创建的网络,在该网络下添加所需的子网包括:
选择创建的网络,添加子网;
设定待创建的子网的基本信息;
控制节点根据待创建子网对应的基本信息创建数据库记录,并将该请求调度到该网络所属的区域内的网络节点处理。
如图6所示,本发明实施例的根据所述网络区域对应的区域属性创建虚拟路由器包括:
设定待创建的虚拟路由器的基本信息;
根据待创建虚拟路由器对应的基本信息和网络区域对应的区域属性确定一个网络区域作为创建该虚拟路由器加入的网络区域;
控制节点根据虚拟路由器的基本信息和所选的网络区域,创建数据库记录,并将该请求调度到所选该区域内的网络节点进行处理。
如图7所示,本发明实施例的将虚拟路由器关联子网包括:
确定待关联的虚拟路由器;
从所述网络区域的子网中确定一个或者多个子网进行关联;
控制节点根据创建请求,将所述待关联的虚拟路由器关联至所述确定的子网。
如图8所示,本发明实施例的将虚拟主机VM绑定浮动网络互连协议floating IP包括:
选择外网区域;
创建浮动IP;
将创建的浮动IP关联到该VM端口。
如图9所示,本发明实施例的创建可用域包括:
设定待创建的可用域的基本信息;
根据待创建可用域对应的基本信息,根据网络区域对应的区域属性确定一个网络区域作为加入的网络区域;
在加入的所述网络区域添加计算节点作为可用域的执行设备。
如图10所示,本发明实施例的向可用域添加计算节点包括:
选择可用域;
根据可用域所属的网络区域,列出该网络区域下的所有计算节点;
根据该可用域所需物理主机的属性,添加该网络区域满足条件的计算节点。
如图11所示,本发明实施例的创建虚拟主机VM包括:
设定待创建的虚拟主机VM的基本信息;
根据待创建虚拟主机VM对应的基本信息,选择一个可用域作为过滤主机;
根据网络区域对应的区域属性确定一个网络区域内的网络作为所述VM获取IP地址的网络。
实施例1
如图12所示,本实施例展示了一个最终搭建的多网络区域的Openstack设计示意图。包含三个控制节点,两个网络区域,每个网络区域包含若干网络节点,和若干AZ,每个AZ下包含若干的计算节点。
作为本发明一实施方式的进一步改进,对于External的网络地址,如果客户不区分External网络和Public网络,考虑到运营商可能只给客户分配了一个网段的公网IP地址,可以将该地址网段分割多个子网,不同区域分配该网段内不同范围内的IP地址。当区域数目过多,考虑到分割子网,会浪费该子网全0和全1的IP地址。一种可行的解决方法是,可以使用硬件防火墙,将不同区域的External网络设置成不同私有地址(即10网段、172网络、192网段的地址),通过硬件防火墙实现External地址和Public地址的映射。
作为本发明一实施方式的进一步改进,对于网络节点划分了区域后,同样支持网络的进行各种高可用功能,包括使用VRRP进行网络节点的High available等。
作为本发明一实施方式的进一步改进,考虑到不同区域和Controller相连时可能存在带宽的限制,再某些Openstack部署方案中,glance(镜像)和object(对象)服务存在于Controller节点,这样创建虚拟机就需要从Controller拷贝镜像,会消耗带宽。为了进一步提升性能,使得每个区域分别部署镜像存储以及分布式块、文件存储,即不同区域采用独立的后端存储。但是,物理网络相连,仅仅是对于逻辑网络区域的划分时,仍然可以共用后端存储。
作为本发明一实施方式的进一步改进,前期创建的数据库、数据表或者对数据表的修改,可以加到openstack代码安装时进行自动操作。
作为本发明一实施方式的进一步改进,考虑到客户分割区域后的规模较小,不同区域在具体实施过程中网络节点和计算接可以部署在一台物理机上,即一台物理机同时部署L3agent和nova-compute服务。
作为本发明一实施方式的进一步改进,部署Openstack时,可以考虑将管理网络同数据网络一样单独隔离开发,不同区域配置不同网段的管理网络。
实施例2
如图13所示,从Openstack所有主机中选择若干台作为控制节点。将剩余机器按照前期对网络区域的规划,分到各个区域。在从各个区域中选择部分节点做为网络节点,部分节点作为计算节点。选择完成后。
数据网络和外部网络的部署如图14所示,其中,外部网络连接外网络由器,其余为数据网络,管理网络如图15所示。
如图16所示,在选择出来的控制节点上安装所需的各种服务。包括数据库、keystone、horizon、Neutron控制器、nova服务等。然后配置设计的网络区域信息表areas,将划分好的区域中主机添加到area_host表。
根据前期逻辑拓扑规划,搭建该区域底层物理网络连接。
安装并配置区域内的网络节点,启动L3agent,DHCP agent,LB agent等服务。
网络节点配置External网络以及启动网络agent服务,包括L3agent、DHCP agent、Load-Balance agent等。
安装剩余节点作为计算节点,计算节点安装nova-compute。
虽然本发明所揭示的实施方式如上,但其内容只是为了便于理解本发明的技术方案而采用的实施方式,并非用于限定本发明。任何本发明所属技术领域内的技术人员,在不脱离本发明所揭示的核心技术方案的前提下,可以在实施的形式和细节上做任何修改与变化,但本发明所限定的保护范围,仍须以所附的权利要求书限定的范围为准。

Claims (19)

1.一种Openstack平台支持多网络区域的系统,其特征在于,包括:
所述Openstack平台所在的物理拓扑或者逻辑拓扑部署成多个网络区域,所述多个网络区域内实现数据网络连通,不同的网络区域通过管理网络和控制节点进行连通,每个网络区域设置对应的区域属性;
每个网络区域包含多个网络节点以及一个或者多个可用域;每个可用域包含一个或者多个计算节点。
2.如权利要求1所述的系统,其特征在于:所述多个网络区域部署独立的数据网络和存储网络,所述控制节点通过管理网络连通并管理所有网络区域,所述多个网络区域共享一套Openstack平台的数据库资源。
3.一种Openstack平台支持多网络区域的方法,其特征在于:包括:
根据Openstack平台所在的物理拓扑或者逻辑拓扑部署多个网络区域,所述多个网络区域内实现数据网络连通,并为每个网络区域设置对应的区域属性;
根据设定的区域属性确定每个网络区域对应的网络节点和计算节点,控制节点将所述Openstack平台内的网络节点和计算节点根据每个网络区域对应的区域属性划分至对应的网络区域。
4.如权利要求3所述的方法,其特征在于:所述区域属性包括以下的一项或者多项:
所述网络区域对应级别的服务质量QoS、所述网络区域对应的网络可靠性指标、所述网络区域对应的安全等级。
5.如权利要求3所述的方法,其特征在于:根据Openstack平台所在的物理拓扑或者逻辑拓扑部署多个网络区域包括:
根据客户的需求和场景在Openstack平台所在的物理拓扑或者逻辑拓扑部署多个网络区域。
6.如权利要求3所述的方法,其特征在于:控制节点将所述Openstack平台内的网络节点和计算节点根据每个网络区域对应的区域属性划分至对应的网络区域包括:
所述控制节点将对应的网络节点和计算节点加入到预设区域,所述控制节点管理所有网络区域的区域操作,所述区域操作包括向所述网络区域添加或者删除网络节点和计算节点以及创建网络计算资源。
7.如权利要求6所述的方法,其特征在于:根据设定的区域属性确定每个网络区域对应的网络节点和计算节点之后还包括:部署所述网络区域对应的数据网络和存储网络。
8.如权利要求6或7所述的方法,其特征在于:将所述Openstack平台内的网络节点和计算节点根据每个网络区域对应的区域属性划分至对应的网络区域之后还包括:
根据所述网络区域对应的区域属性在所述网络节点上设置网络服务。
9.如权利要求6或7所述的方法,其特征在于:将所述Openstack平台内的网络节点和计算节点根据每个网络区域对应的区域属性划分至对应的网络区域之后还包括:
根据所述网络区域对应的区域属性创建网络资源和计算资源。
10.如权利要求9所述的方法,其特征在于:根据所述网络区域对应的区域属性创建网络资源包括以下的一项或者多项:
根据所述网络区域对应的区域属性选择所需的区域创建网络;
根据所属网络区域下创建的网络,在该网络下添加所需的子网;
根据所述网络区域对应的区域属性选择所需的区域创建虚拟路由器;
将虚拟路由器关联到相同区域的子网;
将虚拟主机绑定浮动IP。
11.如权利要求9所述的方法,其特征在于:根据所述网络区域对应的区域属性创建计算资源包括以下的一项或者多项:
根据用户对网络以及计算资源的需求选择相应的网络区域创建可用域;
向可用域添加该区域内满足需求的计算节点;
选择该可用域内的计算资源以及该网络区域内的网络资源创建虚拟主机VM。
12.如权利要求10所述的方法,其特征在于:根据所述网络区域对应的区域属性选择所需的区域创建网络包括:
设定待创建的网络的基本信息;
根据网络区域对应的区域属性确定一个创建该网络的网络区域;
控制节点根据创建网络的基本信息和所选的网络区域,创建数据库记录,并将该创建网络请求调度到所选该区域内的网络节点进行处理。
13.如权利要求10所述的方法,其特征在于:根据所属网络区域下创建的网络,在该网络下添加所需的子网包括:
选择创建的网络,添加子网;
设定待创建的子网的基本信息;
控制节点根据待创建子网对应的基本信息创建数据库记录,并将该添加子网请求调度到该网络所属的区域内的网络节点处理。
14.如权利要求10所述的方法,其特征在于:根据所述网络区域对应的区域属性选择所需的区域创建虚拟路由器包括:
设定待创建的虚拟路由器的基本信息;
根据待创建虚拟路由器对应的基本信息和网络区域对应的区域属性确定一个网络区域作为创建该虚拟路由器加入的网络区域;
控制节点根据虚拟路由器的基本信息和所选的网络区域,创建数据库记录,并将该创建虚拟路由器请求调度到所选该区域内的网络节点进行处理。
15.如权利要求10所述的方法,其特征在于:将虚拟路由器关联到相同区域的子网包括:
确定待关联的虚拟路由器;
从所述网络区域的子网中确定一个或者多个子网进行关联;
控制节点根据创建请求,将所述待关联的虚拟路由器关联至所述确定的子网。
16.如权利要求10所述的方法,其特征在于:将虚拟主机VM绑定浮动IP包括:
选择外网区域;
创建浮动IP;
将创建的浮动IP关联到该VM端口。
17.如权利要求11所述的方法,其特征在于:根据用户对网络以及计算资源的需求选择相应的网络区域创建可用域包括:
设定待创建的可用域的基本信息;
根据待创建可用域对应的基本信息,根据网络区域对应的区域属性确定一个网络区域作为加入的网络区域;
在加入的所述网络区域添加计算节点作为可用域的执行设备。
18.如权利要求11所述的方法,其特征在于:向可用域添加该区域内满足需求的计算节点包括:
选择可用域;
根据可用域所属的网络区域,列出该网络区域下的所有计算节点;
根据该可用域所需物理主机的属性,添加该网络区域满足条件的计算节点。
19.如权利要求11所述的方法,其特征在于:选择该可用域内的计算资源以及该网络区域内的网络资源创建虚拟主机VM包括:
设定待创建的虚拟主机VM的基本信息;
根据待创建虚拟主机VM对应的基本信息,选择一个可用域作为过滤主机;
根据网络区域对应的区域属性确定一个网络区域内的网络作为所述VM获取IP地址的网络。
CN201610677094.5A 2016-08-16 2016-08-16 一种Openstack平台支持多网络区域的系统和方法 Active CN107769938B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610677094.5A CN107769938B (zh) 2016-08-16 2016-08-16 一种Openstack平台支持多网络区域的系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610677094.5A CN107769938B (zh) 2016-08-16 2016-08-16 一种Openstack平台支持多网络区域的系统和方法

Publications (2)

Publication Number Publication Date
CN107769938A CN107769938A (zh) 2018-03-06
CN107769938B true CN107769938B (zh) 2021-01-22

Family

ID=61261058

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610677094.5A Active CN107769938B (zh) 2016-08-16 2016-08-16 一种Openstack平台支持多网络区域的系统和方法

Country Status (1)

Country Link
CN (1) CN107769938B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108762890A (zh) * 2018-05-31 2018-11-06 郑州云海信息技术有限公司 云管理平台中数据库的管理方法和装置
CN109067877B (zh) * 2018-08-03 2021-08-24 平安科技(深圳)有限公司 一种云计算平台部署的控制方法、服务器及存储介质
CN109361602B (zh) * 2018-11-12 2021-06-22 网宿科技股份有限公司 一种基于OpenStack云平台转发报文的方法和系统
CN109698773B (zh) * 2018-12-21 2022-11-04 浪潮电子信息产业股份有限公司 节点网卡所属网络的识别方法、装置、设备及介质
CN111010457B (zh) * 2019-12-04 2022-07-15 紫光云(南京)数字技术有限公司 基于服务类型的弹性公网ip分类方法
CN111163060B (zh) * 2019-12-11 2021-12-24 中盈优创资讯科技有限公司 一种基于应用组的转发方法、设备以及系统
CN113678421B (zh) * 2020-01-19 2023-06-09 Oppo广东移动通信有限公司 安全域的配置、发现和加入方法及装置、电子设备
CN111352701A (zh) * 2020-03-05 2020-06-30 山东汇贸电子口岸有限公司 一种Openstack环境下Redis集群的编排方法
CN111597112B (zh) * 2020-04-30 2023-08-08 北京金山云网络技术有限公司 自动测试方法、装置及电子设备
CN112099913B (zh) * 2020-09-01 2023-12-01 北京思特奇信息技术股份有限公司 一种基于OpenStack实现虚拟机安全隔离的方法
CN112637033B (zh) * 2020-12-10 2022-08-26 杭州迪普科技股份有限公司 一种基于硬件业务板卡的vlan分配方法、装置及设备
CN113326103B (zh) * 2021-08-03 2021-12-10 中电长城网际安全技术研究院(北京)有限公司 虚拟机创建方法及装置
CN114915545B (zh) * 2022-05-20 2024-01-26 深圳市证通电子股份有限公司 基于dhcp网络集群的应用调度部署管理方法
CN115134367A (zh) * 2022-06-28 2022-09-30 浙江吉利控股集团有限公司 云平台和业务处理方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1697396A (zh) * 2004-05-10 2005-11-16 华为技术有限公司 基于防火墙实现本地虚拟私网络的方法
CN101483574A (zh) * 2008-01-08 2009-07-15 华为技术有限公司 一种网络系统及由该网络系统提供服务的方法和网络设备
CN105227344A (zh) * 2015-08-21 2016-01-06 武汉烽火网络有限责任公司 基于OpenStack的软件定义网络模拟系统及方法
CN105592016A (zh) * 2014-10-29 2016-05-18 国家电网公司 一种电力信息系统的云环境下虚拟机的保护装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9367344B2 (en) * 2014-10-08 2016-06-14 Cisco Technology, Inc. Optimized assignments and/or generation virtual machine for reducer tasks

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1697396A (zh) * 2004-05-10 2005-11-16 华为技术有限公司 基于防火墙实现本地虚拟私网络的方法
CN101483574A (zh) * 2008-01-08 2009-07-15 华为技术有限公司 一种网络系统及由该网络系统提供服务的方法和网络设备
CN105592016A (zh) * 2014-10-29 2016-05-18 国家电网公司 一种电力信息系统的云环境下虚拟机的保护装置
CN105227344A (zh) * 2015-08-21 2016-01-06 武汉烽火网络有限责任公司 基于OpenStack的软件定义网络模拟系统及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
OpenStack重要概念理解(Regions+Cells+Availability Zones+Host Aggregates等);https://blog.csdn.net/ustc_dylan/article/details/17758393;《CSDN》;20140103;全文 *

Also Published As

Publication number Publication date
CN107769938A (zh) 2018-03-06

Similar Documents

Publication Publication Date Title
CN107769938B (zh) 一种Openstack平台支持多网络区域的系统和方法
US10666609B2 (en) Management of domain name systems in a large-scale processing environment
US9999030B2 (en) Resource provisioning method
EP1920345B1 (en) Virtual data center for network resource management
CN109040276B (zh) 一种构建云平台的方法、装置、计算机存储介质及终端
US8650299B1 (en) Scalable cloud computing
US8307362B1 (en) Resource allocation in a virtualized environment
EP3046288B1 (en) Virtual network function network elements management method, device and system
US8977726B2 (en) Logical networks
US20170257269A1 (en) Network controller with integrated resource management capability
CN102549983B (zh) 分布式数据中心接入交换机
US11669360B2 (en) Seamless virtual standard switch to virtual distributed switch migration for hyper-converged infrastructure
KR20180072732A (ko) 기계-레벨이 격리된 다중-테넌트 다중-세션 카탈로그들
CN104272702A (zh) 用于多租户环境中支持访问控制列表的方法和装置
WO2014036717A1 (zh) 虚拟资源对象组件
US20170063627A1 (en) Allocation of virtual clusters in a large-scale processing environment
CN111835820A (zh) 一种实现云管理的系统及方法
CN112600903A (zh) 一种弹性虚拟网卡迁移方法
US20130315096A1 (en) Network infrastructure provisioning with automated channel assignment
CN103001953A (zh) 虚拟机网络资源分配方法及装置
CA2834565C (en) Vbn server clustering system, method of vbn server clustering, and vbn server for clustering
CN115987989B (zh) 一种在普通系统中扩展云虚拟网络的方法
US20240098088A1 (en) Resource allocation for virtual private label clouds
US10972375B2 (en) System and method of reserving a specific queue pair number for proprietary management traffic in a high-performance computing environment
Cain et al. Microsoft System Center Building a Virtualized Network Solution

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant