CN114301980A - Method, device and system for scheduling container cluster and computer readable medium - Google Patents

Method, device and system for scheduling container cluster and computer readable medium Download PDF

Info

Publication number
CN114301980A
CN114301980A CN202111627209.7A CN202111627209A CN114301980A CN 114301980 A CN114301980 A CN 114301980A CN 202111627209 A CN202111627209 A CN 202111627209A CN 114301980 A CN114301980 A CN 114301980A
Authority
CN
China
Prior art keywords
container cluster
cluster
container
module
resource
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.)
Pending
Application number
CN202111627209.7A
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.)
China Telecom Corp Ltd
Original Assignee
China Telecom Corp 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 China Telecom Corp Ltd filed Critical China Telecom Corp Ltd
Priority to CN202111627209.7A priority Critical patent/CN114301980A/en
Publication of CN114301980A publication Critical patent/CN114301980A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The application belongs to the technical field of cloud computing, and particularly relates to a method, a device and a system for scheduling a container cluster and a computer readable medium. The scheduling system includes: the system comprises a central resource pool global module, a first container cluster and a second container cluster, wherein the central resource pool global module comprises a global interface server, a resource coordination module and a multi-cluster communication agent module, resource information of the first container cluster and the second container cluster is obtained through the multi-cluster communication agent module and is sent to the resource coordination module so as to obtain the resource availability of each container cluster, the resource coordination module sends the collected resource availability to the global interface server, and if the global interface server receives an application issued by a user, the global interface server issues the application to the container cluster meeting preset conditions according to the resource availability of each container cluster. Therefore, the resource utilization rate is improved by grasping the resource availability of each container cluster.

Description

Method, device and system for scheduling container cluster and computer readable medium
Technical Field
The application belongs to the technical field of cloud computing, and particularly relates to a method, a device and a system for scheduling a container cluster and a computer readable medium.
Background
The flexible scaling capability of the Serverless container service has become an effective means for business efficient operation and maintenance management. Currently, kubernets (k8s) has become a de facto standard for constructing container services, the Serverless container service based on k8s can automatically perform dynamic scaling of instances based on the request quantity, and can even scale to 0 when no request exists, so that the resource utilization rate, the service availability and the operation and maintenance efficiency are greatly improved.
In edge computing scenarios, traffic often needs to scale between multiple clusters of containers in a distributed resource pool. However, the scaling mechanism of the current Serverless container service is realized based on the scheduling of a single k8s, lacks the resource coordination among a plurality of k8s clusters, and has low resource utilization rate.
It is to be noted that the information disclosed in the above background section is only for enhancement of understanding of the background of the present application and therefore may include information that does not constitute prior art known to a person of ordinary skill in the art.
Disclosure of Invention
The application aims to provide a scheduling method, a scheduling device, a scheduling system and a computer readable medium for container clusters, which can coordinate resources of different clusters to a certain extent and improve the resource utilization rate.
Other features and advantages of the present application will be apparent from the following detailed description, or may be learned by practice of the application.
According to an aspect of an embodiment of the present application, there is provided a scheduling system for a container cluster, the scheduling system at least including: the system comprises a central resource pool global module, a first container cluster and a second container cluster, wherein the central resource pool global module is respectively in communication connection with the first container cluster and the second container cluster;
the central resource pool global module comprises a global interface server, a resource coordination module and a multi-cluster communication agent module, the resource information of the first container cluster and the second container cluster is obtained through the multi-cluster communication agent module and is sent to the resource coordination module, so that the resource availability condition of each container cluster is obtained, the resource coordination module sends the collected resource availability condition to the global interface server, and if the global interface server receives an application issued by a user, the global interface server issues the application to the container cluster meeting preset conditions according to the resource availability condition of each container cluster.
According to an aspect of an embodiment of the present application, there is provided a method for scheduling a container cluster, which is applied to the scheduling system of a container cluster described above, the method including:
receiving a global application issued by a user, wherein the global application comprises a plurality of applications;
acquiring resource information of each container cluster through a multi-cluster communication agent module;
and obtaining the available condition of each container cluster according to the resource information of each container cluster, and issuing the application to the container cluster meeting the preset condition.
According to an aspect of an embodiment of the present application, there is provided a scheduling apparatus for a container cluster, the apparatus including:
the receiving module is used for receiving a global application issued by a user, and the global application comprises a plurality of applications;
the acquisition module is used for acquiring the resource information of each container cluster through the multi-cluster communication agent module;
and the issuing module is used for obtaining the available condition of each container cluster according to the resource information of each container cluster and issuing the application to the container cluster meeting the preset condition.
In some embodiments of the present application, based on the above technical solutions, the apparatus further includes a setting module, configured to set a cluster communication agent module in each container cluster; and the cluster communication agent module is in communication connection with the multi-cluster communication agent module to obtain the resource information of each container cluster.
In some embodiments of the present application, based on the above technical solution, the publishing module is further configured to, if the resources of the container cluster are sufficient, determine that the container cluster is an available container cluster; and if the resources of the container cluster are insufficient, the container cluster is obtained as a container cluster to be determined.
In some embodiments of the application, based on the above technical solution, the publishing module is further configured to, if the container cluster is an available container cluster, meet a preset condition, and publish the application to the available container cluster.
In some embodiments of the present application, based on the above technical solutions, the apparatus further includes a selecting module, configured to select the pending container cluster and generate a traffic routing policy; and sending the traffic routing strategy to an interface gateway of the pending container cluster to direct traffic to the available container cluster.
According to an aspect of embodiments of the present application, there is provided a computer-readable medium, on which a computer program is stored, which when executed by a processor, implements a scheduling method of a container cluster as in the above technical solution.
According to an aspect of an embodiment of the present application, there is provided an electronic apparatus including: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to execute the scheduling method of the container cluster as in the above technical solution via executing the executable instructions.
According to an aspect of embodiments herein, there is provided a computer program product or computer program comprising computer instructions stored in a computer readable storage medium. The processor of the computer device reads the computer instructions from the computer readable storage medium, and the processor executes the computer instructions, so that the computer device executes the scheduling method of the container cluster as in the above technical solution.
In the technical solution provided in the embodiment of the present application, by setting a central resource global module and by matching each module in the global module, a global interface server in the global module can master the resource condition of each container cluster. If an application is to be created in a cluster, the application is released to the container cluster by searching the container cluster with resources, so that the resources of different clusters can be coordinated to improve the utilization rate of the resources.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the application.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and together with the description, serve to explain the principles of the application. It is obvious that the drawings in the following description are only some embodiments of the application, and that for a person skilled in the art, other drawings can be derived from them without inventive effort.
Fig. 1 schematically shows a block diagram of a system architecture to which the technical solution of the present application is applied.
Fig. 2 schematically shows an overall system architecture block diagram to which the technical solution of the present application is applied.
Fig. 3 schematically shows a flow of steps of a scheduling method for providing a container cluster according to an embodiment of the present application.
Fig. 4 schematically shows a flow of global application publishing according to an embodiment of the present application.
Fig. 5 schematically shows a flow of global resource coordination according to an embodiment of the present application.
Fig. 6 schematically shows a flow of steps of a scheduling method for providing a container cluster according to another embodiment of the present application.
Fig. 7 schematically shows a flow of traffic coordination according to an embodiment of the present application.
Fig. 8 schematically shows a block diagram of a scheduling apparatus for a container cluster according to an embodiment of the present application.
FIG. 9 schematically illustrates a block diagram of a computer system suitable for use in implementing an electronic device of an embodiment of the present application.
Detailed Description
Example embodiments will now be described more fully with reference to the accompanying drawings. Example embodiments may, however, be embodied in many different forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of example embodiments to those skilled in the art.
Furthermore, the described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to give a thorough understanding of embodiments of the application. One skilled in the relevant art will recognize, however, that the subject matter of the present application can be practiced without one or more of the specific details, or with other methods, components, devices, steps, and so forth. In other instances, well-known methods, devices, implementations, or operations have not been shown or described in detail to avoid obscuring aspects of the application.
The block diagrams shown in the figures are functional entities only and do not necessarily correspond to physically separate entities. I.e. these functional entities may be implemented in the form of software, or in one or more hardware modules or integrated circuits, or in different networks and/or processor means and/or microcontroller means.
The flow charts shown in the drawings are merely illustrative and do not necessarily include all of the contents and operations/steps, nor do they necessarily have to be performed in the order described. For example, some operations/steps may be decomposed, and some operations/steps may be combined or partially combined, so that the actual execution sequence may be changed according to the actual situation.
Kubernetes (k8s) is a Google open source container cluster management system. On the basis of the Docker technology, a series of complete functions such as deployment and operation, resource scheduling, service discovery, dynamic scaling and the like are provided for containerized application, and convenience in large-scale container cluster management is improved. Kubernetes is a container scheduling management system designed for production environment, and has native support for the functional requirements of container cloud platforms such as load balancing, service discovery, high availability, rolling upgrade and automatic scaling. Since Kubernetes has 8 letters between K and s, it is often abbreviated as K8 s.
A cloud-edge collaborative architecture generally includes a central cloud resource pool and a plurality of edge cloud resource pools, and since container clusters are not generally deployed across resource pools, a plurality of k8s clusters are generally deployed on a plurality of resource pools as needed. Because edge resources are limited, when the edge cannot meet the capacity expansion requirement, capacity expansion needs to be performed between different k8s clusters through cloud-edge cooperation or edge-edge cooperation. That is, the current container expansion and contraction mechanism of Serverless is only suitable for a single-container cluster, and cannot effectively implement resource expansion and contraction in a cloud-edge collaborative multi-container cluster scene.
Specifically, there are multiple container clusters on the existing edge, some container clusters may have resources, and some clusters may not have resources, it should be noted that an application is run in a certain cluster, and only the cluster has resources to run the application. The existing scheme is that when an application is created, the cluster condition needs to be checked one by one, whether resources exist in the checked container cluster is checked, and the application can be created on the container cluster only when the resources exist in the container cluster. This results in a lower utilization of resources.
In order to solve the above problems, the present application provides a method, an apparatus, a system, and a computer readable medium for scheduling container clusters, where a central resource global module is provided, and a global interface server in the global module can master the resource condition of each container cluster through cooperation of each module in the global module. If an application is to be created in a cluster, the container cluster with resources is automatically searched, and then the application is issued to the container cluster, so that the resources of different clusters can be coordinated, and the resource utilization rate is improved.
The following detailed description is provided to a method, an apparatus, a system, and a computer-readable medium for scheduling a container cluster according to the present application.
Fig. 1 schematically shows a block diagram of a system architecture to which the technical solution of the present application is applied.
Referring to fig. 1, the scheduling system at least includes: the system comprises a central resource pool global module 101, a first container cluster 102 and a second container cluster 103, wherein the central resource pool global module 101 is respectively in communication connection with the first container cluster 102 and the second container cluster 103;
the central resource pool global module 101 includes a global interface server 104, a resource coordination module 105, and a multi-cluster communication agent module 106, the resource information of the first container cluster 102 and the second container cluster 103 is obtained through the multi-cluster communication agent module 106 and sent to the resource coordination module 105 to obtain the resource availability of each container cluster, the resource coordination module 105 sends the collected resource availability to the global interface server 104, and if the global interface server 104 receives an application issued by a user, the global interface server 104 issues the application to the container cluster satisfying a preset condition according to the resource availability of each container cluster.
Referring to fig. 2, fig. 2 schematically shows an overall system architecture block diagram to which the technical solution of the present application is applied. Taking the first container cluster as an example, the existing technical solution is to first check the resource availability of the first container cluster, if the resource of the first container cluster is available, the user issues the application tst to the API-Server, and then issues the application through the API-Server of the cluster, so that the resource utilization rate is low.
For the technical scheme of the application, the application is not issued from the API-Server of each cluster, but a central resource pool global module is added, and a user issues a global application tst to a global interface Server (also called as a global API-Server) and then issues the application from the global API-Server. In addition, the central resource global module also comprises a resource coordination module and a multi-cluster communication agent module. Since the application is to be published to a plurality of container clusters, it is necessary to know the situation in each container cluster, such as whether the resources are sufficient, specifically, the information of the resources of each container cluster is obtained by performing communication connection between the multi-cluster communication agent module and the cluster communication agent modules in the respective container clusters. The multi-cluster communication agent module is used for providing a communication channel and reporting the resource information of each container cluster to the resource coordination module after the multi-cluster communication agent module acquires the resource information of each container cluster. Therefore, the resource coordination module can master the resource condition in each container cluster, so that the global API-Server can schedule the application when receiving the application created by the user, and the application can be scheduled to the corresponding container cluster according to the resource request condition or some special marks.
In one embodiment of the present application, the communication mechanism from the global to each container cluster is, TCP proxy: each intra-cluster communication agent is a TCP agent for forwarding global module to API Serverde requests. In addition, a websocket (ws) -based cloud side communication tunnel: and in consideration of the reachable problem of the cloud edge network, initiating the websocket communication from the edge to the global module, and establishing a full-duplex cloud edge message channel. http request Over ws tunnel: and the global module packages the http request of the API Server in the cluster into ws messages and specifically executes the ws messages by the TCP agent, and the return result is returned through the ws message tunnel.
In the technical solution provided in the embodiment of the present application, by setting a central resource global module and by matching each module in the global module, a global interface server in the global module can master the resource condition of each container cluster. If an application is to be created in a container cluster, the container cluster with resources is searched, and then the application is issued to the container cluster, so that the resources of different clusters can be coordinated, and the resource utilization rate is improved.
In one embodiment of the present application, the scheduling system further includes: and the traffic coordination module 107 is configured to generate a traffic routing policy so as to direct traffic to a container cluster meeting a preset condition.
To facilitate understanding of the technical solution of the present application, for example, only two container clusters, a first container cluster and a second container cluster are used, and if only the second container cluster has resources inside, an application may be created in the second container cluster. If the user needs to access the application in the second container cluster, the policy is configured in the ingress of the first container cluster through the traffic coordination module, so that the application in the second container cluster can be accessed through the ingress gateway of the first container cluster, and the purpose of the configuration is to access the application anywhere. Therefore, cross-cluster scheduling of traffic can be realized by designing a traffic scheduling mechanism.
Therefore, the method and the device can be used for issuing the application as a global application, one-time issuing and full-cluster deployment, simplify the user issuing process and simultaneously ensure that the flow can be routed to any cluster; the method can realize the cross-cluster resource expansion and contraction among the clusters, and improve the resource utilization rate, the availability and the operation and maintenance efficiency of the application.
Referring to fig. 3, fig. 3 schematically illustrates a flow of steps of a scheduling method for providing a container cluster according to an embodiment of the present application. The execution subject of the method may be a server, and the method is mainly applied to the scheduling system of the container cluster as described above, and the method may mainly include steps S301 to S303 as follows.
Step S301, receiving a global application issued by a user, wherein the global application comprises a plurality of applications.
An application is run in a certain container cluster, and the application can be run only if resources exist in the container cluster. Therefore, by receiving the application issued by the user, the cross-cluster scheduling is facilitated to be realized subsequently.
Referring to fig. 4, fig. 4 schematically shows a flow of global application publishing according to an embodiment of the present application. Specifically, when the global application is published, a user creates the global application and sends the global application to a global API Server, analyzes the global application, judges and publishes the global application to all clusters or part of clusters, selects a communication agent available connection according to cluster information of a cluster to be published, sends a call request through a WS tunnel, and passes through an API Server in the cluster.
Step S302, the resource information of each container cluster is obtained through the multi-cluster communication agent module.
And monitoring the resource use conditions of all clusters in the global scope, and marking clusters with insufficient resources and clusters with available resources. Referring to fig. 5, fig. 5 schematically illustrates a flow of global resource coordination according to an embodiment of the present application. The global resource cooperation concrete flow is that firstly, the global API Server is requested to obtain all container cluster information, each cluster API Server is requested to obtain the cluster resource state through the cluster communication agent according to the cluster information, and then whether the cluster resource state is available or not is judged. If the resources are available, the available cluster data stack is added and sorted. And if the cluster is not available, marking the Pending cluster and deleting the Pending cluster from the available cluster data stack.
Step S303, obtaining the availability of each container cluster according to the resource information of each container cluster, and issuing the application to the container cluster meeting the preset conditions.
In the technical solution provided in the embodiment of the present application, if an application is to be created in a container cluster, first the resource conditions of all container clusters are grasped, then a container cluster with resources is determined, and then the application is issued to the container cluster, so that the resources of different clusters can be coordinated to improve the resource utilization rate.
In one embodiment of the present application, referring to fig. 6, fig. 6 schematically shows a flow of steps of a scheduling method for providing a container cluster according to another embodiment of the present application. Before the step of acquiring the resource information of each container cluster by the multi-cluster communication agent module, the method mainly includes the following steps S601 to S602.
Step S601, a cluster communication agent module is arranged in each container cluster;
step S602, the cluster communication agent module is communicatively connected to the multi-cluster communication agent module to obtain resource information of each container cluster.
Therefore, the cluster communication agent module is arranged in each container cluster, so that the resource information of each container cluster can be acquired, and different container clusters can be scheduled according to the resource information of each container cluster, so that the utilization rate of container cluster resources is improved.
In an embodiment of the present application, obtaining the availability of each container cluster according to the resource information of each container cluster includes:
if the resources of the container cluster are sufficient, the container cluster is an available container cluster;
and if the resources of the container cluster are insufficient, the container cluster is obtained as the container cluster to be determined.
In this way, by acquiring the resource information of each container cluster, if an application is to be created in the container cluster, the resource conditions of all the container clusters are firstly grasped, then the container cluster with the resource is determined, and then the application is issued to the container cluster, so that the resource coordination of different clusters is realized, and the resource utilization rate is improved.
In one embodiment of the present application, publishing an application to a cluster of containers satisfying a preset condition includes:
and if the container cluster is the available container cluster, meeting the preset condition and releasing the application to the available container cluster.
In this way, if an application is to be created in a container cluster, the resource conditions of all container clusters are firstly grasped, then the container cluster with the resource is determined, and then the application is issued to the container cluster, so that the resource of different clusters can be coordinated, and the resource utilization rate is improved.
In one embodiment of the present application, the method further comprises:
selecting a pending container cluster and generating a flow routing strategy;
and sending the traffic routing strategy to an interface gateway of the pending container cluster so as to guide the traffic to the available container cluster.
To facilitate understanding of the technical solution of the present application, for example, only two container clusters, a first container cluster and a second container cluster are used, and if only the second container cluster has resources inside, an application may be created in the second container cluster. If the user needs to access the application in the second container cluster, the policy is configured in the ingress of the first container cluster through the traffic coordination module, so that the application in the second container cluster can be accessed through the ingress gateway of the first container cluster, and the purpose of the configuration is to access the application anywhere.
Referring to fig. 7, fig. 7 schematically illustrates a flow of flow coordination according to an embodiment of the present application. The flow collaborative concrete flow is that firstly, a pending cluster is obtained, a cluster to be scheduled is selected, a flow routing strategy is generated, and the flow routing strategy is issued to an ingress gateway of the pending cluster.
Therefore, through cross-cluster traffic coordination, the traffic request received by the cluster with insufficient resources is routed to the cluster with available resources, so that cross-cluster traffic coordination is realized.
It should be noted that although the various steps of the methods in this application are depicted in the drawings in a particular order, this does not require or imply that these steps must be performed in this particular order, or that all of the shown steps must be performed, to achieve desirable results. Additionally or alternatively, certain steps may be omitted, multiple steps combined into one step execution, and/or one step broken down into multiple step executions, etc.
The following describes an embodiment of an apparatus of the present application, which may be used to perform a scheduling method for a container cluster in the foregoing embodiment of the present application. Fig. 8 schematically shows a block diagram of a scheduling apparatus for a container cluster according to an embodiment of the present application. As shown in fig. 8, the scheduling apparatus 800 for a container cluster includes:
a receiving module 801, configured to receive a global application issued by a user, where the global application includes multiple applications;
an obtaining module 802, configured to obtain resource information of each container cluster through the multi-cluster communication agent module;
the publishing module 803 is configured to obtain an available condition of each container cluster according to the resource information of each container cluster, and publish the application to the container cluster that meets the preset condition.
In some embodiments of the present application, based on the above technical solutions, the apparatus further includes a setting module, configured to set a cluster communication agent module in each container cluster; and the cluster communication agent module is in communication connection with the multi-cluster communication agent module to acquire the resource information of each container cluster.
In some embodiments of the present application, based on the above technical solution, the publishing module is further configured to, if the resource of the container cluster is sufficient, determine that the container cluster is an available container cluster; and if the resources of the container cluster are insufficient, the container cluster is obtained as the container cluster to be determined.
In some embodiments of the present application, based on the above technical solution, the issuing module 803 is further configured to, if the container cluster is an available container cluster, satisfy a preset condition, and issue the application to the available container cluster.
In some embodiments of the present application, based on the above technical solutions, the apparatus further includes a selecting module, configured to select a pending container cluster and generate a traffic routing policy; and sending the traffic routing strategy to an interface gateway of the pending container cluster so as to guide the traffic to the available container cluster.
The specific details of the scheduling apparatus for a container cluster provided in each embodiment of the present application have been described in detail in the corresponding method embodiment, and are not described herein again.
Fig. 9 schematically shows a structural block diagram of a computer system of an electronic device for implementing the embodiment of the present application.
It should be noted that the computer system 900 of the electronic device shown in fig. 9 is only an example, and should not bring any limitation to the functions and the scope of the application of the embodiments.
As shown in fig. 9, the computer system 900 includes a Central Processing Unit 901 (CPU) that can perform various appropriate actions and processes in accordance with a program stored in a Read-Only Memory 902 (ROM) or a program loaded from a storage section 908 into a Random Access Memory 903 (RAM). In the random access memory 903, various programs and data necessary for system operation are also stored. The cpu 901, the rom 902 and the ram 903 are connected to each other via a bus 904. An Input/Output interface 905(Input/Output interface, i.e., I/O interface) is also connected to the bus 904.
The following components are connected to the input/output interface 905: an input portion 906 including a keyboard, a mouse, and the like; an output section 907 including a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, a speaker, and the like; a storage portion 908 including a hard disk and the like; and a communication section 909 including a network interface card such as a local area network card, a modem, or the like. The communication section 909 performs communication processing via a network such as the internet. The driver 910 is also connected to the input/output interface 905 as necessary. A removable medium 911 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 910 as necessary, so that a computer program read out therefrom is mounted into the storage section 908 as necessary.
In particular, according to embodiments of the present application, the processes described in the various method flowcharts may be implemented as computer software programs. For example, embodiments of the present application include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method illustrated by the flow chart. In such an embodiment, the computer program may be downloaded and installed from a network through the communication section 909, and/or installed from the removable medium 911. The computer program, when executed by the central processor 901, performs various functions defined in the system of the present application.
It should be noted that the computer readable medium shown in the embodiments of the present application may be a computer readable signal medium or a computer readable storage medium or any combination of the two. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination of the foregoing. More specific examples of the computer readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a Read-Only Memory (ROM), an Erasable Programmable Read-Only Memory (EPROM), a flash Memory, an optical fiber, a portable Compact Disc Read-Only Memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the present application, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In this application, however, a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated data signal may take many forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wired, etc., or any suitable combination of the foregoing.
The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
It should be noted that although in the above detailed description several modules or units of the device for action execution are mentioned, such a division is not mandatory. Indeed, the features and functionality of two or more modules or units described above may be embodied in one module or unit, according to embodiments of the application. Conversely, the features and functions of one module or unit described above may be further divided into embodiments by a plurality of modules or units.
Through the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein may be implemented by software, or by software in combination with necessary hardware. Therefore, the technical solution according to the embodiments of the present application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a usb disk, a removable hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which can be a personal computer, a server, a touch terminal, or a network device, etc.) to execute the method according to the embodiments of the present application.
Other embodiments of the present application 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 invention following, in general, the principles of the application and including such departures from the present disclosure as come within known or customary practice within the art to which the invention pertains.
It will be understood that the present application is 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 the application is limited only by the appended claims.

Claims (10)

1. A scheduling system for a cluster of containers, the scheduling system comprising at least: the system comprises a central resource pool global module, a first container cluster and a second container cluster, wherein the central resource pool global module is respectively in communication connection with the first container cluster and the second container cluster;
the central resource pool global module comprises a global interface server, a resource coordination module and a multi-cluster communication agent module, the resource information of the first container cluster and the second container cluster is obtained through the multi-cluster communication agent module and is sent to the resource coordination module, so that the resource availability condition of each container cluster is obtained, the resource coordination module sends the collected resource availability condition to the global interface server, and if the global interface server receives an application issued by a user, the global interface server issues the application to the container cluster meeting preset conditions according to the resource availability condition of each container cluster.
2. The container cluster scheduling system of claim 1, further comprising: and the flow cooperation module is used for generating a flow routing strategy so as to guide the flow to the container cluster meeting the preset conditions.
3. A scheduling method for a container cluster, which is applied to the scheduling system for a container cluster according to any one of claims 1 to 2, the method comprising:
receiving a global application issued by a user, wherein the global application comprises a plurality of applications;
acquiring resource information of each container cluster through a multi-cluster communication agent module;
and obtaining the available condition of each container cluster according to the resource information of each container cluster, and issuing the application to the container cluster meeting the preset condition.
4. The method for scheduling container clusters according to claim 3, wherein before the step of obtaining the resource information of each container cluster through the multi-cluster communication agent module, the method further comprises:
a cluster communication agent module is arranged in each container cluster;
and the cluster communication agent module is in communication connection with the multi-cluster communication agent module to obtain the resource information of each container cluster.
5. The method according to claim 3, wherein the obtaining the availability of each container cluster according to the resource information of each container cluster comprises:
if the resources of the container cluster are sufficient, the container cluster is an available container cluster;
and if the resources of the container cluster are insufficient, the container cluster is obtained as a container cluster to be determined.
6. The method for scheduling a container cluster according to claim 5, wherein the issuing an application to the container cluster satisfying a preset condition comprises:
and if the container cluster is an available container cluster, meeting a preset condition and releasing the application to the available container cluster.
7. The method for scheduling a container cluster according to claim 5, wherein the method further comprises:
selecting the undetermined container cluster and generating a flow routing strategy;
and sending the traffic routing strategy to an interface gateway of the pending container cluster to direct traffic to the available container cluster.
8. An apparatus for scheduling a cluster of containers, the apparatus comprising:
the receiving module is used for receiving a global application issued by a user, and the global application comprises a plurality of applications;
the acquisition module is used for acquiring the resource information of each container cluster through the multi-cluster communication agent module;
and the issuing module is used for obtaining the available condition of each container cluster according to the resource information of each container cluster and issuing the application to the container cluster meeting the preset condition.
9. A computer-readable medium, characterized in that a computer program is stored on the computer-readable medium, which computer program, when being executed by a processor, carries out the method of scheduling a cluster of containers according to any one of claims 3 to 7.
10. An electronic device, comprising:
a processor; and
a memory for storing executable instructions of the processor;
wherein the processor is configured to perform the scheduling method of a container cluster of any one of claims 3 to 7 via execution of the executable instructions.
CN202111627209.7A 2021-12-28 2021-12-28 Method, device and system for scheduling container cluster and computer readable medium Pending CN114301980A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111627209.7A CN114301980A (en) 2021-12-28 2021-12-28 Method, device and system for scheduling container cluster and computer readable medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111627209.7A CN114301980A (en) 2021-12-28 2021-12-28 Method, device and system for scheduling container cluster and computer readable medium

Publications (1)

Publication Number Publication Date
CN114301980A true CN114301980A (en) 2022-04-08

Family

ID=80972145

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111627209.7A Pending CN114301980A (en) 2021-12-28 2021-12-28 Method, device and system for scheduling container cluster and computer readable medium

Country Status (1)

Country Link
CN (1) CN114301980A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115086321A (en) * 2022-06-14 2022-09-20 京东科技信息技术有限公司 Multi-cluster traffic forwarding method and device, and electronic device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110290189A (en) * 2019-06-17 2019-09-27 深圳前海微众银行股份有限公司 A kind of container cluster management method, apparatus and system
CN111405055A (en) * 2020-03-23 2020-07-10 北京达佳互联信息技术有限公司 Multi-cluster management method, system, server and storage medium
CN112445575A (en) * 2020-11-27 2021-03-05 中国工商银行股份有限公司 Multi-cluster resource scheduling method, device and system
US20210397466A1 (en) * 2020-06-22 2021-12-23 Hewlett Packard Enterprise Development Lp Container-as-a-service (caas) controller for selecting a bare-metal machine of a private cloud for a cluster of a managed container service

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110290189A (en) * 2019-06-17 2019-09-27 深圳前海微众银行股份有限公司 A kind of container cluster management method, apparatus and system
CN111405055A (en) * 2020-03-23 2020-07-10 北京达佳互联信息技术有限公司 Multi-cluster management method, system, server and storage medium
US20210397466A1 (en) * 2020-06-22 2021-12-23 Hewlett Packard Enterprise Development Lp Container-as-a-service (caas) controller for selecting a bare-metal machine of a private cloud for a cluster of a managed container service
CN112445575A (en) * 2020-11-27 2021-03-05 中国工商银行股份有限公司 Multi-cluster resource scheduling method, device and system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115086321A (en) * 2022-06-14 2022-09-20 京东科技信息技术有限公司 Multi-cluster traffic forwarding method and device, and electronic device
CN115086321B (en) * 2022-06-14 2024-04-05 京东科技信息技术有限公司 Multi-cluster traffic forwarding method and device and electronic equipment

Similar Documents

Publication Publication Date Title
CN109033001B (en) Method and apparatus for allocating GPUs
CN109117252B (en) Method and system for task processing based on container and container cluster management system
CN113742031B (en) Node state information acquisition method and device, electronic equipment and readable storage medium
WO2013107012A1 (en) Task processing system and task processing method for distributed computation
CN114979024A (en) Computing power network transaction method and device, computer readable medium and electronic equipment
CN109428926B (en) Method and device for scheduling task nodes
CN111242776A (en) Accounting method and device based on block chain, storage medium and electronic equipment
CN112104679B (en) Method, apparatus, device and medium for processing hypertext transfer protocol request
CN113986534A (en) Task scheduling method and device, computer equipment and computer readable storage medium
CN114924751A (en) Method and device for distributing service access request flow
CN115237589A (en) SR-IOV-based virtualization method, device and equipment
CN114301980A (en) Method, device and system for scheduling container cluster and computer readable medium
CN111435315A (en) Method, apparatus, device and computer readable medium for allocating resources
CN113556387A (en) Edge gateway control method, system, device, electronic equipment and storage medium
CN113220459A (en) Task processing method and device
CN112714146B (en) Resource scheduling method, device, equipment and computer readable storage medium
CN116402318A (en) Multi-stage computing power resource distribution method and device for power distribution network and network architecture
CN108770014B (en) Calculation evaluation method, system and device of network server and readable storage medium
CN113726638B (en) Method, device and equipment for managing multi-cloud multi-core container and storage medium
CN115051997A (en) Method and device for scheduling distributed resources, storage medium and electronic equipment
CN108092858B (en) For switching the method and device of agent node
CN113472638A (en) Edge gateway control method, system, device, electronic equipment and storage medium
CN115378991B (en) Message processing method, device, equipment and computer storage medium
CN114884941B (en) Service processing method, device, system and medium for edge computing platform
CN113485788B (en) Container resource allocation method and device, server and computer 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