CN114265676A - Cluster resource scheduling method, device, equipment and medium - Google Patents
Cluster resource scheduling method, device, equipment and medium Download PDFInfo
- Publication number
- CN114265676A CN114265676A CN202111496693.4A CN202111496693A CN114265676A CN 114265676 A CN114265676 A CN 114265676A CN 202111496693 A CN202111496693 A CN 202111496693A CN 114265676 A CN114265676 A CN 114265676A
- Authority
- CN
- China
- Prior art keywords
- scheduling
- resource
- resource scheduling
- cluster
- task
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 71
- 238000004422 calculation algorithm Methods 0.000 claims description 15
- 238000012545 processing Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 9
- 238000004590 computer program Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Multi Processors (AREA)
Abstract
The invention provides a method, a device, equipment and a medium for dispatching cluster resources, wherein the method comprises the following steps: acquiring resource scheduling tasks of each tenant in a preset time period; determining a scheduling priority corresponding to each resource scheduling task according to each resource scheduling task and the matched preset resource scheduling threshold range; determining cluster scheduling resources corresponding to each resource scheduling task in each scheduling priority according to each scheduling priority and a preset scheduling priority sequence; and scheduling the cluster scheduling resources corresponding to each resource scheduling task. The cluster resource scheduling method takes the scheduling priority of the resource scheduling task of each tenant into consideration in a multi-tenant scene, so that the resource scheduling can be carried out by taking the scheduling priority as a reference, and the utilization efficiency of the whole cluster resources is improved.
Description
Technical Field
The present invention relates to the field of data processing technologies, and in particular, to a method, an apparatus, a device, and a medium for scheduling cluster resources.
Background
The concept of tenants is not limited to users of a cluster, and may include a set of workloads comprising a set of computing, memory, storage, etc. resources. In a multi-tenant cluster, different tenants need to be isolated as much as possible within a cluster range, so as to avoid resource contention among the tenants to the greatest extent, and meanwhile, it is necessary to ensure that shared cluster resources are distributed fairly among the tenants.
However, in the current cluster resource scheduling mode, for example, the resource scheduling mode of the Kubernetes cluster is to sequentially allocate resource scheduling tasks of each tenant, only the optimal resource scheduling mode under the condition of the current resource scheduling task is considered, and a scene of multi-resource scheduling tasks formed by multiple tenants is not considered. Under the condition of multi-resource scheduling tasks of multiple tenants, the utilization efficiency of the overall resources of the cluster is low.
Disclosure of Invention
The invention provides a cluster resource scheduling method, a cluster resource scheduling device, cluster resource scheduling equipment and a cluster resource scheduling medium, which are used for solving the problem that the utilization efficiency of the whole cluster resources is low in the current cluster resource scheduling mode under the multi-resource scheduling task scene of multiple tenants.
A first aspect of the present invention provides a method for scheduling cluster resources, including:
acquiring resource scheduling tasks of each tenant in a preset time period;
determining a scheduling priority corresponding to each resource scheduling task according to each resource scheduling task and the matched preset resource scheduling threshold range;
determining cluster scheduling resources corresponding to each resource scheduling task in each scheduling priority according to each scheduling priority and a preset scheduling priority sequence;
and scheduling the cluster scheduling resources corresponding to each resource scheduling task.
Further, the method as described above, the resource scheduling task includes a resource to be scheduled requested by a tenant;
the determining the scheduling priority corresponding to each resource scheduling task according to each resource scheduling task and the matched preset resource scheduling threshold range includes:
comparing each resource to be scheduled with a matched preset resource scheduling threshold range to generate a comparison result;
and determining the scheduling priority corresponding to each resource scheduling task according to each comparison result.
Further, the determining the scheduling priority corresponding to each resource scheduling task according to each comparison result in the method described above includes:
if the comparison result is that each resource to be scheduled is smaller than the minimum value of the matched preset resource scheduling threshold range, determining that the scheduling priority of the resource scheduling task is high;
if the comparison result is that each resource to be scheduled is in the matched preset resource scheduling threshold range, determining the scheduling priority of the resource scheduling task as middle;
if the comparison result is that each resource to be scheduled is equal to the maximum value of the matched preset resource scheduling threshold range, determining that the scheduling priority of the resource scheduling task is low;
and if the comparison result is that each resource to be scheduled is larger than the maximum value of the matched preset resource scheduling threshold range, determining the resource scheduling task as the resource scheduling task of the next preset time period.
Further, the method for determining cluster scheduling resources corresponding to each resource scheduling task in each scheduling priority according to each scheduling priority and a preset scheduling priority order includes:
according to the sequence from the scheduling priority to the scheduling priority, and aiming at each resource scheduling task of each scheduling priority, the following processing is carried out:
judging whether cluster nodes matched with all resource scheduling tasks in the current scheduling priority exist in the cluster; the matched cluster node comprises a plurality of servers; the idle resources of the servers are larger than the resources to be scheduled of the matched resource scheduling tasks;
if the resource scheduling tasks exist, determining a server with the lowest idle rate in the cluster nodes matched with the resource scheduling tasks;
and determining the idle resources of the server with the lowest idle rate as cluster scheduling resources corresponding to each resource scheduling task.
Further, the method as described above, the determining a server with the lowest idle rate in the cluster nodes matched by each resource scheduling task includes:
determining idle resources of the plurality of servers matched with each resource scheduling task;
dividing the difference value between the idle resource of each server and the resource to be scheduled of the corresponding resource scheduling task by the total resource limit of each server to generate the idle rate corresponding to each server;
and determining the server with the lowest idle rate according to the idle rate corresponding to each server.
Further, as described above, before determining the server with the lowest idle rate in the cluster node matched with each resource scheduling task, the method further includes:
judging whether a plurality of cluster nodes matched with each resource scheduling task in the current scheduling priority are available;
if a plurality of matched cluster nodes are determined, determining a server with the lowest idle rate in the cluster nodes matched with the resource scheduling tasks aiming at each matched cluster node;
determining a preset cluster idle ratio algorithm output minimum value according to a server with the lowest idle ratio in each cluster node and a preset cluster idle ratio algorithm;
determining a server with the lowest idle rate matched with each resource scheduling task when the preset cluster idle rate algorithm outputs the minimum value as a target server;
the determining the idle resource of the server with the lowest idle ratio as the cluster scheduling resource corresponding to each resource scheduling task includes:
and determining the idle resources of each target server as cluster scheduling resources corresponding to each resource scheduling task.
Further, according to the method described above, if the current scheduling priority is high, and if there is no cluster node in the cluster that matches each resource scheduling task in the current scheduling priority, the method further includes:
acquiring scheduled cluster scheduling resources corresponding to the medium or low scheduling priority in the cluster;
distributing the scheduled cluster scheduling resources with the medium or low scheduling priority to each resource scheduling task of the current scheduling priority according to a preset scheduling strategy; and the preset scheduling strategy is to enable each scheduled cluster scheduling resource after resource scheduling to be larger than or equal to the minimum value of the corresponding preset resource scheduling threshold range.
A second aspect of the present invention provides a cluster resource scheduling apparatus, including:
the acquisition module is used for acquiring resource scheduling tasks of each tenant in a preset time period;
the priority determining module is used for determining the scheduling priority corresponding to each resource scheduling task according to each resource scheduling task and the matched preset resource scheduling threshold range;
the resource determining module is used for determining cluster scheduling resources corresponding to each resource scheduling task in each scheduling priority according to each scheduling priority and a preset scheduling priority sequence;
and the resource scheduling module is used for scheduling the cluster scheduling resources corresponding to each resource scheduling task.
Further, the apparatus as described above, the resource scheduling task includes a resource to be scheduled requested by a tenant;
the priority determination module is specifically configured to:
comparing each resource to be scheduled with a matched preset resource scheduling threshold range to generate a comparison result; and determining the scheduling priority corresponding to each resource scheduling task according to each comparison result.
Further, in the above apparatus, when determining the scheduling priority corresponding to each resource scheduling task according to each comparison result, the priority determining module is specifically configured to:
if the comparison result is that each resource to be scheduled is smaller than the minimum value of the matched preset resource scheduling threshold range, determining that the scheduling priority of the resource scheduling task is high; if the comparison result is that each resource to be scheduled is in the matched preset resource scheduling threshold range, determining the scheduling priority of the resource scheduling task as middle; if the comparison result is that each resource to be scheduled is equal to the maximum value of the matched preset resource scheduling threshold range, determining that the scheduling priority of the resource scheduling task is low; and if the comparison result is that each resource to be scheduled is larger than the maximum value of the matched preset resource scheduling threshold range, determining the resource scheduling task as the resource scheduling task of the next preset time period.
Further, in the apparatus described above, the resource determining module is specifically configured to:
according to the sequence from the scheduling priority to the scheduling priority, and aiming at each resource scheduling task of each scheduling priority, the following processing is carried out: judging whether cluster nodes matched with all resource scheduling tasks in the current scheduling priority exist in the cluster; the matched cluster node comprises a plurality of servers; the idle resources of the servers are larger than the resources to be scheduled of the matched resource scheduling tasks; if the resource scheduling tasks exist, determining a server with the lowest idle rate in the cluster nodes matched with the resource scheduling tasks; and determining the idle resources of the server with the lowest idle rate as cluster scheduling resources corresponding to each resource scheduling task.
Further, in the above apparatus, when determining the server with the lowest idle rate in the cluster nodes matched with each resource scheduling task, the resource determining module is specifically configured to:
determining idle resources of the plurality of servers matched with each resource scheduling task; dividing the difference value between the idle resource of each server and the resource to be scheduled of the corresponding resource scheduling task by the total resource limit of each server to generate the idle rate corresponding to each server; and determining the server with the lowest idle rate according to the idle rate corresponding to each server.
Further, the apparatus as described above, the resource determining module further configured to:
judging whether a plurality of cluster nodes matched with each resource scheduling task in the current scheduling priority are available; if a plurality of matched cluster nodes are determined, determining a server with the lowest idle rate in the cluster nodes matched with the resource scheduling tasks aiming at each matched cluster node; determining a preset cluster idle ratio algorithm output minimum value according to a server with the lowest idle ratio in each cluster node and a preset cluster idle ratio algorithm; determining a server with the lowest idle rate matched with each resource scheduling task when the preset cluster idle rate algorithm outputs the minimum value as a target server;
when determining the idle resource of the server with the lowest idle ratio as the cluster scheduling resource corresponding to each resource scheduling task, the resource determining module is specifically configured to:
and determining the idle resources of each target server as cluster scheduling resources corresponding to each resource scheduling task.
Further, in the above apparatus, if the current scheduling priority is high, and if there is no cluster node in the cluster that matches each resource scheduling task in the current scheduling priority, the resource determining module is further configured to:
acquiring scheduled cluster scheduling resources corresponding to the medium or low scheduling priority in the cluster; distributing the scheduled cluster scheduling resources with the medium or low scheduling priority to each resource scheduling task of the current scheduling priority according to a preset scheduling strategy; and the preset scheduling strategy is to enable each scheduled cluster scheduling resource after resource scheduling to be larger than or equal to the minimum value of the corresponding preset resource scheduling threshold range.
A third aspect of the present invention provides an electronic device comprising: a memory, a processor;
a memory; a memory for storing the processor-executable instructions;
wherein the processor is configured to perform the cluster resource scheduling method of any one of the first aspect by the processor.
A fourth aspect of the present invention provides a computer-readable storage medium, in which computer-executable instructions are stored, and when the computer-executable instructions are executed by a processor, the computer-readable storage medium is configured to implement the cluster resource scheduling method according to any one of the first aspects.
A fifth aspect of the invention provides a computer program product comprising a computer program which, when executed by a processor, implements the method for cluster resource scheduling of any of the first aspects.
The invention provides a method, a device, equipment and a medium for dispatching cluster resources, wherein the method comprises the following steps: acquiring resource scheduling tasks of each tenant in a preset time period; determining a scheduling priority corresponding to each resource scheduling task according to each resource scheduling task and the matched preset resource scheduling threshold range; determining cluster scheduling resources corresponding to each resource scheduling task in each scheduling priority according to each scheduling priority and a preset scheduling priority sequence; and scheduling the cluster scheduling resources corresponding to each resource scheduling task. According to the cluster resource scheduling method, the resource scheduling tasks of each tenant in the preset time period are obtained, the scheduling priority corresponding to each resource scheduling task is determined according to each resource scheduling task and the matched preset resource scheduling threshold range, and therefore the cluster scheduling resources corresponding to each resource scheduling task in each scheduling priority are determined according to the preset scheduling priority sequence aiming at each scheduling priority, and the cluster scheduling resources corresponding to each resource scheduling task are scheduled. The cluster resource scheduling method takes the scheduling priority of the resource scheduling task of each tenant into consideration in a multi-tenant scene, so that the resource scheduling can be carried out by taking the scheduling priority as a reference, and the utilization efficiency of the whole cluster resources is improved.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and together with the description, serve to explain the principles of the invention.
Fig. 1 is a scene diagram of a cluster resource scheduling method that can implement the embodiment of the present invention;
fig. 2 is a schematic flowchart of a cluster resource scheduling method according to a first embodiment of the present invention;
fig. 3 is a schematic flowchart of a cluster resource scheduling method according to a second embodiment of the present invention;
fig. 4a is a schematic diagram of a preset resource scheduling threshold range of a tenant a in the cluster resource scheduling method according to the second embodiment of the present invention;
fig. 4B is a schematic diagram of a preset resource scheduling threshold range of a tenant B in the cluster resource scheduling method according to the second embodiment of the present invention;
fig. 4C is a schematic diagram of a preset resource scheduling threshold range of a tenant C in the cluster resource scheduling method according to the second embodiment of the present invention;
fig. 5 is a schematic diagram of scheduling priorities of a cluster resource scheduling method according to a second embodiment of the present invention;
fig. 6 is a schematic structural diagram of a cluster resource scheduling apparatus according to a third embodiment of the present invention;
fig. 7 is a schematic structural diagram of an electronic device according to a fourth embodiment of the present invention.
With the above figures, certain embodiments of the invention have been illustrated and described in more detail below. The drawings and the description are not intended to limit the scope of the inventive concept in any way, but rather to illustrate it by those skilled in the art with reference to specific embodiments.
Detailed Description
Reference will now be made in detail to the exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, like numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present invention. Rather, they are merely examples of apparatus and methods consistent with certain aspects of the invention, as detailed in the appended claims.
The technical solution of the present invention will be described in detail below with specific examples. The following several specific embodiments may be combined with each other, and details of the same or similar concepts or processes may not be repeated in some embodiments. Embodiments of the present invention will be described below with reference to the accompanying drawings.
For a clear understanding of the technical solutions of the present application, a detailed description of the prior art solutions is first provided. In the gradual development of cloud data, leasing cluster resources is a common choice for companies or users. The concept of tenants is not limited to users of a cluster, and may include a set of workloads comprising a set of computing, memory, storage, etc. resources. Because the time when the tenants use the cluster resources is independent, a scene that multiple tenants demand the cluster resources at the same time occurs. At present, the resource scheduling of the cluster mainly provides local optimal selection for the resource scheduling task of a single tenant, and even if the resource scheduling tasks of a plurality of tenants exist at the same time, the local optimal selection of each resource scheduling task can be provided in a one-by-one mode. In this way, due to the weak isolation of tenant resources, resources created by tenants may be robbed, and meanwhile, the utilization efficiency of the overall resources of the cluster is low.
Therefore, aiming at the problem that the utilization efficiency of the overall cluster resources is low in the current cluster resource scheduling mode under the multi-resource scheduling task of multiple tenants in the prior art, the inventor finds out in research that in order to solve the problem, the uniqueness of the resource scheduling task of each tenant can be comprehensively considered, for example, the resource required by some resource scheduling tasks is more, the resource required by some resource scheduling tasks is less, and the like, the scheduling priority of each resource scheduling task is divided according to the uniqueness of the resource scheduling task of each tenant, so that the overall optimal resource scheduling is performed on each resource scheduling task according to the scheduling priority.
Specifically, resource scheduling tasks of each tenant in a preset time period are obtained, and scheduling priorities corresponding to the resource scheduling tasks are determined according to the resource scheduling tasks and a matched preset resource scheduling threshold range, so that cluster scheduling resources corresponding to the resource scheduling tasks in the scheduling priorities are determined according to a preset scheduling priority sequence for each scheduling priority, and therefore the cluster scheduling resources corresponding to the resource scheduling tasks are scheduled. The cluster resource scheduling method takes the scheduling priority of the resource scheduling task of each tenant into consideration in a multi-tenant scene, so that the resource scheduling can be carried out by taking the scheduling priority as a reference, and the utilization efficiency of the whole cluster resources is improved.
The inventor proposes a technical scheme of the application based on the creative discovery.
An application scenario of the cluster resource scheduling method provided in the embodiment of the present invention is described below. As shown in fig. 1, where 1 is an electronic device, 2 is a tenant, and 3 is a cluster. The network architecture of the application scenario corresponding to the cluster resource scheduling method provided by the embodiment of the invention comprises the following steps: electronic device 1, tenant 2, and cluster 3. The tenant 2 may establish a network connection with the electronic device 1 by using an electronic device used by each user, where the tenant 2 includes a plurality of tenants such as tenant a, tenant B, and tenant N, and the cluster 3 includes a plurality of cluster nodes such as cluster node a, cluster node B, and cluster node N.
When multiple tenants in tenant 2, such as tenant a, tenant B, and tenant N, send corresponding resource scheduling tasks A, B and N to electronic device 1, electronic device 1 determines a scheduling priority corresponding to each resource scheduling task according to resource scheduling tasks A, B and N and a preset resource scheduling threshold range matched with resource scheduling tasks A, B and N. The scheduling priority of the resource scheduling task a may be determined to be high assuming that the resource scheduling task a is smaller than the minimum value of the preset resource scheduling threshold range, the scheduling priority of the resource scheduling task B may be determined to be medium assuming that the resource scheduling task B is within the preset resource scheduling threshold range, and the scheduling priority of the resource scheduling task N may be determined to be low assuming that the resource scheduling task N is equal to the maximum value of the preset resource scheduling threshold range. Then, the electronic device 1 determines cluster scheduling resources corresponding to each resource scheduling task in each scheduling priority according to the scheduling priorities of the resource scheduling tasks A, B and N and a preset scheduling priority order, and finally, the electronic device 1 connects the clusters 3 to schedule the cluster scheduling resources corresponding to each resource scheduling task.
The embodiments of the present invention will be described with reference to the accompanying drawings.
Fig. 2 is a schematic flowchart of a cluster resource scheduling method according to a first embodiment of the present invention, and as shown in fig. 2, in this embodiment, an execution main body according to the embodiment of the present invention is a cluster resource scheduling device, and the cluster resource scheduling device may be integrated in an electronic device. The cluster resource scheduling method provided by this embodiment includes the following steps:
step S101, resource scheduling tasks of each tenant in a preset time period are obtained.
In this embodiment, the preset time period may be set according to a requirement, for example, ten minutes, one minute, and the like, so that the multiple resource scheduling tasks to be processed are divided in a time period manner.
The resource scheduling task of each tenant generally includes data such as resources to be scheduled of the tenant, a tenant identifier and the like, and the resources to be scheduled of the tenant refer to cluster resources which the tenant requests for scheduling.
The cluster resources include memory, processor resources, disk resources, etc. of each server in the cluster nodes. When the resource scheduling is carried out, the resource to be scheduled of the resource scheduling task can be rounded.
And step S102, determining the corresponding scheduling priority of each resource scheduling task according to each resource scheduling task and the matched preset resource scheduling threshold range.
In this embodiment, a resource scheduling threshold range is set for each tenant in advance, the minimum value of the resource scheduling threshold range should be corresponding to the minimum resource amount that the tenant normally operates, and the maximum value of the resource scheduling threshold range corresponds to the maximum resource amount when the tenant operates in excess. Generally, the cluster resource required by the tenant is within a preset resource scheduling threshold range.
If the cluster resource to be scheduled by a certain resource scheduling task is smaller than the minimum value of the resource scheduling threshold range, normal operation of the tenant cannot be met, and therefore the scheduling priority of the resource scheduling task can be set to be the highest first level. Similarly, if the cluster resource to be scheduled by a certain resource scheduling task is in the resource scheduling threshold range, it indicates that the scheduled cluster resource can meet the normal operation of the tenant, and there is a scheduled space, and the scheduling priority of the resource scheduling task can be set as the next level. If the cluster resource to be scheduled by a certain resource scheduling task is equal to the maximum value of the resource scheduling threshold range, the cluster resource to be scheduled can meet the normal operation of the tenant, and a larger scheduled space exists, so that the scheduling priority of the resource scheduling task can be set to be a next level. If the cluster resource to be scheduled by a certain resource scheduling task is larger than the maximum value of the resource scheduling threshold range, it indicates that the tenant is in an abnormal operating state at present, and the cluster resource scheduling can be performed after the tenant completes the execution of some programs, so that the scheduling priority of the resource scheduling task can be set to the lowest level.
Step S103, determining cluster scheduling resources corresponding to each resource scheduling task in each scheduling priority according to each scheduling priority and a preset scheduling priority sequence.
In this embodiment, the preset scheduling priority order is preferably an order from the highest gear to the lowest gear, and may also be set according to requirements, which is not limited in this embodiment.
For each resource scheduling task in each scheduling priority, the cluster scheduling resource corresponding to each resource scheduling task can be determined according to a random or preset sequence.
And step S104, scheduling the cluster scheduling resources corresponding to each resource scheduling task.
In this embodiment, after determining the cluster scheduling resource corresponding to each resource scheduling task, the cluster scheduling resource corresponding to each resource scheduling task may be scheduled.
The embodiment of the invention provides a cluster resource scheduling method, which comprises the following steps: and acquiring the resource scheduling task of each tenant in a preset time period. And determining the scheduling priority corresponding to each resource scheduling task according to each resource scheduling task and the matched preset resource scheduling threshold range. And determining cluster scheduling resources corresponding to each resource scheduling task in each scheduling priority according to each scheduling priority and a preset scheduling priority sequence. And scheduling the cluster scheduling resources corresponding to each resource scheduling task.
According to the cluster resource scheduling method, the resource scheduling tasks of each tenant in the preset time period are obtained, the scheduling priority corresponding to each resource scheduling task is determined according to each resource scheduling task and the matched preset resource scheduling threshold range, and therefore the cluster scheduling resources corresponding to each resource scheduling task in each scheduling priority are determined according to the preset scheduling priority sequence aiming at each scheduling priority, and the cluster scheduling resources corresponding to each resource scheduling task are scheduled. The cluster resource scheduling method of the embodiment of the invention considers the scheduling priority of the resource scheduling task of each tenant in a multi-tenant scene, thereby performing resource scheduling by taking the scheduling priority as a reference and improving the utilization efficiency of the whole cluster resources.
Fig. 3 is a schematic flow chart of a cluster resource scheduling method according to a second embodiment of the present invention, and as shown in fig. 3, the cluster resource scheduling method according to this embodiment further refines each step based on the cluster resource scheduling method according to the previous embodiment of the present invention. The cluster resource scheduling method provided by this embodiment includes the following steps.
Step S201, acquiring a resource scheduling task of each tenant within a preset time period.
In this embodiment, the implementation manner of step 201 is similar to that of step 101 in the previous embodiment of the present invention, and is not described in detail here.
Step S202, comparing each resource to be scheduled with the matched preset resource scheduling threshold range to generate a comparison result, wherein the resource scheduling task comprises the resource to be scheduled requested by the tenant.
In this embodiment, the comparison result may be a minimum value smaller than the preset resource scheduling threshold range, which is within the preset resource scheduling threshold range, equal to the maximum value of the preset resource scheduling threshold range, and larger than the maximum value of the preset resource scheduling threshold range.
Step S203, determining the corresponding scheduling priority of each resource scheduling task according to each comparison result.
Determining the scheduling priority corresponding to each resource scheduling task according to each comparison result may specifically be:
and if the comparison result is that each resource to be scheduled is smaller than the minimum value of the matched preset resource scheduling threshold range, determining that the scheduling priority of the resource scheduling task is high.
And if the comparison result shows that the resources to be scheduled are in the matched preset resource scheduling threshold range, determining the scheduling priority of the resource scheduling task as medium.
And if the comparison result is that each resource to be scheduled is equal to the maximum value of the matched preset resource scheduling threshold range, determining that the scheduling priority of the resource scheduling task is low.
And if the comparison result is that each resource to be scheduled is larger than the maximum value of the matched preset resource scheduling threshold range, determining the resource scheduling task as the resource scheduling task of the next preset time period.
A resource scheduling threshold range is set for each tenant in advance, the minimum value of the resource scheduling threshold range should meet the minimum resource quantity of normal operation of the tenant, and the maximum value of the resource scheduling threshold range corresponds to the maximum resource quantity of the tenant in excess operation. Generally, the cluster resource required by the tenant is within a preset resource scheduling threshold range.
If the cluster resource to be scheduled by a certain resource scheduling task is smaller than the minimum value of the resource scheduling threshold range, normal operation of the tenant cannot be met, and therefore the scheduling priority of the resource scheduling task can be set to be high. Similarly, if the cluster resource to be scheduled by a certain resource scheduling task is in the resource scheduling threshold range, it indicates that the scheduled cluster resource can meet the normal operation of the tenant, and there is a scheduled space, and the scheduling priority of the resource scheduling task can be set to be middle.
If the cluster resource to be scheduled by a certain resource scheduling task is equal to the maximum value of the resource scheduling threshold range, it indicates that the scheduled cluster resource can meet the normal operation of the tenant, and a larger scheduled space exists, and the scheduling priority of the resource scheduling task can be set to be low.
If the cluster resource to be scheduled by a certain resource scheduling task is larger than the maximum value of the resource scheduling threshold range, it indicates that the tenant is in an abnormal operating state at present, and the cluster resource scheduling can be performed after the tenant completes the execution of some programs, so that the resource scheduling task can be determined as the resource scheduling task of the next preset time period, the processing can be performed in the next preset time period, and the overall scheduling efficiency of all tenants is improved.
Step S204, determining cluster scheduling resources corresponding to each resource scheduling task in each scheduling priority according to each scheduling priority and a preset scheduling priority sequence.
In this embodiment, the implementation manner of step 204 is similar to that of step 103 in the previous embodiment of the present invention, and is not described in detail here.
Optionally, in this embodiment, determining, according to each scheduling priority and a preset scheduling priority order, a cluster scheduling resource corresponding to each resource scheduling task in each scheduling priority includes:
according to the sequence from the scheduling priority to the scheduling priority, and aiming at each resource scheduling task of each scheduling priority, the following processing is carried out:
and judging whether cluster nodes matched with all resource scheduling tasks in the current scheduling priority exist in the cluster. The matched cluster node includes a plurality of servers. And the idle resources of the plurality of servers are larger than the resources to be scheduled of the matched resource scheduling tasks.
And if the resource scheduling tasks exist, determining the server with the lowest idle rate in the cluster nodes matched with the resource scheduling tasks.
And determining the idle resources of the server with the lowest idle rate as the cluster scheduling resources corresponding to each resource scheduling task.
In this embodiment, the resource scheduling task with a high scheduling priority is processed first in a manner from a high scheduling priority to a low scheduling priority. Meanwhile, for each resource scheduling task in each scheduling priority, a server with the lowest idle rate in the matched cluster nodes needs to be determined. The minimum idle ratio represents that after the server provides resources to the tenant, the proportion of the idle resources of the server to all the resources of the server is the minimum among all the servers of the same cluster node. The purpose of the selection is to enable the scheduled server to be in a full-load operation state as much as possible after the resource scheduling, so that the resource utilization rate of the server is improved.
Optionally, in this embodiment, determining a server with the lowest idle rate in the cluster nodes matched with each resource scheduling task includes:
and determining idle resources of the plurality of servers matched with the resource scheduling tasks.
And dividing the difference value between the idle resource of each server and the resource to be scheduled of the corresponding resource scheduling task by the total resource limit of each server to generate the idle rate corresponding to each server.
And determining the server with the lowest idle rate according to the idle rate corresponding to each server.
In this embodiment, the lowest idle rate represents that the scheduled server can be in a full-load operating state as much as possible, and therefore, the difference between the idle resource of each server and the resource to be scheduled of the corresponding resource scheduling task needs to be considered to be divided by the total resource limit of each server.
Server resources may include disk, memory, and processor resources, thereby comprehensively considering all resources.
Optionally, in this embodiment, before determining the server with the lowest idle rate in the cluster node matched with each resource scheduling task, the method further includes:
and judging whether a plurality of cluster nodes matched with the resource scheduling tasks in the current scheduling priority are available.
And if the number of the matched cluster nodes is determined to be multiple, determining a server with the lowest idle rate in the cluster nodes matched with the resource scheduling tasks aiming at each matched cluster node.
And determining the output minimum value of the preset cluster idle ratio algorithm according to the server with the lowest idle ratio in each cluster node and the preset cluster idle ratio algorithm.
And determining the server with the lowest idle ratio matched with each resource scheduling task when the preset cluster idle ratio algorithm outputs the minimum value as a target server.
Determining the idle resources of the server with the lowest idle ratio as the cluster scheduling resources corresponding to each resource scheduling task, wherein the method comprises the following steps:
and determining the idle resources of each target server as cluster scheduling resources corresponding to each resource scheduling task.
In this embodiment, since the number of the resource scheduling tasks in each scheduling priority is multiple, when the cluster nodes matched with the resource scheduling tasks are also multiple, the number of the selectable schemes for the number of the resource scheduling tasks is also multiple. In order to trigger from the whole, the whole resource scheduling effect is better, and each selectable scheme needs to be further screened.
Assuming that the number of the resource scheduling tasks is 10, and the number of the cluster nodes matched with each resource scheduling task is 3, the finally formed resource scheduling scheme may have ten times of 3, and the best one of the schemes needs to be selected as the final resource scheduling scheme. In general, the server with the lowest idle rate in each cluster node matched with each resource scheduling task is selected as the final scheme.
Optionally, in this embodiment, if the current scheduling priority is high, and if there is no cluster node in the cluster that matches each resource scheduling task in the current scheduling priority, the method of this embodiment further includes:
and acquiring the scheduled cluster scheduling resources corresponding to the cluster with the medium or low scheduling priority.
And distributing the scheduled cluster scheduling resources with the medium or low scheduling priority to each resource scheduling task with the current scheduling priority according to a preset scheduling strategy. And the preset scheduling strategy is to enable each scheduled cluster scheduling resource after resource scheduling to be larger than or equal to the minimum value of the corresponding preset resource scheduling threshold range.
In this embodiment, in order to ensure the resource scheduling requirement with a high scheduling priority, when the idle resources of the server of each cluster node cannot meet the resource scheduling requirement with a high scheduling priority, the resource may be obtained from the historical resource scheduling task of the scheduled cluster scheduling resource.
For example, in the previous time period, the resource scheduling task with the scheduling priority of the cluster resource being medium or low is scheduled, the server resource in the cluster is occupied at this time, the occupied server resource can be obtained, and the scheduled cluster scheduling resource is distributed to each resource scheduling task with high scheduling priority under the condition that the resource scheduling task and the corresponding tenant can meet normal operation, so that the resource scheduling requirement of the current high scheduling priority is ensured.
Specifically, the amount of resources scheduled to the current high scheduling priority can be determined according to the scheduled cluster scheduling resources, and more resources can be scheduled to the resource scheduling task with the current high scheduling priority as far as possible under the condition that the scheduled cluster scheduling resources can meet the normal operation of the corresponding tenant after being scheduled again.
Step S205 schedules the cluster scheduling resources corresponding to each resource scheduling task.
In this embodiment, the implementation manner of step 205 is similar to that of step 104 in the previous embodiment of the present invention, and is not described in detail here.
In order to better understand the cluster resource scheduling method of this embodiment, a kubernets cluster is taken as an example and will be described in detail below.
Kubernets provides a default scheduler that is used by general systems to manage service clusters. The scheduler uses a mode of scheduling the resources of each tenant for the tasks, and cluster resources are scheduled according to a one-by-one processing mode, so that local optimization is achieved, and the overall situation is ignored.
In this embodiment, the cluster resource scheduling method of this embodiment may be applied while the original scheduling manner of kubernets is maintained. For each tenant, a corresponding resource scheduling threshold range is preset, and the two ends of the resource scheduling threshold range are respectively the minimum value of the resource to be guaranteed and the maximum value of the available resource of the tenant. When the minimum resource value of one tenant is not met, the tenant acquires resources in priority over other peer tenants, the minimum resource value is the lower limit of resources reserved by the tenant, and the resources applied by the tenant cannot exceed the maximum resource value.
As shown in fig. 4a, 4B and 4c, the tenants are also classified into various cases, for example, the overall resource demand of tenant B is small, and the overall resource demand of tenant a is large. The minimum resource value required by the tenant A is larger than the minimum resource value of the tenant B, and the maximum resource value of the tenant A is also larger than the maximum resource value of the tenant B. The minimum resource value of the tenant C is equal to the maximum resource value, which means that the resource demand of the tenant is very rigid, and the shared resource is not allowed to other tenants.
For the resource scheduling task, as shown in fig. 5, the resource scheduling task may be divided into a plurality of queues according to the scheduling priority level of the resource scheduling task, and the resource scheduling tasks with different scheduling priorities are allocated to different queues. Assuming that the scheduling priority is 1-3, the scheduling priority can be divided into a plurality of queues according to the scheduling priority, wherein the scheduling priority 1 comprises resource scheduling tasks 1-1, 1-2, 1-3 and the like, and similarly, the scheduling priority 2 comprises resource scheduling tasks 2-1, 2-2, 2-3, 2-4 and the like, and the scheduling priority 3 comprises resource scheduling tasks 3-1, 3-2 and 3-3.
The scheduling priority 1 is the highest priority and supports preemption of other resource scheduling tasks. The resource scheduling task of priority 2 supports allocation failure but not preemption. The resource scheduling task of priority 3 supports allocation failure and also supports preemption.
When resource scheduling of tenants is performed, it may be determined whether a Kubernetes default scheduling manner is used or the cluster resource scheduling method of this embodiment is used to be compatible with the two scheduling manners.
After the scheduling priority corresponding to the resource scheduling task corresponding to each tenant is determined, each resource scheduling task with the scheduling priority of 1 is processed, and then the resource scheduling tasks with the priorities of 2 and 3 are processed successively.
For each resource scheduling task with the priority level of 1, the resource scheduling tasks may be allocated one by one according to a preset order or a random order (and multiple times of random). Such as determining whether there are more free resources of the plurality of servers in the cluster node than the resource to be scheduled of the matched resource scheduling task. And determining whether the server normally operates, determining whether the resource scheduling task has requirements on the type and the like of the server, and the like.
And then selecting the server with the minimum idle rate from the matched servers.
In order to improve the accuracy and efficiency of resource scheduling, the server process with the minimum idle rate of the selection of each resource scheduling task with the priority 1 can be repeatedly performed for many times. And in each selection, different sequences and different matching cluster nodes are adopted.
And if the resources cannot be met, determining whether to preempt the resources which occupy the server resources and have low scheduling priority, wherein the resources with the minimum resource value need to be reserved for the preempted tenants during the preemption.
Then the same scheduling is done for priority 2 and priority 3, but no preemption-related calculations are performed during execution. Thereby completing the scheduling of all resource scheduling tasks.
Fig. 6 is a schematic structural diagram of a cluster resource scheduling apparatus according to a third embodiment of the present invention, and as shown in fig. 6, in this embodiment, the cluster resource scheduling apparatus 300 includes:
an obtaining module 301, configured to obtain a resource scheduling task of each tenant in a preset time period.
A priority determining module 302, configured to determine a scheduling priority corresponding to each resource scheduling task according to each resource scheduling task and a preset resource scheduling threshold range that is matched with the resource scheduling task.
And the resource determining module 303 is configured to determine, according to each scheduling priority and a preset scheduling priority order, a cluster scheduling resource corresponding to each resource scheduling task in each scheduling priority.
And the resource scheduling module 304 is configured to schedule the cluster scheduling resources corresponding to each resource scheduling task.
The cluster resource scheduling apparatus provided in this embodiment may execute the technical solution of the method embodiment shown in fig. 2, and the implementation principle and technical effect of the apparatus are similar to those of the method embodiment shown in fig. 2, which are not described in detail herein.
Meanwhile, the cluster resource scheduling device 300 according to the present invention is further refined based on the cluster resource scheduling device according to the previous embodiment.
Optionally, in this embodiment, the resource scheduling task includes a resource to be scheduled requested by a tenant.
The priority determination module 302 is specifically configured to:
and comparing each resource to be scheduled with the matched preset resource scheduling threshold range to generate a comparison result. And determining the scheduling priority corresponding to each resource scheduling task according to each comparison result.
Optionally, in this embodiment, when determining the scheduling priority corresponding to each resource scheduling task according to each comparison result, the priority determining module 302 is specifically configured to:
and if the comparison result is that each resource to be scheduled is smaller than the minimum value of the matched preset resource scheduling threshold range, determining that the scheduling priority of the resource scheduling task is high. And if the comparison result shows that the resources to be scheduled are in the matched preset resource scheduling threshold range, determining the scheduling priority of the resource scheduling task as medium. And if the comparison result is that each resource to be scheduled is equal to the maximum value of the matched preset resource scheduling threshold range, determining that the scheduling priority of the resource scheduling task is low. And if the comparison result is that each resource to be scheduled is larger than the maximum value of the matched preset resource scheduling threshold range, determining the resource scheduling task as the resource scheduling task of the next preset time period.
Optionally, in this embodiment, the resource determining module 303 is specifically configured to:
according to the sequence from the scheduling priority to the scheduling priority, and aiming at each resource scheduling task of each scheduling priority, the following processing is carried out: and judging whether cluster nodes matched with all resource scheduling tasks in the current scheduling priority exist in the cluster. The matched cluster node includes a plurality of servers. And the idle resources of the plurality of servers are larger than the resources to be scheduled of the matched resource scheduling tasks. And if the resource scheduling tasks exist, determining the server with the lowest idle rate in the cluster nodes matched with the resource scheduling tasks. And determining the idle resources of the server with the lowest idle rate as the cluster scheduling resources corresponding to each resource scheduling task.
Optionally, in this embodiment, when determining the server with the lowest idle rate in the cluster nodes matched with each resource scheduling task, the resource determining module 303 is specifically configured to:
and determining idle resources of the plurality of servers matched with the resource scheduling tasks. And dividing the difference value between the idle resource of each server and the resource to be scheduled of the corresponding resource scheduling task by the total resource limit of each server to generate the idle rate corresponding to each server. And determining the server with the lowest idle rate according to the idle rate corresponding to each server.
Optionally, in this embodiment, the resource determining module 303 is further configured to:
and judging whether a plurality of cluster nodes matched with the resource scheduling tasks in the current scheduling priority are available. And if the number of the matched cluster nodes is determined to be multiple, determining a server with the lowest idle rate in the cluster nodes matched with the resource scheduling tasks aiming at each matched cluster node. And determining the output minimum value of the preset cluster idle ratio algorithm according to the server with the lowest idle ratio in each cluster node and the preset cluster idle ratio algorithm. And determining the server with the lowest idle ratio matched with each resource scheduling task when the preset cluster idle ratio algorithm outputs the minimum value as a target server.
When determining the idle resource of the server with the lowest idle ratio as the cluster scheduling resource corresponding to each resource scheduling task, the resource determining module 303 is specifically configured to:
and determining the idle resources of each target server as cluster scheduling resources corresponding to each resource scheduling task.
Optionally, in this embodiment, if the current scheduling priority is high, and if there is no cluster node in the cluster that is matched with each resource scheduling task in the current scheduling priority, the resource determining module 303 is further configured to:
and acquiring the scheduled cluster scheduling resources corresponding to the cluster with the medium or low scheduling priority. And distributing the scheduled cluster scheduling resources with the medium or low scheduling priority to each resource scheduling task with the current scheduling priority according to a preset scheduling strategy. And the preset scheduling strategy is to enable each scheduled cluster scheduling resource after resource scheduling to be larger than or equal to the minimum value of the corresponding preset resource scheduling threshold range.
The cluster resource scheduling apparatus provided in this embodiment may execute the technical solutions of the method embodiments shown in fig. 2 to fig. 5, and the implementation principles and technical effects thereof are similar to those of the method embodiments shown in fig. 2 to fig. 5, and are not described in detail here.
The invention also provides an electronic device, a computer readable storage medium and a computer program product according to the embodiments of the invention.
As shown in fig. 7, fig. 7 is a schematic structural diagram of an electronic device according to a fourth embodiment of the present invention. Electronic devices are intended for various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, and other appropriate computers. The components shown herein, their connections and relationships, and their functions, are meant to be exemplary only, and are not meant to limit implementations of the inventions described and/or claimed herein.
As shown in fig. 7, the electronic apparatus includes: a processor 401, a memory 402. The various components are interconnected using different buses and may be mounted on a common motherboard or in other manners as desired. The processor may process instructions for execution within the electronic device.
The memory 402 is a non-transitory computer readable storage medium provided by the present invention. The memory stores instructions executable by the at least one processor, so that the at least one processor executes the cluster resource scheduling method provided by the present invention. The non-transitory computer readable storage medium of the present invention stores computer instructions for causing a computer to execute the cluster resource scheduling method provided by the present invention.
The memory 402, which is a non-transitory computer readable storage medium, may be used to store non-transitory software programs, non-transitory computer executable programs, and modules, such as program instructions/modules corresponding to the cluster resource scheduling method in the embodiment of the present invention (for example, the obtaining module 301, the priority determining module 302, the resource determining module 303, and the resource scheduling module 304 shown in fig. 6). The processor 401 executes various functional applications of the server and data processing by running non-transitory software programs, instructions and modules stored in the memory 402, that is, implements the cluster resource scheduling method in the above method embodiment.
Meanwhile, the present embodiment further provides a computer product, and when an instruction in the computer product is executed by a processor of an electronic device, the electronic device can execute the cluster resource scheduling method in the first to second embodiments.
Other embodiments of the invention will be apparent to those skilled in the art from consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of the embodiments of the invention following, in general, the principles of the embodiments of the invention and including such departures from the present disclosure as come within known or customary practice within the art to which the embodiments of the invention pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of embodiments of the invention being indicated by the following claims.
It is to be understood that the embodiments of the present invention are not limited to the precise arrangements described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of embodiments of the invention is limited only by the appended claims.
Claims (10)
1. A cluster resource scheduling method is characterized by comprising the following steps:
acquiring resource scheduling tasks of each tenant in a preset time period;
determining a scheduling priority corresponding to each resource scheduling task according to each resource scheduling task and the matched preset resource scheduling threshold range;
determining cluster scheduling resources corresponding to each resource scheduling task in each scheduling priority according to each scheduling priority and a preset scheduling priority sequence;
and scheduling the cluster scheduling resources corresponding to each resource scheduling task.
2. The method of claim 1, wherein the resource scheduling task comprises a resource to be scheduled requested by a tenant;
the determining the scheduling priority corresponding to each resource scheduling task according to each resource scheduling task and the matched preset resource scheduling threshold range includes:
comparing each resource to be scheduled with a matched preset resource scheduling threshold range to generate a comparison result;
and determining the scheduling priority corresponding to each resource scheduling task according to each comparison result.
3. The method according to claim 2, wherein the determining the scheduling priority corresponding to each resource scheduling task according to each comparison result comprises:
if the comparison result is that each resource to be scheduled is smaller than the minimum value of the matched preset resource scheduling threshold range, determining that the scheduling priority of the resource scheduling task is high;
if the comparison result is that each resource to be scheduled is in the matched preset resource scheduling threshold range, determining the scheduling priority of the resource scheduling task as middle;
if the comparison result is that each resource to be scheduled is equal to the maximum value of the matched preset resource scheduling threshold range, determining that the scheduling priority of the resource scheduling task is low;
and if the comparison result is that each resource to be scheduled is larger than the maximum value of the matched preset resource scheduling threshold range, determining the resource scheduling task as the resource scheduling task of the next preset time period.
4. The method according to claim 3, wherein the determining cluster scheduling resources corresponding to each resource scheduling task in each scheduling priority according to each scheduling priority and a preset scheduling priority order comprises:
according to the sequence from the scheduling priority to the scheduling priority, and aiming at each resource scheduling task of each scheduling priority, the following processing is carried out:
judging whether cluster nodes matched with all resource scheduling tasks in the current scheduling priority exist in the cluster; the matched cluster node comprises a plurality of servers; the idle resources of the servers are larger than the resources to be scheduled of the matched resource scheduling tasks;
if the resource scheduling tasks exist, determining a server with the lowest idle rate in the cluster nodes matched with the resource scheduling tasks;
and determining the idle resources of the server with the lowest idle rate as cluster scheduling resources corresponding to each resource scheduling task.
5. The method of claim 4, wherein the determining the server with the lowest idle rate in the cluster nodes matched with each resource scheduling task comprises:
determining idle resources of the plurality of servers matched with each resource scheduling task;
dividing the difference value between the idle resource of each server and the resource to be scheduled of the corresponding resource scheduling task by the total resource limit of each server to generate the idle rate corresponding to each server;
and determining the server with the lowest idle rate according to the idle rate corresponding to each server.
6. The method of claim 4, wherein before determining the server with the lowest idle rate in the cluster nodes matched with each resource scheduling task, further comprising:
judging whether a plurality of cluster nodes matched with each resource scheduling task in the current scheduling priority are available;
if a plurality of matched cluster nodes are determined, determining a server with the lowest idle rate in the cluster nodes matched with the resource scheduling tasks aiming at each matched cluster node;
determining a preset cluster idle ratio algorithm output minimum value according to a server with the lowest idle ratio in each cluster node and a preset cluster idle ratio algorithm;
determining a server with the lowest idle rate matched with each resource scheduling task when the preset cluster idle rate algorithm outputs the minimum value as a target server;
the determining the idle resource of the server with the lowest idle ratio as the cluster scheduling resource corresponding to each resource scheduling task includes:
and determining the idle resources of each target server as cluster scheduling resources corresponding to each resource scheduling task.
7. The method of claim 4, wherein if the current scheduling priority is high and if there are no cluster nodes in the cluster that match the resource scheduling tasks within the current scheduling priority, the method further comprises:
acquiring scheduled cluster scheduling resources corresponding to the medium or low scheduling priority in the cluster;
distributing the scheduled cluster scheduling resources with the medium or low scheduling priority to each resource scheduling task of the current scheduling priority according to a preset scheduling strategy; and the preset scheduling strategy is to enable each scheduled cluster scheduling resource after resource scheduling to be larger than or equal to the minimum value of the corresponding preset resource scheduling threshold range.
8. A cluster resource scheduling apparatus, comprising:
the acquisition module is used for acquiring resource scheduling tasks of each tenant in a preset time period;
the priority determining module is used for determining the scheduling priority corresponding to each resource scheduling task according to each resource scheduling task and the matched preset resource scheduling threshold range;
the resource determining module is used for determining cluster scheduling resources corresponding to each resource scheduling task in each scheduling priority according to each scheduling priority and a preset scheduling priority sequence;
and the resource scheduling module is used for scheduling the cluster scheduling resources corresponding to each resource scheduling task.
9. An electronic device, comprising: a processor, and a memory communicatively coupled to the processor;
the memory stores computer-executable instructions;
the processor executes the computer-executable instructions stored by the memory to implement the cluster resource scheduling method of any of claims 1 to 7.
10. A computer-readable storage medium having stored thereon computer-executable instructions for implementing the cluster resource scheduling method of any one of claims 1 to 7 when executed by a processor.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111496693.4A CN114265676B (en) | 2021-12-08 | 2021-12-08 | Cluster resource scheduling method, device, equipment and medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111496693.4A CN114265676B (en) | 2021-12-08 | 2021-12-08 | Cluster resource scheduling method, device, equipment and medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114265676A true CN114265676A (en) | 2022-04-01 |
CN114265676B CN114265676B (en) | 2024-08-27 |
Family
ID=80826695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111496693.4A Active CN114265676B (en) | 2021-12-08 | 2021-12-08 | Cluster resource scheduling method, device, equipment and medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114265676B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114756347A (en) * | 2022-04-19 | 2022-07-15 | 中国联合网络通信集团有限公司 | Cluster-based server resource scheduling method and device, cloud platform and medium |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107864211A (en) * | 2017-11-17 | 2018-03-30 | 中国联合网络通信集团有限公司 | Cluster resource dispatching method and system |
CN108268317A (en) * | 2016-12-30 | 2018-07-10 | 华为技术有限公司 | A kind of resource allocation methods and device |
CN109783225A (en) * | 2018-12-12 | 2019-05-21 | 华南理工大学 | A kind of tenant's priority management method and system of multi-tenant big data platform |
CN109992403A (en) * | 2017-12-30 | 2019-07-09 | 中国移动通信集团福建有限公司 | Optimization method, device, terminal device and the storage medium of multi-tenant scheduling of resource |
CN109992418A (en) * | 2019-03-25 | 2019-07-09 | 华南理工大学 | The multi-tenant big data platform resource priority level scheduling method and system of SLA perception |
WO2020000944A1 (en) * | 2018-06-25 | 2020-01-02 | 星环信息科技(上海)有限公司 | Preemptive scheduling based resource sharing use method, system and |
CN112534889A (en) * | 2018-08-09 | 2021-03-19 | 联想(新加坡)私人有限公司 | Uplink transmission power allocation |
-
2021
- 2021-12-08 CN CN202111496693.4A patent/CN114265676B/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108268317A (en) * | 2016-12-30 | 2018-07-10 | 华为技术有限公司 | A kind of resource allocation methods and device |
CN107864211A (en) * | 2017-11-17 | 2018-03-30 | 中国联合网络通信集团有限公司 | Cluster resource dispatching method and system |
CN109992403A (en) * | 2017-12-30 | 2019-07-09 | 中国移动通信集团福建有限公司 | Optimization method, device, terminal device and the storage medium of multi-tenant scheduling of resource |
WO2020000944A1 (en) * | 2018-06-25 | 2020-01-02 | 星环信息科技(上海)有限公司 | Preemptive scheduling based resource sharing use method, system and |
CN112534889A (en) * | 2018-08-09 | 2021-03-19 | 联想(新加坡)私人有限公司 | Uplink transmission power allocation |
CN109783225A (en) * | 2018-12-12 | 2019-05-21 | 华南理工大学 | A kind of tenant's priority management method and system of multi-tenant big data platform |
CN109992418A (en) * | 2019-03-25 | 2019-07-09 | 华南理工大学 | The multi-tenant big data platform resource priority level scheduling method and system of SLA perception |
Non-Patent Citations (4)
Title |
---|
YIQIAN XIA等: "Daphne: A Flexible and Hybrid Scheduling Framework in Multi-Tenant Clusters", 《IEEE TRANSACTIONS ON NETWORK AND SERVICE MANAGEMENT》, vol. 15, no. 1, 27 November 2017 (2017-11-27), pages 330 - 343 * |
刘一田等: "多租户高可用并行任务调度框架", 《计算机系统应用》, vol. 25, no. 12, 15 December 2016 (2016-12-15), pages 280 - 284 * |
杨鹏等: "云计算中最小化任务完工时间的多资源调度算法", 《计算机应用与软件》, vol. 34, no. 7, 15 July 2017 (2017-07-15), pages 1 - 6 * |
高倩: "面向云计算中多租户共享的资源分配和任务调度策略研究", 《中国优秀硕士学位论文全文数据库信息科技辑》, 15 September 2021 (2021-09-15), pages 139 - 63 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114756347A (en) * | 2022-04-19 | 2022-07-15 | 中国联合网络通信集团有限公司 | Cluster-based server resource scheduling method and device, cloud platform and medium |
CN114756347B (en) * | 2022-04-19 | 2024-06-11 | 中国联合网络通信集团有限公司 | Cluster-based server resource scheduling method and device, cloud platform and medium |
Also Published As
Publication number | Publication date |
---|---|
CN114265676B (en) | 2024-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108762896B (en) | Hadoop cluster-based task scheduling method and computer equipment | |
CN107688492B (en) | Resource control method and device and cluster resource management system | |
CN108268317B (en) | Resource allocation method and device | |
CN107066332B (en) | Distributed system and scheduling method and scheduling device thereof | |
Lin et al. | Scheduling scientific workflows elastically for cloud computing | |
US9471390B2 (en) | Scheduling mapreduce jobs in a cluster of dynamically available servers | |
CN107018091B (en) | Resource request scheduling method and device | |
US10686728B2 (en) | Systems and methods for allocating computing resources in distributed computing | |
CN107515786B (en) | Resource allocation method, master device, slave device and distributed computing system | |
CN106293893B (en) | Job scheduling method and device and distributed system | |
CN112463375B (en) | Data processing method and device | |
CN112540841B (en) | Task scheduling method and device, processor and electronic equipment | |
CN114787830A (en) | Machine learning workload orchestration in heterogeneous clusters | |
CN107682391B (en) | Electronic device, server allocation control method, and computer-readable storage medium | |
CN114168302A (en) | Task scheduling method, device, equipment and storage medium | |
CN106775975B (en) | Process scheduling method and device | |
CN114265676B (en) | Cluster resource scheduling method, device, equipment and medium | |
WO2020108337A1 (en) | Cpu resource scheduling method and electronic equipment | |
CN113760549B (en) | Pod deployment method and device | |
CN115640113A (en) | Multi-plane flexible scheduling method | |
CN111143063B (en) | Task resource reservation method and device | |
CN112860442A (en) | Resource quota adjusting method and device, computer equipment and storage medium | |
CN116308772B (en) | Transaction distribution method, node and blockchain system | |
US11843548B1 (en) | Resource scaling of microservice containers | |
CN115629854A (en) | Distributed task scheduling method, system, electronic device and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |