WO2021136137A1 - Procédé et appareil de planification de ressources, et dispositif associé - Google Patents

Procédé et appareil de planification de ressources, et dispositif associé Download PDF

Info

Publication number
WO2021136137A1
WO2021136137A1 PCT/CN2020/139902 CN2020139902W WO2021136137A1 WO 2021136137 A1 WO2021136137 A1 WO 2021136137A1 CN 2020139902 W CN2020139902 W CN 2020139902W WO 2021136137 A1 WO2021136137 A1 WO 2021136137A1
Authority
WO
WIPO (PCT)
Prior art keywords
virtual machine
resource
resource pool
machine
data
Prior art date
Application number
PCT/CN2020/139902
Other languages
English (en)
Chinese (zh)
Inventor
肖磊
孙克勇
孙宏伟
Original Assignee
华为技术有限公司
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 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2021136137A1 publication Critical patent/WO2021136137A1/fr

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • This application relates to the field of computer technology, and in particular to a resource scheduling method, device and related equipment.
  • Dynamic resource scheduling refers to the use of load balancing scheduling algorithms to periodically check the load of each physical machine in the same resource pool, and to migrate virtual machines (VM) between different physical machines, thereby To achieve the purpose of load balancing between different physical machines in the same resource pool.
  • Virtual machine migration refers to the migration of virtual machines from one physical machine to another.
  • the current migration of virtual machines is mainly based on the usage of physical resources (processors, memory, etc.) and virtual machines in the same resource pool.
  • the physical resource requirements of the machine the virtual machine is migrated between different physical machines, so as to achieve the purpose of load balancing between different physical machines in the same resource pool and improving resource utilization.
  • the current virtual machine migration only considers the physical resource utilization of the physical machine in the resource pool and the physical resource demand of the virtual machine to migrate the virtual machine, and the distribution of the migrated virtual machine does not necessarily meet actual business requirements.
  • the embodiment of the application discloses a resource scheduling method, device and related equipment, which can dynamically schedule virtual machines according to the relationship between the services in the virtual machines in the resource pool, so that the scheduled virtual machines are more in line with actual business requirements .
  • an embodiment of the present application provides a resource scheduling method, including:
  • the address information and port number information, etc. perceive the perception of the services carried by the virtual machine and the relationship between the services carried by the virtual machine. Then determine whether the resources in the resource pool need to be scheduled according to the performance data of the virtual machines of each category after clustering. When resources need to be scheduled, the resources in the resource pool are performed according to the connection between the services.
  • Scheduling so that when the resources in the resource pool are scheduled, the services in the virtual machine are perceived to determine the resources required by the obligation, and the resources are scheduled according to the resources required by the business and the relationship between the services, so that the resources in the resource pool are After resources are scheduled, it can better meet the needs of actual business.
  • the determining, according to the performance data of the virtual machines in each virtual machine cluster, to schedule the virtual machines in the resource pool includes:
  • the resource usage index of the resource pool and the resource performance index of the resource pool it is determined to schedule the resources in the resource pool.
  • the determining to schedule the resources in the resource pool according to the resource usage index of the resource pool and the resource performance index of the resource pool includes:
  • the ratio of the resource usage index to the resource performance index of the resource pool is less than the first threshold, determine to schedule the resources in the resource pool; or,
  • the resource performance index of the resource pool is less than the second threshold, determine to schedule the resources in the resource pool; or,
  • the resource usage index of the resource pool is less than the third threshold, it is determined to schedule the resources in the resource pool.
  • the scheduling the virtual machines in the resource pool according to the business relationship between the services in the multiple virtual machines includes:
  • the scheduling of the resources in the resource pool according to the business relationship between the services in the multiple virtual machines includes:
  • the association relationship includes a dependency relationship, a one-way relationship, a two-way relationship, and a family relationship.
  • an embodiment of the present application provides a resource scheduling device, which includes:
  • the communication unit is configured to: obtain performance data of each virtual machine in the multiple virtual machines in the resource pool, where the performance data includes physical resource information of each virtual machine;
  • a processing unit configured to: cluster the multiple virtual machines according to the performance data to obtain multiple virtual machine clusters;
  • the processing unit is specifically configured to:
  • the resource usage index of the resource pool and the resource performance index of the resource pool it is determined to schedule the resources in the resource pool.
  • the processing unit is specifically configured to:
  • the ratio of the resource usage index to the resource performance index of the resource pool is less than the first threshold, determine to schedule the resources in the resource pool; or,
  • the resource performance index of the resource pool is less than the second threshold, determine to schedule the resources in the resource pool; or,
  • the resource usage index of the resource pool is less than the third threshold, it is determined to schedule the resources in the resource pool.
  • the processing unit is specifically configured to: when it is determined that there is an association relationship between the first service in the first virtual machine and the second service in the second virtual machine, the The first virtual machine and the second virtual machine are migrated to the same physical machine, or the first virtual machine is migrated to the first physical machine, and the second virtual machine is migrated to the second physical machine, the The path cost between the first physical machine and the second physical machine is smaller than the path cost between the third physical machine and the fourth physical machine.
  • the first virtual machine is located in the first physical machine.
  • Three physical machines, the second virtual machine is located in the fourth physical machine, and the association relationship includes a dependency relationship, a one-way relationship, a two-way relationship, and a family relationship.
  • an embodiment of the present application provides a computing device, including a processor and a memory, the memory is used to store instructions, the processor is used to execute the instructions, and when the processor executes the instructions, all The server executes the method described in the foregoing first aspect or any possible embodiment of the first aspect.
  • an embodiment of the present application provides a computer-readable storage medium that stores a computer program, and when the computer program is executed by a processor, the processor executes the above-mentioned first aspect or The method described in any possible embodiment of the first aspect.
  • FIG. 1 is a schematic diagram of a virtual machine migration provided by an embodiment of the present application
  • Figure 2 is a schematic structural diagram of a resource pool provided by an embodiment of the present application.
  • FIG. 3 is a schematic flowchart of a resource scheduling method provided by an embodiment of the present application.
  • FIG. 4 is a schematic structural diagram of a resource scheduling device provided by an embodiment of the present application.
  • Fig. 5 is a schematic structural diagram of a computing device provided by an embodiment of the present application.
  • Dynamic resource scheduler refers to the use of load balancing scheduling algorithms to dynamically schedule the resources in the resource pool by periodically checking the load conditions of different hosts in the same resource pool, so as to achieve different physical machines in the same resource pool.
  • the aforementioned resources refer to instances such as virtual machines or containers.
  • virtual machines are taken as examples for explanation.
  • the dynamic scheduling of other resources such as containers is similar to that of virtual machines.
  • the foregoing dynamic scheduling of resources includes the migration of virtual machines.
  • Migrating a virtual machine refers to migrating a virtual machine from one physical machine to another physical machine to run.
  • the resource pool includes three physical machines, physical machine 1, physical machine 2, and physical machine 3.
  • VM1, VM2, and VM3 run in physical machine 1
  • VM4 and VM5 run in physical machine 2.
  • VM5, VM7, and VM8 run in physical machine 3.
  • virtual machines exhibit different load characteristics.
  • virtual machines are generally divided into three categories, including computing virtual machines, storage virtual machines, and network virtual machines.
  • the computing virtual machine means that the virtual machine mainly needs processor (central processing unit, CPU) resources
  • the storage virtual machine means that the virtual machine mainly needs memory resources
  • the network virtual machine means that the virtual machine mainly needs resources. Is the bandwidth resource.
  • the virtual machines hosted on the same physical machine are of the same type, for example, the same type of computing virtual machine, each virtual machine will compete for CPU resources, and the utilization of other resources (such as memory, bandwidth, etc.) will be low.
  • the quality of service will be reduced, and the overall resource utilization will not be high. Therefore, in order to avoid this situation, it is necessary to dynamically schedule the resources in the resource pool according to the physical resource usage of the physical machine and the physical resource demand of the virtual machine to improve the overall resource utilization of the physical machine in the resource pool.
  • the current dynamic scheduling of virtual machines mainly uses periodic acquisition of the physical resources (processor, memory, bandwidth, etc.) usage status of each physical machine in the same resource pool, and combines the physical machine's historical resource usage information, historical migration duration, and virtual
  • the physical resource requirements of the machine and other information determine the dynamic scheduling strategy of the virtual machine. For example, when the occupancy rate of the processor and/or memory resources of the physical machine exceeds a preset threshold, the virtual machine in the physical machine is migrated.
  • the CPU and memory occupancy rates of physical machine 1 at the current moment are less than the preset threshold, but according to historical resource usage data, the CPU occupancy rate of physical machine 1 will exceed the preset threshold and exceed the preset threshold in the next 20 minutes
  • the threshold lasts for a long time, and the occupancy rate of the CPU in physical machine 2 has been below the preset threshold and the processor resources meet the needs of any virtual machine in physical machine 1, then part of the virtual machine in physical machine 1 can be virtualized in advance.
  • the machine is migrated to physical machine 2.
  • the scheduling of resources in the current resource pool is mainly based on the use of physical resources of each physical machine in the same virtual machine cluster and the physical resource requirements of the virtual machines, and the migration of virtual machines between different physical machines, so as to realize the difference in the same resource pool.
  • the current virtual machine migration only considers the physical resource utilization of the physical machine in the resource pool and the physical resource demand of the virtual machine, and does not perceive the business in the virtual machine. After the virtual machine is migrated from the original physical machine to the new physical machine, The new physical machine does not necessarily meet the needs of the business actually running in the virtual machine, and has a bad effect on the operation of the actual business.
  • embodiments of the present application provide a resource scheduling method.
  • the method periodically obtains performance data and attribute data of virtual machines, clusters the virtual machines according to the performance data, and determines the virtual machines carried in the virtual machine according to the attribute data.
  • Business and the relationship between different businesses After determining the category to which the virtual machine belongs and the relationship between the services in the virtual machine, the resource scheduling strategy is determined according to the category to which the virtual machine belongs and the relationship between the services.
  • the performance data is the data of different performance indicators of the virtual machine, including CPU occupancy, memory occupancy, storage space occupancy, bandwidth occupancy, etc.
  • attribute data includes the source port number and destination port of the data packet received by the physical machine Number, source Internet protocol (IP) address, destination IP address, etc.
  • IP Internet protocol
  • the relationship between services refers to the relationship between the services carried in different virtual machines, where the relationship between the services includes a dependency relationship, a two-way relationship, a one-way relationship, a family relationship, and a mutually exclusive relationship.
  • Dependency relationship refers to the data provided by business B for the operation of business A; two-way relationship refers to data interaction between business A and business B; one-way relationship refers to business A collecting data and providing data to business B; family relationship refers to business A Both service B and service B need to access the same resource; mutually exclusive relationship means that service A and service B cannot run on the same virtual machine.
  • the business a in the virtual machine VM14 is to provide web services
  • the business b in the virtual machine VM21 is a database business
  • the business b provides the data required by the web services for the business a
  • the relationship between the business a and the business b is a dependency relationship
  • the service c in the virtual machine VM23 is a data collection service, and the collected data is provided to the database service d in the virtual machine VM42, then there is a one-way relationship between the service c and the service d.
  • FIG. 2 is a schematic structural diagram of a resource pool provided by an embodiment of the present application.
  • the system includes a management node 10 and multiple physical machines 20. Each physical machine includes multiple virtual machines running on the physical machine.
  • a virtual machine includes multiple virtual machines running on the physical machine.
  • a virtual machine a virtual machine monitor (VMM) 210, and a data collection module 220.
  • the data collection module 220 may be a module in the VMM210 or a module other than the VMM210. In the embodiment of the present application, the data collection module 220 is a module other than the VMM210 as an example for description.
  • the data collection module 220 is configured to collect the above-mentioned performance data and attribute data, and send the performance data and attribute data to the management node 10.
  • the management node 10 is used to analyze the performance data and attribute data fed back by each physical machine and generate corresponding resource scheduling strategies.
  • the management node 10 includes a data analysis module 110 and a management module 120.
  • the data analysis module 110 is used to perform a data acquisition module 220
  • the collected data is analyzed, and the analysis result is sent to the management module 120, and the management module 120 generates a resource scheduling strategy according to the analysis result.
  • the structure of each of the above physical machines is similar, except that the number of virtual machines deployed in each physical machine and the various physical resources that each physical machine can provide are different.
  • FIG. 3 is a schematic flowchart of a resource scheduling method provided by an embodiment of the present application. The method includes:
  • the physical machine obtains performance data and attribute data of each virtual machine.
  • each physical machine has its own physical machine identification PMi, for example, the identification of physical machine 1 is PM1, the identification of physical machine 2 is PM2, and the identification of physical machine m is PMm.
  • the virtual machine in each physical machine has a virtual machine identifier VMij, where i represents the i-th physical machine, j represents the j-th virtual machine, and VMij represents the j-th virtual machine in the i-th physical machine.
  • the virtual machine VM23 represents the third virtual machine in the physical machine 2.
  • the data acquisition module 220 in each physical machine includes a performance data acquisition module 2201 and an attribute data acquisition module 2202.
  • the performance data collection module 2201 obtains the performance data of each virtual machine in the physical machine
  • the attribute data collection module 2202 collects the attribute data of the data packet received by each physical machine.
  • the performance data includes the CPU occupancy rate, memory occupancy rate, storage space occupancy rate, and bandwidth occupancy rate of each virtual machine
  • the attribute data includes the source port number, destination port number, source IP address, and destination IP address of the data packet.
  • the destination IP address is used to determine the destination virtual machine corresponding to the data packet
  • the destination port number is used to determine the type of service carried in the destination virtual machine corresponding to the destination IP address
  • the source IP address and destination IP address are used to determine the two data exchanges. virtual machine.
  • the destination port number in the data packet is 110, which means that the services provided by the virtual machine receiving the data packet include mail service services. If the destination port number in the data packet is 80, it means that the virtual machine receiving the data packet Services provided by the machine include web services.
  • S302 The physical machine sends the acquired performance data and attribute data to the management node.
  • the data sent by the performance data collection module 2201 to the management node 10 includes the identification of each virtual machine and the performance data corresponding to each virtual machine.
  • the data sent by the attribute data collection module 2202 to the aforementioned management node 10 includes the physical machine identification of each physical machine and the attribute data of the data packet received by the physical machine.
  • the attribute data collection module 2202 may also determine the destination virtual machine to which each data packet is to be reached according to the destination IP address in each data packet, thereby sending the attribute data corresponding to each virtual machine To the management node 10.
  • the management node receives the performance data and attribute data of each virtual machine sent by the physical machine.
  • the data collection module 220 in each of the aforementioned physical machines sends the collected performance data and attribute data to the management node 10 in a preset period, and the management node 10 receives the aforementioned performance data and attribute data, and sends the aforementioned performance data and attribute data. To the data analysis module 110 in the management node 10.
  • the management node performs analysis according to the received performance data and attribute data to obtain an analysis result.
  • the foregoing analysis result includes the category of each virtual machine in the resource pool and the relationship between the services running in the virtual machine.
  • the data analysis module 110 includes a clustering module 1101 and a business analysis module 1102.
  • the clustering module 1101 clusters the virtual machines according to the performance data of each virtual machine in the resource pool, and divides the virtual machines in the resource pool into multiple category. For example, virtual machines are divided into computing virtual machines, storage virtual machines, network virtual machines, computing and network virtual machines, and storage and network virtual machines.
  • the business analysis module 1102 analyzes and obtains the relationship between the businesses running in the virtual machine according to the attribute data. After determining the type of the virtual machine and the relationship between the services in the virtual machine, the resource scheduling strategy of the resource pool is determined according to the type of the virtual machine and the relationship between the services.
  • the clustering module 1101 After the clustering module 1101 obtains the virtual machine identifier of each virtual machine and the performance data corresponding to each virtual machine identifier, it performs a calculation on the virtual machines in the resource pool according to the clustering algorithm and the performance data of each virtual machine. Clustering to obtain multiple categories of virtual machines.
  • the clustering algorithm may be a K-means clustering algorithm, a mean shift clustering algorithm, a fuzzy clustering algorithm, etc., which are not limited in the embodiment of the present application.
  • the clustering module 1101 may use a fuzzy c-means clustering algorithm (FCM) to cluster the virtual machines according to the performance data corresponding to each virtual machine.
  • FCM fuzzy c-means clustering algorithm
  • the sample matrix includes M rows and N columns, where M is the number of samples, that is, the resource pool includes M virtual machines, and N is the number of indicators included in the performance data of each virtual machine.
  • Performance data indicators include CPU usage, memory usage, storage space usage, and bandwidth usage.
  • Each row of data in the sample matrix represents N performance data corresponding to a virtual machine, and each column is data of the same indicator for different virtual machines;
  • the type of virtual machine can indicate the type of services carried in the virtual machine. For example, if the virtual machine VM12 is a computing virtual machine, it means that the virtual machine mainly needs CPU resources, and the services carried in the virtual machine are also the same. What is needed is CPU resources.
  • the service analysis module 1102 includes a feature configuration library and the corresponding relationship between the IP address and the virtual machine identifier.
  • the feature configuration library indicates the relationship between the port number and the service, and the service analysis module 1102 determines the destination port number in the data packet.
  • the service to which the data packet belongs, and the virtual machine corresponding to the data packet is determined according to the destination IP address in the data packet, thereby determining the virtual machine corresponding to the service, and obtaining the service carried by the virtual machine. For example, if the destination port number in a data packet collected by the attribute data collection module 2202 in the physical machine 1 is 80, it means that there are virtual machines in the physical machine that provide web services.
  • the virtual machine identifier of the virtual machine corresponding to the destination IP address is VM12, which means that the virtual machine VM12 provides a web service service.
  • the data received by the service analysis module 1102 includes the identification of each physical machine and the attribute data of the data packet received by each physical machine.
  • the service analysis module 1102 determines according to the source IP address and the destination IP address in the attribute data. Two virtual machines having an interactive relationship are determined, and the physical machine to which the two virtual machines having an interactive relationship belong is determined according to the physical machine identifier corresponding to the data packet.
  • the above attribute data also includes the source port number and the destination port number of the data packet. After the service analysis module 1102 determines the two virtual machines that have an interactive relationship, it can further determine the destination port number in the data packet sent by the two virtual machines. Determine the services carried in each virtual machine.
  • the source IP address in the first data packet received by physical machine 1 is the address of VM24
  • the destination IP address is the address of VM13 in physical machine 1
  • the source port number in the first data packet is a
  • the destination port The number is b.
  • the source IP address in the second data packet received in physical machine 2 is the address of VM13
  • the destination IP address is the address of VM24 in physical machine 2
  • the source port number in the first data packet is b
  • the destination port number is a
  • VM13 in physical machine 1 and VM24 in physical machine 2 have an interactive relationship
  • business 1 in physical machine 1 is related to business 2 in physical machine 2.
  • the difference between the data volume of the first data packet is less than the preset difference threshold, it means that service 1 and service 2 are in a two-way relationship. If the difference between the data volume of the first data packet and the data volume of the second data packet is greater than or equal to the preset difference Threshold, for example, the data volume of the first data packet is greater than the data volume of the second data packet and the difference is greater than or equal to the preset difference threshold, it means that service 1 mainly provides data for service 2, that is, service 1 and service 2 are dependent relationship.
  • the management node schedules the virtual machine according to the analysis result.
  • the management module 120 determines the resource usage index of the resource pool according to the resource allocation data and resource usage data of the multiple virtual machines in each category Pu and resource performance index Ru.
  • resource allocation data refers to the amount of resources allocated to each virtual machine, including CPU resources, memory resources, bandwidth resources, and storage resources
  • resource usage data refers to the resources used by each virtual machine, including CPU usage and memory usage , Storage space occupation and bandwidth occupation
  • the above resource usage data can be calculated based on the performance data corresponding to each virtual machine and the above resource allocation data, or it can be collected by the above performance data collection module 2201 and used as part of the performance data Sent to the management node.
  • the resource usage rate of the resource pool is prioritized as the resource scheduling target, when the value of Pu is greater than or equal to the resource usage index threshold, the virtual machine is not scheduled, and when the value of Pu is less than the resource usage index threshold, the virtual machine is Scheduling.
  • the above strategies include migrating the virtual machines of two services with one-way relationship, two-way relationship or dependent relationship to the same physical machine, or transferring two virtual machines with one-way relationship, two-way relationship or dependent relationship to the same physical machine.
  • Machines are migrated to two similar physical machines, where similarity means that the path overhead for data transmission from one physical machine to another physical machine is small.
  • business a runs in virtual machine VM11
  • business b runs in virtual machine VM54
  • there is a two-way relationship between business a and business b then virtual machine VM54 can be migrated from physical machine 5 to physical machine 1, so that the virtual The machine VM11 and the virtual machine VM54 are located in the same physical machine.
  • the management module 120 obtains resource occupancy data of each virtual machine in each type of virtual machine, calculates the resource usage index of each type of virtual machine, and then calculates the resource usage index of the resource pool.
  • the resource occupation data includes CPU occupation, memory occupation, storage space occupation, and bandwidth occupation.
  • the management module 120 calculates the average value of each type of data to obtain the resource occupation data P i corresponding to the i-th category of virtual machines.
  • p icpu represents the average CPU usage of virtual machines in the i-th category
  • p imem represents the average memory usage of virtual machines in the i-th category
  • p isto represents the average storage space occupied by virtual machines of the i-th category
  • r ibw represents the average bandwidth occupied by virtual machines of the i-th category
  • the resource usage index P i of the virtual machines of the i-th category can be expressed as:
  • a, b, c, and d represent the coefficients of the corresponding physical resources.
  • the resource usage index P u of the resource pool is:
  • n is the number of categories of virtual machines.
  • x, y, z, w are coefficients corresponding to physical resources.
  • x, y, z, w are coefficients corresponding to physical resources.
  • each physical machine in the resource pool periodically obtains the performance data of each virtual machine and the attribute data of the data packets received in each physical machine, and combines the obtained performance data and attribute data Sent to the management node, the management node clusters the virtual machines in the resource pool according to the above-mentioned performance data, and perceives the perception of the services carried in the virtual machine according to the address information and port number information in the above-mentioned attribute data, and the virtual machine The relationship between the services carried.
  • the management node determines whether the resources in the resource pool need to be scheduled based on the clustered performance data of each category of virtual machine.
  • the management node determines the virtual machine's status according to the category to which the virtual machine belongs. For the resources required by the business, the resources in the resource pool are scheduled according to the resources described in the business and the connections between the services, so that when the resources in the resource pool are scheduled, the services in the virtual machine can be sensed to determine the business needs The resource is scheduled according to the resource required by the obligation and the relationship between the services, so that the resources in the resource pool can be scheduled to better meet the actual business needs.
  • FIG. 4 is a schematic structural diagram of a resource scheduling device provided by an embodiment of the present application.
  • the resource scheduling device 400 is deployed in the above-mentioned management node 10 to realize the functions of the above-mentioned management node 10.
  • the resource scheduling device 400 includes a communication unit 410 and a processing unit 420, where:
  • the communication unit 410 is configured to receive performance data and attribute data sent by each physical machine in the resource pool, where the performance data includes physical resource information of each virtual machine in the resource pool, and the attribute data includes the port of the received data packet Number and address information. Specifically, the communication unit 410 executes the receiving and sending actions of the management node 10, such as the receiving performance data and the attribute data described in S303 in FIG. 3, which will not be repeated here.
  • the processing unit 420 is configured to cluster multiple virtual machines in the resource pool according to the above-mentioned performance data to obtain multiple virtual machine clusters; and determine the business relationship between the services in the above-mentioned multiple virtual machines according to the above-mentioned attribute data.
  • the method for the processing unit 420 to cluster the virtual machines in the above resource pool can refer to the method executed by the clustering module 1101 in the above S304, and the method for the processing unit 420 to determine the relationship between the services carried in the virtual machines according to the attribute data can refer to The method executed by the service analysis module 1102 in the foregoing S304 will not be repeated in this embodiment of the application.
  • the processing unit 420 is further configured to determine the scheduling of the resources in the resource pool according to the performance data of each virtual machine cluster in the multiple virtual machine clusters, and then, according to the business relationship between the services in the multiple virtual machine clusters, The resources in the resource pool are scheduled.
  • the group member scheduling includes migration of some virtual machines, overproportional scheduling, NUMA aggregation, and so on.
  • the method for the processing unit 420 to determine whether to schedule the resources in the virtual machine may refer to the above S305.
  • the management module 120 determines based on the resource usage index and the resource performance index to determine whether to schedule the resources.
  • the strategy for the processing unit 420 to schedule the resources can refer to the strategy for scheduling resources generated by the management module 120 in S305 according to the relationship between the services. This will not be repeated here.
  • the communication unit 420 is also used for the processing unit 420 after determining to schedule the resources in the resource pool and generating a resource scheduling policy according to the relationship between services, the communication unit 420 is also used for sending the resource scheduling policy to the resource pool In order to make the physical machine receiving the resource scheduling policy perform resource scheduling according to the resource scheduling side rate.
  • the operation of the resource scheduling apparatus 300 to implement resource scheduling may refer to the operations performed by the management node 10 in the foregoing method embodiment, and details are not described herein again.
  • FIG. 5 is a schematic structural diagram of a computing device provided by an embodiment of the application.
  • the computing device 500 implements the function of the management node 10 in the foregoing embodiment and executes the resource scheduling method in the foregoing embodiment.
  • the resource scheduling device 500 includes at least: a processor 510, a communication interface 520, and a memory 530.
  • the processor 510, the communication interface 520, and the memory 530 are connected to each other through a bus 540, where:
  • the processor 510 is configured to implement the operations performed by the above-mentioned data analysis module 110 and the management module 120.
  • the specific implementation of the various operations performed by the processor 510 may refer to the specific operations performed by the management node 10 in the foregoing method embodiment.
  • the processor 510 is configured to perform operations of the management node 10 in S304 and S305 in FIG.
  • the processor 510 may have a variety of specific implementation forms.
  • the processor 510 may be a central processing unit (CPU) or a graphics processing unit (GPU), and the processor 510 may also be a single-core processor or Multi-core processor.
  • the processor 510 may be a combination of a CPU and a hardware chip.
  • the above-mentioned hardware chip may be an application-specific integrated circuit (ASIC), a programmable logic device (PLD) or a combination thereof.
  • the above-mentioned PLD may be a complex programmable logic device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.
  • the processor 510 may also be implemented by a logic device with built-in processing logic alone, such as an FPGA or a digital signal processor (digital signal processor, DSP).
  • the communication interface 520 can be a wired interface or a wireless interface for communicating with other modules or devices.
  • the wired interface can be an Ethernet interface, a local interconnect network (LIN), etc.
  • the wireless interface can be a cellular network interface or use Wireless LAN interface, etc.
  • the communication interface 520 executes the receiving and sending operations of the management node 10, for example, can be used to execute the performance data and attribute data of the virtual machine sent by the user terminal in S303, which will not be repeated here.
  • the memory 530 may be a non-volatile memory, for example, read-only memory (ROM), programmable read-only memory (programmable ROM, PROM), erasable programmable read-only memory (erasable PROM, EPROM), Electrically erasable programmable read-only memory (EPROM, EEPROM) or flash memory.
  • ROM read-only memory
  • PROM programmable read-only memory
  • EPROM erasable programmable read-only memory
  • EPROM Electrically erasable programmable read-only memory
  • EEPROM Electrically erasable programmable read-only memory
  • the memory 530 may also be used to store instructions and data, so that the processor 510 can call the instructions stored in the memory 530 to implement the operations performed by the data analysis module 110 and the management module 120, such as the clustering operation of virtual machines in the foregoing method embodiment.
  • the computing device 500 may include more or fewer components than those shown in FIG. 5, or may have different component configurations.
  • the bus 540 may be a peripheral component interconnect standard (PCI) bus or an extended industry standard architecture (EISA) bus, etc.
  • PCI peripheral component interconnect standard
  • EISA extended industry standard architecture
  • the bus 540 can be divided into an address bus, a data bus, a control bus, and the like. For ease of presentation, only one thick line is used to represent in FIG. 5, but it does not mean that there is only one bus or one type of bus.
  • the server 500 may further include an input/output interface 550, and the input/output interface 550 is connected to an input/output device for receiving input information and outputting operation results.
  • the embodiments of the present application also provide a non-transitory computer-readable storage medium in which a computer program is stored.
  • the management node in the above-mentioned method embodiment can be implemented.
  • the processor of the computer storage medium may refer to the specific operations of the management node in the method embodiment for the specific implementation of the above method steps, which will not be repeated here.
  • the above-mentioned embodiments may be implemented in whole or in part by software, hardware, firmware or any other combination.
  • the above-mentioned embodiments may be implemented in the form of a computer program product in whole or in part.
  • the computer program product includes one or more computer instructions.
  • the computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices.
  • the computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium.
  • the computer instructions may be transmitted from a website, computer, server, or data center.
  • the computer-readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server or a data center that includes one or more sets of available media.
  • the usable medium may be a magnetic medium (for example, a floppy disk, a hard disk, and a magnetic tape), an optical medium (for example, a DVD), or a semiconductor medium.
  • the semiconductor medium may be a solid state drive (SSD).
  • the steps in the method in the embodiment of the present application may be sequentially scheduled, merged, or deleted according to actual needs; the modules in the device in the embodiment of the present application may be divided, merged, or deleted according to actual needs.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

L'invention concerne un procédé et un appareil de planification de ressources, et un dispositif associé. Le procédé consiste à : obtenir des données de performance et des données d'attribut de chaque machine virtuelle dans un groupe de ressources, les données de performance comprenant des informations de ressource physique de chaque machine virtuelle, et les données d'attribut comprenant des informations de numéro de port et des informations d'adresse d'un paquet de données ; regrouper une pluralité de machines virtuelles en fonction des données de performance pour obtenir une pluralité de groupes de machines virtuelles ; déterminer une relation de service entre des services dans la pluralité de machines virtuelles selon les données d'attribut ; et lors de la détermination, en fonction des données de performance de la pluralité des groupes de machines virtuelles, que les machines virtuelles dans le groupe de ressources doivent être planifiées, planifier les machines virtuelles dans le groupe de ressources en fonction de la relation de service entre les services dans la pluralité de machines virtuelles. Selon le procédé, par détermination d'une relation entre des services fonctionnant dans des machines virtuelles, des ressources sont planifiées sur la base de la relation entre les services, de telle sorte que des machines virtuelles planifiées sont plus appropriées pour des besoins de service.
PCT/CN2020/139902 2019-12-31 2020-12-28 Procédé et appareil de planification de ressources, et dispositif associé WO2021136137A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201911419644.3A CN111176792B (zh) 2019-12-31 2019-12-31 一种资源调度方法、装置及相关设备
CN201911419644.3 2019-12-31

Publications (1)

Publication Number Publication Date
WO2021136137A1 true WO2021136137A1 (fr) 2021-07-08

Family

ID=70656028

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/139902 WO2021136137A1 (fr) 2019-12-31 2020-12-28 Procédé et appareil de planification de ressources, et dispositif associé

Country Status (2)

Country Link
CN (2) CN117632361A (fr)
WO (1) WO2021136137A1 (fr)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115567537A (zh) * 2022-09-20 2023-01-03 中国联合网络通信集团有限公司 一种资源的调度方法和设备
CN116820766A (zh) * 2023-06-29 2023-09-29 黑龙江起速网络科技有限公司 基于大数据技术的计算机资源分配系统及方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117632361A (zh) * 2019-12-31 2024-03-01 华为技术有限公司 一种资源调度方法、装置及相关设备
CN112667999B (zh) * 2020-12-31 2024-06-07 中电长城网际安全技术研究院(北京)有限公司 虚拟机的执行时间调整方法和装置
CN115202803A (zh) * 2021-04-13 2022-10-18 超聚变数字技术有限公司 一种故障处理方法及装置
CN113923215B (zh) * 2021-09-09 2023-12-29 深信服科技股份有限公司 虚拟机调度方法、电子设备及存储介质
CN114546603B (zh) * 2022-04-24 2022-07-29 睿至科技集团有限公司 一种应用于物联网的数据处理方法及系统
CN115277693A (zh) * 2022-06-21 2022-11-01 中国电信股份有限公司 云资源调度方法及其系统、计算机可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102646052A (zh) * 2011-02-16 2012-08-22 中国移动通信集团公司 一种虚拟机部署方法、装置及系统
CN104426694A (zh) * 2013-08-28 2015-03-18 杭州华三通信技术有限公司 一种调整虚拟机资源的方法和装置
CN106033373A (zh) * 2015-03-11 2016-10-19 苏宁云商集团股份有限公司 一种云计算平台中虚拟机资源调度方法和调度系统
US20180039494A1 (en) * 2016-08-05 2018-02-08 Oracle International Corporation Zero down time upgrade for a multi-tenant identity and data security management cloud service
CN110489229A (zh) * 2019-07-17 2019-11-22 长沙学院 一种多目标任务调度方法及系统
CN111176792A (zh) * 2019-12-31 2020-05-19 华为技术有限公司 一种资源调度方法、装置及相关设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105808341B (zh) * 2014-12-29 2019-05-28 中国移动通信集团公司 一种资源调度的方法、装置和系统
CN104881327B (zh) * 2015-06-01 2018-08-24 曙光信息产业(北京)有限公司 集群的作业流管理方法和装置
CN107222324B (zh) * 2016-03-22 2021-05-14 华为技术有限公司 网络服务的业务配置方法和装置
US10489184B2 (en) * 2017-05-12 2019-11-26 At&T Intellectual Property I, L.P. Systems and methods for management of virtual machine resources in a network environment through localized assignment of virtual machines having complimentary resource requirements

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102646052A (zh) * 2011-02-16 2012-08-22 中国移动通信集团公司 一种虚拟机部署方法、装置及系统
CN104426694A (zh) * 2013-08-28 2015-03-18 杭州华三通信技术有限公司 一种调整虚拟机资源的方法和装置
CN106033373A (zh) * 2015-03-11 2016-10-19 苏宁云商集团股份有限公司 一种云计算平台中虚拟机资源调度方法和调度系统
US20180039494A1 (en) * 2016-08-05 2018-02-08 Oracle International Corporation Zero down time upgrade for a multi-tenant identity and data security management cloud service
CN110489229A (zh) * 2019-07-17 2019-11-22 长沙学院 一种多目标任务调度方法及系统
CN111176792A (zh) * 2019-12-31 2020-05-19 华为技术有限公司 一种资源调度方法、装置及相关设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115567537A (zh) * 2022-09-20 2023-01-03 中国联合网络通信集团有限公司 一种资源的调度方法和设备
CN116820766A (zh) * 2023-06-29 2023-09-29 黑龙江起速网络科技有限公司 基于大数据技术的计算机资源分配系统及方法

Also Published As

Publication number Publication date
CN117632361A (zh) 2024-03-01
CN111176792B (zh) 2023-11-17
CN111176792A (zh) 2020-05-19

Similar Documents

Publication Publication Date Title
WO2021136137A1 (fr) Procédé et appareil de planification de ressources, et dispositif associé
US12015563B2 (en) Management of resource affinities in computing systems having multiple cores
US10558498B2 (en) Method for scheduling data flow task and apparatus
US10120726B2 (en) Hybrid virtual machine configuration management
KR101583325B1 (ko) 가상 패킷을 처리하는 네트워크 인터페이스 장치 및 그 방법
WO2023125493A1 (fr) Procédé et appareil de gestion de ressources, et plate-forme de gestion de ressources
US9503387B2 (en) Instantiating incompatible virtual compute requests in a heterogeneous cloud environment
WO2018177012A1 (fr) Procédé, appareil et dispositif de commande de bande passante
US20150381453A1 (en) Integrated global resource allocation and load balancing
US20140068602A1 (en) Cloud-Based Middlebox Management System
US11356381B2 (en) Dynamic processing of packets using multiple receive queue features
DE102020109669A1 (de) Dienstgüte-verkehrsmanagement in hochgeschwindigkeitspaketverarbeitungssystemen
WO2015101091A1 (fr) Procédé et dispositif d'ordonnancement distribué de ressources
US10460254B2 (en) System and method for reducing state space in reinforced learning by using decision tree classification
WO2017010922A1 (fr) Attribution de ressources informatiques en nuage
WO2012173641A1 (fr) Gestion décentralisée d'hôtes virtualisés
US20140201371A1 (en) Balancing the allocation of virtual machines in cloud systems
US10237148B2 (en) Providing a data set for tracking and diagnosing datacenter issues
DE102019103932A1 (de) Technologien für optimierte Dienstgütebeschleunigung
CN107370783B (zh) 一种云计算集群资源的调度方法及装置
CN114564313A (zh) 负载调整方法、装置、电子设备及存储介质
CN116643875A (zh) 一种任务调度方法、服务器及服务器集群
CN113973092B (zh) 链路资源调度方法、装置、计算设备及计算机存储介质
KR20180134219A (ko) 가상머신 패킷의 처리방법과 그 장치
CN110247802B (zh) 针对云服务单机环境的资源配置方法及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20909486

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20909486

Country of ref document: EP

Kind code of ref document: A1