Method for determining service state of data center, resource scheduling method and device
By acquiring data from the data center's status dimension to calculate VIP and data center service quality scores, this solves the problem of existing technologies being unable to accurately identify the availability status of data center services, and enables more efficient access and resource scheduling.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHINA MOBILE (SUZHOU) SOFTWARE TECH CO LTD
- Filing Date
- 2022-10-13
- Publication Date
- 2026-04-21
AI Technical Summary
Existing technologies cannot accurately identify the service availability status of data centers, leading to problems such as excessive SLB bandwidth utilization, excessive CPU utilization, and poor Internet link status, which affect user experience and data center health.
By acquiring status-dimensional data from the data center, such as the availability of backend service clusters, SLB bandwidth utilization, SLB memory utilization, CPU utilization, number of sessions, and data center Internet link status, the service quality score of VIPs and the data center is calculated, and scheduling is carried out by comprehensively considering multiple factors.
Accurately identify the service availability status of data centers to improve access efficiency, and further optimize access efficiency by selecting the operator closest to the user.
Smart Images

Figure CN116264559B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of cloud computing technology, specifically to a method for determining the service status of a data center, a device for determining the service status of a data center, a method for scheduling data center resources, a device for scheduling data center resources, and a computing device. Background Technology
[0002] Currently, the solution for determining the service status of multiple data centers is achieved through the joint implementation of GSLB and SLB. User requests first go to the local Domain Name System (DNS), which forwards the request to the domain name service provider. The domain name service provider points the NS record of the domain name to the GSLB device with intelligent DNS resolution function. GSLB devices are configured in multiple data centers. The domain name service provider returns the GSLB address through polling. GSLB detects the health check status of the backend SLB and returns the VIP with normal status for users to access.
[0003] Existing technical solutions typically allocate customers to corresponding data centers based on their geographical location, or use TCP / HTTP / HTTPS protocols to probe the connectivity of a specified port on the backend SLB to determine the SLB's status and return a VIP with a good status. However, in actual operation, the service status of a data center is affected by various factors, and the inventors found that existing technical solutions cannot accurately identify the service availability status of a data center. Summary of the Invention
[0004] In view of the above problems, embodiments of the present invention provide a method for determining the service status of a data center, a device for determining the service status of a data center, a method for scheduling data center resources, a device for scheduling data center resources, and a computing device, to solve the problem that the existing technology cannot accurately identify the service availability status of a data center.
[0005] According to one aspect of the present invention, a method for determining the service status of a data center is provided, the method being applied to a GSLB device in a data center, the method comprising:
[0006] Obtain status dimension data of the data center; the status dimension data includes at least one of the following: availability of backend service cluster, SLB bandwidth utilization, SLB memory utilization, CPU utilization, number of sessions, and data center Internet link status.
[0007] The service quality scores of multiple VIPs in the data center are determined based on the status dimension data.
[0008] The service quality score of the data center is determined based on the service quality scores of the multiple VIPs.
[0009] According to another aspect of the present invention, a data center resource scheduling method is provided, the method being applied to a data center cluster, the data center cluster including multiple data centers: the GSLB device of any one data center acts as a client, and the GSLB devices of the remaining data centers act as servers; the method includes:
[0010] The client obtains the service quality scores of each of the multiple data centers and the service quality scores of multiple VIPs in each data center; for any data center, the service quality score of the data center and the service quality scores of multiple VIPs in the data center are obtained based on the above-described method for determining the service status of the data center.
[0011] The client schedules each data center and VIP based on the service quality score of each data center.
[0012] According to another aspect of the present invention, a data center service status determination apparatus is provided, applied to a GSLB device in a data center, the apparatus comprising:
[0013] The data acquisition module is used to acquire status dimension data of the data center; the status dimension data includes at least one of the following: availability of backend service cluster, SLB bandwidth utilization, SLB memory utilization, CPU utilization, number of sessions, and data center Internet link status.
[0014] The VIP scoring module is used to determine the service quality scores of multiple VIPs in the data center based on the status dimension data.
[0015] The data center scoring module is used to determine the service quality score of the data center based on the service quality scores of the multiple VIPs.
[0016] According to another aspect of the present invention, a data center resource scheduling apparatus is provided, applied to a data center cluster, the data center cluster including multiple data centers, wherein the GSLB device of any one data center acts as a client, and the GSLB devices of the remaining data centers act as servers, the apparatus comprising:
[0017] The server module is used to obtain the service quality scores of each of the multiple data centers corresponding to its multiple GSLB devices, as well as the service quality scores of multiple VIPs in each data center;
[0018] The client module is used to obtain the service quality scores of itself and the multiple data centers corresponding to the server, as well as the service quality scores of multiple VIPs in each data center, and to schedule each data center and VIP according to the service quality scores of each data center; for any data center, the service quality score of the data center and the service quality scores of the multiple VIPs in the data center are obtained based on the above-mentioned method for determining the service status of a data center.
[0019] According to another aspect of the present invention, a computing device is provided, characterized in that it includes: a processor, a memory, a communication interface, and a communication bus, wherein the processor, the memory, and the communication interface communicate with each other through the communication bus;
[0020] The memory is used to store at least one executable instruction, which causes the processor to perform the steps of the above-described method for determining the service status of a data center, or to perform the steps of the above-described method for scheduling data center resources.
[0021] By comprehensively considering status dimension data such as the availability of backend service clusters, SLB bandwidth utilization, SLB memory and CPU utilization, number of sessions, and data center Internet link status, this invention can accurately identify the availability status of services in the data center.
[0022] Furthermore, by summarizing and analyzing the status dimension data to schedule data centers and VIPs, the system can return the optimal data center and VIP when a user makes an access request, thereby improving access efficiency.
[0023] Furthermore, by switching carriers, the system prioritizes the carrier closest to the user when returning to the optimal data center and VIP, thereby further improving access efficiency.
[0024] The above description is merely an overview of the technical solutions of the embodiments of the present invention. In order to better understand the technical means of the embodiments of the present invention and to implement them in accordance with the contents of the specification, and to make the above and other objects, features and advantages of the embodiments of the present invention more apparent and understandable, specific embodiments of the present invention are described below. Attached Figure Description
[0025] The accompanying drawings are for illustrative purposes only and are not intended to limit the invention. Furthermore, the same reference numerals denote the same parts throughout the drawings. In the drawings:
[0026] Figure 1 A schematic diagram of a data center structure provided in an embodiment of the present invention is shown;
[0027] Figure 2 A flowchart illustrating the method for determining the status of data center services provided in an embodiment of the present invention is shown.
[0028] Figure 3 A flowchart illustrating a data center resource scheduling method according to another embodiment of the present invention is shown;
[0029] Figure 4 A schematic diagram of the structure of the data center service status determination device provided in an embodiment of the present invention is shown;
[0030] Figure 5 A schematic diagram of the structure of a data center resource scheduling device provided in another embodiment of the present invention is shown;
[0031] Figure 6 This diagram illustrates the structure of a data center service status determination device provided in an embodiment of the present invention.
[0032] Figure 7 A schematic diagram of the structure of a data center resource scheduling device provided in another embodiment of the present invention is shown. Detailed Implementation
[0033] Exemplary embodiments of the invention will now be described in more detail with reference to the accompanying drawings. Although exemplary embodiments of the invention are shown in the drawings, it should be understood that the invention may be implemented in various forms and should not be limited to the embodiments set forth herein.
[0034] Existing technical solutions typically allocate users to corresponding data centers based on their geographical location, or use TCP / HTTP / HTTPS protocols to probe the connectivity of specified ports on the backend SLB (Server Load Balancer) to determine its health status, thus returning a healthy VIP (Virtual IP Address). However, in actual operation, service health is affected by various factors, including the availability of the backend service cluster, SLB bandwidth utilization, SLB memory utilization, CPU utilization, number of sessions, and Internet link status. The inventors have found that existing methods for determining data center service status lack comprehensive consideration of these factors, failing to accurately identify the availability of services within the data center. This may exacerbate issues such as excessively high SLB bandwidth utilization, excessively high CPU utilization, and poor Internet link status, negatively impacting user experience and data center health. In view of the above problems, this invention provides a method, resource scheduling method, and apparatus for determining data center service status to solve the problem of inaccurate identification of data center service availability status in existing technologies.
[0035] Figure 1 This illustration shows a data center structure provided by an embodiment of the present invention. In this embodiment, a single data center includes a GSLB (Global Server Load Balancer) device, operator gateway information, an SLB server composed of multiple SLBs, agents corresponding to the multiple SLBs, and multiple backend service clusters. The multiple SLBs collect the health status of the backend service clusters from the multiple backend service clusters and calculate the availability of the backend service clusters based on the health status. The GSLB device collects status dimension data, including the availability of the backend service clusters, from the multiple SLBs through multiple agents, and checks the reachability of each operator's gateway by probing the gateway information of different operators, thereby obtaining the Internet link status of each operator's gateway.
[0036] In another embodiment of the present invention, the data center cluster consists of multiple data centers. The GSLB device of any one data center acts as a client, and the GSLB devices of the other data centers act as servers. Each GSLB device is deployed with an agent. The client collects data information from the server through the agent and completes configuration synchronization.
[0037] Figure 2 A flowchart illustrating a method for determining the service status of a data center according to an embodiment of the present invention is shown. This method is performed by the GSLB device of the data center. Figure 2 As shown, the method includes the following steps:
[0038] Step 110: Obtain the status dimension data of the data center; the status dimension data includes at least one of the following: availability of the backend service cluster, SLB bandwidth utilization, SLB memory utilization, CPU utilization, number of sessions, and data center Internet link status.
[0039] The availability of the backend service cluster is achieved by collecting the backend service status from the backend service cluster via SLB, such as... Figure 1 As shown, Figure 1 The diagram illustrates a data center structure provided in an embodiment of the present invention. Specifically, the SLB probes the health status of the backend service cluster using any one of the protocols TCP, HTTP, HTTPS, and ICMP, and calculates the availability of the backend service cluster based on the probe results. The availability of the backend service cluster is specifically the availability of the backend service corresponding to each VIP.
[0040] Specifically, obtaining the status dimension data of the data center includes: obtaining status dimension data from the SLB server, wherein the SLB server includes multiple SLBs, each SLB deploying an agent, and supporting GSLB devices to collect status dimension data including the availability of the backend service cluster, SLB bandwidth utilization, SLB memory and CPU utilization, and the number of sessions from the SLB server via the HTTP protocol; specifically, obtaining the status dimension data from the SLB is achieved by obtaining the status dimension data from each SLB through each agent.
[0041] GSLB devices detect gateway information from different operators, check the reachability of each operator's gateway, and obtain the Internet link status of each operator's gateway.
[0042] Step 120: Determine the service quality scores of multiple VIPs in the data center based on the status dimension data.
[0043] The status dimension data determines the service quality scores of multiple VIPs in the data center, including: determining the service quality scores of the multiple VIPs based on the number of ports enabled by the VIP, the byte bandwidth score, packet bandwidth score, session score, CPU usage score, and memory usage score corresponding to each port; if the availability of the backend service cluster is less than a preset availability threshold, the service quality score of the corresponding VIP is set to zero; if the Internet link status of the data center is detected to be unavailable, the service quality score of the corresponding VIP is set to zero.
[0044] Specifically, after acquiring the status dimension data of the data center, the GSLB device performs calculations from multiple dimensions such as traffic bandwidth, number of sessions, CPU utilization, memory utilization, backend service availability, and Internet link status.
[0045] The traffic bandwidth includes byte bandwidth and packet bandwidth.
[0046] In an alternative approach, the byte bandwidth fraction is calculated using the following formula:
[0047]
[0048] Among them, W inbyte The weight representing the byte bandwidth, TH inbyte SP represents the threshold for byte bandwidth. inbyte The sampled value representing the byte bandwidth is understood to be pre-set and modifiable in terms of its weight and threshold.
[0049] In an alternative approach, the packet bandwidth score is calculated using the following formula:
[0050]
[0051] Among them, W inpackets The weight representing packet bandwidth, TH inpackets SP represents the threshold for packet bandwidth. inpackets The sampled value representing the packet bandwidth is understood to be pre-set and modifiable, and it is understood that the weight and threshold of the packet bandwidth can be preset and modified.
[0052] In an alternative approach, the session score is calculated using the following formula:
[0053]
[0054] Among them, W session TH represents the weight of the session. session The threshold for a session, SP session The sampled value represents the packet session. It is understood that the session weight and session threshold can be preset and modified.
[0055] In an alternative approach, the CPU utilization score is calculated using the following formula:
[0056]
[0057] Among them, W cpu SP represents the weight of CPU utilization. cpu The sampled value representing CPU utilization can be understood to be pre-set and modifiable in terms of weight.
[0058] In an alternative approach, the memory utilization rate is calculated using the following formula:
[0059]
[0060] Among them, W memory SP represents the weights of memory utilization. memory The sampled value representing memory utilization can be understood to be pre-set and modifiable in terms of its weight.
[0061] The sum of all the above weights is 1, as shown in the following formula:
[0062] W inbyte +W inpackets +W session +W cpu +Wmemory =1;
[0063] The VIP's service quality score is calculated using the following formula:
[0064]
[0065] Where vportnum represents the number of ports enabled by the VIP. This represents the byte bandwidth score corresponding to the virtual port of the nth VIP. This represents the packet bandwidth score corresponding to the virtual port of the nth VIP. V represents the session score corresponding to the virtual port of the nth VIP. cpu V represents the score used by the CPU. memory This represents the score for memory usage.
[0066] Specifically, when the availability of the backend service cluster is less than the preset availability threshold, the corresponding VIP service quality score is set to 0.
[0067] Among them, when checking the Intern e If the t link is down, the corresponding VIP service quality score is set to 0.
[0068] Step 130: Determine the service quality score of the data center based on the service quality scores of the multiple VIPs.
[0069] The service quality score of the data center is determined based on the service quality scores of the multiple VIPs of the data center and the number of VIPs.
[0070] In one alternative approach, the service quality score of the data center can be calculated using the following formula:
[0071]
[0072] Where vipnum represents the number of VIPs in the data center. This represents the service quality score for the nth VIP.
[0073] By comprehensively considering status dimension data such as the availability of backend service clusters, SLB bandwidth utilization, SLB memory and CPU utilization, number of sessions, and data center Internet link status, this invention can accurately identify the availability status of services in the data center.
[0074] Figure 3A flowchart of a data center resource scheduling method according to another embodiment of the present invention is shown. This method is executed by multiple GSLB devices in a data center cluster. The data center cluster includes multiple data centers: the GSLB device in any one data center acts as a client, and the GSLB devices in the remaining data centers act as servers. Figure 3 As shown, the method includes the following steps:
[0075] Step 210: The client obtains the service quality scores of each of the multiple data centers and the service quality scores of multiple VIPs in each data center; for any data center, the service quality score of the data center and the service quality scores of multiple VIPs in the data center are obtained based on the data center service status determination method of the above embodiment.
[0076] Specifically, the client obtains the service quality scores of each of the multiple data centers and the service quality scores of multiple VIPs in each data center, including:
[0077] Step 2111: Obtain status dimension data from multiple data centers; the status dimension data includes at least one of the following: availability of backend service clusters, SLB bandwidth utilization, SLB memory utilization, CPU utilization, number of sessions, and data center Internet link status.
[0078] The availability of the backend service cluster is achieved by collecting the backend service status from the backend service cluster via SLB, such as... Figure 1 As shown, Figure 1 The diagram illustrates a data center structure provided in an embodiment of the present invention. Specifically, the SLB probes the health status of the backend service cluster using any one of the protocols TCP, HTTP, HTTPS, and ICMP, and calculates the availability of the backend service cluster based on the probe results. The availability of the backend service cluster is specifically the availability of the backend service corresponding to each VIP.
[0079] Specifically, obtaining the status dimension data of the data center includes: obtaining status dimension data from the SLB server, wherein the SLB server includes multiple SLBs, each SLB deploying an agent, and supporting GSLB devices to collect status dimension data including the availability of the backend service cluster, SLB bandwidth utilization, SLB memory and CPU utilization, and the number of sessions from the SLB server via the HTTP protocol; specifically, obtaining the status dimension data from the SLB is achieved by obtaining the status dimension data from each SLB through each agent.
[0080] GSLB devices detect gateway information from different operators, check the reachability of each operator's gateway, and obtain the Internet link status of each operator's gateway.
[0081] Step 2112: Determine the service quality scores of multiple VIPs in the multiple data centers based on the status dimension data.
[0082] After acquiring the status dimension data of the data center, the GSLB device performs calculations from multiple dimensions such as traffic bandwidth, number of sessions, CPU utilization, memory utilization, backend service availability, and Internet link status.
[0083] The traffic bandwidth includes byte bandwidth and packet bandwidth.
[0084] In an alternative approach, the byte bandwidth fraction is calculated using the following formula:
[0085]
[0086] Among them, W inbyte The weight representing the byte bandwidth, TH inbyte SP represents the threshold for byte bandwidth. inbyte The sampled value representing the byte bandwidth is understood to be pre-set and modifiable in terms of its weight and threshold.
[0087] In an alternative approach, the packet bandwidth score is calculated using the following formula:
[0088]
[0089] Among them, W inpackets The weight representing packet bandwidth, TH inpackets SP represents the threshold for packet bandwidth. inpackets The sampled value representing the packet bandwidth is understood to be pre-set and modifiable, and it is understood that the weight and threshold of the packet bandwidth can be preset and modified.
[0090] In an alternative approach, the session score is calculated using the following formula:
[0091]
[0092] Among them, W session TH represents the weight of the session. session The threshold for a session, SP session The sampled value represents the packet session. It is understood that the session weight and session threshold can be preset and modified.
[0093] In an alternative approach, the CPU utilization score is calculated using the following formula:
[0094]
[0095] Among them, W cpu SP represents the weight of CPU utilization. cpu The sampled value representing CPU utilization can be understood to be pre-set and modifiable in terms of weight.
[0096] In an alternative approach, the memory utilization rate is calculated using the following formula:
[0097]
[0098] Among them, W memory SP represents the weights of memory utilization. memory The sampled value representing memory utilization can be understood to be pre-set and modifiable in terms of its weight.
[0099] The sum of all the above weights is 1, as shown in the following formula:
[0100] W inbyte +W inpackets +W session +W cpu +W memory =1;
[0101] The VIP's service quality score is calculated using the following formula:
[0102]
[0103] Where vportnum represents the number of ports enabled by the VIP. This represents the byte bandwidth score corresponding to the virtual port of the nth VIP. This represents the packet bandwidth score corresponding to the virtual port of the nth VIP. V represents the session score corresponding to the virtual port of the nth VIP. cpu V represents the score used by the CPU. memory This represents the score for memory usage.
[0104] Specifically, when the availability of the backend service cluster is less than the preset availability threshold, the corresponding VIP service quality score is set to 0.
[0105] Specifically, if the Internet link is found to be unavailable, the corresponding VIP service quality score is set to 0.
[0106] Step 2113: Determine the service quality scores of the multiple data centers based on the service quality scores of the multiple VIPs.
[0107] In one optional approach, the service quality score of the data center is calculated using the following formula:
[0108]
[0109] Where vipnum represents the number of VIPs in the data center. This represents the service quality score for the nth VIP.
[0110] Step 220: The client schedules each data center and VIP according to the service quality score of each data center.
[0111] Each GSLB device is deployed with an agent, which allows clients to collect score data from various servers. The score data includes data center service quality score and VIP service quality score.
[0112] The client receives service quality scores for each data center and VIP from each server, and schedules each data center and VIP based on these scores. This includes: collecting and summarizing the service quality scores from each server; determining, based on preset service quality score thresholds for data centers and VIPs, that data centers with service quality scores greater than or equal to the preset thresholds, and VIPs with service quality scores greater than or equal to the preset thresholds, as qualified data centers and VIPs; and parsing the address records corresponding to the qualified data centers and VIPs, and synchronizing the parsing results to the server for scheduling the data centers and VIPs.
[0113] The client's GSLB device can determine whether and how to schedule data centers and VIPs based on the resolution results. As one possible implementation, the client's GSLB device can schedule the VIP with the highest service quality score from the data center with the highest service quality score to any user client that initiates the access request, allowing the user client to access it.
[0114] In some embodiments of the present invention, after obtaining the service quality scores of each data center and VIP, the method further includes:
[0115] Step 2411: When a user sends an access request, obtain the user's geographical location information and carrier information.
[0116] Step 2412: If the service quality score of the first data center of the current operator is greater than the preset data center service quality score threshold, then schedule the VIP with the highest service quality score in the first data center; the first data center is the data center of the current operator that is geographically closest to the user.
[0117] The current operator can be the operator to which the user's corresponding client IP address is located.
[0118] Step 2413: If the service quality score of the first data center is less than the preset data center service quality score threshold, and the service quality score of the current operator's second data center is greater than the preset data center service quality score threshold, then schedule the VIP with the highest service quality score in the second data center; the second data center is the data center of the current operator that is geographically closest to the user, excluding the first data center.
[0119] Step 2414: If the service quality scores of the first data center and the second data center are both less than the preset data center service quality score threshold, then search the other data centers of the current operator within the preset range of the user's geographical location in order of proximity to the user's geographical location, until a third data center with a service quality score greater than the preset data center service quality score threshold is obtained, and schedule the VIP with the highest service quality score in the third data center.
[0120] Step 2415: If the service quality scores of all data centers of the current operator within the preset range of the user's geographical location are less than the preset data center service quality score threshold, then sequentially search the other operators within the preset range of the user's geographical location until a data center of the second operator with a service quality score greater than the preset data center service quality score threshold is obtained, and schedule the VIP with the highest service quality score of the data center of the second operator.
[0121] If no data center with a service quality score greater than a preset data center service quality score threshold is found within the user's geographical location preset range, the search ends, and the user can re-initiate an access request to restart the search process.
[0122] By comprehensively considering status dimension data such as the availability of backend service clusters, SLB bandwidth utilization, SLB memory and CPU utilization, number of sessions, and data center Internet link status, this invention can accurately identify the availability status of services in the data center.
[0123] Furthermore, by summarizing and analyzing the status dimension data to schedule data centers and VIPs, the system can return the optimal data center and VIP when a user makes an access request, thereby improving access efficiency.
[0124] Furthermore, by switching carriers, the system prioritizes the carrier closest to the user when returning to the optimal data center and VIP, thereby further improving access efficiency.
[0125] Figure 4 A schematic diagram of a data center service status determination device provided in an embodiment of the present invention is shown. This device is applied to a GSLB device in a data center, such as... Figure 4 As shown, the device 300 includes: a data acquisition module 310, a VIP scoring module 320, and a data center scoring module 330.
[0126] The data acquisition module 310 is used to acquire the status dimension data of the data center; the status dimension data includes at least one of the following: availability of the backend service cluster, SLB bandwidth utilization, SLB memory and CPU utilization, number of sessions, and data center Internet link status.
[0127] VIP scoring module 320 is used to determine the service quality scores of multiple VIPs in the data center based on the status dimension data;
[0128] The data center scoring module 330 is used to determine the service quality score of the data center based on the service quality scores of the multiple VIPs.
[0129] In one alternative embodiment, the VIP scoring module 320 is used for:
[0130] The service quality scores of the multiple VIPs are determined based on the number of ports enabled by the VIP, the byte bandwidth score, packet bandwidth score, session score, CPU usage score, and memory usage score for each port.
[0131] If the availability of the backend service cluster is less than the preset availability threshold, the service quality score of the VIP is set to zero.
[0132] If the data center Internet link is detected to be down, the VIP's service quality score is set to zero.
[0133] In one alternative embodiment, the data center scoring module 330 is used for:
[0134] The service quality score of the data center is determined based on the service quality scores of the multiple VIPs and the number of VIPs.
[0135] In one alternative embodiment, the data acquisition module 310 is used for:
[0136] When the status dimension data includes at least one of the following: backend service cluster availability, SLB bandwidth utilization, SLB memory utilization, CPU utilization, and number of sessions, the status dimension data is obtained from the SLB device through an agent deployed on the SLB device; wherein, the availability of the backend service cluster is obtained by the SLB device probing the status of the backend service cluster through any one of the following protocols: TCP, HTTP, HTTPS, and ICMP.
[0137] When the status dimension data includes the data center Internet link status, the reachability of different operator gateways is detected; the data center Internet link status is determined based on the detection results.
[0138] By comprehensively considering status dimension data such as the availability of backend service clusters, SLB bandwidth utilization, SLB memory and CPU utilization, number of sessions, and data center Internet link status, this invention can accurately identify the availability status of services in the data center.
[0139] Figure 5 A schematic diagram of a data center resource scheduling device according to another embodiment of the present invention is shown. This device is applied to a data center cluster, which includes multiple data centers, with the GSLB device of any one data center acting as a client and the GSLB devices of the remaining data centers acting as servers. Figure 5 As shown, the device 400 includes a server module 410 and a client module 420.
[0140] The server module 410 is used to obtain the service quality scores of each of the multiple data centers corresponding to its multiple GSLB devices, as well as the service quality scores of multiple VIPs in each data center.
[0141] The client module 420 is used to obtain the service quality scores of itself and the multiple data centers corresponding to the server, as well as the service quality scores of multiple VIPs in each data center, and to schedule each data center and VIP according to the service quality scores of each data center; for any data center, the service quality score of the data center and the service quality scores of the multiple VIPs in the data center are obtained based on the data center service status determination method of the above embodiment.
[0142] In an alternative embodiment, the client module 420 includes a scheduling submodule, the scheduling submodule being configured to:
[0143] The service quality scores for each of the aforementioned data centers and VIPs are summarized;
[0144] Based on the preset data center service quality score threshold and VIP service quality score threshold, data centers with a data center service quality score greater than or equal to the data center service quality score threshold and VIPs with a VIP service quality score greater than or equal to the VIP service quality threshold are determined as qualified data centers and VIPs, respectively.
[0145] The Address records corresponding to the qualified data centers and VIPs are parsed, and the parsing results are synchronized to the server for scheduling the data centers and VIPs.
[0146] In an alternative embodiment, the client module 420 further includes a line switching submodule, the line switching submodule being used for:
[0147] Obtain the user's location and carrier information;
[0148] If the service quality score of the first data center of the current operator is greater than the preset data center service quality score threshold, then the VIP with the highest service quality score in the first data center will be scheduled; the first data center is the data center of the current operator that is geographically closest to the user.
[0149] If the service quality score of the first data center is less than the preset data center service quality score threshold, and the service quality score of the current operator's second data center is greater than the preset data center service quality threshold, then the VIP with the highest service quality score in the second data center will be scheduled; the second data center is the data center of the current operator that is geographically closest to the user, excluding the first data center.
[0150] If the service quality scores of the first data center and the second data center are both less than the preset data center service quality score threshold, then the remaining data centers of the current operator corresponding to the user's geographical location within the preset range of the user's geographical location are searched in order from the nearest to the farthest, until a third data center with a service quality score greater than the preset data center service quality score threshold is obtained, and the VIP with the highest service quality score in the third data center is scheduled.
[0151] If the service quality scores of all data centers of the current operator within the preset geographical location range of the user are less than the preset data center service quality score threshold, then the remaining operators within the preset geographical location range of the user are searched sequentially until a data center of the second operator with a service quality score greater than the preset data center service quality score threshold is obtained, and the VIP with the highest service quality score of the data center of the second operator is scheduled.
[0152] By comprehensively considering status dimension data such as the availability of backend service clusters, SLB bandwidth utilization, SLB memory and CPU utilization, number of sessions, and data center Internet link status, this invention can accurately identify the availability status of services in the data center.
[0153] Furthermore, by summarizing and analyzing the status dimension data to schedule data centers and VIPs, the system can return the optimal data center and VIP when a user makes an access request, thereby improving access efficiency.
[0154] Furthermore, by switching carriers, the system prioritizes the carrier closest to the user when returning to the optimal data center and VIP, thereby further improving access efficiency.
[0155] Figure 6 The diagram shows a structural schematic of a data center service status determination device provided in an embodiment of the present invention. The specific implementation of the device is not limited in the specific embodiments of the present invention.
[0156] like Figure 6 As shown, the device may include: a processor 602, a communications interface 604, a memory 606, and a communications bus 608.
[0157] The processor 602, communication interface 804, and memory 606 communicate with each other via communication bus 608. Communication interface 604 is used to communicate with other network elements such as clients or other servers. Processor 602 is used for program 610 to execute program 610, specifically performing the relevant steps in the above-described web static resource coordination method embodiment.
[0158] Specifically, program 610 may include program code that includes computer operation instructions.
[0159] Processor 602 may be a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to implement embodiments of the present invention. The device may include one or more processors of the same type, such as one or more CPUs; or it may include processors of different types, such as one or more CPUs and one or more ASICs.
[0160] Memory 606 is used to store program 610. Memory 606 may include high-speed RAM memory, and may also include non-volatile memory, such as at least one disk storage device.
[0161] Specifically, program 610 can be used to cause processor 602 to perform the following operations:
[0162] Obtain status dimension data of the data center; the status dimension data includes at least one of the following: availability of backend service cluster, SLB bandwidth utilization, SLB memory utilization, CPU utilization, number of sessions, and data center Internet link status.
[0163] The service quality scores of multiple VIPs in the data center are determined based on the status dimension data.
[0164] The service quality score of the data center is determined based on the service quality scores of the multiple VIPs.
[0165] In one optional approach, determining the service quality scores of multiple VIPs in the data center based on the status dimension data includes: determining the service quality scores of the multiple VIPs based on the number of ports enabled by the VIP, the byte bandwidth score, packet bandwidth score, session score, CPU usage score, and memory usage score corresponding to each port; if the availability of the backend service cluster is less than a preset availability threshold, the service quality score of the corresponding VIP is set to zero; if the data center Internet link is detected to be down, the service quality score of the corresponding VIP is set to zero.
[0166] In one alternative approach, determining the service quality score of the data center based on the service quality scores of the plurality of VIPs includes: determining the service quality score of the data center based on the service quality scores of the plurality of VIPs and the number of VIPs.
[0167] In one optional approach, obtaining the data center status dimension data includes: when the status dimension data includes at least one of the following: backend service cluster availability, SLB bandwidth utilization, SLB memory utilization, CPU utilization, and number of sessions, obtaining the status dimension data from the SLB device via an agent deployed on the SLB device; wherein, the backend service cluster availability is obtained by the SLB device probing the status of the backend service cluster using any one of the following protocols: TCP, HTTP, HTTPS, and ICMP; when the status dimension data includes the data center Internet link status, probing the reachability of different operator gateways; and determining the data center Internet link status based on the probing results.
[0168] By comprehensively considering status dimension data such as the availability of backend service clusters, SLB bandwidth utilization, SLB memory and CPU utilization, number of sessions, and data center Internet link status, this invention can accurately identify the availability status of services in the data center.
[0169] Figure 7 The diagram shows a structural schematic of a data center resource scheduling device according to another embodiment of the present invention. The specific implementation of the device is not limited by the specific embodiments of the present invention.
[0170] like Figure 7 As shown, the device may include: a processor 702, a communications interface 704, a memory 606, and a communications bus 708.
[0171] The processor 702, communication interface 704, and memory 706 communicate with each other via communication bus 708. Communication interface 704 is used to communicate with other network elements such as clients or other servers. Processor 702 is used for program 710 to execute program 710, specifically performing the relevant steps in the above-described web static resource execution method embodiment.
[0172] Specifically, program 710 may include program code that includes computer operation instructions.
[0173] The processor 702 may be a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits configured to implement embodiments of the present invention. The device may include one or more processors of the same type, such as one or more CPUs; or it may include processors of different types, such as one or more CPUs and one or more ASICs.
[0174] Memory 706 is used to store program 710. Memory 706 may include high-speed RAM memory, and may also include non-volatile memory, such as at least one disk storage device.
[0175] Specifically, program 710 can be used to cause processor 702 to perform the following operations:
[0176] Using the GSLB device in any one data center as the client and the GSLB devices in the remaining data centers as the server; the client obtains the service quality score of each of the multiple data centers and the service quality score of multiple VIPs in each data center; for any data center, the service quality score of the data center and the service quality score of multiple VIPs in the data center are obtained based on a data center service status determination method of the above embodiment;
[0177] The client schedules each data center and VIP based on the service quality score of each data center.
[0178] In one optional approach, the client schedules each data center and VIP based on the service quality score of each data center, including: the client summarizing the service quality scores of each data center and VIP; the client determining, based on preset data center service quality score thresholds and VIP service quality score thresholds, data centers with service quality scores greater than or equal to the preset thresholds, and VIPs with service quality scores greater than or equal to the preset thresholds, as qualified data centers and VIPs; the client parsing the Address records corresponding to the qualified data centers and VIPs, and synchronizing the parsing results to the server for scheduling the data centers and VIPs.
[0179] In one optional embodiment, the method further includes: obtaining the user's geographic location information and operator information; if the service quality score of the first data center of the current operator is greater than a preset data center service quality score threshold, then scheduling the VIP with the highest service quality score in the first data center; the first data center is the data center of the current operator that is geographically closest to the user; if the service quality score of the first data center is less than the preset data center service quality score threshold, and the service quality score of the second data center of the current operator is greater than the preset data center service quality score threshold, then scheduling the VIP with the highest service quality score in the second data center; the second data center is the data center of the current operator that is geographically closest to the user, excluding the first data center; if the service quality scores of both the first and second data centers are less than the preset data center service quality score threshold, then sequentially searching the remaining data centers of the current operator within a preset range of the user's geographic location from closest to furthest, until a third data center with a service quality score greater than the preset data center service quality score threshold is obtained, and scheduling the VIP with the highest service quality score in the third data center; if the service quality scores of all data centers of the current operator within a preset range of the user's geographic location are less than the preset data center service quality threshold, then sequentially searching the remaining operators within a preset range of the user's geographic location, until a data center of the second operator with a service quality score greater than the preset data center service quality threshold is obtained, and scheduling the VIP with the highest service quality score in the second operator's data center.
[0180] By comprehensively considering status dimension data such as the availability of backend service clusters, SLB bandwidth utilization, SLB memory and CPU utilization, number of sessions, and data center Internet link status, this invention can accurately identify the availability status of services in the data center.
[0181] Furthermore, by summarizing and analyzing the status dimension data to schedule data centers and VIPs, the system can return the optimal data center and VIP when a user makes an access request, thereby improving access efficiency.
[0182] Furthermore, by switching carriers, the system prioritizes the carrier closest to the user when returning to the optimal data center and VIP, thereby further improving access efficiency.
[0183] This invention provides a device for determining the service status of a data center, used to execute the aforementioned method for determining the service status of a data center.
[0184] This invention provides a data center resource scheduling apparatus for executing the above-described data center resource scheduling method.
[0185] The algorithms or displays provided herein are not inherently related to any particular computer, virtual system, or other device. Various general-purpose systems can also be used in conjunction with the teachings herein. The required structure for constructing such systems is apparent from the above description. Furthermore, the embodiments of the present invention are not directed to any particular programming language. It should be understood that the content of the invention described herein can be implemented using various programming languages, and the above description of specific languages is for the purpose of disclosing the best mode of implementation of the invention.
[0186] Numerous specific details are set forth in the specification provided herein. However, it will be understood that embodiments of the invention may be practiced without these specific details. In some instances, well-known methods, structures, and techniques have not been shown in detail so as not to obscure the understanding of this specification.
[0187] Similarly, it should be understood that, in order to streamline the invention and aid in understanding one or more of the various aspects of the invention, features of the embodiments of the invention are sometimes grouped together in a single embodiment, figure, or description thereof in the above description of exemplary embodiments of the invention. However, this disclosure should not be construed as reflecting an intention that the claimed invention requires more features than are expressly recited in each claim.
[0188] Those skilled in the art will understand that modules in the device of the embodiments can be adaptively changed and placed in one or more devices different from that embodiment. Modules, units, or components in the embodiments can be combined into a single module, unit, or component, and can be divided into multiple sub-modules, sub-units, or sub-components. Except where at least some of such features and / or processes or units are mutually exclusive, any combination can be used to combine all features disclosed in this specification (including the accompanying claims, abstract, and drawings) and all processes or units of any method or device so disclosed. Unless expressly stated otherwise, each feature disclosed in this specification (including the accompanying claims, abstract, and drawings) may be replaced by an alternative feature that serves the same, equivalent, or similar purpose.
[0189] It should be noted that the above embodiments are illustrative of the invention and not restrictive, and that those skilled in the art can devise alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses should not be construed as limiting the claims. The word "comprising" does not exclude the presence of elements or steps not listed in the claims. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The invention can be implemented by means of hardware comprising several different elements and by means of a suitably programmed computer. In the unit claims enumerating several means, several of these means may be embodied by the same item of hardware. The use of the words first, second, and third, etc., does not indicate any order. These words can be interpreted as names. The steps in the above embodiments, unless otherwise specified, should not be construed as limiting the order of execution.
Claims
1. A method for determining the service status of a data center, characterized in that, The method, applied to a GSLB device in a data center, includes: Obtain status dimension data of the data center; the status dimension data includes the availability of the backend service cluster, SLB bandwidth utilization, SLB memory utilization, CPU utilization, number of sessions, and the status of the data center Internet link; The service quality scores of multiple VIPs in the data center are determined based on the status dimension data. The service quality score of the data center is determined based on the service quality scores of the multiple VIPs. The step of determining the service quality scores of multiple VIPs in the data center based on the status dimension data includes: The service quality scores of the multiple VIPs are determined based on the number of ports enabled by the VIP, the byte bandwidth score, packet bandwidth score, session score, CPU usage score, and memory usage score corresponding to each port. The byte bandwidth score, packet bandwidth score, session score, CPU usage score, and memory usage score are calculated according to preset weights, and the sum of each weight is 1. If the availability of the backend service cluster is less than the preset availability threshold, the service quality score of the VIP is set to zero. If the data center Internet link is detected to be down, the VIP's service quality score is set to zero. The step of determining the service quality score of the data center based on the service quality scores of the multiple VIPs includes: The service quality score of the data center is determined based on the service quality scores of the multiple VIPs and the number of VIPs.
2. The method according to claim 1, characterized in that, The acquisition of the data center's status dimension data includes: When the status dimension data includes the availability of the backend service cluster, SLB bandwidth utilization, SLB memory utilization, CPU utilization, and number of sessions, the status dimension data is obtained from the SLB device through an agent deployed on the SLB device; wherein, the availability of the backend service cluster is obtained by the SLB device probing the status of the backend service cluster through any one of the following protocols: TCP, HTTP, HTTPS, and ICMP. When the status dimension data includes the data center Internet link status, the reachability of different operator gateways is detected; the data center Internet link status is determined based on the detection results.
3. A data center resource scheduling method, characterized in that, It is applied to data center clusters, which include multiple data centers; the GSLB device in any one data center acts as a client, and the GSLB devices in the other data centers act as servers; The client obtains the service quality scores of each of the multiple data centers and the service quality scores of multiple VIPs in each data center; for any data center, the service quality score of the data center and the service quality scores of the multiple VIPs in the data center are obtained based on the data center service status determination method according to any one of claims 1-2; The client schedules each data center and VIP based on the service quality score of each data center.
4. The method according to claim 3, characterized in that, The client schedules data centers and VIPs based on their service quality scores, including: The client summarizes the service quality scores for each of the data centers and VIPs; The client determines, based on preset data center service quality score thresholds and VIP service quality score thresholds, data centers with service quality scores greater than or equal to the data center service quality score thresholds and VIPs with service quality scores greater than or equal to the VIP service quality score thresholds, as qualified data centers and VIPs. The client parses the Address records corresponding to the qualified data centers and VIPs, and synchronizes the parsing results to the server for scheduling the data centers and VIPs.
5. The method according to claim 3, characterized in that, The method further includes: Obtain the user's location and carrier information; If the service quality score of the first data center of the current operator is greater than the preset data center service quality score threshold, then the VIP with the highest service quality score in the first data center will be scheduled; the first data center is the data center of the current operator that is geographically closest to the user. If the service quality score of the first data center is less than the preset data center service quality score threshold, and the service quality score of the current operator's second data center is greater than the preset data center service quality threshold, then the VIP with the highest service quality score in the second data center will be scheduled; the second data center is the data center of the current operator that is geographically closest to the user, excluding the first data center. If the service quality scores of the first data center and the second data center are both less than the preset data center service quality score threshold, then the remaining data centers of the current operator corresponding to the user's geographical location within the preset range of the user's geographical location are searched in order from the nearest to the farthest, until a third data center with a service quality score greater than the preset data center service quality score threshold is obtained, and the VIP with the highest service quality score in the third data center is scheduled. If the service quality scores of all data centers of the current operator within the preset range of the user's geographical location are less than the preset data center service quality score threshold, then the remaining operators within the preset range of the user's geographical location are searched sequentially until a data center of the second operator with a service quality score greater than the preset data center service quality score threshold is obtained, and the VIP with the highest service quality score of the data center of the second operator is scheduled.
6. A device for determining the service status of a data center, characterized in that, A GSLB device for use in data centers, the device comprising: The data acquisition module is used to acquire the status dimension data of the data center; the status dimension data includes the availability of the backend service cluster, SLB bandwidth utilization, SLB memory utilization, CPU utilization, number of sessions, and the status of the data center Internet link. The VIP scoring module is used to determine the service quality scores of multiple VIPs in the data center based on the status dimension data. The data center scoring module is used to determine the service quality score of the data center based on the service quality scores of the multiple VIPs. The VIP scoring module is further used to: determine the service quality score of the multiple VIPs based on the number of ports enabled by the VIP, the byte bandwidth score, packet bandwidth score, session score, CPU usage score, and memory usage score corresponding to each port, wherein the byte bandwidth score, packet bandwidth score, session score, CPU usage score, and memory usage score are calculated according to preset weights, and the sum of each weight is 1; If the availability of the backend service cluster is less than the preset availability threshold, the service quality score of the VIP is set to zero. If the data center Internet link is detected to be down, the VIP's service quality score is set to zero. The data center scoring module is further used to: determine the service quality score of the data center based on the service quality scores of the multiple VIPs and the number of VIPs.
7. A data center resource scheduling device, characterized in that, Applied to data center clusters, wherein the data center cluster includes multiple data centers, with the GSLB device in any one data center acting as a client and the GSLB devices in the remaining data centers acting as servers, the device includes: The server module is used to obtain the service quality scores of each of the multiple data centers corresponding to its multiple GSLB devices, as well as the service quality scores of multiple VIPs in each data center; The client module is used to obtain the service quality scores of itself and the multiple data centers corresponding to the server, as well as the service quality scores of multiple VIPs in each data center, and to schedule each data center and VIP according to the service quality scores of each data center; for any data center, the service quality score of the data center and the service quality scores of the multiple VIPs in the data center are obtained based on the data center service status determination method according to any one of claims 1-2.
8. A computing device, characterized in that, include: The processor, memory, communication interface, and communication bus are provided, wherein the processor, memory, and communication interface communicate with each other via the communication bus. The memory is used to store at least one executable instruction that causes the processor to perform the steps of the method for determining the data center service status as claimed in any one of claims 1-2, or to perform the steps of the data center resource scheduling method as claimed in any one of claims 3-5.
Citation Information
Patent Citations
Intelligent DNS scheduling system and scheduling method
CN107317889A
Method and device for accessing a service in content delivery network
CN111064760A
Self-adaptive load balancing and high availability guaranteeing method applied to mobile terminal
CN113157440A