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 PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000004891 communication Methods 0.000 claims abstract description 17
- 230000000694 effects Effects 0.000 claims abstract description 4
- 238000012545 processing Methods 0.000 claims description 16
- 238000012217 deletion Methods 0.000 claims description 12
- 230000037430 deletion Effects 0.000 claims description 12
- 238000013507 mapping Methods 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000005206 flow analysis Methods 0.000 description 2
- 241000029811 Equus burchellii quagga Species 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5083—Techniques for rebalancing the load in a distributed system
- G06F9/5088—Techniques for rebalancing the load in a distributed system involving task migration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network 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
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.
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)
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)
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 |
-
2020
- 2020-01-09 CN CN202010020512.XA patent/CN111274027A/en active Pending
Patent Citations (3)
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)
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 |