Load balancing configuration information processing method and device
By using the load balancing model to automatically modify and synchronize the load balancing information of multiple cloud platforms, the problem of inefficient processing of load balancing configuration information in the existing technology is solved, and efficient automated processing is achieved.
Patent Information
- Application Number
- CN202411877891.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-18
- Publication Date
- 2025-03-21
AI Technical Summary
In the process of load balancing configuration information, the prior art requires manual modification of load balancing configuration information on multiple cloud platforms one by one, resulting in low efficiency and lack of effective solutions.
By obtaining the original information of the load balancer configured for the target business on multiple cloud platforms, modify one set of load balance information using the pre-created load balance model, generate a new load balance configuration information, and automatically synchronize it to multiple cloud platforms.
It realizes automatic processing of load balancing configuration information, improves processing efficiency, reduces manual operation time, and solves the problem of inefficiency in traditional methods.
Smart Images

Figure CN119676165A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computers, and in particular to a method and device for processing load balancing configuration information. Background Art
[0002] With the development of cloud computing, load balancing technology is widely used in the Internet industry. Load balancing can distribute traffic to multiple cloud servers to achieve the goals of load balancing and optimizing resource allocation.
[0003] Load Balancer (LB) is a device that uses load balancing algorithms to distribute traffic to different cloud servers. It is one of the important components in current public and private cloud environments. By distributing business traffic to a cloud server cluster through a load balancer, the traffic pressure can be dispersed across multiple cloud servers, preventing a single cloud server from crashing due to excessive pressure, thereby maintaining the continuous and stable operation of the business.
[0004] An application may create or update multiple load balancing configuration information on multiple cloud platforms, and an application may have several or even dozens of load balancers on a single cloud platform, and the configuration information of the load balancer includes such contents as listeners, backend protocols, ports, etc. When the configuration information of a load balancer on the main cloud platform corresponding to a business changes, it is necessary to manually modify the configuration information of the same load balancer on other cloud platforms one by one (the configuration information of multiple load balancers of the same business on multiple cloud platforms must be consistent).
[0005] In actual deployment, as the business scale continues to grow, the number of load balancers on the cloud platform will also increase accordingly. If the traditional method of manually modifying the load balancing configuration information on each cloud platform is still used, it will take more time and manpower, resulting in technical problems with low efficiency in the processing of load balancing configuration information.
[0006] To address the above-mentioned problems, no effective solution has been proposed yet. Summary of the invention
[0007] The embodiments of the present application provide a method and device for processing load balancing configuration information, so as to at least solve the technical problem of low efficiency that occurs during the processing of load balancing configuration information.
[0008] According to one aspect of an embodiment of the present application, a method for processing load balancing configuration information is provided, including: obtaining original load balancing information of multiple groups of load balancers configured for target services on multiple cloud platforms respectively; obtaining a modified set of load balancing information by modifying a set of load balancing information of a group of load balancers on a first cloud platform in a pre-created load balancing model; generating load balancing configuration information based on the original load balancing information and the modified set of load balancing information; and synchronizing the load balancing configuration information to the load balancer on each cloud platform in the multiple cloud platforms.
[0009] Optionally, the above-mentioned modification of the i-th group of load balancing information of the i-th group of load balancers on the i-th cloud platform in the pre-created load balancing model includes at least one of the following: adding a load balancer in the i-th group of load balancers on the i-th cloud platform; deleting at least part of the load balancers in the i-th group of load balancers on the i-th cloud platform; updating the attribute information of at least part of the load balancers in the i-th group of load balancers.
[0010] Optionally, the above-mentioned modified set of load balancing information is obtained by modifying a set of load balancing information of a set of load balancers on the first cloud platform in a pre-created load balancing model, including: obtaining a set of load balancing information from the load balancing model, wherein the set of load balancing information includes listener information of a set of listeners mounted on a set of load balancers; and obtaining a modified set of load balancing information by modifying the listener information of a set of listeners, wherein the set of listeners is used to forward network traffic according to predetermined rules, and the network traffic includes multiple business requests in the target business.
[0011] Optionally, the above-mentioned modification of the listener information of a group of listeners to obtain a modified set of load balancing information includes at least one of the following: increasing the number of listeners in a group of listeners; deleting at least some of the listeners in a group of listeners; updating the configuration information of at least some of the listeners in a group of listeners.
[0012] Optionally, before modifying a set of load balancing information of a group of load balancers on the first cloud platform in a pre-created load balancing model to obtain a modified set of load balancing information, the above method also includes: when the target business is a business pre-processed by multiple cloud platforms, randomly selecting a load balancer from multiple groups of load balancers; obtaining first load balancing information of a load balancer, wherein the first load balancing information includes the name, label and listener information of the load balancer; and creating a load balancing model based on the first load balancing information.
[0013] Optionally, before modifying a set of load balancing information of a set of load balancers on the first cloud platform in a pre-created load balancing model to obtain a modified set of load balancing information, the above method also includes: when the target business is a business that has not been processed by multiple cloud platforms, configuring second load balancing information, wherein the second load balancing information includes the name, label and listener information of the load balancer; and creating a load balancing model based on the second load balancing information.
[0014] Optionally, the above-mentioned generation of load balancing configuration information based on the original load balancing information and the modified set of load balancing information includes: obtaining a set of original load balancing information on the first cloud platform from N sets of original load balancing information; finding the configuration difference between a set of original load balancing information and a modified set of load balancing information; and generating load balancing configuration information based on the configuration difference.
[0015] Optionally, the above method also includes: in response to resolving the domain name of the target business, obtaining the first virtual IP address of the first load balancer on the second cloud platform; forwarding the business request in the target business to the back-end server group of the first load balancer through the first virtual IP address, wherein the first virtual IP address has a binding relationship with the back-end server group of the first load balancer; in the event of an abnormality in the back-end server group of the first load balancer, forwarding the business request to the back-end server group of the second load balancer on the third cloud platform through the first load balancer, wherein the second virtual IP address of the second load balancer is the cross-cloud mutual backup IP address of the first load balancer, and the multiple cloud platforms include the first cloud platform, the second cloud platform and the third cloud platform.
[0016] Optionally, when an abnormality occurs in the backend server group of the first load balancer, before forwarding the service request to the backend server group of the second load balancer on the third cloud platform through the first load balancer, the above method also includes: sending a probe request to the second virtual IP address by using the target protocol of the target listener mounted by the first load balancer; and determining that the second virtual IP address is in an available state when the target server pointed to by the second virtual IP address responds to the probe request.
[0017] According to another aspect of an embodiment of the present application, a device for processing load balancing configuration information is also provided, including: a first acquisition unit, used to obtain original load balancing information of multiple groups of load balancers configured for target services on multiple cloud platforms respectively; a modification unit, used to modify a group of load balancing information of a group of load balancers on a first cloud platform in a pre-created load balancing model to obtain a modified group of load balancing information; a first processing unit, used to generate load balancing configuration information based on the original load balancing information and the modified group of load balancing information; and a second processing unit, used to synchronize the load balancing configuration information to the load balancer on each cloud platform in the multiple cloud platforms.
[0018] According to another aspect of the embodiments of the present application, a computer-readable storage medium is provided, in which a computer program is stored, wherein the computer program is used to execute the above-mentioned method for processing load balancing configuration information when run by an electronic device.
[0019] According to another aspect of the embodiments of the present application, a computer program product is also provided, including a computer program that implements the steps of the above method when the computer program is executed by a processor.
[0020] According to another aspect of an embodiment of the present application, an electronic device is provided, including a memory and a processor, wherein a computer program is stored in the memory, and the processor is configured to execute the method for processing the load balancing configuration information through the computer program.
[0021] Through the above-mentioned embodiments provided by the present application, the created load balancing model can be utilized. When the load balancing information changes, the modified load balancing configuration information can be quickly determined by comparing multiple groups of original load balancing information on multiple cloud platforms with the load balancing information in the load balancing model, and the modified load balancing configuration information can be automatically synchronized to multiple cloud platforms, thereby solving the problem of low efficiency caused by the need to manually modify the load balancing configuration information of each cloud platform in the related technology, and achieving the technical effect of improving the processing efficiency of the load balancing configuration information. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] The drawings described herein are used to provide further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute improper limitations on the present application.
[0023] Figure 1 It is a schematic diagram of an application scenario of an optional method for processing load balancing configuration information according to an embodiment of the present application;
[0024] Figure 2is a flowchart of an optional method for processing load balancing configuration information according to an embodiment of the present application;
[0025] Figure 3 It is an overall schematic diagram of an optional method for processing load balancing configuration information according to an embodiment of the present application;
[0026] Figure 4 is a schematic diagram of an optional process of building a load balancing model according to an embodiment of the present application;
[0027] Figure 5 is a schematic diagram of an optional method of synchronizing load balancing configuration information through a configuration management module according to an embodiment of the present application;
[0028] Figure 6 This is a specific example of an optional cross-cloud mutual backup traffic scheduling according to an embodiment of the present application;
[0029] Figure 7 is a structural diagram of an optional device for processing load balancing configuration information according to an embodiment of the present application;
[0030] Figure 8 It is a schematic diagram of the structure of an optional electronic device according to an embodiment of the present application. DETAILED DESCRIPTION
[0031] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present application.
[0032] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchangeable where appropriate, so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.
[0033] The technical solutions in the embodiments of the present application will comply with legal provisions during implementation. When performing operations according to the technical solutions in the embodiments, the data used will not involve user privacy. While ensuring that the operation process is compliant and legal, the security of the data is guaranteed.
[0034] In addition, when the above embodiments of the present application are applied to specific products or technologies, user permission or consent is required, and the collection, use and processing of relevant data need to comply with relevant regulations and standards of the relevant country or region.
[0035] According to one aspect of an embodiment of the present application, a method for processing load balancing configuration information is provided. As an optional implementation, the method for processing load balancing configuration information can be applied to, but is not limited to, Figure 1 The application scenario shown in Figure 1 In the application scenario shown, the target terminal 102 may, but is not limited to, communicate with the server 106 via the network 104, and the server 106 may, but is not limited to, perform operations on the database 108, such as write data operations or read data operations. The above-mentioned target terminal 102 may, but is not limited to, include a human-computer interaction screen, a processor, and a memory. The above-mentioned human-computer interaction screen may, but is not limited to, be used to display the target business on the target terminal 102 and the results of processing the target business through N cloud platforms. The above-mentioned processor may, but is not limited to, be used to respond to the above-mentioned human-computer interaction operation, perform corresponding operations, or generate corresponding instructions, and send the generated instructions to the server 106. The above-mentioned memory is used to store relevant processing data, such as N groups of original load balancing information, the i-th group of load balancing information, and load balancing configuration information.
[0036] Optionally, in this embodiment, the target terminal may be a terminal configured with a target client, which may include but is not limited to at least one of the following: a mobile phone (such as an Android phone, an iOS phone, etc.), a laptop, a tablet computer, a PDA, a MID (Mobile Internet Devices), a PAD, a desktop computer, a smart TV, etc. The target client may be a video client, an instant messaging client, a browser client, an education client, etc. The network may include but is not limited to: a wired network, a wireless network, wherein the wired network includes: a local area network, a metropolitan area network and a wide area network, and the wireless network includes: Bluetooth, WIFI and other networks that realize wireless communication. The server may be a single server, or a server cluster consisting of multiple servers, or a cloud server.
[0037] In order to solve the problem of low efficiency in the process of processing load balancing configuration information, a method for processing load balancing configuration information is proposed in an embodiment of the present application. Figure 2It is a flowchart of a method for processing load balancing configuration information according to an embodiment of the present application, and the flow includes the following steps S202 to S208.
[0038] It should be noted that the method for processing the load balancing configuration information shown in steps S202 to S208 may be, but is not limited to, executed by an electronic device, wherein the electronic device may be, but is not limited to, Figure 1 The target terminal or server is shown.
[0039] Step S202, obtaining original load balancing information of multiple groups of load balancers configured for target services on multiple cloud platforms respectively;
[0040] Step S204, obtaining a modified set of load balancing information by modifying a set of load balancing information of a set of load balancers on the first cloud platform in the pre-created load balancing model;
[0041] Step S206, generating load balancing configuration information based on the original load balancing information and the modified set of load balancing information;
[0042] Step S208: synchronizing the load balancing configuration information to the load balancer on each of the multiple cloud platforms.
[0043] To facilitate understanding, the embodiments of the present application all take the process of deploying an application on multiple cloud platforms and using multiple load balancers across cloud platforms to process the target business or business requests (which can also be understood as network traffic) sent by the application as an example to explain the processing process of the above-mentioned load balancing configuration information.
[0044] A load balancer can be understood as, but is not limited to, a network device or service that distributes network or application traffic among multiple servers to optimize resource usage, maximize throughput, minimize response time, and avoid overloading any single point.
[0045] The main functions of a load balancer include:
[0046] (1) Traffic distribution: Distribute traffic to backend servers based on preset strategies (such as polling, least connections, IP hashing, etc.) to ensure even load distribution;
[0047] (2) High availability: By detecting the health status of the backend servers, the load balancer can automatically transfer traffic from failed servers to healthy servers, improving system availability;
[0048] (3) Failover: When the primary server fails, the load balancer can quickly redirect traffic to the backup server to achieve seamless switching;
[0049] (4) Performance optimization: By dispersing traffic, the load balancer can prevent any single server from being overloaded by processing too many requests, thereby improving overall performance;
[0050] (5) Scalability: As business needs change, backend servers can be easily added or removed to accommodate different traffic demands;
[0051] (6) Security: The load balancer can act as a security barrier to protect the backend server by restricting access and filtering malicious traffic.
[0052] (7) SSL / TLS offloading: When processing HTTPS traffic, the load balancer can terminate the SSL connection on itself, reducing the encryption / decryption burden on the backend server;
[0053] (8) Monitoring and reporting: Load balancers can monitor traffic and performance, provide real-time reports and logs, and help administrators troubleshoot and optimize performance.
[0054] In the embodiment of the present application, the load balancer is mainly used to process and forward business requests of application programs to ensure that business requests are processed efficiently and securely.
[0055] like Figure 3 As shown, the overall system for implementing the above-mentioned method for processing load balancing configuration information includes four modules, namely a cloud platform module, a model building module, a cross-cloud information backup module and a configuration management module.
[0056] The cloud platform module mainly includes information such as cloud platform load balancing and its listener, and has the following functions for each platform:
[0057] (1) The application is deployed on a cloud platform, using one or more load balancers;
[0058] (2) Each load balancer has multiple different listeners, each of which listens to different protocols and ports. For example, the Https listener listens to port 443, the Http listener listens to port 80, etc.
[0059] (3) Each listener has information such as the listening domain name, forwarding path, scheduling algorithm, and health check configuration;
[0060] (4) The monitoring configuration information of multiple load balancers for the same service is consistent;
[0061] (5) Multiple load balancers of the same business forward to their respective backend server groups, and the backend servers mounted on the backend service area group are consistent;
[0062] (6) The cross-cloud information mutual backup module will generate cross-cloud mutual backup information. For details on the construction method, see the cross-cloud information mutual backup module below;
[0063] (7) After the cross-cloud information mutual backup module generates the mutual backup IP, the configuration management module pushes the mutual backup IP to the load balancer of the current cloud platform. One or more cross-cloud mutual backup IPs can be configured on the current cloud platform load balancer. When an obvious abnormality occurs between the listener and the backend server group, the load balancer will switch the traffic and forward the traffic to the mutual backup IP instead of the listener of the current cloud. Prior to this, the current load balancer will perform a health check on the mutual backup IP, mainly using the protocol and port of the current listener to detect the mutual backup IP to prevent the mutual backup IP of a certain mutual backup cloud from having abnormalities at the same time. Under normal circumstances, the detection results are all passed, and the traffic will go through the mutual backup IP to complete the normal response.
[0064] The above (6) and (7) are in addition to the capabilities of the cloud platform in the traditional multi-cloud platform deployment process. Figure 3 The overall system shown can also achieve capabilities.
[0065] The model building module mainly builds a data model based on the load balancing information applied on the cloud platform; the cross-cloud information mutual backup module can, but is not limited to, extract the relevant information of the entire current cloud and other load balancers on the cloud, and provide the extracted relevant information to the configuration management module; the configuration management module can, but is not limited to, receive the data extracted by the cross-cloud mutual backup information module, and trigger events to adjust the load balancing configuration information on multiple cloud platforms. The following will explain the three modules separately in conjunction with specific embodiments.
[0066] In addition, in the embodiment of the present application, by creating a load balancing model, load balancing information on multiple cross-cloud platforms can be collected. When it is determined that the configuration information of a load balancer on the main cloud platform needs to be modified after processing by the domain name resolution device, the configuration information of the load balancer in the load balancing model can be directly modified. After the cross-cloud information backup module extracts the modified load balancing configuration information, it is sent to each cloud platform through the configuration management module, and the configuration information of the load balancer on each cloud platform is synchronized.
[0067] For example, after resolving the domain name of a current business request (or network traffic) through the traffic entrance, it is determined that the business request is resolved to the public IP of the load balancer A1 of the cloud platform A, and it is determined that a new listener 4 needs to be added based on the listeners 1 to 4 mounted on the load balancer A1.
[0068] The listener information mounted on the load balancer A1 of cloud platform A is modified through the application model A in the model construction module, that is, listener 4 is added to the load balancer A1 of cloud platform A through the application model A (which can also be understood as a load balancing model).
[0069] The cross-cloud information backup module extracts the load balancing information in the application model A, compares the extracted load balancing information with the original load balancing information on the three cloud platforms (cloud platforms A, B, and C), determines the configuration differences, and generates load balancing configuration information. Finally, the configuration management module sends and synchronizes the newly added listener 4 of load balancing A1 to load balancer A1 on cloud platforms A, B, and C. The information synchronization of load balancing information on cross-cloud platforms is quickly realized, reducing the manual operation process.
[0070] In addition, it should be noted that the embodiments of the present application mainly describe the method for processing load balancing configuration information between multiple cloud platforms when N is a positive integer greater than or equal to 2, but in actual application scenarios, it is also possible to synchronize the configuration information of a group of load balancers configured on a cloud platform when N=1.
[0071] For example, Figure 3 As shown, for one business, load balancer A1, load balancer A2 and load balancer B are configured on cloud platform A, and three listeners are mounted on each load balancer. According to the listener protocol and port, there is a preset correspondence between the listeners mounted on the three load balancers.
[0072] Specifically, assuming Figure 3 As shown, listener 1 on load balancer A1 on cloud platform A, listener 7 on load balancer A2, and listener 4 on load balancer B correspond to each other, so the configuration information between listener 1, listener 7, and listener 4 must be synchronized, for example, health check information, path, domain name, protocol, SSL certificate, etc. need to be consistent.
[0073] Similarly, assuming that listener 2 on load balancer A1, listener 8 on load balancer A2, and listener 5 on load balancer B correspond to each other, it is also necessary to ensure the consistency of listener information (such as the above-mentioned domain name, path, etc.) between listener 2, listener 8 and listener 5.
[0074] Obviously, the process of processing the configuration information of a load balancer on a cloud platform is the same as the process of processing the configuration information of load balancing on the above-mentioned multiple cloud platforms, which will not be repeated here.
[0075] By adopting the above method, the created load balancing model can be utilized. When the load balancing information changes, the modified load balancing configuration information can be quickly determined by comparing multiple sets of original load balancing information on multiple cloud platforms with the load balancing information in the load balancing model. The modified load balancing configuration information can be automatically synchronized to multiple cloud platforms, thereby solving the problem of low efficiency caused by the need to manually modify the load balancing configuration information of each cloud platform in related technologies, and achieving the technical effect of improving the processing efficiency of load balancing configuration information.
[0076] As an optional example, the modified set of load balancing information obtained by modifying a set of load balancing information of a set of load balancers on the first cloud platform in the pre-created load balancing model includes:
[0077] Obtaining a set of load balancing information from the load balancing model, wherein the set of load balancing information includes listener information of a set of listeners mounted on a set of load balancers;
[0078] A modified set of load balancing information is obtained by modifying the listener information of a set of listeners, wherein the set of listeners is used to forward network traffic according to a predetermined rule, and the network traffic includes multiple service requests in a target service.
[0079] It should be noted that the listener mounted on the load balancer has the following effects on the processing of network traffic:
[0080] Traffic reception and distribution: The listener is responsible for listening to requests on the load balancer and distributing the traffic to the backend server for processing according to the configured traffic distribution strategy;
[0081] Protocol support: The listener can monitor layer 4 (such as TCP, UDP) and layer 7 (such as HTTP, HTTPS) requests, and select the appropriate monitoring protocol according to the application scenario;
[0082] Session persistence: Some listeners support session persistence to ensure that users remain connected to the same backend server across multiple requests;
[0083] Health Check: Listeners are often used in conjunction with a health check mechanism to ensure that only healthy backend servers receive traffic.
[0084] It can be seen that the listener plays a vital role in the load balancer. It is mainly responsible for key functions such as inbound traffic, health checks, and traffic policy configuration. It is essential to ensure the performance and reliability of the load balancer.
[0085] Therefore, for ease of understanding, in this embodiment, taking the synchronization of listener information as an example, the process of synchronizing the configuration information of the load balancer across the cloud platform is explained.
[0086] As described in the above embodiments, when the listener information mounted on at least one load balancer on multiple cloud platforms corresponding to a service or a type of service changes, the changed information needs to be synchronized to each cloud platform.
[0087] As an optional example, the modified load balancing information of the i-th group of listeners is obtained by modifying the listener information of the i-th group of listeners, including at least one of the following:
[0088] Increase the number of listeners in a set of listeners;
[0089] Remove at least some of a set of listeners;
[0090] Update configuration information of at least some of a set of listeners.
[0091] For example, a set of listeners might look like Figure 3 There are three listeners in total, namely, listener 1, listener 2 and listener 3. Due to business changes of the application, it is necessary to add a listener 4 to the load balancer A1; or it is necessary to delete the original listeners among listeners 1 to 3.
[0092] For another example, all the information of the listener can be updated, including the listening domain name, listening protocol, listener timeout configuration, forwarding path, health check information, and access control information.
[0093] The protocols of the listener include but are not limited to network protocols such as HTTP, HTTPS, TCP, and UDP. When creating a listener, a protocol must be bound, and the protocol can be updated.
[0094] In practical applications, the listener protocol is crucial to ensure the availability, reliability, and efficiency of network services. For example, a Web server listener may be configured to listen to HTTP port 80, while an HTTPS server listener may be configured to listen to TLS encrypted port 443. By correctly configuring the listener protocol, you can ensure that network traffic is properly processed and provided to users with the services they need.
[0095] The above-mentioned method of changing the load balancing information of a load balancer on a cloud platform can be but is not limited to modifying the data in the load balancing model. When it is determined that the load balancing information in the extracted load balancing model is inconsistent with the load balancing information in N cloud platforms, load balancing configuration information is generated and automatically sent and synchronized to the N cloud platforms through the configuration management module.
[0096] That is to say, in the embodiment of the present application, by constructing a load balancing model, the consistency of multi-cloud load balancing information is ensured, and the synchronization of multi-cloud load balancing configuration information is achieved based on the model, including the creation of single-cloud and cross-cloud load balancing, synchronization of monitoring information and other configurations, thereby achieving an increase in the time complexity of operating load balancing information from N to 1, and improving the processing efficiency of load balancing configuration information.
[0097] In addition to modifying the listener information mounted on the load balancer on the cloud platform in the above embodiment, the attribute information of the load balancer may also be modified, specifically including at least one of the following:
[0098] Add a load balancer in the i-th group of load balancers on the i-th cloud platform;
[0099] Deleting at least some of the load balancers in the i-th group of load balancers on the i-th cloud platform;
[0100] Update attribute information of at least part of the load balancers in the i-th group of load balancers.
[0101] Methods for modifying the attributes of a load balancer include, but are not limited to, (1) updating the attribute information of the load balancer, i.e., uniformly updating the load balancer; and (2) adjusting the number of load balancers simultaneously according to the adjustment of the model.
[0102] For example, when an application has an insufficient number of load balancers and needs to be expanded, this model can be used to add at least one load balancer with the same configuration to one or more cloud platforms at one time, thus avoiding the time-consuming problem of adding multiple cloud platforms one by one and improving the synchronization efficiency of load balancing configuration information.
[0103] As an optional implementation, before modifying a set of load balancing information of a set of load balancers on the first cloud platform in the pre-created load balancing model to obtain a modified set of load balancing information, the method further includes:
[0104] When the target service is pre-processed by multiple cloud platforms, a load balancer is randomly selected from multiple groups of load balancers;
[0105] Obtaining first load balancing information of a load balancer, wherein the first load balancing information includes a name, a label, and listener information of the load balancer;
[0106] A load balancing model is created based on the first load balancing information.
[0107] In an embodiment of the present application, the load balancing model is a data model constructed based on the load balancing information of the application on the cloud platform, specifically including the listener name, label information, etc.
[0108] In the embodiment of the present application, an application includes but is not limited to multiple load balancing models, and a load balancing model may include multiple listener models. Among them, the listener model includes information such as the listening protocol, port, forwarding strategy, scheduling algorithm, session retention switch, bandwidth speed limit value, Gzip switch, access control, health check method, path, timeout, etc., and the forwarding strategy includes the backend protocol and port.
[0109] If you are building a load balancing model for the first time, you can directly extract relevant information on the existing cloud platform to build a data model. For details, you can refer to Figure 4 ,There are two ways to build a load balancing model.,One is that when N cloud platforms have processed the target business, you can directly select an existing load balancer on the N cloud platforms as a data model to build a load balancing model.
[0110] The model data specifically includes the basic information of the load balancer, such as the name and label of the load balancer. Different load balancers of the same application are managed through this information. At the same time, a key model data also includes the listener information, which includes Figure 4 shown.
[0111] As another optional implementation method, the load balancing model can be constructed by:
[0112] When the target service is a service that has not been processed by multiple cloud platforms, configure the second load balancing information, wherein the second load balancing information includes the name, label and listener information of the load balancer;
[0113] A load balancing model is created based on the second load balancing information.
[0114] In combination with the description in the above embodiment, it can be seen that in the case where a service is an unknown service that is not processed by N data platforms, Figure 4 The second method shown is used to create a load balancing model.
[0115] Among them, the second method is to manually configure parameter information such as the name, label, listener information and other attributes of the load balancer according to the parameters of the application, and build a load balancing model according to the parameter information of the configuration number.
[0116] That is to say, whether the load balancing model is constructed using method one or method two, the data information (which can also be understood as model data) is the same, but the source of the data information is different. The former is directly obtained from the existing load balancer, and the latter is the data parameters obtained by manual configuration.
[0117] The model data specifically includes the basic information of the load balancer, such as the name and label of the load balancer. Different load balancers of the same application are managed through this information. At the same time, a key model data is also included, which is the listener information. The specific content is as follows: Figure 4 shown.
[0118] After the load balancing model is built, the model is provided to the cross-cloud information backup module, which combines the information of multiple clouds to generate complete configuration content, and then provides it to the configuration management module for distribution of the configuration content.
[0119] By adopting the above method, the constructed load balancing model can be used to collect the information of load balancers on multiple cloud platforms. When the load balancer information needs to be modified, it can be modified with the help of the load balancing model, which provides a favorable basis for automatically synchronizing the load balancing information of multiple cloud platforms.
[0120] As an optional example, the load balancing configuration information is generated based on the original load balancing information and the modified set of load balancing information, including:
[0121] Obtaining a set of original load balancing information on the first cloud platform from the original load balancing information;
[0122] Find the configuration differences between an original set of load balancing information and a modified set of load balancing information;
[0123] Generate load balancing configuration information based on configuration differences.
[0124] For example, suppose that the load balancing model Figure 3 The number of listeners mounted on the load balancer A2 shown in the figure increases from 3 to 4, for example, listener 10 is added.
[0125] Through the cross-cloud information mutual backup module, the load balancing information in the load balancing model is extracted, and three sets of original load balancing information are directly obtained from cloud platform A, cloud platform B, and cloud platform C through the cross-cloud information mutual backup module. The three sets of original load balancing information are compared with the three sets of load balancing information extracted from the model to determine the configuration difference between the two (information about the listener 10 is added to the model). According to the configuration difference between the two, the load balancing configuration information is generated.
[0126] After generating the load balancing configuration information through the cross-cloud information mutual backup module, you can, but are not limited to, Figure 5 The configuration management module shown sends and synchronizes the load balancing configuration information to the three cloud platforms.
[0127] Specifically, Figure 5 As shown, the configuration management module needs to adapt the load balancer-related configurations of each cloud platform in multiple cloud platforms, and generate corresponding configuration items (which can also be understood as modified load balancing information) based on the model.
[0128] For the configuration differences (load balancing configuration information) generated by the cross-cloud information mutual backup module, and for the synchronization of the configuration content of the full configuration, the cloud platform SDK can be directly called through the generated configuration items to achieve the synchronization of the configuration content. The load balancer configuration content in the gray state does not need to be processed.
[0129] It should be noted that the load balancer in the full state mentioned above means that when the configuration difference indication information changes, the configuration difference is synchronized to the load balancer in the full state. Figure 5 On the load balancer in cloud platform A, cloud platform B and cloud platform C shown.
[0130] In addition, the cross-cloud mutual backup IP generated by the cross-cloud information mutual backup module is also a configuration item. This item is different for load balancers on different cloud platforms, but it is consistent on the same cloud platform. In other words, on the same cloud, the same business, and the same model of load balancer use the same mutual backup IP, which comes from the mutual backup cloud. It is precisely because the configuration management module integrates the load balancing information of multiple cloud platforms that the mutual backup IP can be obtained.
[0131] As an optional example, the above method further includes:
[0132] In response to resolving the domain name of the target service, obtaining a first virtual IP address of the first load balancer on the second cloud platform, where j is a positive integer greater than or equal to 1 and less than or equal to N;
[0133] Forwarding the service request in the target service to the backend server group of the first load balancer through the first virtual IP address, wherein the first virtual IP address has a binding relationship with the backend server group of the first load balancer;
[0134] When an abnormality occurs in the backend server group of the first load balancer, the business request is forwarded to the backend server group of the second load balancer on the third cloud platform through the first load balancer, wherein the second virtual IP address of the second load balancer is the cross-cloud mutual backup IP address of the first load balancer, and the multiple cloud platforms include the first cloud platform, the second cloud platform and the third cloud platform.
[0135] It is easy to understand that the process of traffic (for example, business requests) going through the DNS resolution of the business domain name has a certain effective time. In the prior art, if a problem is found in a DNS resolution address (load balancing IP), the target resolution record will be adjusted to remove the abnormal node or point to other nodes. It usually takes a few minutes to 48 hours to take full effect. During this time, the traffic that is still resolved to the abnormal load balance will be abnormal. Until the resolution is completely completed or the existing load balancing traffic forwarding is restored to normal, the traffic will return to normal.
[0136] That is to say, using the methods in the prior art, when a problem occurs in the backend server group mounted on the load balancer, it is necessary to remove the current load balancing IP by adjusting the DNS resolution record on the client side before the traffic can be forwarded to the cross-cloud hot standby load balancing IP, which increases the delay time of the network traffic processing process and increases the complexity of the interaction process between the client and the cloud platform.
[0137] In the embodiment of the present application, a solution for implementing cross-cloud mutual backup IP on a cloud platform is proposed. Figure 3 The cloud platform module, model building module and configuration management module shown are all completed, and the load balancer in the cross-cloud information lake mutual backup module already has a cross-cloud mutual backup IP.
[0138] like Figure 6 As shown in the figure, under normal circumstances, when traffic just enters the domain name resolution system, it is resolved to the public IP of the load balancer according to the domain name resolution. When a problem occurs in the backend service group B of the load balancer S2, the load balancer S2 will forward the traffic to the cross-cloud mutual backup IP load balancer S3, so that the backup scheduling of traffic is directly realized without adjusting the domain name resolution. In other words, the traffic is forwarded directly on the load balancer side without the need for client participation.
[0139] That is to say, through the load balancing primary and backup allocation strategy formulated in the embodiment of the present application, one or more cross-cloud backup load balancing IPs are provided for the load balancing of each cloud platform. When a problem occurs in the back-end server group mounted by the load balancing, there is no need to remove the current load balancing IP by adjusting the DNS resolution record. Instead, on the load balancing of the current cloud, the traffic is forwarded from the current cloud load balancer to the back-end server group of the current cloud, and is changed to be directly forwarded to the cross-cloud hot standby load balancing IP. The effect achieved in this way is that when the domain name resolution adjustment is too late to take effect, the backup scheduling of the traffic is realized, and the traffic security under the abnormality of the back-end of the load balancing master node is guaranteed.
[0140] It should be noted that one virtual IP can be bound to multiple cloud servers at the same time and used with high-availability software.
[0141] As an optional implementation, when an abnormality occurs in the backend server group of the first load balancer, before the service request is forwarded to the backend server group of the second load balancer on the third cloud platform through the first load balancer, the method further includes:
[0142] Sending a probe request to the second virtual IP address using the target protocol of the target listener mounted by the first load balancer;
[0143] When the target server pointed to by the second virtual IP address responds to the detection request, it is determined that the second virtual IP address is in an available state.
[0144] That is to say, before implementing the backup scheduling of the above traffic, the current load balancer S2 performs a health check on the mutual backup IP (load balancer S3), mainly using the protocol and port of the current listener to detect the mutual backup IP to prevent abnormal situations in the mutual backup IP of a mutual backup cloud at the same time.
[0145] The purpose of using the listener's protocol and port to detect the backup IP is usually to ensure high availability and failover capabilities of the business. In the network architecture, the listener is used to monitor specific protocols and ports in order to detect and respond to inbound traffic.
[0146] The target server pointed to by the second virtual IP address may be, but is not limited to, a single cloud server, or may be multiple cloud servers.
[0147] Typically, IP addresses conform to a standard format and range. For example, an IPv4 address is four dotted decimal numbers (for example, 192.168.1.1), each number ranging from 0 to 255, and an IPv6 address consists of eight groups of hexadecimal numbers.
[0148] Since IP addresses are unique in the network, network communication problems caused by IP address conflicts can be avoided only when there is no conflict with the IP addresses of other devices. This is why a probe request is required to the backup IP address before forwarding traffic from the current load balancer to the backup IP.
[0149] Normally, the default mutual backup IP is cross-cloud, not the load balancing S1 of the current cloud. This is because in most cases, if the backend server group B is not connected, it is very likely a problem with the backend cloud server, and the current cloud's load balancing S1 ultimately points to the same batch of cloud servers, so problems will still occur. Only cross-cloud mutual backup can achieve high availability.
[0150] If the load balancer is an intranet IP, use other load balancers on the current cloud platform as backup IPs to solve the problem of backend server group anomalies.
[0151] Through the above-mentioned cross-cloud mutual backup traffic scheduling method, high availability of the load balancing layer is achieved, and traffic security is better guaranteed. Under the existing technology, the switching of load balancing mainly relies on DNS adjustment and resolution, which does not have the characteristics of high availability. The technical solution of this application realizes this feature through cross-cloud mutual backup, which more effectively guarantees the overall security of traffic, fully utilizes the advantages of multi-cloud, and truly achieves the effect of cross-cloud traffic mutual backup.
[0152] In a preferred embodiment, application A is deployed on two cloud platforms, cloud platform 1 and cloud platform 2. It needs to provide services to the external network. Four load balancers are deployed on cloud platform 1 and 10 load balancers are deployed on cloud platform 2. At the same time, two sets of domain names a.com and b.com are configured, pointing to load balancers on different clouds respectively. At this time, the SSL certificate needs to be replaced, and the cloud server on cloud platform 1 is about to become abnormal. Traffic scheduling of cross-cloud mutual backup IP can be achieved through but not limited to the following steps:
[0153] 1) The operation and maintenance personnel selected a load balancer as the model data and built an application load balancing model;
[0154] 2) When the load balancing configuration changes, for example, the SSL certificate of the HTTPS listener is about to expire, all load balancers need to be replaced uniformly. At this time, by adjusting the listener certificate of the load balancing model, and then replacing the SSL certificates of all related load balancers on the cloud platform through the configuration synchronization module, the purpose of configuration change is quickly achieved. You only need to adjust the load balancer model to make full adjustments;
[0155] 3) For the load balancer on cloud platform 1, two load balancers on cloud platform 2 can be selected as mutual backup IPs;
[0156] 4) When the backend server group of the load balancer S1 on cloud platform 1 is abnormal, or a batch of backend servers fail, the traffic forwarded by the load balancer S1 to the backend will be abnormal. At this time, S1 will automatically forward the traffic to the two backup IPs provided by cloud platform 2, and there is no need to wait for the traffic of domain name a.com to be adjusted and resolved to the load balancer on cloud platform 2;
[0157] 5) When cloud platform 2 detects that the cloud server on the current cloud has recovered, load balancing S1 no longer uses the mutual backup IP, but continues to complete normal traffic forwarding through the current load balancing listener, with automatic scheduling throughout the process;
[0158] Through the above 1) to 5), not only the domain name resolution switching process is skipped, but also the current load balancer has self-healing capabilities, which efficiently and safely ensures traffic security.
[0159] In addition, through the method for processing load balancing configuration information provided in the present application, it is also possible to improve operation and maintenance efficiency and security. Compared with the traditional cloud load balancer machine configuration, which is manually maintained by developers, such as the creation of multiple load balancers for the same business, or the annual replacement of https listener certificates, etc., all these matters are manually performed, which takes a lot of time and is prone to configuration errors. The technical solution in the embodiment of the present application can be fully automatic, significantly improving operation and maintenance efficiency.
[0160] It should be noted that, for the aforementioned method embodiments, for the sake of simplicity, they are all expressed as a series of action combinations, but those skilled in the art should be aware that the present application is not limited by the described order of actions, because according to the present application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily required by the present application.
[0161] According to another aspect of the embodiment of the present application, there is also provided Figure 7A device for processing load balancing configuration information is shown, the device comprising: a first acquisition unit 702, used to obtain N groups of original load balancing information of N groups of load balancers configured for target services on N cloud platforms respectively, wherein N is a positive integer greater than or equal to 2; a modification unit 704, used to modify the i-th group of load balancing information of the i-th group of load balancers on the i-th cloud platform in a pre-created load balancing model to obtain a modified i-th group of load balancing information, wherein i is a positive integer greater than or equal to 1 and less than or equal to N; a first processing unit 706, used to generate load balancing configuration information based on the N groups of original load balancing information and the modified i-th group of load balancing information; a second processing unit 708, used to synchronize the load balancing configuration information to the i-th group of load balancers on each of the N cloud platforms.
[0162] Optionally, the above-mentioned modification unit 704 includes: an adding module, used to add a load balancer in the i-th group of load balancers on the i-th cloud platform; a deleting module, used to delete at least part of the load balancers in the i-th group of load balancers on the i-th cloud platform; and an updating module, used to update the attribute information of at least part of the load balancers in the i-th group of load balancers.
[0163] Optionally, the above-mentioned modification unit 704 includes: a first acquisition module, used to obtain a set of load balancing information from a load balancing model, wherein the set of load balancing information includes listener information of a set of listeners mounted on a load balancer; a first modification module, used to modify the listener information of a set of listeners to obtain a modified set of load balancing information, wherein a set of listeners is used to forward network traffic according to predetermined rules, and the network traffic includes multiple business requests in the target business.
[0164] Optionally, the above-mentioned first modification module includes: an adding submodule, used to increase the number of listeners in the i-th group of listeners; a deleting submodule, used to delete at least some of the listeners in the i-th group of listeners; and an updating submodule, used to update the configuration information of at least some of the listeners in the i-th group of listeners.
[0165] Optionally, the above-mentioned device also includes: a third processing unit, used to randomly select a load balancer from multiple groups of load balancers when the target business is a business pre-processed by multiple cloud platforms; a second acquisition unit, used to obtain first load balancing information of a load balancer, wherein the first load balancing information includes the name, label and listener information of the load balancer; a first creation unit, used to create a load balancing model based on the first load balancing information.
[0166] Optionally, the above-mentioned device also includes: a configuration unit, used to configure second load balancing information when the target business is a business that has not been processed by multiple cloud platforms, wherein the second load balancing information includes the name, label and listener information of the load balancer; a second creation unit, used to create a load balancing model based on the second load balancing information.
[0167] Optionally, the above-mentioned first processing unit 706 includes: a second acquisition module, used to obtain a set of original load balancing information on the first cloud platform from the original load balancing information; a search module, used to find the configuration difference between a set of original load balancing information and a modified set of load balancing information; a first processing module, used to generate load balancing configuration information based on the configuration difference.
[0168] Optionally, the above-mentioned device also includes: a third acquisition unit, used to obtain the first virtual IP address of the first load balancer on the second cloud platform in response to resolving the domain name of the target business; a first forwarding unit, used to forward the service request in the target business to the back-end server group of the first load balancer through the first virtual IP address, wherein the first virtual IP address has a binding relationship with the back-end server group of the first load balancer; a second forwarding unit, used to forward the service request to the back-end server group of the second load balancer on the third cloud platform through the first load balancer when an abnormality occurs in the back-end server group of the first load balancer, wherein the second virtual IP address of the second load balancer is the cross-cloud mutual backup IP address of the first load balancer, and the multiple cloud platforms include the first cloud platform, the second cloud platform and the third cloud platform.
[0169] Optionally, the above-mentioned device also includes: a sending unit, used to send a probe request to the second virtual IP address using the target protocol of the target listener mounted on the first load balancer; and a fourth processing unit, used to determine that the second virtual IP address is in an available state when the target server pointed to by the second virtual IP address responds to the probe request.
[0170] It should be noted that the embodiment of the device for processing load balancing configuration information here can refer to the embodiment of the method for processing load balancing configuration information mentioned above, which will not be described in detail here.
[0171] According to another aspect of the embodiment of the present application, an electronic device for implementing the above-mentioned method for processing load balancing configuration information is also provided. The electronic device may be Figure 1 The target terminal or server shown in FIG. This embodiment is described by taking the electronic device as the target terminal as an example. Figure 8As shown, the electronic device includes a memory 802 and a processor 804. The memory 802 stores a computer program, and the processor 804 is configured to execute the steps in any of the above method embodiments through the computer program.
[0172] Optionally, in this embodiment, the electronic device may be located in at least one network device among a plurality of network devices of a computer network.
[0173] Optionally, in this embodiment, the processor may be configured to perform the following steps through a computer program:
[0174] S1, obtaining original load balancing information of multiple groups of load balancers configured for target services on multiple cloud platforms;
[0175] S2, obtaining a modified set of load balancing information by modifying a set of load balancing information of a set of load balancers on the first cloud platform in the pre-created load balancing model;
[0176] S3, generating load balancing configuration information based on the original load balancing information and the modified set of load balancing information;
[0177] S4, synchronizing the load balancing configuration information to the load balancer on each cloud platform in the multiple cloud platforms.
[0178] Alternatively, a person skilled in the art may understand that: Figure 8 The structure shown is for illustration only. Figure 8 The electronic device and the electronic equipment described above are not limited in structure. Figure 8 More or fewer components (such as network interfaces, etc.) as shown in, or with Figure 8 Different configurations shown.
[0179] Among them, the memory 802 can be used to store software programs and modules, such as the program instructions / modules corresponding to the method and device for processing the load balancing configuration information in the embodiment of the present application. The processor 804 executes various functional applications and data processing by running the software programs and modules stored in the memory 802, that is, realizing the above-mentioned method for processing the load balancing configuration information. The memory 802 may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 802 may further include a memory remotely arranged relative to the processor 804, and these remote memories may be connected to the terminal via a network. Examples of the above-mentioned networks include but are not limited to the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof. Among them, the memory 802 can be specifically but not limited to being used to store N groups of original load balancing information and load balancing configuration information, etc. As an example, such as Figure 8 As shown, the memory 802 may include, but is not limited to, the first acquisition unit 702, the modification unit 704, the first processing unit 706, and the second processing unit 708 in the load balancing configuration information processing device. In addition, other module units in the load balancing configuration information processing device may also be included but are not limited to, which will not be repeated in this example.
[0180] Optionally, the transmission device 806 is used to receive or send data via a network. Specific examples of the network may include wired networks and wireless networks. In one example, the transmission device 806 includes a network adapter (Network Interface Controller, NIC), which can be connected to other network devices and routers via a network cable so as to communicate with the Internet or a local area network. In one example, the transmission device 806 is a radio frequency (RF) module, which is used to communicate with the Internet wirelessly.
[0181] In addition, the electronic device further includes: a display 808 for displaying a processing screen of the target service and a processing result screen, etc.; and a connection bus 810 for connecting various module components in the electronic device.
[0182] In other embodiments, the target terminal or server may be a node in a distributed system, wherein the distributed system may be a blockchain system, and the blockchain system may be a distributed system formed by connecting the multiple nodes through network communication. The nodes may form a point-to-point network, and any form of computing device, such as a server, a target terminal or other electronic device, may become a node in the blockchain system by joining the point-to-point network.
[0183] According to another aspect of the present application, a computer program product or computer program is provided, the computer program product or computer program includes computer instructions, and the computer instructions are stored in a computer-readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the method for processing the load balancing configuration information provided in various optional implementations of the above-mentioned server verification processing and other aspects, wherein the computer program is configured to execute the steps of any of the above-mentioned method embodiments when running.
[0184] Optionally, in this embodiment, the computer-readable storage medium may be configured to store a computer program for performing the following steps:
[0185] S1, obtaining original load balancing information of multiple groups of load balancers configured for target services on multiple cloud platforms;
[0186] S2, obtaining a modified set of load balancing information by modifying a set of load balancing information of a set of load balancers on the first cloud platform in the pre-created load balancing model;
[0187] S3, generating load balancing configuration information based on the original load balancing information and the modified set of load balancing information;
[0188] S4, synchronizing the load balancing configuration information to the load balancer on each cloud platform in the multiple cloud platforms.
[0189] Optionally, in the embodiments of the present application, the term "module" or "unit" refers to a computer program or a part of a computer program with a predetermined function, and works together with other related parts to achieve a predetermined goal, and can be implemented in whole or in part by using software, hardware (such as processing circuits or memories), or a combination thereof. Similarly, a processor (or multiple processors or memories) can be used to implement one or more modules or units. In addition, each module or unit can be part of an overall module or unit that includes the function of the module or unit.
[0190] Optionally, in this embodiment, a person of ordinary skill in the art may understand that all or part of the steps in the various methods of the above embodiments may be completed by instructing the hardware related to the target terminal through a program, and the program may be stored in a computer-readable storage medium, and the storage medium may include: a flash drive, a read-only memory (ROM), a random access memory (RAM), a disk or an optical disk, etc.
[0191] The serial numbers of the above-mentioned embodiments of the present application are for description only and do not represent the advantages or disadvantages of the embodiments.
[0192] If the integrated units in the above embodiments are implemented in the form of software functional units and sold or used as independent products, they can be stored in the above computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for enabling one or more computer devices (which can be personal computers, servers or network devices, etc.) to execute all or part of the steps of the methods of each embodiment of the present application.
[0193] In the above embodiments of the present application, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, please refer to the relevant description of other embodiments.
[0194] In the several embodiments provided in the present application, it should be understood that the disclosed client can be implemented in other ways. Among them, the device embodiments described above are only schematic, for example, the division of units is only a logical function division, and there may be other division methods in actual implementation, for example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of units or modules, which can be electrical or other forms.
[0195] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0196] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0197] The above are only preferred implementations of the present application. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present application. These improvements and modifications should also be regarded as the scope of protection of the present application.
Claims
1. A method for processing load balancing configuration information, characterized in that: include: Obtaining original load balancing information of multiple groups of load balancers configured for target services on multiple cloud platforms; By modifying a set of load balancing information of a set of load balancers on the first cloud platform in the pre-created load balancing model, a modified set of load balancing information is obtained; Generate load balancing configuration information based on the original load balancing information and the modified set of load balancing information; The load balancing configuration information is synchronized to the load balancer on each of the multiple cloud platforms.
2. The method according to claim 1, characterized in that The modified set of load balancing information obtained by modifying a set of load balancing information of a set of load balancers on the first cloud platform in the pre-created load balancing model includes at least one of the following: adding a load balancer in the set of load balancers on the first cloud platform; Deleting at least some of the load balancers in the set of load balancers on the first cloud platform; Update attribute information of at least part of the load balancers in the group of load balancers.
3. The method according to claim 1, characterized in that The modified set of load balancing information is obtained by modifying a set of load balancing information of a set of load balancers on the first cloud platform in the pre-created load balancing model, including: Acquire the set of load balancing information from the load balancing model, wherein the set of load balancing information includes listener information of a set of listeners mounted on the set of load balancers; The modified set of load balancing information is obtained by modifying the listener information of the set of listeners, wherein the set of listeners is used to forward network traffic according to a predetermined rule, and the network traffic includes multiple service requests in the target service.
4. The method according to claim 3, characterized in that The step of modifying the listener information of the group of listeners to obtain the modified set of load balancing information includes at least one of the following: increasing a number of listeners in the set of listeners; Deleting at least some of the listeners in the set of listeners; The configuration information of at least part of the listeners in the set of listeners is updated.
5. The method according to claim 1, characterized in that Before modifying a set of load balancing information of a set of load balancers on the first cloud platform in the pre-created load balancing model to obtain a modified set of load balancing information, the method further includes: In a case where the target service is a service pre-processed by the multiple cloud platforms, randomly selecting a load balancer from the multiple groups of load balancers; Obtaining first load balancing information of the load balancer, wherein the first load balancing information includes a name, a label, and listener information of the load balancer; The load balancing model is created based on the first load balancing information.
6. The method according to claim 1, characterized in that Before modifying a set of load balancing information of a set of load balancers on the first cloud platform in the pre-created load balancing model to obtain a modified set of load balancing information, the method further includes: When the target service is a service that has not been processed by the multiple cloud platforms, configure second load balancing information, wherein the second load balancing information includes the name, label, and listener information of the load balancer; The load balancing model is created based on the second load balancing information.
7. The method according to claim 1, characterized in that The generating load balancing configuration information based on the original load balancing information and the modified set of load balancing information includes: Acquire a set of original load balancing information on the first cloud platform from the original load balancing information; Finding a configuration difference between the set of original load balancing information and the set of modified load balancing information; Based on the configuration difference, the load balancing configuration information is generated.
8. The method according to any one of claims 1 to 7, characterized in that The method further comprises: In response to resolving the domain name of the target service, obtaining a first virtual IP address of a first load balancer on the second cloud platform; Forwarding the service request in the target service to the backend server group of the first load balancer through the first virtual IP address, wherein the first virtual IP address has a binding relationship with the backend server group of the first load balancer; When an abnormality occurs in the backend server group of the first load balancer, the service request is forwarded to the backend server group of the second load balancer on the third cloud platform through the first load balancer, wherein the second virtual IP address of the second load balancer is the cross-cloud mutual backup IP address of the first load balancer, and the multiple cloud platforms include the first cloud platform, the second cloud platform and the third cloud platform.
9. The method according to claim 8, characterized in that In the case that an abnormality occurs in the backend server group of the first load balancer, before forwarding the service request to the backend server group of the second load balancer on the third cloud platform through the first load balancer, the method further includes: Sending a probe request to the second virtual IP address using the target protocol of the target listener mounted by the first load balancer; When the target server pointed to by the second virtual IP address responds to the detection request, it is determined that the second virtual IP address is in an available state.
10. A device for processing load balancing configuration information, characterized in that: include: A first acquisition unit is used to acquire original load balancing information of multiple groups of load balancers configured for target services on multiple cloud platforms respectively; A modification unit, configured to obtain a modified set of load balancing information by modifying a set of load balancing information of a set of load balancers on the first cloud platform in a pre-created load balancing model; A first processing unit, configured to generate load balancing configuration information based on the original load balancing information and the modified set of load balancing information; The second processing unit is used to synchronize the load balancing configuration information to the load balancer on each cloud platform of the multiple cloud platforms.
11. A computer-readable storage medium, characterized in that: The computer-readable storage medium includes a stored program, wherein the program can be executed by a terminal device or a computer to execute the method as claimed in any one of claims 1 to 9.
12. An electronic device comprising a memory and a processor, characterized in that: A computer program is stored in the memory, and the processor is configured to execute the method according to any one of claims 1 to 9 through the computer program.