[go: up one dir, main page]

CN111274027A - Multi-live load balancing method and system applied to openstack cloud platform - Google Patents

Multi-live load balancing method and system applied to openstack cloud platform Download PDF

Info

Publication number
CN111274027A
CN111274027A CN202010020512.XA CN202010020512A CN111274027A CN 111274027 A CN111274027 A CN 111274027A CN 202010020512 A CN202010020512 A CN 202010020512A CN 111274027 A CN111274027 A CN 111274027A
Authority
CN
China
Prior art keywords
layer
management
management module
load balancing
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.)
Pending
Application number
CN202010020512.XA
Other languages
Chinese (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.)
Shandong Huimao Electronic Port Co Ltd
Original Assignee
Shandong Huimao Electronic Port 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 Shandong Huimao Electronic Port Co Ltd filed Critical Shandong Huimao Electronic Port Co Ltd
Priority to CN202010020512.XA priority Critical patent/CN111274027A/en
Publication of CN111274027A publication Critical patent/CN111274027A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention discloses a multi-activity load balancing method and a multi-activity load balancing system applied to an openstack cloud platform, belongs to the field of cloud computing pass, and aims to solve the technical problems of meeting the requirements of 4-layer and 7-layer flow load balancing, avoiding single-point faults of load balancing nodes, realizing the maximum utilization rate of the performance of the load balancing nodes and improving the resource utilization rate of a physical server on the cloud platform, wherein the technical scheme is as follows: the method is characterized in that load balancing is respectively carried out on 4-layer flow and 7-layer flow by using an open source LVS and an NGINX, multi-path selection is carried out by cooperation of an open source quad virtual router which realizes an ospf protocol and a physical switch which supports the ospf protocol, a multi-active mode is realized, communication is carried out between an external network shared by tenants on an openstack platform and a virtual machine in a tenant vpc, and load balancing across the vpc is realized. The system adopts a micro-service software architecture and comprises a UI layer, a back-end micro-service layer, an atomic micro-service layer and a far-end SLB-AGENT layer.

Description

Multi-live load balancing method and system applied to openstack cloud platform
Technical Field
The invention belongs to the field of cloud computing pass, and particularly relates to a multi-activity load balancing method and system applied to an openstack cloud platform.
Background
With the rapid development of cloud computing technology, more and more government agencies, enterprises and individuals migrate applications from a traditional computing center to a cloud center, the number of applications with large access traffic deployed in the cloud center is more and more, the demands of cloud center tenants on traffic load balancing are stronger and the demands on high availability of the applications are higher and higher.
The cloud center is greatly different from the traditional computing center, and the method for balancing the application traffic load through the physical equipment in the traditional computing center is not suitable for the public cloud and enterprise cloud scenes of multiple tenants. At present, the conventional tenant load balancing of the cloud center mostly adopts a master/standby mode of a VRRP protocol, so that the problems of single-point fault and high availability of the load balancing are solved, and the horizontal expansion cannot be carried out along with the expansion of an access measuring template, so that the physical server resources have higher redundancy requirements, and the server resources are wasted and the resource utilization rate is low for projects with small user scale. Therefore, how to meet the requirements of load balancing of 4-layer and 7-layer flows, avoiding single-point faults of load balancing nodes, realizing the maximum utilization rate of the performance of the load balancing nodes, and improving the resource utilization rate of a physical server on a cloud platform is a problem to be solved urgently in the prior art.
Patent document No. CN107707393A discloses a multi-active system based on Openstack O version characteristics, which utilizes tricile technology to implement interconnection and intercommunication among private networks of multiple Openstack cloud environment tenant virtual machines in different places, utilizes HAProxy and keepalive to implement different-place multi-active of a Web server and high availability of HAProxy, utilizes DRBD to implement real-time synchronization of data of virtual machines in different-place cloud environment, and corosyn and pacemaker detect failure and transfer service. However, the requirements of 4-layer and 7-layer traffic load balancing cannot be met, single-point faults of load balancing nodes are avoided, the maximum utilization rate of the performance of the load balancing nodes is realized, and the resource utilization rate of a physical server on a cloud platform is improved.
Disclosure of Invention
The technical task of the invention is to provide a multi-active load balancing method and a multi-active load balancing system applied to an openstack cloud platform, so as to solve the problems of meeting the requirements of 4-layer and 7-layer flow load balancing, avoiding single-point faults of load balancing nodes, realizing the maximum utilization rate of the performance of the load balancing nodes and improving the resource utilization rate of physical servers on the cloud platform.
The technical task of the invention is realized according to the following mode, the method is used for respectively carrying out load balancing on 4-layer flow and 7-layer flow by using open source LVS and NGINX, multi-path selection is carried out by cooperation of an open source quad virtual router which realizes an ospf protocol and a physical switch which supports the ospf protocol, a multi-live mode is realized, and cross-vpc load balancing is realized by communication between an external network shared by tenants on an openstack platform and a virtual machine in a tenant vpc.
Preferably, the method comprises the following steps:
s1, the console issues LVS and NGINX configuration to the load balancing example of LB node in the rear-end micro service layer (SLB cluster) through the load balancing management network;
s2, the load balancing instance of the LB node performs EIP NAT mapping through the exit firewall device to realize the external network access function of the load balancing instance; meanwhile, the intranet access function of the load balancing example is realized by connecting the load balancing service network with an external network;
s3, the network where the virtual service address corresponding to the load balancing example is located is used for accessing the load balancing virtual service, and the public network load balancing EIP and the service network IP of the load balancing example carry out NAT and require to be communicated with the Floatingip network shared by tenants on the platform;
s4, installing LVS + NGINX in the LB node, wherein the LVS communicates with the back-end micro-service layer through a Floatingip network, and each load balancing instance occupies an IP address of the Floatingip network as LIP;
and S5, the tenant VPC network is created by the tenant, and the tenant VPC network is a network where the back-end micro service layer is located, so that the tenant and the back-end micro service layer can communicate.
More preferably, the back-end microservice layer includes,
the API interface management module is used for facing to a RESTful API interface packaged by the front-end UI, processing a front-end access request, accessing a front-end page by a user to perform operation behavior, and sending the request to the back-end micro-service layer by the front end to be processed by the corresponding API interface;
the four-layer management module is used for providing a functional interface related to four-layer load balancing for the front-end API interface management module to call and realizing the basic logic of the four-layer load balancing function, wherein the basic logic of the four-layer load balancing function comprises LB node management, LVS rule management, back-end host management, four-layer listener management and basic database management;
the seven-layer management module is used for providing seven-layer load balancing related function interfaces for the front-end API interface management module to call and realizing seven-layer load balancing basic function logic, and the seven-layer load balancing basic function logic comprises LB node management, NGINX rule management, rear-end host management, seven-layer listener management and basic database management;
the Common module is used for providing basic function and basic interface Common classes, the basic function is used for module and function calling, the basic interface Common classes are inherited by the four-layer management module and the seven-layer management module, and the Common module is mainly defined by a Common interface;
and the SLB-AGENT module is used for receiving the command message sent by the SLB cluster, executing a specific configuration command on the LB node and actively reporting the flow information.
Preferably, the Common module includes,
the DB management module is used for maintaining the connection state of the database and providing a basic interface for increasing, deleting, modifying and checking the database;
the virtual machine management module is used for managing the LB node virtual machine, receiving the calling requests of the four-layer management module and the seven-layer management module, calling an openstack virtual machine management interface and finishing the management operation of scheduling, creating and deleting the LB node virtual machine;
the remote management module is used for sending a management command to the LB node virtual machine; the remote management module is positioned at the SLB micro-service side;
and the switch management module is used for establishing a neighbor relation with the LB node virtual machine through the switch and completing flow distribution.
Preferably, the four-layer management module realizes the LB node management of creation, initialization configuration and deletion of virtual machines of the LVS nodes through the virtual machine management module; the four-layer management module realizes the functions of increasing, deleting, modifying and checking service data through the DB management module, and comprises the management of a back-end host and the management of a monitor; the four-layer management module is in remote communication with the SLB-AGENT on the LB node through a remote management module to realize the management of the LVS rule;
the seven-layer management module realizes LB node management of creation, initialization configuration and deletion of virtual machines of NGINX nodes through the virtual machine management module; the seven-layer management module realizes the functions of increasing, deleting, modifying and checking the service data through the DB management module, and comprises the management of a back-end host and the management of a monitor; the seven-layer management module is in remote communication with the SLB-AGENT on the LB node through the remote management module to realize the management of the NGINX rule.
A multi-active load balancing system applied to an openstack cloud platform adopts a micro-service software architecture and comprises a UI layer, a back-end micro-service layer, an atomic micro-service layer and a far-end SLB-AGENT layer;
the UI layer is used for interacting with a user, receiving user configuration, forwarding to the back-end micro-service layer for processing and presenting a processing result to the user;
the back-end micro service layer is used for receiving and processing the user configuration information forwarded by the UI layer and simultaneously issuing an instruction to the atomic micro service layer;
the atomic micro-service layer is used for receiving an instruction issued by the back-end micro-service layer;
and the remote SLB-AGENT layer is used for configuring the LVS + NGINX application program in the LB node virtual machine.
Preferably, the back-end micro-service layer comprises,
the API interface management module is used for facing to a RESTful API interface packaged by the front-end UI, processing a front-end access request, accessing a front-end page by a user to perform operation behavior, and sending the request to the back-end micro-service layer by the front end to be processed by the corresponding API interface;
the four-layer management module is used for providing a functional interface related to four-layer load balancing for the front-end API interface management module to call and realizing the basic logic of the four-layer load balancing function, wherein the basic logic of the four-layer load balancing function comprises LB node management, LVS rule management, back-end host management, four-layer listener management and basic database management;
the seven-layer management module is used for providing seven-layer load balancing related function interfaces for the front-end API interface management module to call and realizing seven-layer load balancing basic function logic, and the seven-layer load balancing basic function logic comprises LB node management, NGINX rule management, rear-end host management, seven-layer listener management and basic database management;
the Common module is used for providing basic function and basic interface Common classes, the basic function is used for module and function calling, the basic interface Common classes are inherited by the four-layer management module and the seven-layer management module, and the Common module is mainly defined by a Common interface;
and the SLB-AGENT module is used for receiving the command message sent by the SLB cluster, executing a specific configuration command on the LB node and actively reporting the flow information.
Preferably, the Common module includes,
the DB management module is used for maintaining the connection state of the database and providing a basic interface for increasing, deleting, modifying and checking the database;
the virtual machine management module is used for managing the LB node virtual machine, receiving the calling requests of the four-layer management module and the seven-layer management module, calling an openstack virtual machine management interface and finishing the management operation of scheduling, creating and deleting the LB node virtual machine;
the remote management module is used for sending a management command to the LB node virtual machine; the remote management module is positioned at the SLB micro-service side;
and the switch management module is used for establishing a neighbor relation with the LB node virtual machine through the switch and completing flow distribution.
Preferably, the four-layer management module realizes the LB node management of creation, initialization configuration and deletion of virtual machines of the LVS nodes through the virtual machine management module; the four-layer management module realizes the functions of increasing, deleting, modifying and checking service data through the DB management module, and comprises the management of a back-end host and the management of a monitor; the four-layer management module is in remote communication with the SLB-AGENT on the LB node through a remote management module to realize the management of the LVS rule;
the seven-layer management module realizes LB node management of creation, initialization configuration and deletion of virtual machines of NGINX nodes through the virtual machine management module; the seven-layer management module realizes the functions of increasing, deleting, modifying and checking the service data through the DB management module, and comprises the management of a back-end host and the management of a monitor; the seven-layer management module is in remote communication with the SLB-AGENT on the LB node through the remote management module to realize the management of the NGINX rule.
The multi-live load balancing method and the multi-live load balancing system applied to the openstack cloud platform have the following advantages:
the invention realizes the multi-active mode of the LB node through the OSPF protocol, reduces the requirement of a single LB node virtual machine on physical resources, and improves the performance of the dual-active mode by 100 percent compared with the main-standby mode under the condition of the same virtual machine resources; under the same performance, the physical resource demand is reduced by 50%;
in addition, flow monitoring is carried out on large fluctuation flow, dynamic expansion of LB nodes is carried out, so that the load balancing method has elastic expansion capability, physical resource requirements caused by instantaneous large flow and physical resource waste conditions caused by small flow can be well met;
from the perspective of forwarding performance, different open source software is selected for 4-layer flow and 7-layer flow, 4-layer flow forwarding selection is realized by an LVS (virtual local area network) which is already incorporated into a linux kernel, and 7-layer flow forwarding adopts NGINX open source software with higher performance, so that the requirements of load balancing of the 4-layer flow and the 7-layer flow are met;
thirdly, a multi-active mode realized based on an ospf protocol is adopted, a load balancing node is provided with a quagga virtual router supporting the ospf protocol, the load balancing VIP is broadcasted to the outside through the ospf protocol, an equivalent route is generated at a physical switch side, the multi-active mode is realized, and the problem of single-point failure of the load balancing node is well solved; meanwhile, due to the multi-active mode, the performance requirement of the load balancing node is reduced, and the utilization rate of physical resources is improved;
the method adopts the flow monitoring and elastic expansion technology to realize the elastic expansion and dynamic expansion of the load balancing nodes, monitors the flow of the load balancing nodes through the flow monitoring agent, reports the flow information of the load balancing management nodes, analyzes the flow information of the load balancing nodes, performs dynamic expansion of the load balancing nodes (the number of the nodes is increased in case of large flow, and the load balancing nodes are reduced in case of small flow), solves the problem of large-fluctuation flow load, improves the high availability and performance of load balancing, and simultaneously improves the resource utilization rate;
and (V) bearing load balancing nodes based on the virtual machine: based on a customized virtual machine mirror image, load balancing is respectively carried out on 4-layer flow and 7-layer flow by using an open source LVS and an NGINX on an openstack platform, multi-path selection is carried out by cooperation of an open source quad virtual router which realizes an ospf protocol and a physical switch which supports the ospf protocol, a multi-active mode is realized, and communication is carried out with a virtual machine in a tenant vpc through an external network shared by the tenant on the openstack platform, so that load balancing across the vpc is realized;
and (VI) multiplexing the internal and external network architectures: EIP NAT mapping is carried out through an exit firewall device, an external network access function of the load balancing example is realized, an internal network access function of the load balancing example is realized by connecting a load balancing service network with an external network, an internal and external network realization method of the load balancing example on a cloud platform is unified, and the network structure is highly multiplexed;
(seventhly) realizing a multi-active mode based on ospf: the multi-active mode of the load balancing node is realized based on the ospf protocol, compared with the traditional main/standby mode, the maximum utilization rate of the performance of the load balancing node is realized, the resource utilization rate of a physical server on a cloud platform is improved, and the multi-active mode has higher cost performance; meanwhile, the horizontal dynamic expansion function is good, and the high availability of the tenants can be accurately matched according to the requirements of the tenants;
(eighthly), based on flow analysis, performing dynamic expansion of the load balancing nodes: an SLB-AGENT program with a flow analysis function is deployed in the load balancing virtual machine, the control node is actively reported, the control node dynamically increases and reduces the load balancing node according to the fluctuation condition of the flow, the resource utilization rate is improved, and the resource performance requirement is reduced.
Drawings
The invention is further described below with reference to the accompanying drawings.
Fig. 1 is a flow chart of a multi-live load balancing method applied to an openstack cloud platform;
FIG. 2 is a block diagram of a back-end microservice layer architecture.
Detailed Description
The multi-live load balancing method and system applied to the openstack cloud platform of the present invention are described in detail below with reference to the drawings and specific embodiments of the specification.
Example 1:
the invention discloses a multi-live load balancing method applied to an openstack cloud platform, which is characterized in that load balancing is respectively carried out on 4-layer flow and 7-layer flow by using an open source LVS and an NGINX, multi-path selection is carried out by cooperation of an open source quad virtual router which realizes an ospf protocol and a physical switch which supports the ospf protocol, a multi-live mode is realized, and communication is carried out between an external network shared by tenants on the openstack platform and a virtual machine in a tenant vpc, so that load balancing across the vpc is realized; as shown in the attached figure 1, the method comprises the following specific steps:
s1, the console issues LVS and NGINX configuration to the load balancing example of LB node in the rear-end micro service layer (SLB cluster) through the load balancing management network;
s2, the load balancing instance of the LB node performs EIP NAT mapping through the exit firewall device to realize the external network access function of the load balancing instance; meanwhile, the intranet access function of the load balancing example is realized by connecting the load balancing service network with an external network;
s3, the network where the virtual service address corresponding to the load balancing example is located is used for accessing the load balancing virtual service, and the public network load balancing EIP and the service network IP of the load balancing example carry out NAT and require to be communicated with the Floatingip network shared by tenants on the platform;
s4, installing LVS + NGINX in the LB node, wherein the LVS communicates with the back-end micro-service layer through a Floatingip network, and each load balancing instance occupies an IP address of the Floatingip network as LIP;
and S5, the tenant VPC network is created by the tenant, and the tenant VPC network is a network where the back-end micro service layer is located, so that the tenant and the back-end micro service layer can communicate.
As shown in fig. 2, the back-end micro service layer includes an API interface management module, a four-layer management module, a seven-layer management module, a Common module, and an SLB-AGENT module; the API interface management module is used for facing to a RESTful API interface packaged by the front-end UI, processing a front-end access request, accessing a front-end page by a user for operation behavior, and sending the request to the back-end micro-service layer by the front end to be processed by the corresponding API interface; the four-layer management module is used for providing a function interface related to four-layer load balancing for the front-end API interface management module to call and realizing the basic logic of the four-layer load balancing function, and the basic logic of the four-layer load balancing function comprises LB node management, LVS rule management, back-end host management, four-layer listener management and basic database management; the four-layer management module is a core function module and is inherited from a basic class, and the basic class realizes basic LVS management interfaces (adding/deleting/changing virtual service interfaces and the like); the seven-layer management module is used for providing seven-layer load balancing related function interfaces for the front-end API interface management module to call and realizing seven-layer load balancing basic function logic, and the seven-layer load balancing basic function logic comprises LB node management, NGINX rule management, back-end host management, seven-layer listener management and basic database management; the seven-layer management module is a core function module and is inherited from the basic class; the Common module is used for providing basic function and basic interface Common classes, the basic function is used for module and function calling, the basic interface Common classes are inherited by the four-layer management module and the seven-layer management module, and the definition of the Common interface is mainly used; the Common module comprises a DB management module, a virtual machine management module, a remote management module and a switch management module; the DB management module is used for maintaining the connection state of the database and providing basic interfaces for increasing, deleting, modifying and checking the database, and is a database management module; the virtual machine management module is used for managing the LB node virtual machine, receiving the calling requests of the four-layer management module and the seven-layer management module, calling the openstack virtual machine management interface, and completing the management operation of scheduling, creating and deleting the LB node virtual machine; the remote management module is used for sending a management command to the LB node virtual machine; the remote management module is positioned at the SLB micro-service side; the switch management module is used for establishing a neighbor relation with the LB node virtual machine through the switch and completing flow distribution. The four-layer management module realizes LB node management of creation, initialization configuration and deletion of virtual machines of the LVS nodes through the virtual machine management module; the four-layer management module realizes the functions of increasing, deleting, modifying and checking service data through the DB management module, and comprises the management of a back-end host and the management of a monitor; the four-layer management module is in remote communication with the SLB-AGENT on the LB node through a remote management module to realize the management of the LVS rule; the seven-layer management module realizes LB node management of creation, initialization configuration and deletion of virtual machines of NGINX nodes through the virtual machine management module; the seven-layer management module realizes the functions of increasing, deleting, modifying and checking the service data through the DB management module, and comprises the management of a back-end host and the management of a monitor; the seven-layer management module is in remote communication with the SLB-AGENT on the LB node through the remote management module to realize the management of the NGINX rule.
The SLB-AGENT module is used for receiving the command message sent by the SLB cluster, executing a specific configuration command on the LB node and actively reporting the traffic information.
Example 2:
the multi-active load balancing system applied to the openstack cloud platform adopts a micro-service software architecture and comprises a UI layer, a rear-end micro-service layer, an atomic micro-service layer and a far-end SLB-AGENT layer;
the UI layer is used for interacting with a user, receiving user configuration, forwarding to the back-end micro-service layer for processing and presenting a processing result to the user;
the back-end micro service layer is used for receiving and processing the user configuration information forwarded by the UI layer and simultaneously issuing an instruction to the atomic micro service layer; as shown in fig. 2, the back-end micro-service layer includes an API interface management module, a four-layer management module, a seven-layer management module, a Common module and an SLB-AGENT module; the API interface management module is used for facing to a RESTful API interface packaged by the front-end UI, processing a front-end access request, accessing a front-end page by a user for operation behavior, and sending the request to the back-end micro-service layer by the front end for processing by the corresponding API interface; the four-layer management module is used for providing a function interface related to four-layer load balancing for the front-end API interface management module to call and realizing the basic logic of the four-layer load balancing function, and the basic logic of the four-layer load balancing function comprises LB node management, LVS rule management, back-end host management, four-layer listener management and basic database management; the seven-layer management module is used for providing seven-layer load balancing related function interfaces for the front-end API interface management module to call and realizing seven-layer load balancing basic function logic, and the seven-layer load balancing basic function logic comprises LB node management, NGINX rule management, back-end host management, seven-layer listener management and basic database management; the Common module is used for providing basic function and basic interface Common classes, the basic function is used for module and function calling, the basic interface Common classes are inherited by the four-layer management module and the seven-layer management module, and the Common module is mainly defined by a Common interface; the Common module also belongs to the basic module and comprises a DB management module, a virtual machine management module, a remote management module and a switch management module; the DB management module is used for maintaining the connection state of the database and providing basic interfaces for increasing, deleting, modifying and checking the database, and is a database management module; the virtual machine management module is used for managing the LB node virtual machine, receiving the calling requests of the four-layer management module and the seven-layer management module, calling the openstack virtual machine management interface, and completing the management operation of scheduling, creating and deleting the LB node virtual machine; the remote management module is used for sending a management command to the LB node virtual machine; the remote management module is positioned at the SLB micro-service side; the switch management module is used for establishing a neighbor relation with the LB node virtual machine through the switch and completing flow distribution. The four-layer management module realizes LB node management of creation, initialization configuration and deletion of virtual machines of the LVS nodes through the virtual machine management module; the four-layer management module realizes the functions of increasing, deleting, modifying and checking service data through the DB management module, and comprises the management of a back-end host and the management of a monitor; the four-layer management module is in remote communication with the SLB-AGENT on the LB node through a remote management module to realize the management of the LVS rule; the seven-layer management module realizes LB node management of creation, initialization configuration and deletion of virtual machines of NGINX nodes through the virtual machine management module; the seven-layer management module realizes the functions of increasing, deleting, modifying and checking the service data through the DB management module, and comprises the management of a back-end host and the management of a monitor; the seven-layer management module is in remote communication with the SLB-AGENT on the LB node through the remote management module to realize the management of the NGINX rule. The SLB-AGENT module is used for receiving the command message sent by the SLB cluster, executing a specific configuration command on the LB node and actively reporting the traffic information.
The atomic micro-service layer is used for receiving an instruction issued by the back-end micro-service layer;
and the remote SLB-AGENT layer is used for configuring the LVS + NGINX application program in the LB node virtual machine.
Finally, it should be noted that: the above embodiments are only used to illustrate the technical solution of the present invention, and not to limit the same; while the invention has been described in detail and with reference to the foregoing embodiments, it will be understood by those skilled in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some or all of the technical features may be equivalently replaced; and the modifications or the substitutions do not make the essence of the corresponding technical solutions depart from the scope of the technical solutions of the embodiments of the present invention.

Claims (9)

1. A multi-live load balancing method applied to an openstack cloud platform is characterized in that the method is used for respectively carrying out load balancing on 4-layer flow and 7-layer flow by using open source LVS and NGINX, multi-path selection is carried out by cooperation of an open source quad virtual router which realizes an ospf protocol and a physical switch which supports the ospf protocol, a multi-live mode is realized, and cross-vpc load balancing is realized by communication between an external network shared by tenants on the openstack platform and a virtual machine in a tenant vpc.
2. The method for balancing multiple active loads applied to the openstack cloud platform according to claim 1, wherein the method comprises the following steps:
s1, the console issues LVS and NGINX configuration to the load balancing example of the LB node in the back-end microservice layer through the load balancing management network;
s2, the load balancing instance of the LB node performs EIP NAT mapping through the exit firewall device to realize the external network access function of the load balancing instance; meanwhile, the intranet access function of the load balancing example is realized by connecting the load balancing service network with an external network;
s3, the network where the virtual service address corresponding to the load balancing example is located is used for accessing the load balancing virtual service, and the public network load balancing EIP and the service network IP of the load balancing example carry out NAT and require to be communicated with the Floatingip network shared by tenants on the platform;
s4, installing LVS + NGINX in the LB node, wherein the LVS communicates with the back-end micro-service layer through a Floatingip network, and each load balancing instance occupies an IP address of the Floatingip network as LIP;
and S5, the tenant VPC network is created by the tenant, and the tenant VPC network is a network where the back-end micro service layer is located, so that the tenant and the back-end micro service layer can communicate.
3. The method for balancing multiple active loads applied to the openstack cloud platform according to claim 2, wherein the back-end micro-service layer comprises,
the API interface management module is used for facing to a RESTful API interface packaged by the front-end UI, processing a front-end access request, accessing a front-end page by a user to perform operation behavior, and sending the request to the back-end micro-service layer by the front end to be processed by the corresponding API interface;
the four-layer management module is used for providing a functional interface related to four-layer load balancing for the front-end API interface management module to call and realizing the basic logic of the four-layer load balancing function, wherein the basic logic of the four-layer load balancing function comprises LB node management, LVS rule management, back-end host management, four-layer listener management and basic database management;
the seven-layer management module is used for providing seven-layer load balancing related function interfaces for the front-end API interface management module to call and realizing seven-layer load balancing basic function logic, and the seven-layer load balancing basic function logic comprises LB node management, NGINX rule management, rear-end host management, seven-layer listener management and basic database management;
the Common module is used for providing basic function and basic interface Common classes, the basic function is used for module and function calling, the basic interface Common classes are inherited by the four-layer management module and the seven-layer management module, and the Common module is mainly defined by a Common interface;
and the SLB-AGENT module is used for receiving the command message sent by the SLB cluster, executing a specific configuration command on the LB node and actively reporting the flow information.
4. The method for balancing multiple active loads applied to the openstack cloud platform according to claim 3, wherein the Common module comprises,
the DB management module is used for maintaining the connection state of the database and providing a basic interface for increasing, deleting, modifying and checking the database;
the virtual machine management module is used for managing the LB node virtual machine, receiving the calling requests of the four-layer management module and the seven-layer management module, calling an openstack virtual machine management interface and finishing the management operation of scheduling, creating and deleting the LB node virtual machine;
the remote management module is used for sending a management command to the LB node virtual machine;
and the switch management module is used for establishing a neighbor relation with the LB node virtual machine through the switch and completing flow distribution.
5. The method for balancing multiple active loads applied to the openstack cloud platform according to claim 4, wherein the four-layer management module implements LB node management of creation, initialization configuration, and deletion of virtual machines of LVS nodes through a virtual machine management module; the four-layer management module realizes the functions of increasing, deleting, modifying and checking service data through the DB management module, and comprises the management of a back-end host and the management of a monitor; the four-layer management module is in remote communication with the SLB-AGENT on the LB node through a remote management module to realize the management of the LVS rule;
the seven-layer management module realizes LB node management of creation, initialization configuration and deletion of virtual machines of NGINX nodes through the virtual machine management module; the seven-layer management module realizes the functions of increasing, deleting, modifying and checking the service data through the DB management module, and comprises the management of a back-end host and the management of a monitor; the seven-layer management module is in remote communication with the SLB-AGENT on the LB node through the remote management module to realize the management of the NGINX rule.
6. A multi-active load balancing system applied to an openstack cloud platform is characterized in that the system adopts a micro-service software architecture and comprises a UI layer, a back-end micro-service layer, an atomic micro-service layer and a far-end SLB-AGENT layer;
the UI layer is used for interacting with a user, receiving user configuration, forwarding to the back-end micro-service layer for processing and presenting a processing result to the user;
the back-end micro service layer is used for receiving and processing the user configuration information forwarded by the UI layer and simultaneously issuing an instruction to the atomic micro service layer;
the atomic micro-service layer is used for receiving an instruction issued by the back-end micro-service layer;
and the remote SLB-AGENT layer is used for configuring the LVS + NGINX application program in the LB node virtual machine.
7. The multi-activity load balancing system applied to the openstack cloud platform according to claim 6, wherein the back-end micro-service layer comprises,
the API interface management module is used for facing to a RESTful API interface packaged by the front-end UI, processing a front-end access request, accessing a front-end page by a user to perform operation behavior, and sending the request to the back-end micro-service layer by the front end to be processed by the corresponding API interface;
the four-layer management module is used for providing a functional interface related to four-layer load balancing for the front-end API interface management module to call and realizing the basic logic of the four-layer load balancing function, wherein the basic logic of the four-layer load balancing function comprises LB node management, LVS rule management, back-end host management, four-layer listener management and basic database management;
the seven-layer management module is used for providing seven-layer load balancing related function interfaces for the front-end API interface management module to call and realizing seven-layer load balancing basic function logic, and the seven-layer load balancing basic function logic comprises LB node management, NGINX rule management, rear-end host management, seven-layer listener management and basic database management;
the Common module is used for providing basic function and basic interface Common classes, the basic function is used for module and function calling, the basic interface Common classes are inherited by the four-layer management module and the seven-layer management module, and the Common module is mainly defined by a Common interface;
and the SLB-AGENT module is used for receiving the command message sent by the SLB cluster, executing a specific configuration command on the LB node and actively reporting the flow information.
8. The method for balancing multiple active loads applied to the openstack cloud platform according to claim 7, wherein the Common module comprises,
the DB management module is used for maintaining the connection state of the database and providing a basic interface for increasing, deleting, modifying and checking the database;
the virtual machine management module is used for managing the LB node virtual machine, receiving the calling requests of the four-layer management module and the seven-layer management module, calling an openstack virtual machine management interface and finishing the management operation of scheduling, creating and deleting the LB node virtual machine;
the remote management module is used for sending a management command to the LB node virtual machine;
and the switch management module is used for establishing a neighbor relation with the LB node virtual machine through the switch and completing flow distribution.
9. The method for balancing multiple active loads applied to the openstack cloud platform according to claim 8, wherein the four-layer management module implements LB node management of creation, initialization configuration, and deletion of a virtual machine of an LVS node through a virtual machine management module; the four-layer management module realizes the functions of increasing, deleting, modifying and checking service data through the DB management module, and comprises the management of a back-end host and the management of a monitor; the four-layer management module is in remote communication with the SLB-AGENT on the LB node through a remote management module to realize the management of the LVS rule;
the seven-layer management module realizes LB node management of creation, initialization configuration and deletion of virtual machines of NGINX nodes through the virtual machine management module; the seven-layer management module realizes the functions of increasing, deleting, modifying and checking the service data through the DB management module, and comprises the management of a back-end host and the management of a monitor; the seven-layer management module is in remote communication with the SLB-AGENT on the LB node through the remote management module to realize the management of the NGINX rule.
CN202010020512.XA 2020-01-09 2020-01-09 Multi-live load balancing method and system applied to openstack cloud platform Pending CN111274027A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010020512.XA CN111274027A (en) 2020-01-09 2020-01-09 Multi-live load balancing method and system applied to openstack cloud platform

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010020512.XA CN111274027A (en) 2020-01-09 2020-01-09 Multi-live load balancing method and system applied to openstack cloud platform

Publications (1)

Publication Number Publication Date
CN111274027A true CN111274027A (en) 2020-06-12

Family

ID=70998903

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010020512.XA Pending CN111274027A (en) 2020-01-09 2020-01-09 Multi-live load balancing method and system applied to openstack cloud platform

Country Status (1)

Country Link
CN (1) CN111274027A (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111756830A (en) * 2020-06-22 2020-10-09 浪潮云信息技术股份公司 Internal network load balancing implementation method of public cloud network
CN111970149A (en) * 2020-08-17 2020-11-20 浪潮云信息技术股份公司 Shared bandwidth realizing method based on hardware firewall QOS
CN111970152A (en) * 2020-08-21 2020-11-20 中国建设银行股份有限公司 SDN-based fault positioning method, system, equipment and medium in load balancing
CN112000435A (en) * 2020-08-21 2020-11-27 浪潮云信息技术股份公司 Multi-activity load balancing method and system based on Openstack
CN112000507A (en) * 2020-08-21 2020-11-27 中国建设银行股份有限公司 Fault processing method, system, device and medium based on software load balancing
CN112099915A (en) * 2020-09-07 2020-12-18 紫光云(南京)数字技术有限公司 Soft load balancing dynamic issuing configuration method and system
CN112711396A (en) * 2020-12-17 2021-04-27 华人运通(上海)云计算科技有限公司 Micro-service layered structure supporting flexible expansion
CN113259219A (en) * 2021-07-05 2021-08-13 云宏信息科技股份有限公司 VPN construction method based on OVN environment, readable storage medium and cloud platform
CN113572856A (en) * 2021-09-18 2021-10-29 云宏信息科技股份有限公司 Method, control method and medium for configuring seven-layer load balancing for OVN architecture
CN114064377A (en) * 2020-07-29 2022-02-18 中移(苏州)软件技术有限公司 Load balancer monitoring method, device, equipment and storage medium
CN114584511A (en) * 2020-11-30 2022-06-03 瞻博网络公司 Extending software-defined networks between public cloud computing infrastructures and data centers
CN114726827A (en) * 2022-03-31 2022-07-08 阿里云计算有限公司 Multi-cluster service system, service access and information configuration method, device and medium
CN115242700A (en) * 2021-04-23 2022-10-25 网联清算有限公司 Communication transmission method, device and system
CN116192855A (en) * 2021-11-26 2023-05-30 中移(苏州)软件技术有限公司 Load balancing method, device, electronic device, and computer-readable storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107707393A (en) * 2017-09-26 2018-02-16 赛尔网络有限公司 More live systems based on Openstack O version characteristics
CN109660466A (en) * 2019-02-26 2019-04-19 浪潮软件集团有限公司 A kind of more live load balance realizing methods towards cloud data center tenant
CN110392108A (en) * 2019-07-23 2019-10-29 浪潮云信息技术有限公司 A kind of public cloud Network Load Balance system architecture and implementation method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107707393A (en) * 2017-09-26 2018-02-16 赛尔网络有限公司 More live systems based on Openstack O version characteristics
CN109660466A (en) * 2019-02-26 2019-04-19 浪潮软件集团有限公司 A kind of more live load balance realizing methods towards cloud data center tenant
CN110392108A (en) * 2019-07-23 2019-10-29 浪潮云信息技术有限公司 A kind of public cloud Network Load Balance system architecture and implementation method

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111756830A (en) * 2020-06-22 2020-10-09 浪潮云信息技术股份公司 Internal network load balancing implementation method of public cloud network
CN114064377A (en) * 2020-07-29 2022-02-18 中移(苏州)软件技术有限公司 Load balancer monitoring method, device, equipment and storage medium
CN111970149A (en) * 2020-08-17 2020-11-20 浪潮云信息技术股份公司 Shared bandwidth realizing method based on hardware firewall QOS
CN111970149B (en) * 2020-08-17 2023-05-30 浪潮云信息技术股份公司 Shared bandwidth implementation method based on hardware firewall QOS
CN111970152B (en) * 2020-08-21 2023-01-13 中国建设银行股份有限公司 SDN-based fault positioning method, system, equipment and medium in load balancing
CN112000435A (en) * 2020-08-21 2020-11-27 浪潮云信息技术股份公司 Multi-activity load balancing method and system based on Openstack
CN112000507A (en) * 2020-08-21 2020-11-27 中国建设银行股份有限公司 Fault processing method, system, device and medium based on software load balancing
CN111970152A (en) * 2020-08-21 2020-11-20 中国建设银行股份有限公司 SDN-based fault positioning method, system, equipment and medium in load balancing
CN112099915A (en) * 2020-09-07 2020-12-18 紫光云(南京)数字技术有限公司 Soft load balancing dynamic issuing configuration method and system
US12147826B2 (en) 2020-11-30 2024-11-19 Juniper Networks, Inc. Extending a software defined network between public cloud computing architecture and a data center
CN114584511A (en) * 2020-11-30 2022-06-03 瞻博网络公司 Extending software-defined networks between public cloud computing infrastructures and data centers
CN114584511B (en) * 2020-11-30 2024-02-23 瞻博网络公司 Extending software defined networks between public cloud computing infrastructure and data centers
CN112711396A (en) * 2020-12-17 2021-04-27 华人运通(上海)云计算科技有限公司 Micro-service layered structure supporting flexible expansion
CN115242700B (en) * 2021-04-23 2024-03-22 网联清算有限公司 Communication transmission method, device and system
CN115242700A (en) * 2021-04-23 2022-10-25 网联清算有限公司 Communication transmission method, device and system
CN113259219B (en) * 2021-07-05 2021-11-02 云宏信息科技股份有限公司 VPN construction method based on OVN environment, readable storage medium and cloud platform
CN113259219A (en) * 2021-07-05 2021-08-13 云宏信息科技股份有限公司 VPN construction method based on OVN environment, readable storage medium and cloud platform
CN113572856A (en) * 2021-09-18 2021-10-29 云宏信息科技股份有限公司 Method, control method and medium for configuring seven-layer load balancing for OVN architecture
CN116192855A (en) * 2021-11-26 2023-05-30 中移(苏州)软件技术有限公司 Load balancing method, device, electronic device, and computer-readable storage medium
CN114726827B (en) * 2022-03-31 2022-11-15 阿里云计算有限公司 Multi-cluster service system, service access and information configuration method, device and medium
CN114726827A (en) * 2022-03-31 2022-07-08 阿里云计算有限公司 Multi-cluster service system, service access and information configuration method, device and medium

Similar Documents

Publication Publication Date Title
CN111274027A (en) Multi-live load balancing method and system applied to openstack cloud platform
CN109743415B (en) Public cloud network elastic IP implementation method and system
EP1810447B1 (en) Method, system and program product for automated topology formation in dynamic distributed environments
CN111638957B (en) Method for realizing cluster sharing type public cloud load balance
CN109660466A (en) A kind of more live load balance realizing methods towards cloud data center tenant
CN111464592A (en) Load balancing method, device, equipment and storage medium based on microservice
TW201739219A (en) Method, device and system for controlling traffic flow between data centers
CN109756474B (en) A method and device for cross-regional service invocation of a power dispatching automation system
EP2356775A1 (en) Central controller for coordinating multicast message transmissions in distributed virtual network switch environment
CN111970362B (en) LVS-based vehicle networking gateway clustering method and system
CN107465721A (en) Whole load equalizing method and system and dispatch server based on dual-active framework
CN115086330B (en) Cross-cluster load balancing system
CN102437933A (en) Fault tolerance system and method for server
CN112003721B (en) Method and device for realizing high availability of large data platform management node
WO2022017099A1 (en) Communication method, cp device, and nat device
CN106385334A (en) Call-center system and abnormality detection and self-recovery method therefor
CN107682411A (en) A kind of extensive SDN controllers cluster and network system
WO2023207189A1 (en) Load balancing method and system, computer storage medium, and electronic device
CN115225634A (en) Data forwarding method and device under virtual network and computer program product
CN114760263B (en) Address resolution method, cloud platform and medium
JP2013200716A (en) Virtual system, management server, migration method, migration method for virtual machine in view of communication between migration program operations
CN113765710B (en) Request processing system and method based on multi-activity hybrid cloud deployment
CN110392111B (en) Intelligent virtual distributed router cluster system based on data center and implementation method thereof
WO2018223991A1 (en) Method and system for switching between active bng and standby bng, and bng
CN114390101A (en) Kubernetes load balancing method based on BGP networking

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200612

RJ01 Rejection of invention patent application after publication