A method, apparatus, and related equipment for adjusting cluster instances.
By dynamically adjusting the number of cluster instances to match business needs in disaster recovery scenarios, the cluster's response problem when business volume suddenly increases is solved, achieving efficient resource utilization and rapid recovery.
Patent Information
- Application Number
- CN202310495051.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-05-04
- Publication Date
- 2026-01-30
- Estimated Expiration
- 2043-05-04
AI Technical Summary
In disaster recovery scenarios, the number of instances configured in the cluster is difficult to match with business needs, leading to problems such as inability to respond quickly or waste of resources when there is a sudden increase in business volume.
The system obtains the current business volume of each region through the control system, calculates the target business volume of the target cluster, and dynamically adjusts the number of instances according to the demand to ensure that the number of instances matches the business demand in the disaster recovery scenario.
It achieves a match between the number of instances and business needs in disaster recovery scenarios, reducing resource waste and improving rapid response capabilities.
Smart Images

Figure CN116582437B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to a method, apparatus, and related equipment for adjusting cluster instances. Background Technology
[0002] Network Functions Virtualization (NFV) is a technology that uses general-purpose hardware and virtualization techniques to support the functions of dedicated devices in traditional networks. NFV reduces the hardware limitations of dedicated devices and lowers hardware costs. A cluster built on NFV technology consists of one or more virtualized instances. A virtualized instance is an independent virtual entity that performs computing, storage, or network communication functions after physical resources have been virtualized. A virtualized instance can be simply referred to as an instance. Instances can specifically manifest as virtual machines, containers, or other forms.
[0003] The number of instances in a cluster can be dynamically adjusted based on Auto Scaling (AS), which automatically adds or removes instances. However, Auto Scaling is relatively slow. In disaster recovery scenarios, the cluster may need to handle the workload of a failed cluster. This can lead to a sudden surge in workload within a short period. If the number of instances is increased only after this sudden increase, the cluster may be unable to handle the surge in workload quickly enough. To cope with sudden increases in workload during disaster recovery, a certain number of additional instances are typically configured in the cluster. However, the current number of instances may not match the workload requirements in a disaster recovery scenario. This could result in either too few instances, making it unable to quickly handle the sudden increase in workload, or too many instances, wasting resources. Summary of the Invention
[0004] In view of this, this application provides a cluster instance adjustment method applied to a control system. The control system can determine the target number of instances to allocate to the target cluster in the first region based on the workload it needs to handle in a disaster recovery scenario. The target number is well-matched to the workload requirements in the disaster recovery scenario. This application also provides corresponding devices, computing device clusters, computer-readable storage media, and computer program products.
[0005] Firstly, this application provides a cluster instance adjustment method. This method is applied to a control system. The control system is connected to a target cluster, which is distributed across multiple regions. The control system obtains the current traffic volume of the target clusters in each region and determines the target traffic volume of the target cluster in a first region based on the current traffic volume of the target clusters in each region. The first region is one of multiple regions. The target traffic volume is the traffic volume that the target cluster in the first region needs to handle. The control system calculates the target number of instances for the target cluster in the first region using the target traffic volume and the instance-handling traffic volume of the target cluster in the first region. If the target number is greater than the instance number of the target cluster in the first region, instances are allocated to the target cluster in the first region based on the target number. The control system can determine the target number of instances allocated to the target cluster in the first region based on the traffic volume that the target cluster in the first region needs to handle in a disaster recovery scenario, i.e., the target traffic volume. The target number is well-matched with the traffic handling requirements in a disaster recovery scenario. The instances of the target cluster in the first region allocated based on the target number can meet the traffic handling requirements in a disaster recovery scenario. This application also provides corresponding devices, computing device clusters, computer-readable storage media, and computer program products.
[0006] In one possible implementation, the target traffic volume of the target cluster in the first region is determined based on the current traffic volume of the target cluster in the first region and the current traffic volume of the target cluster in the second region, wherein the second region refers to all regions other than the first region. Based on the current traffic volume of the target cluster in the second region, the traffic volume that the target cluster in the first region needs to handle in the event of a failure in the second region can be determined. By utilizing the current traffic volumes of the target clusters in the first and second regions, the traffic volume that the target cluster in the first region needs to handle can be determined relatively accurately, thereby enabling the determination of the target number of instances that best match the traffic handling requirements in a disaster recovery scenario.
[0007] In one possible implementation, there are multiple second regions. The sum of the current traffic volume of the target cluster in the first region and the first traffic volume is determined as the target traffic volume of the target cluster in the first region. Here, the first traffic volume is the maximum value of the current traffic volume of the target clusters in each of the second regions. This allows the target clusters in the first region, after adjusting the number of instances based on the target, to handle the traffic volume of the target cluster in the failed second region.
[0008] In one possible implementation, there are multiple second regions. The sum of the current traffic volume of the target cluster in the first region and the second traffic volume is determined as the target traffic volume of the target cluster in the first region. The second traffic volume is the product of the maximum current traffic volume of the target clusters in each second region and a carrying parameter. The carrying parameter is the proportion of traffic volume of the target clusters in the first region carried by the target clusters in the second regions. By using the second traffic volume determined by the carrying parameter, it is possible to accurately determine the traffic volume that the target clusters in the first region need to handle in scenarios where the traffic volume of the clusters in the faulty region is shared by the normally operating region, thereby determining the target number of instances that best matches the service processing requirements in disaster recovery scenarios.
[0009] In one possible implementation, the instance's service capacity is the expanded service capacity. The expanded service capacity is the minimum service capacity that the instance triggering the expansion of the target cluster instance in the first region can handle. By using the target quantity determined by the expanded service capacity, it can be ensured that the target cluster in the first region can handle services relatively stably in the event of a failure, thereby improving the stability of service processing in disaster recovery scenarios.
[0010] In one possible implementation, after determining that the target number is greater than the number of instances in the target cluster of the first region, the control system allocates new instances to the target cluster of the first region. The number of new instances is the difference between the target number and the number of instances. In this way, the target cluster of the first region can stably handle the traffic volume of its own region and the faulty region.
[0011] In one possible implementation, the instance's service capacity is the maximum service capacity. The maximum service capacity is the maximum service capacity that instances in the target cluster of the first region can handle. Using the maximum service capacity to determine the target number is relatively small. This saves resources and reduces costs.
[0012] In one possible implementation, after determining that the target number is greater than the number of instances in the target cluster of the first region, the control system allocates instances to be configured for the first region. The number of instances to be configured is the difference between the target number and the number of instances. These instances are used for scaling up the target cluster instances in the first region. This allows for rapid scaling up of the target cluster in the first region when it needs to be scaled up in a disaster recovery scenario, reducing resource costs and minimizing resource waste.
[0013] Secondly, this application provides a cluster instance adjustment device, which is applied to a control system connected to a target cluster distributed across multiple regions. The device includes:
[0014] The acquisition module is used to obtain the current business volume of the target cluster in each region;
[0015] The determination module is used to determine the target traffic volume of the target cluster in the first region based on the current traffic volume of the target cluster in each region. The first region is one of the multiple regions, and the target traffic volume is the traffic volume that the target cluster in the first region needs to carry.
[0016] The calculation module is used to calculate the target quantity using the target traffic volume and the instance-carrying traffic volume of the target cluster in the first region.
[0017] The allocation module is used to allocate instances to the target cluster in the first region according to the target number if the target number is greater than the number of instances of the target cluster in the first region.
[0018] In one possible implementation, the determining module is specifically configured to determine the target traffic volume of the target cluster in the first region based on the current traffic volume of the target cluster in the first region and the current traffic volume of the target cluster in the second region, wherein the second region is the region other than the first region among the plurality of regions.
[0019] In one possible implementation, the number of second regions is multiple, and the determining module is configured to determine the target traffic volume of the target cluster in the first region based on the current traffic volume of the target cluster in the first region and the current traffic volume of the target cluster in the second region, including:
[0020] The determining module is specifically used to determine the target traffic volume of the target cluster in the first region as the sum of the current traffic volume of the target cluster in the first region and the first traffic volume, wherein the first traffic volume is the maximum value of the current traffic volume of the target cluster in each second region.
[0021] In one possible implementation, the number of second regions is multiple, and the determining module is configured to determine the target traffic volume of the target cluster in the first region based on the current traffic volume of the target cluster in the first region and the current traffic volume of the target cluster in the second region, including:
[0022] The determining module is specifically used to determine the target traffic volume of the target cluster in the first region as the sum of the current traffic volume of the target cluster in the first region and the second traffic volume, wherein the second traffic volume is the product of the maximum value of the current traffic volume of the target cluster in each second region and the carrying parameter, and the carrying parameter is the proportion of the traffic volume of the target cluster in the first region carried by the target cluster in the second region.
[0023] In one possible implementation, the instance carrying capacity is the expanded carrying capacity, which is the minimum carrying capacity of the instance that triggers the expansion of the target cluster instance in the first region.
[0024] In one possible implementation, the allocation module is configured to allocate instances to the target cluster in the first region according to the target quantity, including:
[0025] The allocation module is specifically used to allocate new instances to the target cluster in the first region, wherein the number of new instances is the difference between the target number and the number of instances.
[0026] In one possible implementation, the instance carrying capacity is the maximum carrying capacity, which is the maximum carrying capacity of the instance in the target cluster of the first region.
[0027] In one possible implementation, the allocation module is configured to allocate instances to the target cluster in the first region according to the target quantity, including:
[0028] The allocation module is specifically used to allocate instances to be configured to the first region. The number of instances to be configured is the difference between the target number and the number of instances. The instances to be configured are used for the expansion of the target cluster instances in the first region.
[0029] It is worth noting that the cluster instance adjustment device provided in the second aspect corresponds to the cluster instance adjustment method provided in the first aspect. Therefore, the technical effects of the second aspect and any implementation thereof can be referred to the technical effects of the first aspect or the corresponding implementation thereof.
[0030] Thirdly, this application provides a computing device cluster, the computing device including at least one computing device, the at least one computing device including at least one processor and at least one memory; the at least one memory is used to store instructions, and the at least one processor executes the instructions stored in the at least one memory to cause the computing device cluster to perform the cluster instance adjustment method in the second aspect or any possible embodiment of the second aspect. It should be noted that the memory can be integrated into the processor or can be independent of the processor. The at least one computing device may also include a bus. The processor is connected to the memory via the bus. The memory may include readable storage and random access memory.
[0031] Fourthly, this application provides a computer-readable storage medium storing instructions that, when executed on at least one computing device, cause the at least one computing device to perform the method described in the first aspect or any embodiment of the first aspect.
[0032] Fifthly, this application provides a computer program product containing instructions that, when run on at least one computing device, cause the at least one computing device to perform the method described in the first aspect or any embodiment of the first aspect.
[0033] Based on the embodiments provided in the above aspects, this application can be further combined to provide more embodiments. Attached Figure Description
[0034] Figure 1 A schematic diagram of the structure of a network system provided in an embodiment of this application;
[0035] Figure 2 A flowchart illustrating a cluster instance adjustment method provided in an embodiment of this application;
[0036] Figure 3 This application provides a schematic diagram illustrating the allocation of service volume by the upstream system when a failure occurs.
[0037] Figure 4 A schematic diagram illustrating a cluster instance adjustment process provided in an embodiment of this application;
[0038] Figure 5 This application provides another schematic diagram illustrating the allocation of service volume by the upstream system in the event of a failure.
[0039] Figure 6 A schematic diagram illustrating another cluster instance adjustment process provided in an embodiment of this application;
[0040] Figure 7 This is a schematic diagram of the structure of a cluster instance adjustment device provided in an embodiment of this application;
[0041] Figure 8 This is a schematic diagram of the structure of a computing device provided in an embodiment of this application;
[0042] Figure 9 This is a schematic diagram of the structure of a computing device cluster provided in an embodiment of this application. Detailed Implementation
[0043] The solutions in the embodiments provided in this application will now be described with reference to the accompanying drawings.
[0044] The terms "first," "second," etc., used in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such terms can be used interchangeably where appropriate; this is merely a way of distinguishing objects with the same attributes in the embodiments of this application.
[0045] See Figure 1 As shown in the figure, this is a schematic diagram of the structure of a network system provided in an embodiment of this application. The network system includes an upstream system, region 1 including cluster 1 and cluster 2, region 2 including cluster 1, cluster 2 and cluster 3, region 3 including cluster 1 and cluster 3, and a control system.
[0046] The upstream system serves as the entry point for business operations. It can distribute traffic to different service clusters using a load balancer. The upstream system can be comprised of virtual machines, containers, smart network interface cards (NICs), white-box switches, or other programmable devices.
[0047] A cluster is a group of multiple instances, partitioned based on business grouping rules. These business grouping rules can be, for example, communication protocols, software service types, customer types, or other grouping rules. An instance is an entity that carries the business requirements.
[0048] A region is a geographically defined location for cloud resources. Regions can be, for example, areas, availability zones, or racks. To improve high availability across regions, the same cluster can be distributed across different regions. For example... Figure 1 Cluster 1 is distributed across Region 1, Region 2, and Region 3; Cluster 2 is distributed across Region 1 and Region 2; and Cluster 3 is distributed across Region 2 and Region 3. All clusters distributed across different regions serve as primary clusters to carry services.
[0049] The control system connects to the cluster to monitor the workload carried by the cluster and perform resource scheduling, configure elastic scaling policies for the cluster, and adjust the number of instances included in the cluster.
[0050] During cluster operation, regional failures may occur. Figure 1 Taking the system shown as an example, if Region 2 experiences a failure, Cluster 1, Cluster 2, and Cluster 3 within Region 2 become unavailable. Upon detecting the failure in Region 2, the upstream system redistributes the traffic originally carried by Cluster 1, Cluster 2, and Cluster 3 in Region 2 to other normally functioning regions, thus achieving disaster recovery. For instance, the upstream system redistributes the traffic carried by Cluster 1 in Region 2 to Cluster 1 in Region 1, the traffic carried by Cluster 2 in Region 2 to Cluster 2 in Region 1, and the traffic carried by Cluster 3 in Region 2 to Cluster 3 in Region 3. The traffic carried by Cluster 1 and Cluster 2 in Region 1 increases. The traffic carried by Cluster 3 in Region 3 also increases.
[0051] If the number of instances in Cluster 1, Cluster 2, and Cluster 3 of Region 1 are all configured based on normal business volume and there are no instances capable of handling sudden increases in business volume, the control system, upon detecting an increase in business volume, will allocate new instances to Cluster 1, Cluster 2, and Cluster 3 of Region 1 based on an elastic scaling strategy. However, the instance creation speed is slow, and Cluster 1, Cluster 2, and Cluster 3 of Region 1 cannot quickly handle the increased business volume, affecting normal business processing.
[0052] Currently, to cope with sudden increases in traffic, clusters are typically configured with a number of instances capable of handling such surges. For example, each instance in Cluster 1 of Region 1 and Region 2 is capable of handling 1Gbps (gigabits per second) of traffic. Cluster 1 in Region 1 typically handles 2Gbps of traffic. The control system configures four instances for Cluster 1 in Region 1. Two of these four instances are additionally allocated to handle sudden surges in traffic. Thus, in the event of a failure in Region 2, Cluster 1 in Region 1 can handle sudden surges in traffic based on the two additional allocated instances.
[0053] However, the number of instances currently allocated to the cluster by the control system is fixed and difficult to match with the processing needs of disaster recovery scenarios. The control system may allocate a large number of instances to the cluster. While a large number of instances can handle sudden surges in traffic during disaster recovery, it leads to resource waste due to underutilization of instances for processing. Conversely, the control system may allocate a small number of instances to the cluster. With a small number of instances, the cluster may not be able to handle sudden surges in traffic, requiring temporary scaling up and impacting normal service processing during disaster recovery.
[0054] Based on this, this application provides a cluster instance adjustment method. This cluster instance adjustment method can be executed by a control system. The control system is connected to the target cluster. The target cluster is distributed across multiple regions. Specifically, the control system obtains the current traffic volume of the target clusters in each region. Based on the current traffic volume of the target clusters in each region, the control system determines the target traffic volume of the target cluster in the first region. The target traffic volume is the traffic volume that the target cluster in the first region needs to handle. The control system then calculates the target number using the target traffic volume and the traffic volume handled by the instances of the target cluster in the first region. If the target number is greater than the number of instances of the target cluster in the first region, the control system adjusts the number of instances of the target cluster in the first region using the target number. Thus, the control system can determine the target number of instances to allocate to the target cluster in the first region based on the traffic volume that the target cluster in the first region needs to handle in a disaster recovery scenario. The target number is well-matched with the traffic handling requirements in a disaster recovery scenario, reducing the possibility of insufficient or excessive instance allocation.
[0055] Next, various non-limiting implementations of the cluster instance adjustment method will be described in detail.
[0056] See Figure 2 As shown, this figure is a flowchart illustrating a cluster instance adjustment method provided in an embodiment of this application. This method can be applied to... Figure 1 The method can be applied to the application scenarios shown, or to other applicable application scenarios. The method includes steps S201-S204.
[0057] S201: Obtain the current traffic volume of the target cluster in each region.
[0058] The target cluster is a cluster distributed across multiple regions. This application does not limit the number of regions where the target cluster is distributed. See also... Figure 1 As shown, the target clusters are, for example, cluster 1, cluster 2, or cluster 3. Each target cluster in each region is a primary cluster, handling the workload.
[0059] The current traffic volume of the target cluster in each region represents the traffic volume already handled by the target cluster in that region. This current traffic volume can be represented using traffic flow.
[0060] This application does not limit the method for obtaining the current traffic volume of target clusters in each region. As one example, the control system sends a traffic volume query request to the target clusters in each region to obtain the current traffic volume reported by the target clusters in each region. As another example, the target clusters in each region are pre-configured to actively report their current traffic volume to the control system. The control system then obtains the current traffic volume sent by the target clusters in each region.
[0061] In one possible implementation, the control system is pre-configured with a collection period for acquiring current traffic volume. Upon reaching the collection period, the control system acquires the current traffic volume of the target clusters in each region. In another possible implementation, the control system acquires the traffic volume of the target clusters in each region in real time. The current traffic volume of the target clusters in each region is calculated using the real-time traffic volume. For example, the average real-time traffic volume of the target clusters in a region acquired over a specific time period is calculated. This average value is then used as the current traffic volume of the target clusters in that region. For instance, the average real-time traffic volume of the target clusters in a region acquired over a ten-minute period is calculated, and this average value is then used as the current traffic volume of the target clusters in that region.
[0062] S202: Determine the target traffic volume of the target cluster in the first region based on the current traffic volume of the target cluster in each region.
[0063] When a region experiences a failure, the current traffic of the target cluster in the failed region may be redistributed to target clusters in other normally functioning regions. Based on the current traffic of the target clusters in each region, the traffic volume that the target cluster in the first region needs to handle can be estimated, thus determining the target traffic volume of the target cluster in the first region. Here, the first region is one of multiple regions where the target cluster is distributed.
[0064] This application does not limit the specific implementation method of determining the target traffic volume of the target cluster in the first region based on the current traffic volume of the target cluster in each region. It should be noted that the specific implementation methods of determining the target traffic volume of the target cluster in the first region based on the current traffic volume of the target cluster in each region are only examples.
[0065] In one possible implementation, the target traffic volume of the target cluster in the first region is determined based on the current traffic volume of the target cluster in the first region and the current traffic volume of the target clusters in other regions besides the first region. The other regions besides the first region are designated as the second region.
[0066] The current traffic volume of the target cluster in the first region is the determined traffic volume that the target cluster in the first region needs to handle. Based on the current traffic volume of the target cluster in the second region, we can determine the traffic volume that the target cluster in the first region might need to handle in the event of a failure in the second region. This allows for a relatively accurate estimation of the traffic volume that the target cluster in the first region needs to handle, thereby determining the number of instances that best match the business requirements.
[0067] In some possible implementations, the method for determining the target traffic volume is related to the number of regions where the target cluster is distributed.
[0068] As an example, the target cluster is distributed across two regions, with the second region containing only one cluster. For example, in... Figure 1 In the scenario shown, the target cluster is cluster 2, distributed across regions 1 and 2. With only one region, when a failure occurs in the second region, the traffic carried by the target cluster in the second region needs to be redistributed to the target cluster in the first region. The target traffic volume of the target cluster in the first region is the sum of the current traffic volume of the target cluster in the first region and the target traffic volume of the target cluster in the second region.
[0069] As another example, the target cluster is distributed across multiple regions, and the number of second regions is multiple. For example, in Figure 1 In the scenario shown, the target cluster is cluster 1, distributed across regions 1, 2, and 3. With multiple second regions, each region may fail. Considering the low probability of multiple second regions failing simultaneously, the maximum current traffic volume of the target cluster across all second regions is taken as the first traffic volume. The sum of the current traffic volume and the first traffic volume of the target cluster in the first region is taken as the target traffic volume of the target cluster in the first region. The determined target traffic volume of the target cluster in the first region is sufficient to handle the traffic volume required by the target cluster in the first region should a single second region fail.
[0070] As another example, when there are multiple second regions, if one second region fails, the upstream system can distribute the traffic load of the failed second region's target cluster to other regions, including the first region. In other words, the traffic load of the failed second region's target cluster can be handled by target clusters in multiple normally functioning regions. The proportion of traffic load from the failed second region's target cluster to the first region's target cluster is the carrying parameter. The second traffic load is the product of the maximum current traffic load of each second region's target cluster and the carrying parameter. The target traffic load of the first region's target cluster is the sum of the first region's target cluster's current traffic load and the second traffic load.
[0071] S203: Calculate the target quantity using the target traffic volume and the instance-carrying traffic volume of the target cluster in the first region.
[0072] After determining the workload that the target cluster in the first region needs to handle, i.e. the target workload, calculate the target number of instances that the target cluster in the first region needs to be configured with.
[0073] The service capacity of the target cluster instances in the first region is the service capacity that a single instance in the target cluster of the first region can handle.
[0074] This application does not limit the specific type of service volume carried by the instance of the target cluster in the first region.
[0075] In one possible implementation, the instance capacity of the target cluster in the first region is the expanded capacity. The expanded capacity is the minimum service load that an instance can handle when triggering the expansion of the target cluster instances in the first region. To ensure the stability of the cluster's service provision, the actual service load carried by an instance needs to be less than the maximum service load that the instance can theoretically handle. In some possible implementations, the expanded capacity of the target cluster in the first region is pre-configured. The expanded capacity is the service load that an instance can handle when providing optimal service performance. When the service load carried by the instances in the target cluster reaches the expanded capacity, the control system expands the target cluster, increasing the number of instances included in the target cluster. Using the target number determined by the expanded capacity ensures that the target cluster in the first region provides relatively stable service.
[0076] In another possible implementation, the instance's service capacity is the maximum service capacity. The maximum service capacity is the maximum service capacity that the instances in the target cluster of the first region can handle. The maximum service capacity is the theoretically maximum service capacity that an instance can handle. Using the maximum service capacity to determine the target can save instance resources and reduce costs.
[0077] This application does not limit the specific implementation method of determining the target quantity using the target traffic volume and the instance-carrying traffic volume of the target cluster in the first region. In one possible implementation, the target quantity is obtained by calculating the ratio of the target traffic volume to the instance-carrying traffic volume of the target cluster in the first region. If the ratio is not an integer, in one implementation, the decimal part of the ratio is ignored, and the integer part is used as the target quantity; in another implementation, the sum of the integer part of the ratio and 1 is used as the target quantity. In yet another possible implementation, the ratio of the target traffic volume to the instance-carrying traffic volume of the target cluster in the first region is calculated. Then, the obtained ratio is added to a pre-set fault tolerance number to obtain the target quantity. The fault tolerance number can be determined based on the number of instances included in the target cluster in the first region.
[0078] S204: If the target number is greater than the number of instances of the target cluster in the first region, allocate instances to the target cluster in the first region according to the target number.
[0079] The determined target quantity is compared with the number of instances in the target cluster of the first region. If the target quantity exceeds the number of instances in the target cluster of the first region, it indicates that the current number of instances in the target cluster of the first region is insufficient to handle the sudden surge in traffic required for disaster recovery. Instances are then allocated to the target cluster of the first region based on the target quantity. This allows the number of instances in the target cluster of the first region to be adjusted according to business needs in disaster recovery scenarios, ensuring that the number of instances in the target cluster of the first region matches the business processing requirements.
[0080] The embodiments of this application do not limit the specific implementation method of allocating instances to a target cluster with a target number of the first region.
[0081] In one possible implementation, the difference between the target number and the number of instances in the target cluster of the first region is calculated to obtain the number of new instances in the target cluster of the first region. This number of new instances is then allocated to the target cluster of the first region. This allows for pre-expansion of the target cluster of the first region, preparing for potential disaster recovery and enabling faster disaster recovery in the event of a failure.
[0082] In another possible implementation, the difference between the target number and the number of instances in the target cluster of the first region is calculated to obtain the number of instances to be configured. Instances to be configured are those used to expand the target cluster instances in the first region. These instances are not yet fully configured. The control system can establish a preheating resource pool in the first region and allocate instances to be configured to the preheating resource pool. When the target cluster in the first region needs to handle sudden surges in traffic, the control system configures the instances to be configured in the preheating resource pool and allocates them to the target cluster in the first region, achieving rapid expansion of the target cluster in the first region. It should be noted that the instances to be configured in the preheating resource pool do not belong to any specific cluster within the first region. The instances to be configured in the preheating resource pool are instances that are both to be configured and allocated. This allows the target cluster to expand rapidly in the event of a failure, while using fewer resources and incurring lower costs.
[0083] The following is based on Figure 1 The application scenarios shown are used to illustrate the cluster instance adjustment method provided in this application embodiment, combined with two specific implementation scenarios.
[0084] The first scenario: disaster recovery enhancement.
[0085] by Figure 1 Taking cluster 1 as an example, cluster 1 is distributed across regions 1, 2, and 3. There are 3 instances of cluster 1 in region 1, 5 instances of cluster 1 in region 2, and 7 instances of cluster 1 in region 3.
[0086] Cluster 1 includes instances with a maximum service capacity of 2Gbps. The expanded capacity is 51% of the maximum capacity, or 1.02Gbps. The upstream system allocates 2Gbps of service capacity to Cluster 1 in Region 1, 1Gbps to Cluster 1 in Region 2, and 5Gbps to Cluster 1 in Region 3.
[0087] See Figure 3 As shown, Figure 3 This diagram illustrates the allocation of service traffic by the upstream system in the event of a failure, as provided in an embodiment of this application. In the event of a failure in Region 1, the upstream system allocates 0 Gbps of service traffic to Cluster 1 in Region 1. The upstream system allocates a minimum of 1 Gbps and a maximum of 3 Gbps of service traffic to Cluster 1 in Region 2. The upstream system allocates a minimum of 5 Gbps and a maximum of 7 Gbps of service traffic to Cluster 1 in Region 3. In the event of a failure in Region 2, the upstream system allocates a minimum of 2 Gbps and a maximum of 3 Gbps of service traffic to Cluster 1 in Region 1. The upstream system allocates 0 Gbps of service traffic to Cluster 1 in Region 2. The upstream system allocates a minimum of 5 Gbps and a maximum of 6 Gbps of service traffic to Cluster 1 in Region 3. In the event of a failure in Region 3, the upstream system allocates a minimum of 2 Gbps and a maximum of 7 Gbps of service traffic to Cluster 1 in Region 1. The upstream system allocates a minimum of 1 Gbps and a maximum of 6 Gbps of service traffic to Cluster 1 in Region 2. The upstream system allocates 0 Gbps of service traffic to Cluster 1 in Region 3.
[0088] Based on the current traffic volume of cluster 1 in each region, determine the target traffic volume for cluster 1 in region i. The calculation formula is shown in formula (1).
[0089]
[0090] in, denoted as , where is the current traffic volume of cluster 1 in region i. 'a' represents the carrying parameter. This represents the maximum current traffic volume of cluster 1 in all regions except region i. The value of i is 1, 2, or 3. The value of k is 1, 2, or 3.
[0091] Taking the value of a as 1 as an example, the calculation formula for the target business volume of cluster 1 in region 1 is shown in formula (2).
[0092]
[0093] The formula for calculating the target traffic volume of cluster 1 in region 2 is shown in formula (3).
[0094]
[0095] The formula for calculating the target traffic volume of cluster 1 in region 3 is shown in formula (4).
[0096]
[0097] After determining the target traffic volume, the target quantity can be determined using the target traffic volume and the expanded capacity capacity. (See also...) Figure 4 As shown in the figure, this figure is a schematic diagram of a cluster instance adjustment process provided in an embodiment of this application.
[0098] The ratio of 7Gbps to 1.02Gbps is calculated to be 6.8. Based on this ratio, the target number of clusters 1 in region 1 is determined to be 7. The target number of 7 is greater than the target number of instances for cluster 1 in region 1 (3). The control system allocates 4 instances to cluster 1 in region 1. See [link to relevant documentation]. Figure 4 The instances of cluster 1 in region 1 shown by the dashed lines expand the number of instances of cluster 1 in region 1 to 7.
[0099] The ratio of 7Gbps to 1.02Gbps is calculated to be 5.8. Based on this ratio, the target number of clusters 1 in region 2 is determined to be 6. The target number of 6 is greater than the target number of instances for cluster 1 in region 2 (5). The control system allocates 1 instance to cluster 1 in region 2. (See below.) Figure 4 The instances of cluster 1 in region 1 shown by the dashed lines enable the expansion of cluster 1 instances in region 2 to 6.
[0100] The ratio of 7Gbps to 1.02Gbps is calculated to be 6.8. Based on this ratio, the target number of clusters 1 in region 3 is determined to be 7. The target number of 7 is equal to the number of instances in cluster 1 of region 3. The control system will not adjust the number of instances included in cluster 1 of region 3.
[0101] The second scenario: cost-first scenario.
[0102] by Figure 1 Taking cluster 3 as an example, cluster 3 is distributed across regions 2 and 3. There are 2 instances of cluster 3 in region 2 and 5 instances of cluster 3 in region 3.
[0103] Cluster 3 includes instances with a maximum service capacity of 2Gbps. The expanded capacity is 51% of the maximum capacity, or 1.02Gbps. The upstream system allocates 2Gbps of service capacity to Cluster 3 in Region 2 and 5Gbps of service capacity to Cluster 3 in Region 3.
[0104] See Figure 5 As shown, Figure 5 This is a schematic diagram illustrating another scenario where the upstream system allocates traffic during a failure, as provided in an embodiment of this application. In the event of a failure in Region 2, the upstream system allocates 0Gbps of traffic to cluster 3 in Region 2. The upstream system allocates 7Gbps of traffic to cluster 3 in Region 3. In the event of a failure in Region 3, the upstream system allocates 7Gbps of traffic to cluster 3 in Region 2. The upstream system allocates 0Gbps of traffic to cluster 3 in Region 3.
[0105] Based on the current traffic volume of cluster 3 in each region, determine the target traffic volume for cluster 3 in region j. The calculation formula is shown in formula (5).
[0106]
[0107] The formula for calculating the target traffic volume of cluster 3 in region 2 is shown in formula (6).
[0108]
[0109] The formula for calculating the target traffic volume of cluster 3 in region 3 is shown in formula (7).
[0110]
[0111] After determining the target traffic volume, the target quantity can be determined using the target traffic volume and the maximum carrying capacity. (See also...) Figure 6 As shown in the figure, this figure is a schematic diagram of another cluster instance adjustment process provided in an embodiment of this application.
[0112] The ratio of 7Gbps to 2Gbps is calculated to be 3.5. Based on this ratio, the target number of clusters 3 in region 2 is determined to be 4. This target number of 4 is greater than the target number of instances for cluster 3 in region 2 (2). The control system allocates 2 instances to be configured in the preheating resource pool of region 2. (See [link to relevant documentation]). Figure 6 The preheating resource pool in region 2 shown includes the instances indicated by the dashed lines, so that when the service load carried by the instances in cluster 3 of region 2 exceeds 1.02Gbps, the cluster can utilize the instances to be configured in the preheating resource pool for expansion.
[0113] The ratio of 7Gbps to 2Gbps is calculated to be 3.5. Based on this ratio, the target number of clusters 3 in region 3 is determined to be 4. Since the target number of 4 is less than the target number of instances in cluster 3 in region 3 (5), the control system does not allocate instance resources to region 3.
[0114] Based on the cluster instance adjustment method provided in the embodiments of this application, see [link to relevant documentation]. Figure 7As shown in the diagram, this application also provides a structural schematic of a cluster instance adjustment device 700. This cluster instance adjustment device 700 can achieve... Figure 2 The diagram illustrates a cluster instance adjustment method. This figure is a schematic structural diagram of a cluster instance adjustment device provided in an embodiment of this application. This cluster instance adjustment device is applied to a control system. The control system is connected to the target cluster. The target cluster is distributed across multiple regions. The cluster instance adjustment device 700 includes an acquisition module 701, a determination module 702, a calculation module 703, and an allocation module 704. For details on the functions of each module in the cluster instance adjustment device 700, please refer to [link to relevant documentation]. Figure 2 The relevant aspects of the illustrated embodiment are described below. The acquisition module 701 is used to implement... Figure 2 S201 of the illustrated embodiment; Determining module 702, used to implement Figure 2 S202 of the illustrated embodiment; Calculation module 703, used to implement Figure 2 S203 of the illustrated embodiment; allocation module 704, used to implement Figure 2 S204 of the illustrated embodiment.
[0115] Specifically, module 701 is used to obtain the current business volume of the target cluster in each region;
[0116] The determining module 702 is used to determine the target traffic volume of the target cluster in the first region based on the current traffic volume of the target cluster in each region. The first region is one of the multiple regions, and the target traffic volume is the traffic volume that the target cluster in the first region needs to carry.
[0117] The calculation module 703 is used to calculate the target quantity using the target traffic volume and the instance-bearing traffic volume of the target cluster in the first region.
[0118] The allocation module 704 is used to allocate instances to the target cluster in the first region according to the target number if the target number is greater than the number of instances of the target cluster in the first region.
[0119] In one possible implementation, the determining module 702 is specifically used to determine the target traffic volume of the target cluster in the first region based on the current traffic volume of the target cluster in the first region and the current traffic volume of the target cluster in the second region, wherein the second region is the region other than the first region among the plurality of regions.
[0120] In one possible implementation, the number of second regions is multiple, and the determining module 702 is used to determine the target traffic volume of the target cluster in the first region based on the current traffic volume of the target cluster in the first region and the current traffic volume of the target cluster in the second region, including:
[0121] The determining module 702 is specifically used to determine the sum of the current traffic volume of the target cluster in the first region and the first traffic volume as the target traffic volume of the target cluster in the first region, wherein the first traffic volume is the maximum value of the current traffic volume of the target cluster in each second region.
[0122] In one possible implementation, the number of second regions is multiple, and the determining module 702 is used to determine the target traffic volume of the target cluster in the first region based on the current traffic volume of the target cluster in the first region and the current traffic volume of the target cluster in the second region, including:
[0123] The determining module 702 is specifically used to determine the sum of the current traffic volume of the target cluster in the first region and the second traffic volume as the target traffic volume of the target cluster in the first region. The second traffic volume is the product of the maximum value of the current traffic volume of the target cluster in each second region and the carrying parameter. The carrying parameter is the proportion of the traffic volume of the target cluster in the first region carried by the target cluster in the second region.
[0124] In one possible implementation, the instance carrying capacity is the expanded carrying capacity, which is the minimum carrying capacity of the instance that triggers the expansion of the target cluster instance in the first region.
[0125] In one possible implementation, the allocation module 704 is configured to allocate instances to the target cluster in the first region according to the target quantity, including:
[0126] The allocation module 704 is specifically used to allocate new instances to the target cluster in the first region, wherein the number of new instances is the difference between the target number and the number of instances.
[0127] In one possible implementation, the instance's service capacity is the maximum service capacity, which is the maximum service capacity that the instance of the target cluster in the first region can carry.
[0128] In one possible implementation, the allocation module 704 is configured to allocate instances to the target cluster in the first region according to the target quantity, including:
[0129] The allocation module 704 is specifically used to allocate instances to be configured to the first region. The number of instances to be configured is the difference between the target number and the number of instances. The instances to be configured are used for the expansion of the target cluster instances in the first region.
[0130] Figure 8A schematic diagram of a computing device is shown. The aforementioned cluster instance adjustment device can be deployed on this computing device. This computing device can be a computing device in a cloud environment (such as a server), a computing device in an edge environment, or a terminal device, etc., specifically used to implement the above. Figure 7 The embodiments shown include the functions of the acquisition module 701, the determination module 702, the calculation module 703, and the allocation module 704.
[0131] like Figure 8 As shown, the computing device 800 includes a processor 810, a memory 820, a communication interface 830, and a bus 840. The processor 810, memory 820, and communication interface 830 communicate via the bus 840. The bus 840 can be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The bus can be divided into address bus, data bus, control bus, etc. For ease of representation, Figure 8 The symbol is represented by a single thick line, but this does not indicate that there is only one bus or one type of bus. The communication interface 830 is used for external communication, such as obtaining the current traffic volume of target clusters in various regions.
[0132] The processor 810 can be a central processing unit (CPU), an application-specific integrated circuit (ASIC), a graphics processing unit (GPU), or one or more integrated circuits. The processor 810 can also be an integrated circuit chip with signal processing capabilities. In implementation, the functions of each module in the cluster instance adjustment device can be accomplished through the integrated logic circuits in the hardware of the processor 810 or through software instructions. The processor 810 can also be a general-purpose processor, a digital signal processor (DSP), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components, capable of implementing or executing the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor, etc. The methods disclosed in the embodiments of this application can be directly embodied as execution by a hardware decoding processor, or execution by a combination of hardware and software modules in the decoding processor. The software modules can reside in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. The storage medium is located in the memory 820. The processor 810 reads the information in the memory 820 and, in conjunction with its hardware, completes some or all of the functions in the cluster instance adjustment device.
[0133] The memory 820 may include volatile memory, such as random access memory (RAM). The memory 820 may also include non-volatile memory, such as read-only memory (ROM), flash memory, HDD, or SSD.
[0134] The memory 820 stores executable code, which the processor 810 executes to perform the method performed by the aforementioned cluster instance adjustment device.
[0135] Specifically, in achieving Figure 7 In the case of the illustrated embodiment, and Figure 7 When the acquisition module 701, determination module 702, calculation module 703, and allocation module 704 described in the illustrated embodiment are implemented in software, the execution... Figure 7The software or program code required for the functions of the data acquisition module 701, determination module 702, calculation module 703 and allocation module 704 are stored in the memory 820. The interaction between the acquisition module 701 and other devices is realized through the communication interface 830. The processor is used to execute the instructions in the memory 820 to implement the method executed by the cluster instance adjustment device.
[0136] Figure 9 The diagram illustrates the structure of a computing device cluster. Figure 9 The computing device cluster 90 shown includes multiple computing devices, and the aforementioned cluster instance adjustment device can be distributed and deployed across multiple computing devices within the computing device cluster 90. For example... Figure 9 As shown, the computing device cluster 90 includes multiple computing devices 900. Each computing device 900 includes a memory 920, a processor 910, a communication interface 930, and a bus 940. The memory 920, processor 910, and communication interface 930 communicate with each other through the bus 940.
[0137] The processor 910 can be a CPU, GPU, ASIC, or one or more integrated circuits. The processor 910 can also be an integrated circuit chip with signal processing capabilities. In implementation, some functions of the cluster instance adjustment device can be accomplished through integrated logic circuits in the hardware of the processor 910 or through software instructions. The processor 910 can also be a DSP, FPGA, general-purpose processor, other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components, capable of implementing or executing some of the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of this application can be directly manifested as execution by a hardware decoding processor, or execution by a combination of hardware and software modules in the decoding processor. The software modules can reside in random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, or other mature storage media in the art. This storage medium is located in memory 920. In each computing device 900, the processor 910 reads information from memory 920, and in conjunction with its hardware, can complete some functions of the cluster instance adjustment device.
[0138] The memory 920 may include ROM, RAM, static storage devices, dynamic storage devices, hard disks (e.g., SSDs, HDDs), etc. The memory 920 may store program code, such as partial or complete program code for implementing the acquisition module 701, partial or complete program code for implementing the determination module 702, partial or complete program code for implementing the calculation module 703, and partial or complete program code for implementing the allocation module 704, etc. For each computing device 900, when the program code stored in the memory 920 is executed by the processor 910, the processor 910 executes a portion of the methods executed by the cluster instance adjustment device based on the communication interface 930. For example, one part of the computing devices 900 may be used to execute the methods executed by the data acquisition module 701 and the determination module 702, while another part of the computing devices 900 may be used to execute the methods executed by the calculation module 703 and the allocation module 704. The memory 920 may also store data, such as intermediate data or result data generated by the processor 910 during execution, such as the target traffic volume and target quantity, etc.
[0139] The communication interface 903 in each computing device 900 is used for communication with the outside world, such as interacting with other computing devices 900.
[0140] Bus 940 can be a standard bus for interconnecting peripheral components or an extended industry standard structure bus, etc. For ease of representation, Figure 9 The bus 940 within each computing device 900 is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.
[0141] The aforementioned multiple computing devices 900 establish communication channels through a communication network to realize the function of the cluster instance adjustment device. Any computing device can be a computing device in a cloud environment (e.g., a server), a computing device in an edge environment, or a terminal device.
[0142] Furthermore, embodiments of this application also provide a computer-readable storage medium storing instructions that, when executed on one or more computing devices, cause the one or more computing devices to perform the cluster instance adjustment method described above.
[0143] Furthermore, this application also provides a computer program product. When executed by one or more computing devices, the computer program product enables the computing devices to execute any of the aforementioned cluster instance adjustment methods. This computer program product can be a software installation package. When any of the aforementioned cluster instance adjustment methods needs to be used, the computer program product can be downloaded and executed on a computer.
[0144] It should also be noted that the device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. In addition, in the device embodiment drawings provided in this application, the connection relationship between modules indicates that they have a communication connection, which can be implemented as one or more communication buses or signal lines.
[0145] Through the above description of the embodiments, those skilled in the art can clearly understand that this application can be implemented by means of software plus necessary general-purpose hardware, or it can be implemented by special-purpose hardware including application-specific integrated circuits, special-purpose CPUs, special-purpose memory, special-purpose components, etc. Generally, any function performed by a computer program can be easily implemented by corresponding hardware, and the specific hardware structure used to implement the same function can also be diverse, such as analog circuits, digital circuits, or special-purpose circuits. However, for this application, software program implementation is more often the preferred implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a readable storage medium, such as a computer floppy disk, USB flash drive, mobile hard disk, ROM, RAM, magnetic disk, or optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, training equipment, or network device, etc.) to execute the methods described in the various embodiments of this application.
[0146] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented, in whole or in part, as a computer program product.
[0147] The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions may be transmitted from one website, computer, training device, or data center to another website, computer, training device, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium may be any available medium that a computer can store or a data storage device such as a training device or data center that integrates one or more available media. The available media may be magnetic media (e.g., floppy disks, hard disks, magnetic tapes), optical media (e.g., DVDs), or semiconductor media (e.g., solid-state drives (SSDs)).
Claims
1. A cluster instance adjustment method, characterized in that, The method is applied to a control system connected with a target cluster, the target cluster is distributed in multiple regions, and the method comprises: obtaining current traffic of the target cluster in each region; determining target traffic of the target cluster in a first region according to the current traffic of the target cluster in the first region and a maximum value of current traffic of the target cluster in a second region, the first region being one of the multiple regions, the second region being a region other than the first region among the multiple regions, and the target traffic being traffic that needs to be carried by the target cluster in the first region after the target cluster in the second region fails in a disaster recovery scenario; calculating a target number by using the target traffic and instance carrying traffic of the target cluster in the first region; if the target number is greater than an instance number of the target cluster in the first region, allocating instances to the target cluster in the first region according to the target number.
2. The method of claim 1, wherein, The number of the second regions is multiple, and the determining of the target traffic of the target cluster in the first region according to the current traffic of the target cluster in the first region and the maximum value of the current traffic of the target cluster in the second region comprises: determining a sum of the current traffic of the target cluster in the first region and a first traffic as the target traffic of the target cluster in the first region, the first traffic being a maximum value of the current traffic of the target cluster in each second region.
3. The method of claim 1, wherein, The number of the second regions is multiple, and the determining of the target traffic of the target cluster in the first region according to the current traffic of the target cluster in the first region and the maximum value of the current traffic of the target cluster in the second region comprises: determining a sum of the current traffic of the target cluster in the first region and a second traffic as the target traffic of the target cluster in the first region, the second traffic being a product of a maximum value of the current traffic of the target cluster in each second region and a carrying parameter, and the carrying parameter being a proportion of the target cluster in the first region carrying traffic of the target cluster in the second region.
4. The method of claim 1, wherein, The instance carrying traffic is expansion carrying traffic, and the expansion carrying traffic is a minimum carrying traffic of an instance triggering expansion of the target cluster in the first region.
5. The method of claim 4, wherein, The allocating of the instances to the target cluster in the first region according to the target number comprises: allocating new instances to the target cluster in the first region, and a number of the new instances being a difference between the target number and the instance number.
6. The method of claim 1, wherein, The instance carrying traffic is maximum carrying traffic, and the maximum carrying traffic is a maximum carrying traffic of the instance of the target cluster in the first region.
7. The method of claim 6, wherein, The allocating of the instances to the target cluster in the first region according to the target number comprises: allocating to-be-configured instances to the first region, a number of the to-be-configured instances being a difference between the target number and the instance number, and the to-be-configured instances being used for expansion of the target cluster in the first region.
8. A cluster instance adjustment apparatus characterized by comprising: The device is applied to a control system connected with a target cluster, the target cluster is distributed in multiple regions, and the device comprises: The acquisition module is configured to acquire current traffic of the target cluster in each region; The determination module is configured to determine a target traffic of the target cluster in a first region according to the current traffic of the target cluster in the first region and a maximum value of the current traffic of the target cluster in a second region, the first region being one of the multiple regions, the second region being a region other than the first region among the multiple regions, and the target traffic being an amount of traffic that needs to be carried by the target cluster in the first region after a target cluster in the second region fails in a disaster recovery scenario; The calculation module is configured to calculate a target number by using the target traffic and an instance carrying traffic of the target cluster in the first region. The allocation module is configured to allocate instances to the target cluster in the first region according to the target number if the target number is greater than the number of instances of the target cluster in the first region.
9. The apparatus of claim 8, wherein, The number of the second regions is multiple, and the determination module is configured to determine the target traffic of the target cluster in the first region according to the current traffic of the target cluster in the first region and a maximum value of the current traffic of the target cluster in each second region. The determination module is specifically configured to determine the target traffic of the target cluster in the first region as a sum of the current traffic of the target cluster in the first region and a first traffic, the first traffic being the maximum value of the current traffic of the target cluster in each second region.
10. The apparatus of claim 8, wherein, The number of the second regions is multiple, and the determination module is configured to determine the target traffic of the target cluster in the first region according to the current traffic of the target cluster in the first region and a maximum value of the current traffic of the target cluster in each second region. The determination module is specifically configured to determine the target traffic of the target cluster in the first region as a sum of the current traffic of the target cluster in the first region and a second traffic, the second traffic being a product of the maximum value of the current traffic of the target cluster in each second region and a carrying parameter, and the carrying parameter being a proportion of the target cluster in the first region carrying the traffic of the target cluster in the second region.
11. The apparatus of claim 8, wherein, The instance carrying traffic is an expansion carrying traffic, and the expansion carrying traffic is a minimum carrying traffic of an instance triggered for expansion of the target cluster in the first region.
12. The apparatus of claim 11, wherein, The allocation module is configured to allocate instances to the target cluster in the first region according to the target number, and the allocation module is specifically configured to allocate new instances to the target cluster in the first region, the number of the new instances being a difference between the target number and the number of the instances. The instance carrying traffic is a maximum carrying traffic, and the maximum carrying traffic is a maximum carrying traffic of the instance of the target cluster in the first region.
13. The apparatus of claim 8, wherein, The allocation module is configured to allocate instances to the target cluster in the first region according to the target number, and the allocation module is specifically configured to allocate to-be-configured instances to the first region, the number of the to-be-configured instances being a difference between the target number and the number of the instances, and the to-be-configured instances being used for expansion of the target cluster instance in the first region.
14. The apparatus of claim 13, wherein, 15. A cluster of computing devices, characterized in that, comprising at least one computing device, each computing device comprising a processor and a memory; the processor is configured to execute instructions stored in the memory to cause the cluster of computing devices to perform the method of any one of claims 1 to 7.
16. A computer-readable storage medium, characterized in that, a computer readable storage medium having stored therein instructions which, when executed on at least one computing device, cause the at least one computing device to perform the method of any one of claims 1 to 7.
17. A computer program product comprising instructions, characterized in that, instructions which, when executed on at least one computing device, cause the at least one computing device to perform the method of any one of claims 1 to 7.
Citation Information
Patent Citations
Distributed parallel task processing system based on Intelli-DSC (Intelligence-Data Service Center)
CN104484228A
Zone balancing in a multi cluster database system
US11372820B1