CN111431996A - Method, apparatus, device and medium for resource configuration - Google Patents

Method, apparatus, device and medium for resource configuration Download PDF

Info

Publication number
CN111431996A
CN111431996A CN202010203430.9A CN202010203430A CN111431996A CN 111431996 A CN111431996 A CN 111431996A CN 202010203430 A CN202010203430 A CN 202010203430A CN 111431996 A CN111431996 A CN 111431996A
Authority
CN
China
Prior art keywords
service
resource
services
usage information
cluster
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
Application number
CN202010203430.9A
Other languages
Chinese (zh)
Other versions
CN111431996B (en
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202010203430.9A priority Critical patent/CN111431996B/en
Publication of CN111431996A publication Critical patent/CN111431996A/en
Application granted granted Critical
Publication of CN111431996B publication Critical patent/CN111431996B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The embodiment of the disclosure provides a method, a device, equipment and a medium for resource configuration, and relates to the field of artificial intelligence, in particular to the technical field of deep learning. A method of resource configuration includes obtaining service usage information corresponding to a plurality of services deployed on a cluster of service nodes, the service usage information relating to expected traffic of the corresponding services. The method further comprises the step of obtaining resource use information corresponding to the plurality of services, wherein the resource use information indicates the current resource use rate of the corresponding services. The method further includes determining a resource configuration of the plurality of services in the cluster of service nodes based on the service usage information and the resource usage information using a resource configuration prediction model. By means of a machine learning model and taking into account the usage status and the current resource status of a plurality of services, a more flexible, dynamic and accurate resource allocation can be achieved.

Description

Method, apparatus, device and medium for resource configuration
Technical Field
The embodiment of the disclosure mainly relates to the computer technology, in particular to the field of artificial intelligence.
Background
With the development of internet technology, service providers typically deploy multiple services on a cluster of service nodes for ease of management and resource utilization. A cluster of service nodes, sometimes referred to as a server cluster, may manage a group of individual servers as a single system. The resources of the service node cluster are shared by a plurality of services deployed thereon. Typically, each service will be configured with corresponding resources. However, during the operation of the service, the resource demand of the service may change, and thus the resource configuration of the service on the service node cluster needs to be adjusted.
Disclosure of Invention
According to an embodiment of the present disclosure, a scheme for resource configuration is provided.
In a first aspect of the disclosure, a method of resource configuration is provided. The method includes obtaining service usage information corresponding to a plurality of services deployed on a cluster of service nodes, the service usage information relating to expected traffic of the corresponding services. The method further comprises the step of obtaining resource use information corresponding to the plurality of services, wherein the resource use information indicates the current resource use rate of the corresponding services. The method further includes determining a resource configuration of the plurality of services in the cluster of service nodes based on the service usage information and the resource usage information using a resource configuration prediction model.
In a second aspect of the disclosure, an apparatus for resource configuration is provided. The apparatus includes a first information acquisition module configured to acquire service usage information corresponding to a plurality of services deployed on a cluster of service nodes, the service usage information relating to expected traffic of the corresponding services. The device also comprises a second information acquisition module which is configured to acquire resource usage information corresponding to the plurality of services, wherein the resource usage information indicates the current resource usage rate of the corresponding service. The apparatus further includes a configuration determination module configured to determine a resource configuration of the plurality of services in the cluster of service nodes based on the service usage information and the resource usage information using a resource configuration prediction model.
In a third aspect of the disclosure, an electronic device is provided that includes one or more processors; and storage means for storing the one or more programs which, when executed by the one or more processors, cause the one or more processors to carry out the method according to the first aspect of the disclosure.
In a fourth aspect of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored which, when executed by a processor, implements a method according to the first aspect of the present disclosure.
It should be understood that the statements herein reciting aspects are not intended to limit the critical or essential features of the embodiments of the present disclosure, nor are they intended to limit the scope of the present disclosure. Other features of the present disclosure will become apparent from the following description.
Drawings
The above and other features, advantages and aspects of various embodiments of the present disclosure will become more apparent by referring to the following detailed description when taken in conjunction with the accompanying drawings. In the drawings, like or similar reference characters designate like or similar elements, and wherein:
FIG. 1 shows a schematic diagram of an environment in which embodiments of the present disclosure can be applied;
FIG. 2 illustrates a block diagram of a system of resource configuration according to some embodiments of the present disclosure;
FIG. 3 illustrates a flow diagram of a method of resource configuration according to some embodiments of the present disclosure;
FIG. 4 illustrates a block diagram of an apparatus for resource configuration, in accordance with some embodiments of the present disclosure; and
FIG. 5 illustrates a block diagram of a device capable of implementing various embodiments of the present disclosure.
Detailed Description
Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. While certain embodiments of the present disclosure are shown in the drawings, it is to be understood that the present disclosure may be embodied in various forms and should not be construed as limited to the embodiments set forth herein, but rather are provided for a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the disclosure are for illustration purposes only and are not intended to limit the scope of the disclosure.
In describing embodiments of the present disclosure, the terms "include" and its derivatives should be interpreted as being inclusive, i.e., "including but not limited to. The term "based on" should be understood as "based at least in part on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The terms "first," "second," and the like may refer to different or the same object. Other explicit and implicit definitions are also possible below.
As used herein, the term "model" may learn from training data the associations between respective inputs and outputs, such that after training is complete, for a given input, a corresponding output may be generated. The generation of the model may be based on machine learning techniques. Deep learning is a machine learning algorithm that processes inputs and provides corresponding outputs using multiple layers of processing units. The "model" may also be referred to herein as a "machine learning model," "machine learning network," or "learning network," which terms are used interchangeably herein.
In general, machine learning may include three phases, namely a training phase, a testing phase, and an application phase (also referred to as an inference phase). In the training phase, a given model may be trained using a large amount of training data, with iterations continuing until the model can derive consistent inferences from the training data that are similar to the inferences that human wisdom can make. By training, the model may be considered to be able to learn from the training data the association between inputs to outputs (also referred to as input to output mapping). Parameter values of the trained model are determined. In the testing phase, test inputs are applied to the trained model to test whether the model can provide the correct outputs, thereby determining the performance of the model. In the application phase, the model may be used to process the actual inputs to determine the corresponding outputs based on the trained parameter values.
As mentioned above, multiple services may be deployed on a cluster of service nodes, sharing the resources of the cluster of service nodes. Fig. 1 illustrates an example of an environment 100 for such service deployment, in which environment 100 various embodiments of the present disclosure can be applied.
As shown in FIG. 1, service node cluster 110 includes a plurality of service nodes 112-1, 112-2, … … 112-N, where N is an integer greater than 1. For ease of description herein, these service nodes are sometimes collectively or individually referred to as service nodes 112. A service group 120 may be deployed in the service node cluster 110, the service group 120 including a plurality of services 122-1, 122-2, … … 122-M, where M is an integer greater than 1. For ease of description herein, these services are sometimes collectively or individually referred to as services 122.
The service nodes 112 in the service node cluster 110 may be any physical or virtual device with computing capabilities. Examples of service nodes 112 include, but are not limited to, servers, mainframe computers, minicomputers, edge computing nodes, virtual machines, multiprocessor systems, or distributed computing systems that include any of the above systems or devices, and the like.
The services 122 deployed to the cluster of service nodes 110 may be various types of services. Examples of services 122 include, but are not limited to, search services, web browsing services, web shopping services, file upload services, image processing services, and so forth. The service 122 may be provisioned and deployed by a service provider. In some environments, the service 122 is also referred to as an application.
It should be understood that only some specific examples of service nodes 112 and services 122 are given above, and that other types of service nodes may also be utilized and other types of services deployed as desired. The scope of embodiments of the present disclosure is not limited in this respect.
After service deployment, the services 122 on the cluster of service nodes 110 may be accessed and used by users 130-1, … … 130-P via clients 140-1, … … 140-P, where P is an integer greater than or equal to 1. These users are sometimes collectively or individually referred to as users 130, and these clients are sometimes collectively or individually referred to as clients 140. User 130 may send a request to service 122 via client 140. Service 122 responds to requests from subscriber 130 to provide corresponding services to subscriber 130.
To support the provisioning of services, each service 122 may be configured with a certain amount of resources in the cluster of service nodes 110 to support operations. In some cases, the demand for resources by one or more services 122 is dynamically changing. Therefore, it is sometimes necessary to adjust the resource configuration of multiple services 122 in the service node cluster 110.
In conventional solutions, the resource configuration of the service is typically adjusted manually by the operation and maintenance personnel, and/or by referring to some simple rules set by the technician. For example, a rule may be configured to: if the traffic of a service reaches 10,000QPS (Queries Per Second), 1000 processing units may be configured for the service, and if the traffic reaches 12,000QPS, 1300 processing units may be configured for the service. However, these conventional solutions require manual involvement, with a large overhead in terms of manpower. The accuracy of the rule set-up is very dependent on the experience, and a limited number of rules may not cover all the situations that different services may encounter.
In view of the above, the adjustment period of the resource configuration currently for the service is set to be long, resulting in hysteresis of resource adjustment. In addition, in some current implementations, a large amount of resource redundancy is allocated to each service to avoid resource shortage, which causes a problem of low resource utilization rate of the service node cluster.
According to an embodiment of the present disclosure, a scheme for resource configuration is proposed. According to the scheme, resource configurations of a plurality of services in a cluster of service nodes are dynamically determined using a machine learning-based resource configuration prediction model. The resource allocation is determined by the resource allocation prediction model in dependence on service usage information and resource usage information corresponding to the plurality of services, wherein the service usage information is related to an expected traffic volume of the corresponding service, and the resource usage information indicates a current resource usage rate of the corresponding service. According to the scheme, by means of the machine learning model, more flexible, dynamic and accurate resource allocation can be achieved.
Embodiments of the present disclosure will be described below in detail with reference to the accompanying drawings.
Fig. 2 illustrates a block diagram of a system 200 of resource configuration according to some embodiments of the present disclosure. In the example of fig. 2, a resource configuration prediction model 212 is utilized by the computing device 210 to determine and adjust resource configurations for a plurality of services. For ease of discussion, the resource configuration of embodiments of the present disclosure will be described with reference to environment 100 of FIG. 1. Accordingly, computing device 210 may determine and adjust the resource configuration of the plurality of services 122 in service node cluster 110.
In system 200, computing device 210 may be any electronic device with computing capabilities, including a mobile device, a stationary device, or a portable device. Examples of computing device 210 include, but are not limited to, a server, a mainframe computer, a mini-computer, an edge computing node, a personal computer, a server computer, a hand-held or laptop device, a mobile device (such as a mobile phone, a Personal Digital Assistant (PDA), a media player, etc.), a multiprocessor system, or a distributed computing system that includes any of the above systems or devices, and the like.
In operation, the computing device 210 obtains service usage information 220-1, 220-2, 220-3, … … 220-M and resource usage information 230-1, 230-2, 230-3, … … 230-M corresponding to the plurality of services 122-1 through 122-M. For ease of discussion, such service usage information is collectively or individually referred to as service usage information 220 and such resource usage information is collectively or individually referred to as resource usage information 230. In an embodiment of the present disclosure, service usage information 220 and resource usage information 230 are used to determine respective resource configurations for a plurality of services 122.
Service usage information 220, which relates to expected traffic for the corresponding service 122, may be used to predict the likely traffic for the service 122 over a future period of time. Since the amount of traffic typically affects the consumption of resources by service 122, service usage information 220 helps to facilitate an accurate determination of the resource configuration of service 122. Service usage information 220 may include a variety of information that can be used to determine or predict the expected traffic of service 122.
In some embodiments, for one or more services 122, the service usage information 220 may include hotspot event information related to that service 122. The occurrence of a hotspot event may result in an increased request by subscriber 130 for service 122, resulting in increased traffic, while the end of a hotspot event may result in decreased traffic. Accordingly, the hotspot event information may indicate the occurrence and end of the corresponding hotspot event.
In some embodiments, the traffic of different types of services may be sensitive to different types of hotspot events. For example, for a service providing news browsing or a search service, the hotspot event information may include, for example, the occurrence of hot news, the arrival of a particular time period or holiday (e.g., people may like to browse news in the morning and evening, and are more free to browse news and search for content of interest during holidays), and so forth. For services that provide online shopping, the hotspot event information may include, for example, the occurrence and end of a promotional program, the arrival of holidays, and so forth. For other types of services, there may be other hot events related to traffic.
In addition to or as an alternative to hotspot event information, service usage information 220 may also include, for one or more services 122, the current traffic volume of the service 122. The current traffic may also be used as a reference for predicting subsequent traffic.
In some cases, the traffic of service 122 may also be affected by the traffic of one or more other services. The other service may be the service 122 deployed in the service node cluster 110, or may be a service deployed in another service node or service node cluster. In view of the interplay between services, in some embodiments, the service usage information 220 of a service 122 may also include service usage information corresponding to one or more other services related to the traffic of that service 122. There may be a positive correlation between the traffic of the service 122 and other services, e.g., an increase in traffic of other services may result in an increase in traffic of the service 122, or a negative correlation, e.g., an increase in traffic of other services may result in a decrease in traffic of the service 122. In one example, for a search service, if the traffic of the service providing news browsing is expected to increase, the traffic of the search service may also increase. By referring to the service use information corresponding to other services, the expected service use condition of the current service can be predicted more accurately.
In addition to considering service usage information, the resource usage status of multiple services 122 may also affect the resource allocation to the respective services 122. Resource usage information 230 may indicate the usage rate of currently configured resources by service 122. The resources that support the operation of the service 122 may include processing resources, including various types of processing devices, such as Central Processing Units (CPUs), Graphics Processing Units (GPUs), processing cores, controllers, and so forth. Additionally or alternatively, the resources that support the operation of the service 122 may also include storage resources, such as memory resources, cache resources, non-transitory storage device resources, and the like; network bandwidth resources to support network access or inter-device access for the services 122; file descriptor resources to support file access by the service 122, and so on.
Resource usage information 230 may include processing resource usage, storage resource usage, bandwidth resource usage, and/or file descriptor usage for each resource 122, among others, in view of the resources being configured. The usage rate of a type of resource may be represented by the number of resources of that type, or by the proportion of the amount of resources used to the total amount of resources currently allocated for the service. The scope of embodiments of the present disclosure is not limited in this respect.
Some possible examples of service usage information 220 and resource usage information 230 are given above. In other embodiments, service usage information 220 and/or resource usage information 230 may also include other types of information.
The computing device 210 may detect service usage information 220 for various services 122 from various channels or sources. The computing device 210 may also determine the resource usage information 230 by monitoring the operating conditions of the various services 122 deployed in the service node cluster 110. Service usage information 220 and/or resource usage information 230 may be time-related information that computing device 210 may continually detect and update.
After obtaining the service usage information 220 and the resource usage information 230, the computing device 210 determines, using the resource configuration prediction model 212, a resource configuration 214 of the plurality of services 122 in the cluster of service nodes 110 based on the obtained information.
Resource allocation prediction model 212 is configured to achieve the prediction goals of the resource allocation. From the model structure, the resource allocation prediction model 212 has as its inputs the service usage information and the resource usage information corresponding to the service, and has as its output the resource expected to be allocated to the service. The resource configuration prediction model 212 may be any type of machine learning model or deep learning model or combination of models. Some examples of resource configuration prediction models 212 include, but are not limited to, Support Vector Machine (SVM) models, bayesian models, random forest models, various deep learning/neural network models, such as Convolutional Neural Networks (CNNs), Recurrent Neural Networks (RNNs), and the like.
To achieve the prediction goal, the resource configuration prediction model 212 needs to be trained using training data. In an initial stage, service use information and resource use information corresponding to services deployed in each service node cluster and corresponding resource configurations can be collected as training data. Alternatively or additionally, the required training data may also be provided by an experienced technician. After training with the training data is complete, resource configuration prediction model 212 may be deployed and used. The training of the resource configuration prediction model 212 may be implemented by the computing device 210 or may be implemented by another computing device or devices.
By processing the input service usage information 220 and resource usage information 230, the resource prediction model 212 may determine a corresponding resource configuration 214 for each service 122. In some embodiments, the determined resource configuration 214 may specifically indicate an allocation of various types of resources provided by the cluster of service nodes 110 among the plurality of services 122. For example, the resources allocated to the service 122 may include processing resources, storage resources, network single-open resources, and/or file descriptors, among others, depending on the needs of the service 122 for the type of resource. Resource configuration prediction model 212 may determine whether the resources required by each service 122 need to be expanded or contracted and may output the amount of resources predicted by each service 122.
In some embodiments, resource configuration prediction model 212 may predict resource configurations 214 for services 122 on a service-by-service basis. Resource allocation per service prediction may be performed sequentially or may be implemented in parallel, e.g., multiple identical resource allocation prediction models 212 run in parallel to perform the prediction.
In some embodiments, the determination of the resource configuration 214 by the resource configuration prediction model 212 may be performed on a predetermined periodic basis or in response to the triggering of a predetermined event. For example, computing device 210 may set the prediction to be performed every few hours, every day, or every several days. In further examples, computing device 210 may also monitor current traffic and/or resource usage of one or more services 122. If the amount of traffic and/or resource usage exceeds the corresponding threshold, the computing device 210 may trigger a re-determination of the resource configuration to be performed using the resource configuration prediction model 212.
In some embodiments, resource configuration 214 of multiple services 122 may also satisfy constraints on the total amount of resources that can be provided by service node cluster 110 to avoid configuring excess resources. The constraints on the total resource amount may be adjusted by computing device 210 when resource allocation prediction model 212 determines resource allocation 214 or after resource allocation prediction model 212 outputs the resource allocation.
The resource configuration 214 determined by the computing device 210 may be used to modify the configuration of the various service nodes 112 on the service node cluster 110. In particular, computing device 210 may generate a cluster configuration for a cluster of service nodes 212 based on determined resource configuration 214. The cluster configuration indicates how the resources on the various service nodes 112 are allocated to conform to the resource configuration 214. The computing device 210 may provide the cluster configuration to the service node cluster 110 to configure the service node cluster 110 to provide resources to the plurality of services 122. Thus, resource configuration 214 may take effect quickly.
With the determination of the resource configuration of the plurality of services 122 on the cluster of service nodes 110 by the resource configuration prediction model 212, in some embodiments, the determined resource configuration 214 and corresponding service usage information 220 and resource usage information 230 may be associatively stored for retraining the resource configuration prediction model 212. The resource configuration 214 and corresponding service usage information 220 and resource usage information 230 may be stored in a storage system or database accessible to the computing device performing the model retraining. The computing device performing the model retraining may be computing device 210 or another computing device or devices. By accumulating more training data during use of the resource allocation prediction model 212, the resource allocation prediction model 212 may continue to be optimized at a later stage by retraining, resulting in a higher accuracy of the model output. The retrained resource configuration prediction model 212 may continue to be provided for use by the computing device 210.
According to the embodiment of the disclosure, through the use of the model based on machine learning, and simultaneously combining a plurality of factors which may influence the resource demand of the service, the resource configuration of the service node cluster can be automatically and dynamically adjusted, the resource demand of the service can be quickly responded, and the hysteretic resource expansion or contraction can be avoided. On the other hand, since the resource configuration can be adjusted more dynamically, it is possible to avoid configuring an excessive amount of redundant resources to the service 122 each time, so that the overall resource utilization rate of the service node cluster 110 can be provided, and resource waste is avoided. In addition, the trained resource configuration prediction model 212 can also be flexibly applied to a plurality of service node clusters, and resource configuration determination and adjustment can be performed on the services deployed on the clusters.
Fig. 3 illustrates a flow diagram of a method 300 of resource configuration according to some embodiments of the present disclosure. The method 300 may be implemented by the computing device 210 of fig. 2.
At block 310, the computing device 210 obtains service usage information corresponding to a plurality of services deployed on a cluster of service nodes, the service usage information relating to expected traffic for the corresponding services. At block 320, the computing device 210 obtains resource usage information corresponding to the plurality of services, the resource usage information indicating current resource usage by the corresponding services. At block 330, the computing device 210 determines a resource configuration of the plurality of services in the cluster of service nodes based on the service usage information and the resource usage information using the resource configuration prediction model.
In some embodiments, obtaining service usage information comprises: for a specific service of the plurality of services, determining at least one of the following as service usage information corresponding to the specific service: the service management system includes hotspot event information related to a specific service, current traffic of the specific service, and service usage information corresponding to at least one other service related to the traffic of the specific service.
In some embodiments, the resource usage information indicates at least one of: processing resource usage, storage resource usage, network bandwidth resource usage, and file descriptor usage.
In some embodiments, determining the resource configuration comprises: determining an allocation of at least one of the following resources of the cluster of service nodes among the plurality of services: processing resources, storage resources, network bandwidth resources, and file descriptors.
In some embodiments, the method 300 further comprises: generating a cluster configuration for the cluster of service nodes based on the determined resource configuration; and providing the cluster configuration to the service node cluster to configure the service node cluster to provide resources to the plurality of services.
In some embodiments, the method 300 further comprises: the determined resource configuration is stored in association with the service usage information and the resource usage information for retraining of the resource configuration prediction model.
Fig. 4 shows a schematic block diagram of an apparatus 400 for resource configuration according to some embodiments of the present disclosure. Apparatus 400 may be included in computing device 210 of fig. 2 or implemented as computing device 210.
As shown in fig. 4, the apparatus 400 includes a first information obtaining module 410 configured to obtain service usage information corresponding to a plurality of services deployed on a service node cluster, the service usage information being related to an expected traffic volume of the corresponding service. The apparatus 400 further includes a second information obtaining module 420 configured to obtain resource usage information corresponding to the plurality of services, where the resource usage information indicates current resource usage rates of the corresponding services. The apparatus 400 further includes a configuration determination module 430 configured to determine a resource configuration of the plurality of services in the cluster of service nodes based on the service usage information and the resource usage information using the resource configuration prediction model.
In some embodiments, the first information obtaining module 410 includes a specific service information obtaining module configured to determine, for a specific service of the plurality of services, at least one of the following as service usage information corresponding to the specific service: the service management system includes hotspot event information related to a specific service, current traffic of the specific service, and service usage information corresponding to at least one other service related to the traffic of the specific service.
In some embodiments, the resource usage information indicates at least one of: processing resource usage, storage resource usage, network bandwidth resource usage, and file descriptor usage.
In some embodiments, the configuration determination module 430 includes: an allocation determination module configured to determine an allocation of at least one of the following resources of the cluster of service nodes among the plurality of services: processing resources, storage resources, network bandwidth resources, and file descriptors.
In some embodiments, the apparatus 400 further comprises: a cluster configuration determination module configured to generate a cluster configuration for a cluster of service nodes based on the determined resource configuration; and a configuration provisioning module configured to provide the cluster configuration to the service node cluster to configure the service node cluster to provide resources to the plurality of services.
In some embodiments, the apparatus 400 further comprises: a storage module configured to store the determined resource configuration in association with the service usage information and the resource usage information for retraining of the resource configuration prediction model.
Fig. 5 illustrates a schematic block diagram of an example device 500 that may be used to implement embodiments of the present disclosure. Device 500 may be used to implement service node 112 of fig. 1 or computing device 210 of fig. 2, or be included in service node 112 or computing device 210.
As shown, device 500 includes a computing unit 501 that may perform various appropriate actions and processes in accordance with computer program instructions stored in a Read Only Memory (ROM)502 or loaded from a storage unit 508 into a Random Access Memory (RAM) 503. In the RAM503, various programs and data required for the operation of the device 500 can also be stored. The calculation unit 501, the ROM 502, and the RAM503 are connected to each other by a bus 504. An input/output (I/O) interface 505 is also connected to bus 504.
A number of components in the device 500 are connected to the I/O interface 505, including: an input unit 506 such as a keyboard, a mouse, or the like; an output unit 507 such as various types of displays, speakers, and the like; a storage unit 508, such as a magnetic disk, optical disk, or the like; and a communication unit 509 such as a network card, modem, wireless communication transceiver, etc. The communication unit 509 allows the device 500 to exchange information/data with other devices through a computer network such as the internet and/or various telecommunication networks.
The computing unit 501 may be a variety of general-purpose and/or special-purpose processing components having processing and computing capabilities. Some examples of the computing unit 501 include, but are not limited to, a Central Processing Unit (CPU), a Graphics Processing Unit (GPU), various dedicated Artificial Intelligence (AI) computing chips, various computing units running machine learning model algorithms, a Digital Signal Processor (DSP), and any suitable processor, controller, microcontroller, and so forth. The computing unit 501 performs the various methods and processes described above, such as the method 300. For example, in some embodiments, the method 300 may be implemented as a computer software program tangibly embodied in a machine-readable medium, such as the storage unit 508. In some embodiments, part or all of the computer program may be loaded and/or installed onto the device 500 via the ROM 502 and/or the communication unit 509. When loaded into RAM503 and executed by the computing unit 501, may perform one or more of the steps of the method 300 described above. Alternatively, in other embodiments, the computing unit 501 may be configured to perform the method 300 by any other suitable means (e.g., by means of firmware).
For example, without limitation, exemplary types of hardware logic that may be used include Field Programmable Gate Arrays (FPGAs), Application Specific Integrated Circuits (ASICs), Application Specific Standard Products (ASSPs), system on a chip (SOC), load programmable logic devices (CP L D), and so forth.
Program code for implementing the methods of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general purpose computer, special purpose computer, or other programmable data processing apparatus, such that the program codes, when executed by the processor or controller, cause the functions/operations specified in the flowchart and/or block diagram to be performed. The program code may execute entirely on the machine, partly on the machine, as a stand-alone software package partly on the machine and partly on a remote machine or entirely on the remote machine or server.
In the context of this disclosure, a machine-readable medium may be a tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. The machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on 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 or 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.
Further, while operations are depicted in a particular order, this should be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. Under certain circumstances, multitasking and parallel processing may be advantageous. Likewise, while several specific implementation details are included in the above discussion, these should not be construed as limitations on the scope of the disclosure. Certain features that are described in the context of separate embodiments can also be implemented in combination in a single implementation. Conversely, various features that are described in the context of a single implementation can also be implemented in multiple implementations separately or in any suitable subcombination.
Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.

Claims (14)

1. A method of resource configuration, comprising:
acquiring service use information corresponding to a plurality of services deployed on a service node cluster, wherein the service use information is related to expected traffic of the corresponding services;
acquiring resource use information corresponding to the plurality of services, wherein the resource use information indicates the current resource use rate of the corresponding service; and
determining, using a resource configuration prediction model, a resource configuration of the plurality of services in the cluster of service nodes based on the service usage information and the resource usage information.
2. The method of claim 1, wherein obtaining the service usage information comprises:
for a specific service of the plurality of services, determining at least one of the following as service usage information corresponding to the specific service:
hotspot event information related to the specific service,
the current traffic volume of the specific service, an
Service usage information corresponding to at least one other service related to traffic of the particular service.
3. The method of claim 1, wherein the resource usage information indicates at least one of:
the utilization rate of the processing resources is increased,
the usage rate of the storage resources is increased,
network bandwidth resource usage, and
file descriptor usage.
4. The method of claim 1, wherein determining the resource configuration comprises:
determining an allocation of at least one of the following resources of the cluster of service nodes among the plurality of services: processing resources, storage resources, network bandwidth resources, and file descriptors.
5. The method of claim 1, further comprising:
generating a cluster configuration for the cluster of service nodes based on the determined resource configuration; and
providing the cluster configuration to the service node cluster to configure the service node cluster to provide resources to the plurality of services.
6. The method of any of claims 1 to 5, further comprising:
storing the determined resource configuration in association with the service usage information and the resource usage information for retraining of the resource configuration prediction model.
7. An apparatus for resource configuration, comprising:
a first information acquisition module configured to acquire service usage information corresponding to a plurality of services deployed on a service node cluster, the service usage information relating to expected traffic of the corresponding services;
a second information obtaining module configured to obtain resource usage information corresponding to the plurality of services, the resource usage information indicating current resource usage rates of the corresponding services; and
a configuration determination module configured to determine a resource configuration of the plurality of services in the cluster of service nodes based on the service usage information and the resource usage information using a resource configuration prediction model.
8. The apparatus of claim 7, wherein the first information acquisition module comprises:
a specific service information acquisition module configured to determine, for a specific service of the plurality of services, at least one of the following as service usage information corresponding to the specific service:
hotspot event information related to the specific service,
the current traffic volume of the specific service, an
Service usage information corresponding to at least one other service related to traffic of the particular service.
9. The apparatus of claim 7, wherein the resource usage information indicates at least one of:
the utilization rate of the processing resources is increased,
the usage rate of the storage resources is increased,
network bandwidth resource usage, and
file descriptor usage.
10. The apparatus of claim 7, wherein the configuration determination module comprises:
an allocation determination module configured to determine an allocation of at least one of the following resources of the cluster of service nodes among the plurality of services: processing resources, storage resources, network bandwidth resources, and file descriptors.
11. The apparatus of claim 7, further comprising:
a cluster configuration determination module configured to generate a cluster configuration for the cluster of service nodes based on the determined resource configuration; and
a configuration provisioning module configured to provide the cluster configuration to the service node cluster to configure the service node cluster to provide resources to the plurality of services.
12. The apparatus of any of claims 7 to 11, further comprising:
a storage module configured to store the determined resource configuration in association with the service usage information and the resource usage information for retraining of the resource configuration prediction model.
13. An electronic device, comprising:
one or more processors; and
storage means for storing one or more programs which, when executed by the one or more processors, cause the one or more processors to carry out the method of any one of claims 1 to 6.
14. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the method according to any one of claims 1 to 6.
CN202010203430.9A 2020-03-20 2020-03-20 Method, apparatus, device and medium for resource configuration Active CN111431996B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010203430.9A CN111431996B (en) 2020-03-20 2020-03-20 Method, apparatus, device and medium for resource configuration

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010203430.9A CN111431996B (en) 2020-03-20 2020-03-20 Method, apparatus, device and medium for resource configuration

Publications (2)

Publication Number Publication Date
CN111431996A true CN111431996A (en) 2020-07-17
CN111431996B CN111431996B (en) 2022-08-09

Family

ID=71549975

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010203430.9A Active CN111431996B (en) 2020-03-20 2020-03-20 Method, apparatus, device and medium for resource configuration

Country Status (1)

Country Link
CN (1) CN111431996B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112231054A (en) * 2020-10-10 2021-01-15 苏州浪潮智能科技有限公司 Multi-model inference service deployment method and device based on k8s cluster
CN113254213A (en) * 2021-06-08 2021-08-13 苏州浪潮智能科技有限公司 Service computing resource allocation method, system and device
CN115220915A (en) * 2022-07-15 2022-10-21 中国电信股份有限公司 Server control method and device, storage medium and electronic equipment

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102317917A (en) * 2011-06-30 2012-01-11 华为技术有限公司 Hot field virtual machine cpu dispatching method and virtual machine system (vms)
CN104484222A (en) * 2014-12-31 2015-04-01 北京天云融创软件技术有限公司 Virtual machine dispatching method based on hybrid genetic algorithm
CN106959894A (en) * 2016-01-11 2017-07-18 北京京东尚科信息技术有限公司 Resource allocation methods and device
CN108023759A (en) * 2016-10-28 2018-05-11 腾讯科技(深圳)有限公司 Adaptive resource regulating method and device
CN108259376A (en) * 2018-04-24 2018-07-06 北京奇艺世纪科技有限公司 The control method and relevant device of server cluster service traffics
US20180219735A1 (en) * 2015-07-28 2018-08-02 British Telecommunications Public Limited Company Network function virtualization
US20180278541A1 (en) * 2015-12-31 2018-09-27 Huawei Technologies Co., Ltd. Software-Defined Data Center and Service Cluster Scheduling and Traffic Monitoring Method Therefor
CN108683720A (en) * 2018-04-28 2018-10-19 金蝶软件(中国)有限公司 A kind of container cluster service configuration method and device
CN108874640A (en) * 2018-05-07 2018-11-23 北京京东尚科信息技术有限公司 A kind of appraisal procedure and device of clustering performance
CN109271257A (en) * 2018-10-11 2019-01-25 郑州云海信息技术有限公司 A kind of method and apparatus of virtual machine (vm) migration deployment
CN109412829A (en) * 2018-08-30 2019-03-01 华为技术有限公司 A kind of prediction technique and equipment of resource distribution
CN109672795A (en) * 2018-11-14 2019-04-23 平安科技(深圳)有限公司 Call center resource management method and device, electronic equipment, storage medium

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102317917A (en) * 2011-06-30 2012-01-11 华为技术有限公司 Hot field virtual machine cpu dispatching method and virtual machine system (vms)
CN104484222A (en) * 2014-12-31 2015-04-01 北京天云融创软件技术有限公司 Virtual machine dispatching method based on hybrid genetic algorithm
US20180219735A1 (en) * 2015-07-28 2018-08-02 British Telecommunications Public Limited Company Network function virtualization
US20180278541A1 (en) * 2015-12-31 2018-09-27 Huawei Technologies Co., Ltd. Software-Defined Data Center and Service Cluster Scheduling and Traffic Monitoring Method Therefor
CN106959894A (en) * 2016-01-11 2017-07-18 北京京东尚科信息技术有限公司 Resource allocation methods and device
CN108023759A (en) * 2016-10-28 2018-05-11 腾讯科技(深圳)有限公司 Adaptive resource regulating method and device
CN108259376A (en) * 2018-04-24 2018-07-06 北京奇艺世纪科技有限公司 The control method and relevant device of server cluster service traffics
CN108683720A (en) * 2018-04-28 2018-10-19 金蝶软件(中国)有限公司 A kind of container cluster service configuration method and device
CN108874640A (en) * 2018-05-07 2018-11-23 北京京东尚科信息技术有限公司 A kind of appraisal procedure and device of clustering performance
CN109412829A (en) * 2018-08-30 2019-03-01 华为技术有限公司 A kind of prediction technique and equipment of resource distribution
CN109271257A (en) * 2018-10-11 2019-01-25 郑州云海信息技术有限公司 A kind of method and apparatus of virtual machine (vm) migration deployment
CN109672795A (en) * 2018-11-14 2019-04-23 平安科技(深圳)有限公司 Call center resource management method and device, electronic equipment, storage medium

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ABHINANDAN S. PRASAD等: "Optimal Resource Configuration of Complex Services in the Cloud", 《2017 17TH IEEE/ACM INTERNATIONAL SYMPOSIUM ON CLUSTER, CLOUD AND GRID COMPUTING (CCGRID)》 *
崔广章等: "容器云资源调度策略的改进", 《计算机与数字工程》 *
徐雅斌等: "基于需求预测的PaaS平台资源分配方法", 《计算机应用》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112231054A (en) * 2020-10-10 2021-01-15 苏州浪潮智能科技有限公司 Multi-model inference service deployment method and device based on k8s cluster
CN112231054B (en) * 2020-10-10 2022-07-08 苏州浪潮智能科技有限公司 Multi-model inference service deployment method and device based on k8s cluster
CN113254213A (en) * 2021-06-08 2021-08-13 苏州浪潮智能科技有限公司 Service computing resource allocation method, system and device
CN113254213B (en) * 2021-06-08 2021-10-15 苏州浪潮智能科技有限公司 Service computing resource allocation method, system and device
WO2022257301A1 (en) * 2021-06-08 2022-12-15 苏州浪潮智能科技有限公司 Method, system and apparatus for configuring computing resources of service
CN115220915A (en) * 2022-07-15 2022-10-21 中国电信股份有限公司 Server control method and device, storage medium and electronic equipment
CN115220915B (en) * 2022-07-15 2024-02-02 中国电信股份有限公司 Server control method, device, storage medium and electronic equipment

Also Published As

Publication number Publication date
CN111431996B (en) 2022-08-09

Similar Documents

Publication Publication Date Title
CN111431996B (en) Method, apparatus, device and medium for resource configuration
US11507430B2 (en) Accelerated resource allocation techniques
CN109032801B (en) Request scheduling method, system, electronic equipment and storage medium
CN112000459B (en) Method for expanding and shrinking capacity of service and related equipment
CN106959894B (en) Resource allocation method and device
CN107404523A (en) Cloud platform adaptive resource dispatches system and method
WO2021066621A1 (en) Intelligent cloud platform to host resource efficient edge network function
CN108173905B (en) Resource allocation method and device and electronic equipment
Kim et al. Prediction based sub-task offloading in mobile edge computing
CN109933610B (en) Data processing method, device, computer equipment and storage medium
US20220158945A1 (en) Prediction apparatus, prediction method and program
Chen et al. Latency minimization for mobile edge computing networks
CN113615137B (en) CDN optimization platform
CN113158435B (en) Complex system simulation running time prediction method and device based on ensemble learning
CN114297041A (en) Network heterogeneous computing platform testing method and device and computer equipment
CN114205317A (en) Service function chain SFC resource allocation method based on SDN and NFV and electronic equipment
Kim et al. FedGPO: Heterogeneity-Aware Global Parameter optimization for Efficient Federated Learning
Ismaeel et al. Real-time energy-conserving vm-provisioning framework for cloud-data centers
CN107133104B (en) Distributed stream data processing method
CN116109058A (en) Substation inspection management method and device based on deep reinforcement learning
CN115220131A (en) Meteorological data quality inspection method and system
Feltin et al. DNN partitioning for inference throughput acceleration at the edge
CN113904940A (en) Resource adjusting method and device, electronic equipment and computer readable storage medium
CN114281474A (en) Resource adjusting method and device
CN114520773A (en) Service request response method, device, server 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