CN112306631A - Method, controller and host for scheduling kubernets resources - Google Patents

Method, controller and host for scheduling kubernets resources Download PDF

Info

Publication number
CN112306631A
CN112306631A CN202011098833.8A CN202011098833A CN112306631A CN 112306631 A CN112306631 A CN 112306631A CN 202011098833 A CN202011098833 A CN 202011098833A CN 112306631 A CN112306631 A CN 112306631A
Authority
CN
China
Prior art keywords
resources
node
level
pod
scheduling
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.)
Withdrawn
Application number
CN202011098833.8A
Other languages
Chinese (zh)
Inventor
马磊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202011098833.8A priority Critical patent/CN112306631A/en
Publication of CN112306631A publication Critical patent/CN112306631A/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5021Priority

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

The invention discloses a method, a controller and a host for kubernets resource scheduling, which comprises the following steps of S100, deploying a cluster environment and rating according to multi-node resources; s200, creating a new pod, judging whether node resources in a cluster corresponding to the new pod are sufficient currently, and scheduling according to the rating; s300, the new pod meets the resource condition and is successfully scheduled and operated; the invention reasonably schedules resources by combining dynamic resource scheduling with node resource integration, can efficiently utilize resources, improve the utilization rate of resources, can quickly run services, does not need to queue and wait to save time of customers, simultaneously does not release resources in a pod clearing mode, effectively saves services, ensures that the services can be continuously and effectively, and improves the use experience of the customers.

Description

Method, controller and host for scheduling kubernets resources
Technical Field
The invention relates to a method, a controller and a host for kubernets resource scheduling, and belongs to the technical field of artificial intelligence.
Background
The continuous development of the field of artificial intelligence is widely applied to a plurality of fields. Kubernets is widely applied to a deployment environment of a multi-node cluster as a brand-new container technology-based distributed architecture leading scheme, and in the current kubernets scheduling mode, when resources are insufficient, tasks can continue to queue until enough resources are available, and can be scheduled for use; or the low-level pod clears the released resources, so that neither new service requirements can be issued, nor services possibly used can be deleted by mistake, and finally bad influence is caused.
Disclosure of Invention
In view of the above technical problems, the present invention aims to: a method, a controller and a host for dispatching kubernets resources are provided, so that when the resources are insufficient, the resources can be reasonably dispatched on the premise of not clearing pod.
The technical solution of the invention is realized as follows: a method for kubernets resource scheduling includes the following steps,
s100, deploying a cluster environment, and rating according to multi-node resources;
s200, creating a new pod, judging whether node resources in a cluster corresponding to the new pod are sufficient currently, and scheduling according to the rating;
and S300, the new pod meets the resource condition and is successfully scheduled and operated.
Preferably, the multi-node resource rating level includes the original resource quantity and the comprehensive rating of each performance index of the CPU, the GPU, the MEM, and the disk, and the multi-node is rated as a high level, a medium level, and a low level.
Preferably, when the resources are sufficient, the new pod is scheduled to run on the high-level node resources.
Preferably, when the resources of the high-level node are insufficient, the new pod is scheduled to the middle-level node to run according to the node level from high to low.
Preferably, when the situation that resources are insufficient is generated by traversing all the nodes, the original pod already running on the high-level node is judged, the original pod is graded and evaluated, the resources allocated by the original pod of the low level are dynamically deleted, and partial resources are sparsely released.
Preferably, the high-level node recovers the released resources, integrates the remaining resources of the high-level node, and judges whether the resources meet the requirement of new pod operation again, and if the resources are sufficient, the resources are scheduled to the high-level node for operation.
Preferably, when the original pod in the high-level node is still insufficient to schedule the new pod after releasing the resources through dynamic pruning but can run to the nodes of the middle and low levels, the original pod is scheduled from the high-level node to the nodes of the middle and low levels, and the resources of the high-level node are released at the same time.
Preferably, after the high-level node releases the resources, traversing the node resources again, and determining whether the resource condition required to be met by the new pod operation is met, if so, scheduling the node to the high-level node after releasing the resources for operation, and if not, continuing to dynamically delete the node to release the resources until the node has enough resources for operation.
A controller for kubernets resource scheduling comprises a plurality of controllers with different functions, and the controller executes the method for kubernets resource scheduling.
A host of kubernets resource scheduling, comprising a plurality of hosts for managing a cloud platform, the hosts performing a method of kubernets resource scheduling of claim.
Due to the application of the technical scheme, compared with the prior art, the invention has the following advantages:
according to the method, the controller and the host for kubernets resource scheduling, resources are reasonably scheduled in a mode of combining dynamic scheduling of resources and node integration of resources, the resources can be efficiently utilized, the utilization rate of the resources is improved, services can be rapidly operated, queuing is not needed, and time of customers is saved. Meanwhile, resources cannot be released in a pod clearing mode, the service is effectively stored, the service can be continuously and effectively, and the use experience of a client is improved.
Drawings
The technical scheme of the invention is further explained by combining the accompanying drawings as follows:
fig. 1 is a schematic flow chart of a method for kubernets resource scheduling according to the present invention.
Detailed Description
The invention is described below with reference to the accompanying drawings.
Example one
Fig. 1 shows a method for kubernets resource scheduling according to the present invention, which includes the following steps,
s100, deploying a cluster environment, and rating according to multi-node resources; the multi-node resource evaluation level comprises the original resource quantity and the comprehensive evaluation of each performance index of a CPU, a GPU, MEM and a disk, and the multi-node is evaluated as a high level, a medium level and a low level;
s200, creating a new pod, judging whether node resources in a cluster corresponding to the new pod are sufficient currently, and scheduling according to the rating; when the resources are sufficient, scheduling the new pod to the high-level node resources for operation; when the resources of the nodes at the high level are insufficient, scheduling the resources to the nodes at the middle level for operation by the new pod according to the sequence from the high level to the low level; when the situation that resources are insufficient is generated in all the nodes in traversal, judging the resource calling state of an original pod which is operated on a high-level node, carrying out hierarchical evaluation on the original pod, dynamically deleting the resources distributed by the original pod of a low level, and sparsely releasing partial resources; the high-level node recovers the released resources, integrates the residual resources of the high-level node, judges whether the resources meet the resource conditions required to be met by the new pod operation again, and dispatches the resources to the high-level node for operation if the resources meet the resource conditions; when the original pod in the high-level node releases resources through dynamic deletion, the original pod is not enough to be scheduled to a new pod, but can be operated to the nodes of middle and low levels, the original pod is scheduled to the nodes of middle and low levels from the high-level node; traversing the node resources again after the high-level node releases the resources, judging whether the resource conditions required to be met by the new pod operation are met, if so, scheduling the node to be operated after the resources are released, otherwise, continuing to dynamically delete the released resources until the node can have enough resources to operate
And S300, the new pod meets the resource condition and is successfully scheduled and operated.
Example two
A method for dispatching kubernets resources comprises the following steps that S100, a cluster to which a current environment belongs is deployed, a plurality of nodes including a master, a node and the like are contained in the cluster, a user can add node grade labels in a configuration file according to deployment conditions, grades of the nodes are configured according to hardware conditions such as node resource configuration and performance data after deployment, and the nodes can be divided into different priority grades such as high, medium and low.
S200, when a user issues a service, a new pod is created in the bottom layer to first determine whether the current resource is sufficient? And at the moment, whether the resources of the high-level node are sufficient or not is preferentially judged, if so, the high-level node is directly scheduled to operate, and the new pod can be ensured to well utilize the high-efficiency resources.
S300, when the resources of the high-level node are judged to be insufficient during the creation of the new pod, whether the resources of the middle-level node are sufficient is judged according to the priority sequence from high to low, and when the resources are sufficient, the middle-level node is scheduled to run, so that the task can be guaranteed to run normally.
S400, when the new pod is created and all node resources are judged to be insufficient, the operated original pod on the high-level node is judged preferentially, the operated original pod is graded, and the performance indexes such as the CPU, the GPU and the mem are judged comprehensively according to the operation duration of the operated original pod.
S500, classifying the original pod according to the judgment condition, wherein the low-level pod can dynamically release the allocated resources, such as CPU, GPU, mem and the like, the original pod can continuously keep running by using the minimized resources, after the allocated resources are dynamically released, the current node recovers the released resources, whether the created new pod resource quota is met is judged, and if the created new pod resource quota is met, the node is scheduled to run.
S600, when the low-level original pod is used for dynamically releasing resources and the resources are recycled by the high-level node, the new pod judges that the resources do not meet the scheduling, and at the moment, the low-level original pod of the released resources judges whether enough resources can run on the middle-level node and the low-level node according to the released resource quota; and if the node can operate, scheduling the low-level original pod of the minimum resource to the middle-level node and the low-level node, releasing the resource of the high-level node, recovering the resource again, judging whether the resource is enough again by the new pod, and directly scheduling the node to operate at the high level when the resource is enough.
S700, when the low-level node of the high-level node dynamically releases and drives away the high-level node and the released resource still does not meet the scheduling resource, traversing the resources in the steps S500 and S600 again until the resource is sufficient, meeting the scheduling condition and being successfully scheduled.
EXAMPLE III
In order to protect the invention more fully, the application also protects a controller for kubernets resource scheduling, which comprises a plurality of controllers with different functions, and the controller executes the method for kubernets resource scheduling.
Example four
In order to protect the invention more fully, the application also protects a host of kubernets resource scheduling, which comprises a plurality of hosts for managing the cloud platform, and the host executes the method of kubernets resource scheduling.
According to the method, the controller and the host for kubernets resource scheduling, resources are reasonably scheduled in a mode of combining dynamic scheduling of resources and node integration of resources, the resources can be efficiently utilized, the utilization rate of the resources is improved, services can be rapidly operated, queuing is not needed, and time of customers is saved. Meanwhile, resources cannot be released in a pod clearing mode, the service is effectively stored, the service can be continuously and effectively, and the use experience of a client is improved.
The above-mentioned embodiments are merely illustrative of the technical idea and features of the present invention, and the purpose thereof is to enable those skilled in the art to understand the contents of the present invention and implement the present invention, and not to limit the scope of the present invention, and all equivalent changes or modifications made according to the spirit of the present invention should be covered in the scope of the present invention.

Claims (10)

1. A method for resource scheduling of kubernets is characterized in that: comprises the following steps of (a) carrying out,
s100, deploying a cluster environment, and rating according to multi-node resources;
s200, creating a new pod, judging whether node resources in a cluster corresponding to the new pod are sufficient currently, and scheduling according to the rating;
and S300, the new pod meets the resource condition and is successfully scheduled and operated.
2. The method of claim 1, wherein: the multi-node resource evaluation level comprises the original resource quantity and the comprehensive evaluation of each performance index of a CPU, a GPU, MEM and a disk, and the multi-node is evaluated to be a high level, a medium level and a low level.
3. The method of claim 2, wherein: and when the resources are sufficient, scheduling the new pod to run on the high-level node resources.
4. The method of claim 2, wherein: and when the resources of the high-level nodes are insufficient, scheduling the resources to the middle-level nodes for operation by the new pod according to the node level from high to low.
5. The method of claim 2, wherein: when the situation that resources are insufficient is generated by traversing all the nodes, the original pod which is operated on the high-level node is judged, the original pod is graded and evaluated, the resources which are distributed by the original pod with the low level are dynamically deleted, and partial resources are sparsely released.
6. The method of claim 5, wherein: and the high-level node recovers the released resources, integrates the residual resources of the high-level node, judges whether the resources meet the requirement of new pod operation again, and dispatches the resources to the high-level node for operation if the resources are sufficient.
7. The method of claim 5, wherein: when the original pod in the high-level node releases resources through dynamic deletion, the new pod is still not enough to be scheduled, but the original pod can be scheduled to the nodes of the middle and low levels, and the resources of the high-level node are released at the same time.
8. The method of claim 7, wherein: and traversing the node resources again after the high-level node releases the resources, judging whether the resource conditions required to be met by the new pod operation are met, if so, scheduling the node to the high-level node after the resources are released, and if not, continuing dynamically deleting the node to release the resources until the node has enough resources to operate.
9. A controller for kubernets resource scheduling, comprising a plurality of controllers having different functions, characterized in that: the controller performing a method of kubernets resource scheduling of any of claims 1-8.
10. A host of kubernets resource scheduling, comprising a plurality of hosts for managing a cloud platform, characterized by: the host performing a method of kubernets resource scheduling of any of claims 1-8.
CN202011098833.8A 2020-10-14 2020-10-14 Method, controller and host for scheduling kubernets resources Withdrawn CN112306631A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011098833.8A CN112306631A (en) 2020-10-14 2020-10-14 Method, controller and host for scheduling kubernets resources

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011098833.8A CN112306631A (en) 2020-10-14 2020-10-14 Method, controller and host for scheduling kubernets resources

Publications (1)

Publication Number Publication Date
CN112306631A true CN112306631A (en) 2021-02-02

Family

ID=74326819

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011098833.8A Withdrawn CN112306631A (en) 2020-10-14 2020-10-14 Method, controller and host for scheduling kubernets resources

Country Status (1)

Country Link
CN (1) CN112306631A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113391921A (en) * 2021-06-16 2021-09-14 浪潮云信息技术股份公司 Resource quota checking method for application example
US11755375B2 (en) 2021-11-29 2023-09-12 Red Hat, Inc. Aggregating host machines into a single cloud node for workloads requiring excessive resources

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113391921A (en) * 2021-06-16 2021-09-14 浪潮云信息技术股份公司 Resource quota checking method for application example
US11755375B2 (en) 2021-11-29 2023-09-12 Red Hat, Inc. Aggregating host machines into a single cloud node for workloads requiring excessive resources

Similar Documents

Publication Publication Date Title
CN111399989B (en) Container cloud-oriented task preemption and scheduling method and system
CN109117265A (en) The method, apparatus, equipment and storage medium of schedule job in the cluster
CN112306631A (en) Method, controller and host for scheduling kubernets resources
US9697053B2 (en) System and method for managing excessive distribution of memory
US8904395B2 (en) Scheduling events in a virtualized computing environment based on a cost of updating scheduling times or mapping resources to the event
KR20220006490A (en) Hybrid cloud resource allocation method for workload dynamic resource placement and optimization performance management
TW200401529A (en) System and method for the allocation of grid computing workload to network workstations
CN102971724A (en) Methods and apparatus related to management of unit-based virtual resources within a data center environment
CN111381928B (en) Virtual machine migration method, cloud computing management platform and storage medium
CN108205461A (en) The virtual platform and dispositions method of a kind of mixed deployment
CN109783225B (en) Tenant priority management method and system of multi-tenant big data platform
CN113867959A (en) Training task resource scheduling method, device, equipment and medium
CN103885811B (en) Method, system and device that dummy machine system total system is migrated online
CN106095569A (en) A kind of cloud workflow engine scheduling of resource based on SLA and control method
CN111552558A (en) Scheduling method and device of heterogeneous cloud resources
CN108762687A (en) I/O service quality control method, device, equipment and storage medium
CN105516267B (en) Cloud platform efficient operation method
CN110737485A (en) workflow configuration system and method based on cloud architecture
CN105824705B (en) A kind of method for allocating tasks and electronic equipment
CN110362426A (en) A kind of selective copy realization method and system towards sudden load
CN101030884B (en) Method for scheduling independent resource in telecommunication network resource OSS system
CN112596904A (en) Quantum service resource calling optimization method based on quantum cloud platform
CN116578570A (en) Method, system and equipment for automatically optimizing table data structure layout
US20230155958A1 (en) Method for optimal resource selection based on available gpu resource analysis in large-scale container platform
CN116389591A (en) Cross-domain-based distributed processing system and scheduling optimization method

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
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20210202