一种应用在openstack云平台的多活负载均衡方法及系统技术方案

技术编号:24497300 阅读:131 留言:0更新日期:2020-06-13 03:32
本发明专利技术公开了一种应用在openstack云平台的多活负载均衡方法及系统,属于云计算pass领域,本发明专利技术要解决的技术问题为如何满足4层和7层流量负载均衡的需求,避免负载均衡节点单点故障,实现负载均衡节点性能的最大利用率,提高云平台上物理服务器的资源利用率,采用的技术方案为:该方法是使用开源的LVS和NGINX分别对4层流量和7层流量进行负载均衡,通过实现了ospf协议的开源quagga虚拟路由器与支持ospf协议的物理交换机合作进行多路径选择,实现多活模式,并通过openstack平台上租户共享的外部网络与租户vpc中的虚拟机进行通信,实现跨vpc的负载均衡。该系统采用微服务软件架构,包括UI层、后端微服务层、原子微服务层和远端SLB‑AGENT层。

A multi live load balancing method and system applied in openstack cloud platform

【技术实现步骤摘要】
一种应用在openstack云平台的多活负载均衡方法及系统
本专利技术属于云计算pass领域,具体地说是一种应用在openstack云平台的多活负载均衡方法及系统。
技术介绍
随着云计算技术的快速发展,越来越多的政府机关单位、企业和个人将应用由传统的计算中心迁移到云中心,云中心中部署的大访问流量的应用越来越多,云中心租户对于流量负载均衡的需求越来越强烈,对于应用的高可用性需求越来越高。云中心与传统的计算中心差别较大,传统计算中心中通过物理设备进行应用流量负载均衡的方法,并不适用于多租户的公有云和企业云场景。目前,云中心常规的租户负载均衡多采用VRRP协议的主备模式,解决负载均衡单点故障和高可用性,随着访问量规模扩展无法进行横向扩展,因此,对物理服务器资源有较高的冗余需求,针对用户规模不大的项目,服务器资源有些浪费,资源利用率不高。故如何满足4层和7层流量负载均衡的需求,避免负载均衡节点单点故障,实现负载均衡节点性能的最大利用率,提高云平台上物理服务器的资源利用率是目前现有技术亟待解决的问题。专利号为CN107707393A的专利文献公开了一种基于OpenstackO版特性的多活系统,利用Tricircle技术实现异地多个Openstack云环境租户虚拟机的私有网络之间互连互通,利用HAProxy和Keepalived实现Web服务器的异地多活以及HAProxy自身的高可用,利用DRBD实现异地云环境中虚拟机的数据实时同步,Corosync和pacemaker检测故障并转移服务。但是不能如何满足4层和7层流量负载均衡的需求,避免负载均衡节点单点故障,实现负载均衡节点性能的最大利用率,提高云平台上物理服务器的资源利用率。
技术实现思路
本专利技术的技术任务是提供一种应用在openstack云平台的多活负载均衡方法及系统,来解决如何满足4层和7层流量负载均衡的需求,避免负载均衡节点单点故障,实现负载均衡节点性能的最大利用率,提高云平台上物理服务器的资源利用率的问题。本专利技术的技术任务是按以下方式实现的,一种应用在openstack云平台的多活负载均衡方法,该方法是使用开源的LVS和NGINX分别对4层流量和7层流量进行负载均衡,通过实现了ospf协议的开源quagga虚拟路由器与支持ospf协议的物理交换机合作进行多路径选择,实现多活模式,并通过openstack平台上租户共享的外部网络与租户vpc中的虚拟机进行通信,实现跨vpc的负载均衡。作为优选,该方法的步骤如下:S1、控制台通过负载均衡管理网对后端微服务层(SLB集群)内的LB节点的负载均衡实例下发LVS与NGINX配置;S2、LB节点的负载均衡实例通过出口防火墙设备进行EIPNAT映射,实现负载均衡实例的外网访问功能;同时通过负载均衡业务网与外部网络打通,实现负载均衡实例的内网访问功能;S3、负载均衡实例对应的虚拟服务地址所在的网络,用于对负载均衡虚拟服务的访问,公网负载均衡的EIP与负载均衡实例的业务网IP进行NAT,要求与平台上租户共享的Floatingip网络互通;S4、LB节点内安装LVS+NGINX,LVS通过Floatingip网与后端微服务层的通信,每一个负载均衡实例占用一个Floatingip网的IP地址,作为LIP;S5、租户自行创建的租户VPC网,租户VPC网为后端微服务层所在的网络,实现租户与后端微服务层的通信。更优地,所述后端微服务层包括,API接口管理模块,用于面向前端UI封装的RESTfulAPI接口,处理前端访问请求,用户访问前端页面进行操作行为,前端将请求发送到后端微服务层,由对应的API接口来处理;四层管理模块,用于提供四层负载均衡相关的功能接口供前端API接口管理模块调用以及实现四层负载均衡功能基本的逻辑,四层负载均衡功能基本的逻辑包括LB节点管理、LVS规则的管理、后端主机的管理、四层监听器的管理以及基本数据库管理;七层管理模块,用于提供七层负载均衡相关功能接口供前端API接口管理模块调用以及实现七层负载均衡基本的功能逻辑,七层负载均衡基本的功能逻辑包括LB节点管理、NGINX规则的管理、后端主机的管理、七层监听器的管理以及基本数据库管理;Common模块,用于提供基础的功能函数和基础接口common类,基础的功能函数用于供模块和功能调用,基础接口common类用于由四层管理模块和七层管理模块来继承,主要是公共接口的定义;SLB-AGENT模块,用于接受SLB集群发来的命令消息,在LB节点上面执行具体配置命令,并且主动上报流量信息。更优地,所述Common模块包括,DB管理模块,用于维护数据库连接状态,提供数据库的增删改查的基本的接口,DB管理模块是数据库管理模块;虚拟机管理模块,用于对LB节点虚拟机进行管理,接受四层管理模块和七层管理模块的调用请求,再调用openstack虚拟机管理接口,完成LB节点虚拟机的调度、创建和删除的管理操作;远程管理模块,用于向LB节点虚拟机发送管理命令;远程管理模块位于SLB微服务侧;交换机管理模块,用于通过交换机与LB节点虚拟机建立邻居关系并完成流量分发。更优地,所述四层管理模块通过虚机管理模块实现LVS节点虚机的创建、初始化配置与删除的LB节点管理;四层管理模块通过DB管理模块实现服务数据的增删改查的功能,包括后端主机的管理及监听器的管理;四层管理模块通过远程管理模块与LB节点上的SLB-AGENT远程通信,实现对LVS规则的管理;七层管理模块通过虚机管理模块实现NGINX节点虚机的创建、初始化配置与删除的LB节点管理;七层管理模块通过DB管理模块实现服务数据的增删改查的功能,包括后端主机的管理,监听器的管理;七层管理模块通过远程管理模块与LB节点上的SLB-AGENT远程通信,实现对NGINX规则的管理。一种应用在openstack云平台的多活负载均衡系统,该系统采用微服务软件架构,包括UI层、后端微服务层、原子微服务层和远端SLB-AGENT层;UI层用于与用户交互,接收用户配置,转发给后端微服务层处理并将处理结果呈现给用户;后端微服务层用于接收UI层转发的用户配置信息并进行处理,同时下发指令到原子微服务层;原子微服务层用于接收后端微服务层下发的指令;远端SLB-AGENT层用于配置LB节点虚拟机中LVS+NGINX应用程序。作为优选,所述后端微服务层包括,API接口管理模块,用于面向前端UI封装的RESTfulAPI接口,处理前端访问请求,用户访问前端页面进行操作行为,前端将请求发送到后端微服务层,由对应的API接口来处理;四层管理模块,用于提供四层负载均衡相关的功能接口供前端API接口管理模块调用以及实现四层负载均衡功能基本的逻辑,四层负载均衡功能基本的逻辑包括LB节点管理、LVS规则的管理、后端主机的管理、四层监听器的管理以及基本数据库管理;七层管理模块,用于本文档来自技高网
...

【技术保护点】
1.一种应用在openstack云平台的多活负载均衡方法,其特征在于,该方法是使用开源的LVS和NGINX分别对4层流量和7层流量进行负载均衡,通过实现了ospf协议的开源quagga虚拟路由器与支持ospf协议的物理交换机合作进行多路径选择,实现多活模式,并通过openstack平台上租户共享的外部网络与租户vpc中的虚拟机进行通信,实现跨vpc的负载均衡。/n

【技术特征摘要】
1.一种应用在openstack云平台的多活负载均衡方法,其特征在于,该方法是使用开源的LVS和NGINX分别对4层流量和7层流量进行负载均衡,通过实现了ospf协议的开源quagga虚拟路由器与支持ospf协议的物理交换机合作进行多路径选择,实现多活模式,并通过openstack平台上租户共享的外部网络与租户vpc中的虚拟机进行通信,实现跨vpc的负载均衡。


2.根据权利要求1所述的应用在openstack云平台的多活负载均衡方法,其特征在于,该方法的步骤如下:
S1、控制台通过负载均衡管理网对后端微服务层内的LB节点的负载均衡实例下发LVS与NGINX配置;
S2、LB节点的负载均衡实例通过出口防火墙设备进行EIPNAT映射,实现负载均衡实例的外网访问功能;同时通过负载均衡业务网与外部网络打通,实现负载均衡实例的内网访问功能;
S3、负载均衡实例对应的虚拟服务地址所在的网络,用于对负载均衡虚拟服务的访问,公网负载均衡的EIP与负载均衡实例的业务网IP进行NAT,要求与平台上租户共享的Floatingip网络互通;
S4、LB节点内安装LVS+NGINX,LVS通过Floatingip网与后端微服务层的通信,每一个负载均衡实例占用一个Floatingip网的IP地址,作为LIP;
S5、租户自行创建的租户VPC网,租户VPC网为后端微服务层所在的网络,实现租户与后端微服务层的通信。


3.根据权利要求2所述的应用在openstack云平台的多活负载均衡方法,其特征在于,所述后端微服务层包括,
API接口管理模块,用于面向前端UI封装的RESTfulAPI接口,处理前端访问请求,用户访问前端页面进行操作行为,前端将请求发送到后端微服务层,由对应的API接口来处理;
四层管理模块,用于提供四层负载均衡相关的功能接口供前端API接口管理模块调用以及实现四层负载均衡功能基本的逻辑,四层负载均衡功能基本的逻辑包括LB节点管理、LVS规则的管理、后端主机的管理、四层监听器的管理以及基本数据库管理;
七层管理模块,用于提供七层负载均衡相关功能接口供前端API接口管理模块调用以及实现七层负载均衡基本的功能逻辑,七层负载均衡基本的功能逻辑包括LB节点管理、NGINX规则的管理、后端主机的管理、七层监听器的管理以及基本数据库管理;
Common模块,用于提供基础的功能函数和基础接口common类,基础的功能函数用于供模块和功能调用,基础接口common类用于由四层管理模块和七层管理模块来继承,主要是公共接口的定义;
SLB-AGENT模块,用于接受SLB集群发来的命令消息,在LB节点上面执行具体配置命令,并且主动上报流量信息。


4.根据权利要求3所述的应用在openstack云平台的多活负载均衡方法,其特征在于,所述Common模块包括,
DB管理模块,用于维护数据库连接状态,提供数据库的增删改查的基本的接口,DB管理模块是数据库管理模块;
虚拟机管理模块,用于对LB节点虚拟机进行管理,接受四层管理模块和七层管理模块的调用请求,再调用openstack虚拟机管理接口,完成LB节点虚拟机的调度、创建和删除的管理操作;
远程管理模块,用于向LB节点虚拟机发送管理命令;
交换机管理模块,用于通过交换机与LB节点虚拟机建立邻居关系并完成流量分发。


5.根据权利要求4所述的应用在openstack云平台的多活负载均衡方法,其特征在于,所述四层管理模块通过虚机管理模块实现LVS节点虚机的创建、初始化配置与删除的LB节点管理;四层管理模块通过DB管理模块实现服务数据的增删改查的功能,包括后端主机的管理及监听器的管理;四层管...

【专利技术属性】
技术研发人员:蒋方文张栋梁张金生刘李豪
申请(专利权)人:山东汇贸电子口岸有限公司
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1