Resource scheduling method based on cloud management platform and cloud management platform

By using the resource pooling scheduling method of the cloud management platform, the problem of resources not being able to be used collaboratively in cloud data centers has been solved, improving resource utilization and simplifying the cloud instance management process.

CN120832231APending Publication Date: 2025-10-24HUAWEI CLOUD COMPUTING TECHNOLOGIES CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202410703571.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-04-23
Filing Date
2024-05-31
Publication Date
2025-10-24

AI Technical Summary

Technical Problem

In cloud data centers, the resources of different physical servers cannot be used in an efficient manner, resulting in low resource utilization and resource fragmentation.

Method used

Multiple resource pools are managed through a cloud management platform, enabling pooled scheduling of resources within the pools. Resources from different physical servers are connected via a high-speed bus to meet the cloud instance needs of tenants, and resource allocation is optimized through SLA thresholds.

Benefits of technology

It improves resource utilization, avoids resource fragmentation, simplifies the creation, expansion, and migration of cloud instances, and enhances the efficiency and success rate of resource scheduling.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120832231A_ABST
    Figure CN120832231A_ABST
Patent Text Reader

Abstract

The invention discloses a resource scheduling method based on a cloud management platform and the cloud management platform, which can improve the resource utilization rate to a certain extent and avoid resource fragmentation. The method comprises the steps that after a cloud management platform receives a cloud instance creation request sent by a tenant, the cloud management platform can determine a first type and a first specification of resources required by a first cloud instance of the tenant based on the cloud instance creation request, so that the cloud management platform can determine a first resource pool meeting the first type from a plurality of resource pools; and selecting a first resource meeting the first specification from the first resource pool. And after the first cloud instance of the tenant is created, the cloud management platform allocates the first resource to the first cloud instance of the tenant, and the first resource is used by the first cloud instance of the tenant.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application claims priority to the Chinese Patent Application No. 202410494340.8, filed on April 23, 2024, and entitled "A Resource Scheduling Method Based on a Cloud Management Platform and a Cloud Management Platform", the content of which is incorporated herein by reference in its entirety. TECHNICAL FIELD

[0002] Embodiments of the present application relate to the field of cloud technology, and in particular to a resource scheduling method based on a cloud management platform and a cloud management platform. BACKGROUND

[0003] With the rapid development of cloud technology, more and more tenants choose to purchase cloud instances provided by cloud vendors to complete their own businesses. Generally, the cloud instances of tenants can be deployed on physical servers in a cloud data center, and the cloud instances can use various types of resources in the physical servers to complete the businesses of the tenants, thereby meeting the business needs of the tenants.

[0004] In the related art, a cloud data center can include multiple physical servers, each of which can include a fixed number of computing resources, storage resources, and network resources, and based on these resources, each physical server can deploy multiple cloud instances. Since the resources of different physical servers are relatively independent, that is, different physical servers usually cannot achieve high-speed communication, which leads to the fact that the resources of different physical servers cannot be combined and used cooperatively.

[0005] In the above technology, the management and scheduling of resources are very limited. When a certain cloud instance requires more resources, there may be a shortage of resources on a certain physical server, but the resources of the remaining physical servers are still idle, resulting in a low resource utilization rate of the cloud data center. SUMMARY

[0006] Embodiments of the present application provide a resource scheduling method based on a cloud management platform and a cloud management platform, which can improve the resource utilization rate to a certain extent and avoid resource fragmentation.

[0007] A first aspect of embodiments of the present application provides a resource scheduling method based on a cloud management platform. A cloud management platform used to implement the method can manage infrastructure providing cloud services, and the infrastructure includes multiple resource pools of different types, each resource pool includes multiple resources arranged in the same cabinet or adjacent cabinets, and each resource pool includes multiple resources of the same type. The method includes:

[0008] When the tenant has a cloud instance creation demand, the cloud management platform can provide a management interface to the tenant. Then, the tenant can input a cloud instance creation request formulated by the tenant to the management interface through the client of the tenant, and the cloud instance creation request is used to indicate a first type of resource required by a first cloud instance of the tenant and a first specification. In this way, the cloud management platform can receive the cloud instance creation request sent by the tenant through the management interface.

[0009] After obtaining the cloud instance creation request, the cloud management platform can select a first resource pool satisfying the first type from a plurality of resource pools based on the cloud instance creation request, and select a first resource satisfying the first specification from the first resource pool. It should be noted that, since the first resource pool contains a plurality of resources, the first resource selected by the cloud management platform is usually one or several resources in the plurality of resources.

[0010] After determining the first resource, the cloud management platform can create the first cloud instance, and allocate the first resource to the first cloud instance for use of the first cloud instance, so as to meet the cloud instance creation demand of the tenant.

[0011] As can be seen from the above method, the first resource pool selected by the cloud management platform contains a plurality of resources located in the same cabinet or adjacent cabinets, which is equivalent to that the plurality of resources of the same type are presented in a pooled manner. Since the first cloud instance of the tenant and the plurality of resources in the first resource pool are connected through a high-speed bus, when the first cloud instance of the tenant needs one or several resources in the plurality of resources, the cloud management platform can allocate a sufficient number of first resources to the first cloud instance of the tenant for use according to the specification of the resource required by the tenant, so that the resource utilization can be improved to a certain extent and resource fragmentation can be avoided in the cloud instance creation process.

[0012] In a possible implementation, the cloud instance creation request further indicates a service level agreement (SLA) threshold set by the tenant, and the cloud management platform determines the first resource satisfying the first specification from the first resource pool by: determining, by the cloud management platform, a plurality of first resource groups satisfying the first specification from the plurality of resources of the first resource pool, each first resource group containing at least one resource; determining, by the cloud management platform, first SLA indicators of the plurality of first resource groups, the first SLA indicator of any first resource group containing at least one of: a latency required for the first cloud instance to access the first resource group, and a bandwidth required for the first cloud instance to access the first resource group; and selecting, by the cloud management platform from the plurality of first resource groups, a first resource group with a first SLA indicator less than the SLA threshold as the first resource. In the foregoing implementation, after determining the first resource pool, the cloud management platform can determine a plurality of first resource groups satisfying the first specification from the plurality of resources of the first resource pool, each first resource group containing at least one resource in the first resource pool. After determining the plurality of first resource groups, the cloud management platform can evaluate the plurality of first resource groups to obtain first SLA indicators of the plurality of first resource groups, the first SLA indicators of the plurality of first resource groups containing one or more of: a latency required for the first cloud instance to access the plurality of first resource groups, and a bandwidth required for the first cloud instance to access the plurality of first resource groups. After obtaining the first SLA indicators of the plurality of first resource groups, the cloud management platform can select, from the plurality of first resource groups, a first resource group with a first SLA indicator less than the SLA threshold as the first resource available to the first cloud instance.

[0013] In a possible implementation, the method further includes: receiving, by the cloud management platform, a cloud instance expansion request from the tenant, the cloud instance expansion request being used to indicate a first type of resource required to be added to the first cloud instance of the tenant and a second specification; determining, by the cloud management platform, a first resource pool satisfying the first type from the plurality of resource pools based on the cloud instance expansion request, and determining a second resource satisfying the second specification from the first resource pool, the first resource and the second resource being different resources in the first resource pool; and allocating, by the cloud management platform, the second resource to the first cloud instance. In the foregoing implementation, after the first cloud instance is created, if the tenant needs to expand the first cloud instance, the cloud management platform can provide a management interface to the tenant. Then, the tenant can input a cloud instance expansion request formulated by the tenant to the management interface, the cloud instance expansion request being used to indicate a first type of resource required to be added to the first cloud instance of the tenant and a second specification. In this way, the cloud management platform can receive the cloud instance expansion request sent by the tenant through the management interface. After obtaining the cloud instance expansion request, the cloud management platform can select a first resource pool satisfying the first type from the plurality of resource pools based on the cloud instance expansion request, and select a second resource satisfying the second specification from the first resource pool. It should be noted that the second resource and the first resource are usually different resources in the first resource pool. After determining the second resource, the cloud management platform can allocate the second resource to the first cloud instance for use by the first cloud instance, thereby meeting the cloud instance expansion requirement of the tenant. As can be seen, when the tenant needs to expand the first cloud instance, the first resource pool selected by the cloud management platform for the tenant, since the first cloud instance of the tenant and the remaining resources in the first resource pool except the first resource are connected through a high-speed bus, when the first cloud instance of the tenant needs one or more resources in the remaining resources, the cloud management platform can allocate the resources required by the tenant to the first resource pool according to the specification of the resources, and allocate a sufficient number of second resources to the first cloud instance of the tenant for use, so that the resource utilization rate can be improved to a certain extent and resource fragmentation can be avoided during the cloud instance expansion process.

[0014] In a possible implementation, the cloud management platform determines the second resource satisfying the second specification from the first resource pool includes: the cloud management platform determines a plurality of second resource groups satisfying the second specification from the rest of the resources in the first resource pool except the first resource; the cloud management platform determines second SLA indexes of the plurality of second resource groups; and the cloud management platform selects, from the plurality of second resource groups, a second resource group whose second SLA index is less than the SLA threshold as the second resource. In the foregoing implementation, after the first resource pool is determined, the cloud management platform can determine a plurality of second resource groups satisfying the second specification from the rest of the resources in the first resource pool except the first resource, each second resource group containing at least one resource in the first resource pool. After the plurality of second resource groups are determined, the cloud management platform can evaluate the plurality of second resource groups to obtain second SLA indexes of the plurality of second resource groups, the second SLA indexes of the plurality of second resource groups including one or more of the following: a time delay required for the first cloud instance to access the plurality of second resource groups, and a bandwidth required for the first cloud instance to access the plurality of second resource groups. After the second SLA indexes of the plurality of second resource groups are obtained, the cloud management platform can select, from the plurality of second resource groups, a second resource group whose second SLA index is less than the SLA threshold as the second resource available to the first cloud instance.

[0015] In a possible implementation, the cloud instance creation request further indicates a second type of resource required by the first cloud instance of the tenant and a third specification, and the method further includes: the cloud management platform determines a second resource pool satisfying the second type from the plurality of resource pools, and determines a third resource satisfying the third specification from the second resource pool, the third resource being at least one resource of the plurality of resources of the second resource pool; and the cloud management platform allocates the third resource to the first cloud instance.

[0016] In a possible implementation, the method further includes: the cloud management platform receiving a cloud instance migration request for the first cloud instance from the tenant; the cloud management platform determining a third SLA index of the first resource and a fourth SLA index of the third resource based on the cloud instance migration request; if the third SLA index and the fourth SLA index are less than the SLA threshold, the cloud management platform creating a second cloud instance, allocating the first resource and the third resource to the second cloud instance, and releasing the first cloud instance; if the third SLA index is greater than or equal to the SLA threshold and the fourth SLA index is less than the SLA threshold, the cloud management platform determining a fourth resource matching the first resource in the first resource pool, creating a second cloud instance, allocating the fourth resource and the third resource to the second cloud instance, and releasing the first cloud instance; and if the third SLA index and the fourth SLA index are greater than or equal to the SLA threshold, the cloud management platform determining a fourth resource matching the first resource in the first resource pool and a fifth resource matching the third resource in the second resource pool, creating a second cloud instance, allocating the fourth resource and the fifth resource to the second cloud instance, and releasing the first cloud instance. In the foregoing implementation, during use of the first cloud instance, when the tenant determines that the first cloud instance needs to be migrated, the cloud management platform can provide a management interface to the tenant. Then, the tenant can input a cloud instance migration request for the first cloud instance to the management interface, so that the cloud management platform can receive the cloud instance migration request sent by the tenant through the client via the management interface. After obtaining the cloud instance migration request, the cloud management platform can evaluate the first resource and the third resource used by the first cloud instance, thereby obtaining the third SLA index of the first resource and the fourth SLA index of the third resource. The third SLA index includes one or more of information such as a time delay required for the second cloud instance to access the first resource and a bandwidth required for the second cloud instance to access the first resource, and the fourth SLA index includes one or more of information such as a time delay required for the second cloud instance to access the third resource and a bandwidth required for the second cloud instance to access the third resource. After obtaining the third SLA index and the fourth SLA index, the cloud management platform can determine a size relationship between the third SLA index, the fourth SLA index, and the SLA threshold set by the tenant. Based on the size relationship, the cloud management platform can perform different migration operations on the first cloud instance, such as full migration or non-full migration, and the like. As can be seen, when the tenant needs to migrate the first cloud instance, the cloud management platform can determine whether the resources originally used by the first cloud instance need to be migrated, and only migrate the resources that need to be migrated, and associate the resources that do not need to be migrated to the second cloud instance. In this way, during cloud instance migration, the process of data migration can be simplified to some extent, thereby reducing migration time and improving migration success rate.

[0017] In a possible implementation, the first resource pool comprises any one of the following: a computing resource pool, a storage resource pool, and a network resource pool, the computing resource pool comprises a plurality of computing resources located in a same rack or adjacent racks, the storage resource pool comprises a plurality of storage resources located in a same rack or adjacent racks, and the network resource pool comprises a plurality of network resources located in a same rack or adjacent racks.

[0018] In a possible implementation, the first cloud instance comprises any one of the following: a physical server, a virtual machine, a container, a micro virtual machine, and a bare metal server.

[0019] A second aspect of the embodiments of the present application provides a cloud management platform, the cloud management platform being configured to manage an infrastructure that provides cloud services, the infrastructure comprising a plurality of resource pools of different types, each resource pool comprising a plurality of resources arranged in a same rack or adjacent racks, and each resource pool comprising a plurality of resources of a same type, the cloud management platform comprising: a first receiving module configured to receive a cloud instance creation request from a tenant, the cloud instance creation request being configured to indicate a first type and a first specification of resources required by a first cloud instance of the tenant; a first determining module configured to determine, based on the cloud instance creation request, a first resource pool that satisfies the first type from the plurality of resource pools, and determine a first resource that satisfies the first specification from the first resource pool, the first resource being at least one resource of the plurality of resources of the first resource pool; and a first allocating module configured to create the first cloud instance and allocate the first resource to the first cloud instance.

[0020] In a possible implementation, the cloud instance creation request is further configured to indicate an SLA threshold set by the tenant, and the first determining module is configured to: determine a plurality of first resource groups that satisfy the first specification from the plurality of resources of the first resource pool, each first resource group comprising at least one resource; determine a first SLA indicator of the plurality of first resource groups, the first SLA indicator of any one first resource group comprising at least one of: a latency required by the first cloud instance to access the first resource group, and a bandwidth required by the first cloud instance to access the first resource group; and select, from the plurality of first resource groups, a first resource group with a first SLA indicator smaller than the SLA threshold as the first resource.

[0021] In a possible implementation, the cloud management platform further comprises: a second receiving module configured to receive a cloud instance expansion request from the tenant, the cloud instance expansion request being configured to indicate a first type and a second specification of resources required to be added by the first cloud instance of the tenant; a second determining module configured to determine, based on the cloud instance expansion request, a first resource pool that satisfies the first type from the plurality of resource pools, and determine a second resource that satisfies the second specification from the first resource pool, the first resource and the second resource being different resources in the first resource pool; and a second allocating module configured to allocate the second resource to the first cloud instance.

[0022] In a possible implementation, the second determining module is configured to: determine a plurality of second resource groups satisfying the second specification from the remaining resources in the first resource pool except the first resource; determine second SLA indexes of the plurality of second resource groups; and select, from the plurality of second resource groups, a second resource group with a second SLA index less than the SLA threshold as the second resource.

[0023] In a possible implementation, the cloud instance creation request further indicates a second type of resource required by the first cloud instance of the tenant and a third specification, and the cloud management platform further includes: a third determining module configured to determine a second resource pool satisfying the second type from the plurality of resource pools, and determine a third resource satisfying the third specification from the second resource pool, the third resource being at least one of the plurality of resources of the second resource pool; and a third allocating module configured to allocate the third resource to the first cloud instance.

[0024] In a possible implementation, the cloud management platform further includes: a third receiving module configured to receive a cloud instance migration request for the first cloud instance from the tenant; a fourth determining module configured to determine a third SLA index of the first resource and a fourth SLA index of the third resource based on the cloud instance migration request; and a fourth allocating module configured to: if the third SLA index and the fourth SLA index are less than the SLA threshold, create a second cloud instance, allocate the first resource and the third resource to the second cloud instance, and release the first cloud instance; if the third SLA index is greater than or equal to the SLA threshold and the fourth SLA index is less than the SLA threshold, determine a fourth resource matching the first resource in the first resource pool, create the second cloud instance, allocate the fourth resource and the third resource to the second cloud instance, and release the first cloud instance; and if the third SLA index and the fourth SLA index are greater than or equal to the SLA threshold, determine a fourth resource matching the first resource in the first resource pool and a fifth resource matching the third resource in the second resource pool, create the second cloud instance, allocate the fourth resource and the fifth resource to the second cloud instance, and release the first cloud instance.

[0025] In a possible implementation, the first resource pool includes any one of the following: a computing resource pool, a storage resource pool, and a network resource pool, the computing resource pool includes a plurality of computing resources located in the same cabinet or adjacent cabinets, the storage resource pool includes a plurality of storage resources located in the same cabinet or adjacent cabinets, and the network resource pool includes a plurality of network resources located in the same cabinet or adjacent cabinets.

[0026] In a possible implementation, the first cloud instance includes any one of the following: a physical server, a virtual machine, a container, a micro virtual machine, and a bare metal server.

[0027] The third aspect of the embodiments of the present application provides a cloud service system, the cloud service system comprising an infrastructure providing cloud services and a cloud management platform managing the infrastructure, the infrastructure comprising a plurality of resource pools of different types, each resource pool comprising a plurality of resources arranged in the same cabinet or adjacent cabinets, each resource pool comprising a plurality of resources of the same type, and the cloud management platform being configured to implement the steps performed by the cloud management platform in the method of the first aspect or any possible implementation manner of the first aspect.

[0028] The fourth aspect of the embodiments of the present application provides a computing device cluster, the computing device cluster comprising at least one computing device, each computing device comprising a processor and a memory: the memory is configured to store instructions; and the processor is configured to execute the instructions to cause the computing device cluster to perform the method of the first aspect or any possible implementation manner of the first aspect.

[0029] The fifth aspect of the embodiments of the present application provides a computer storage medium, the computer storage medium storing one or more instructions, the instructions causing one or more computers to implement the method of the first aspect or any possible implementation manner of the first aspect when executed by the one or more computers.

[0030] The sixth aspect of the embodiments of the present application provides a computer program product, the computer program product storing instructions, the instructions causing a computer to implement the method of the first aspect or any possible implementation manner of the first aspect when executed by the computer.

[0031] In the embodiments of the present application, after receiving the cloud instance creation request sent by the tenant, the cloud management platform can determine the first type and the first specification of the resource required by the first cloud instance of the tenant based on the cloud instance creation request, so the cloud management platform can determine the first resource pool satisfying the first type, and select the first resource satisfying the first specification from the first resource pool. After creating the first cloud instance of the tenant, the cloud management platform allocates the first resource to the first cloud instance of the tenant for use by the first cloud instance of the tenant. As can be seen, the first resource pool selected by the cloud management platform comprises a plurality of resources located in the same cabinet or adjacent cabinets, which is equivalent to that the plurality of resources of the same type are presented in a pooled manner. Since the first cloud instance of the tenant and the plurality of resources in the first resource pool are communicatively connected through a high-speed bus, when the first cloud instance of the tenant needs one or more resources of the plurality of resources, the cloud management platform can allocate the first resource to the first cloud instance of the tenant for use according to the specification of the resource required by the first cloud instance of the tenant. Therefore, during the cloud instance creation process, the resource utilization rate can be improved to some extent, and resource fragmentation can be avoided. BRIEF DESCRIPTION OF DRAWINGS

[0032] Figure 1A structural schematic diagram of a cloud service system provided by an embodiment of the present application;

[0033] Figure 2 Another structural schematic diagram of a cloud service system provided by an embodiment of the present application;

[0034] Figure 3 Another structural schematic diagram of a cloud service system provided by an embodiment of the present application;

[0035] Figure 4 A flowchart of a resource scheduling method based on a cloud management platform provided by an embodiment of the present application;

[0036] Figure 5 Another structural schematic diagram of a cloud service system provided by an embodiment of the present application;

[0037] Figure 6 Another flowchart of a resource scheduling method based on a cloud management platform provided by an embodiment of the present application;

[0038] Figure 7 Another structural schematic diagram of a cloud service system provided by an embodiment of the present application;

[0039] Figure 8 Another flowchart of a resource scheduling method based on a cloud management platform provided by an embodiment of the present application;

[0040] Figure 9 Another structural schematic diagram of a cloud service system provided by an embodiment of the present application;

[0041] Figure 10 Another structural schematic diagram of a cloud service system provided by an embodiment of the present application;

[0042] Figure 11 A structural schematic diagram of a cloud management platform provided by an embodiment of the present application;

[0043] Figure 12 A structural schematic diagram of a computing device provided by an embodiment of the present application;

[0044] Figure 13 A structural schematic diagram of a computing device cluster provided by an embodiment of the present application;

[0045] Figure 14 A schematic diagram of network connection of computer devices in a computer cluster provided by an embodiment of the present application. DETAILED DESCRIPTION

[0046] The embodiments of the present application provide a resource scheduling method based on a cloud management platform and a cloud management platform, which can improve resource utilization and avoid resource fragmentation to a certain extent.

[0047] The terms "first", "second", and the like in the description and in the claims of the present application and above drawings are used to distinguish similar objects, and do not necessarily indicate a specific order or sequence. It should be understood that the terms so used are interchangeable under appropriate circumstances and are merely employed to distinguish one object from another. Furthermore, the terms "comprise", "comprising", "have", "having", "include", "including", "contain", "containing", or any other similar terms are intended to cover a non-exclusive inclusion, such that a process, method, system, product, or apparatus that comprises, has, includes, contains one or more elements or steps does not necessarily comprise, have, include, or contain only those one or more elements or steps, but can legally comprise, have, include, or contain other elements or steps not expressly listed or inherent to such process, method, system, product, or apparatus.

[0048] With the rapid development of cloud technology, more and more tenants choose to purchase cloud instances provided by cloud vendors to complete their own businesses. Generally, the cloud instance of a tenant can be deployed on a physical server in a cloud data center, and the cloud instance can use various types of resources in the physical server to complete the business of the tenant, thereby meeting the business needs of the tenant.

[0049] In the related art, a cloud data center can include a plurality of physical servers, each of which can include a fixed number of computing resources, storage resources, and network resources, based on which each physical server can deploy a plurality of cloud instances. Since the resources of different physical servers are relatively independent, that is, different physical servers cannot usually communicate at high speed through a bus, the resources of different physical servers cannot usually be combined for collaborative use.

[0050] In the above technology, the management and scheduling of resources are very limited. When a certain cloud instance requires a large amount of resources, the resources on a certain physical server may be insufficient, while the resources on the remaining physical servers are still idle, resulting in low resource utilization and high resource fragmentation of the cloud data center.

[0051] Further, when a certain cloud instance needs to be migrated, all the resources on a certain physical server used by the virtual machine need to be converted into resources of another physical server, which can cause long migration time and low migration success rate.

[0052] To solve the above problems, the embodiments of the present application provide a resource scheduling method based on a cloud management platform, which can be implemented by a cloud service system (for example, a public cloud system, etc.), Figure 1 A structural schematic diagram of the cloud service system provided by the embodiments of the present application is shown in Figure 1 As shown, the cloud service system includes infrastructure that can provide cloud services and a cloud management platform that manages these infrastructures. The cloud management platform and the infrastructure are introduced respectively as follows:

[0053] The cloud management platform can manage the infrastructure in the whole cloud service system (for example, in the infrastructure, according to the instructions of a tenant, create a cloud instance serving the tenant for the tenant, allocate various resources to the cloud instance of the tenant, so that the cloud instance of the tenant can be used to run the application specified by the tenant, and provide corresponding data services for the tenant). The cloud management platform can also be open to tenants outside the cloud service system and respond to their requests. For example, the cloud management platform can provide various interfaces such as a login interface and a management interface for the client of the tenant (for example, a terminal device used by the tenant or a browser on the terminal device, etc.) to access. Among them, the cloud management platform can authenticate the client of the tenant through the login interface, and allow the client of the tenant to log in to the cloud management platform after successful authentication. For another example, the cloud management platform can also allow the client of the tenant to send a cloud instance creation request for the cloud instance of the tenant to the cloud management platform through the management interface, so the cloud management platform can determine a certain type or certain types of resource pool selected by the tenant for the cloud instance of the tenant based on the cloud instance creation request, and select resources of a certain specification from these resource pools, and after creating the cloud instance of the tenant, allocate these resources to the cloud instance of the tenant for use, so that the cloud instance of the tenant provides remote services for the tenant. For another example, the cloud management platform can also allow the client of the tenant to send a cloud instance expansion request for the cloud instance of the tenant to the cloud management platform through the management interface, so the cloud management platform can determine a certain type or certain types of resource pool selected by the tenant for the cloud instance of the tenant based on the cloud instance expansion request, and select resources of a certain specification from these resource pools, and continue to allocate these resources to the cloud instance of the tenant for additional use, thereby expanding the cloud instance of the tenant. For another example, the cloud management platform can also allow the client of the tenant to send a cloud instance migration request for the cloud instance of the tenant to the cloud management platform through the management interface, so based on the cloud instance migration request, for the resources used by the cloud instance of the tenant, the cloud management platform can select to migrate these resources to a new cloud instance for use, or partially migrate to a new cloud instance for use, or completely migrate to a new cloud instance for use, thereby flexibly and quickly completing the cloud instance migration.

[0054] The infrastructure includes multiple physical resource pools of different types serving tenants. These physical resource pools may include computing resource pools, storage resource pools, and network resource pools, among which the computing resource pool may include processing resource pools and control resource pools. The processing resource pool may include multiple processing resources (also called processors, such as central processing units (CPUs), etc.) located in the same cabinet or adjacent cabinets, and the control resource pool may include multiple control resources (also called controllers, such as service processing units (SPUs), etc.) located in the same cabinet or adjacent cabinets. The storage resource pool may include multiple storage resources (such as memory, hard disks, etc.) located in the same cabinet or adjacent cabinets. The network resources may include multiple network resources (such as network cards, etc.) located in the same cabinet or adjacent cabinets.

[0055] The following combination Figure 2 Further introduction to each type of resources mentioned above, such as Figure 2 As shown ( Figure 2 Another structural diagram of the cloud service system provided in an embodiment of the present application), multiple resource pools of different types can be connected through a high-speed bus, and the cloud management platform can be connected to multiple resource pools. In multiple resource pools, the cloud management platform can create cloud instances of tenants on processing resources. The cloud management platform can also create virtual control resources (for example, control nodes) on control resources to achieve the creation, expansion and migration of cloud instances through virtual control resources. The cloud management platform can also create virtual storage resources (for example, virtual memory, virtual hard disk, etc.) on storage resources and create virtual network resources (for example, virtual network cards, etc.) on network resources. When the cloud management platform executes the creation, expansion and migration of cloud instances, it will involve the allocation of virtual storage resources and virtual network resources, which is equivalent to the allocation of storage resources and network resources. It will not be expanded here.

[0056] Furthermore, the cloud management platform may include a separate resource management module, which may include a separate resource monitoring submodule and a separate resource scheduling submodule. Figure 3 As shown ( Figure 3Another structural diagram of the cloud service system provided by the embodiments of the present application is shown in FIG. 2. The separated resource management module can be deployed remotely in the infrastructure, but it can also be considered as a part of the cloud management platform. When the cloud management platform receives a cloud instance creation request, a cloud instance expansion request, and a cloud instance migration request of a tenant, the requests can be sent to the separated resource management module, so that the separated resource monitoring submodule and the separated resource scheduling submodule in the module invoke the virtual control resource to perform a series of processes based on the requests, thereby completing the creation, expansion, and migration of the cloud instance. Here, no further expansion is performed. It should be noted that the separated resource management module can also not be deployed remotely, but integrated in the cloud management platform. The embodiments of the present application do not have any limitation.

[0057] Further, for the cloud instances of the tenant, the cloud instances can be presented in various ways. For example, the cloud instances can be processors of physical servers selected by the cloud management platform, for example, the cloud instances can be processors of bare metal servers selected by the cloud management platform, for example, the cloud instances can be virtual machines (VMs) created by the cloud management platform on the physical servers through virtualization technology, for example, the cloud instances can also be containers created by the cloud management platform on the physical servers through virtualization technology, for example, the cloud instances can also be micro VMs created by the cloud management platform on the physical servers through virtualization technology, and the like.

[0058] Further, for the plurality of resource pools of different types, the plurality of resource pools can be deployed in the same site or different sites. The site can be presented in various forms. For example, the site can be a region in the infrastructure, for example, the site can be an availability zone in the infrastructure, for example, the site can be a data center (DC) in the infrastructure, for example, the site can be a room in the infrastructure, and the like.

[0059] Based on the cloud service system, after receiving the cloud instance creation request sent by the tenant, the cloud management platform can determine the type and specification of the resource required by the cloud instance of the tenant based on the cloud instance creation request, so the cloud management platform can determine the resource pool that meets the type, and select at least one resource that meets the specification from the resource pool. After creating the cloud instance of the tenant, the at least one resource is allocated to the cloud instance of the tenant for use by the tenant. As can be seen, the resource pool selected by the cloud management platform contains a plurality of resources located in the same cabinet or adjacent cabinets, which is equivalent to a plurality of resources of the same type presented in a pooled manner. Since the cloud instance of the tenant and the plurality of resources in the resource pool are connected through a high-speed bus, when the cloud instance of the tenant needs one or several resources of the plurality of resources, the cloud management platform can allocate the required resources to the cloud instance of the tenant for use according to the specification of the resources in the resource pool, which can improve the resource utilization rate to a certain extent and avoid resource fragmentation. In order to further understand the foregoing process, the following will further introduce the process in combination with Figure 4 the foregoing process, Figure 4 a flowchart of a resource scheduling method based on a cloud management platform provided by an embodiment of the present application, as shown in Figure 4 the foregoing process, Figure 1 the cloud service system can be implemented, and the cloud service system includes infrastructure that can provide cloud services for tenants and a cloud management platform that manages the infrastructure. The infrastructure can include a plurality of resource pools, each resource pool including a plurality of resources located in the same cabinet or adjacent cabinets, and each resource pool including a plurality of resources of the same type. The method includes the following steps:

[0060] 401. The cloud management platform receives a cloud instance creation request from the tenant, and the cloud instance creation request is used to indicate a first type of resource required by the first cloud instance of the tenant and a first specification of the resource.

[0061] In this embodiment, when the tenant has a cloud instance creation requirement, the cloud management platform can provide a management interface (for example, a cloud instance management column of a tenant interface, etc.) to the client of the tenant. Then, the tenant can input a cloud instance creation request formulated by the tenant to the management interface through the client. The cloud instance creation request is used to indicate a first type of resource required by the first cloud instance to be created by the tenant, and a first specification of the resource required by the first cloud instance. In this way, the cloud management platform can receive the cloud instance creation request sent by the tenant through the client through the management interface.

[0062] Specifically, the cloud instance creation request may include the following information: (1) The first type of resources required by the first cloud instance that the tenant needs to create (for example, storage type resources). (2) The first specification of the resources required by the first cloud instance that the tenant needs to create. (3) The second type of resources required by the first cloud instance that the tenant needs to create (for example, network type resources). It should be noted that the first type and the second type are different types. (4) The third specification of the resources required by the first cloud instance that the tenant needs to create. It should be noted that the first specification and the third specification are the same or different specifications. (5) The service-level agreement (SLA) thresholds set by the tenant, for example, the latency threshold and bandwidth threshold set by the tenant, etc.

[0063] For example, Figure 5 As shown ( Figure 5 Another structural diagram of the cloud service system provided in an embodiment of the present application) When a tenant needs to create a virtual machine 1, the tenant can send a creation request for the virtual machine 1 to the cloud management platform. The creation request can be used to indicate that the types of resources required for the virtual machine 1 include memory and a network card. The memory specification is 16G and the network card specification is 500Mbps. The creation request can also be used for the SLA thresholds set by the tenant, including the latency threshold and bandwidth threshold set by the tenant.

[0064] 402. The cloud management platform determines, based on the cloud instance creation request, a first resource pool that meets the first type from multiple resource pools, and determines a first resource that meets the first specification from the first resource pool, where the first resource is at least one resource among the multiple resources in the first resource pool.

[0065] After receiving the cloud instance creation request, the cloud management platform can determine, based on the cloud instance creation request, that the tenant needs to create a first cloud instance, as well as the first type and first specification of the resources required by the first cloud instance. The cloud management platform can then select a first resource pool that meets the first type from multiple resource pools, and select a first resource that meets the first specification from the first resource pool. It should be noted that because the first resource pool contains multiple resources, the first resource selected by the cloud management platform is typically one or more of these multiple resources.

[0066] Specifically, because the cloud management platform can also determine the second type and third specification of the resources required by the tenant to create the first cloud instance based on the cloud instance creation request, the cloud management platform determines a second resource pool from multiple resource pools that meets the second type, and determines a third resource from the second resource pool that meets the third specification. It should be noted that because the second resource pool contains multiple resources, the third resource selected by the cloud management platform is one or more resources in the multiple resources of the second resource pool.

[0067] More specifically, the cloud management platform can determine the first resource and the third resource in the following ways:

[0068] (1) After determining the first resource pool, the cloud management platform can determine a plurality of first resource groups satisfying the first specification from the plurality of resources in the first resource pool, each of the first resource groups containing at least one resource in the first resource pool. It is to be noted that for any one of the plurality of first resource groups, the first resource group satisfying the first specification means that the total specification of all resources in the first resource group is equal to the first specification.

[0069] (2) After determining the plurality of first resource groups, the cloud management platform can evaluate the plurality of first resource groups to obtain first SLA indicators of the plurality of first resource groups. It is to be noted that for any one of the plurality of first resource groups, the first SLA indicator of the first resource group contains one or more of the following information: a time delay required for the first cloud instance to access the first resource group and a bandwidth required for the first cloud instance to access the first resource group.

[0070] (3) After obtaining the first SLA indicators of the plurality of first resource groups, the cloud management platform can select a first resource group having a first SLA indicator less than the SLA threshold from the plurality of first resource groups as the first resource available for the first cloud instance.

[0071] (4) Similarly, after determining the second resource pool, the cloud management platform can determine the third resource from the second resource pool according to similar operations as (1) to (3), which will not be described herein.

[0072] Still as the above example, after obtaining the creation request, the cloud management platform can send the creation request to the separated resource management module, and the separated resource monitoring submodule in the module can determine a memory pool (a storage resource pool) and a network card pool (a network resource pool) from a plurality of resource pools based on the creation request. Since the memory pool contains a plurality of virtual memories, such as virtual memory 1, virtual memory 2, virtual memory 3, and virtual memory 4, the separated resource monitoring submodule can determine a plurality of virtual memory groups with a total specification of 16G from the plurality of virtual memories, virtual memory group 1: virtual memory 1+virtual memory 2, virtual memory group 2: virtual memory 3+virtual memory 4, virtual memory group 3: virtual memory 5+virtual memory 6+virtual memory 7, and so on. Then, the separated resource monitoring submodule can determine the SLA indicators of each virtual memory group (including the time delay and bandwidth of virtual machine 1 using each virtual memory group, and so on), and compare the SLA indicators of each virtual memory group with the SLA threshold. Since the SLA indicator of virtual memory group 1 is less than the SLA threshold, the separated resource monitoring submodule can determine virtual memory group 1 as the virtual memory available for the cloud instance 1. Similarly, the separated resource monitoring submodule can also determine virtual network card 1 as the virtual network card available for the cloud instance 1 from the network card pool in a similar manner.

[0073] 403、The cloud management platform creates the first cloud instance and allocates the first resource to the first cloud instance.

[0074] After determining the first resource, the cloud management platform can create the first cloud instance and allocate the first resource to the first cloud instance for use by the first cloud instance, thereby meeting the cloud instance creation requirement of the tenant.

[0075] Specifically, since the cloud management platform also selects the third resource for the first cloud instance, the cloud management platform can also allocate the third resource to the first cloud instance for use by the first cloud instance after creating the first cloud instance.

[0076] More specifically, the cloud management platform can allocate the first resource and the third resource for the first cloud instance in the following manner:

[0077] After determining the first resource, the cloud management platform can determine a third resource pool from a plurality of resource pools, the third resource pool being a control resource pool, and select one of a plurality of resources in the third resource pool as the third resource (i.e., a certain control resource). Then, the cloud management platform can send the address of the first resource to the third resource, so that the third resource creates the first cloud instance and creates a communication connection between the first cloud instance and the first resource based on the address of the first resource, i.e., successfully allocates the first resource to the first cloud instance.

[0078] Similarly, after determining the third resource, the cloud management platform can also allocate the third resource to the first cloud instance in the above manner, which will not be described here.

[0079] Still as the above example, the separated resource monitoring sub-module can provide the address of the virtual memory group 1 (including the virtual memory 1 and the virtual memory 2) and the virtual network card 1 to the separated resource scheduling sub-module, the separated resource scheduling sub-module can select the control node 1 to serve the virtual machine 1 in the plurality of control nodes of the controller pool, and provide the address of the virtual memory group 1 and the virtual network card 1 to the control node 1, so that the control node 1 informs the hypervisor 1 to start the virtual machine 1, and provides the address of the virtual memory group 1 and the virtual network card 1 to the hypervisor 1, so that the hypervisor 1 allocates the virtual memory group 1 and the virtual network card 1 to the virtual machine 1 based on the address of the virtual memory group 1 and the virtual network card 1.

[0080] Figure 6 Another flowchart of the resource scheduling method based on the cloud management platform provided by the embodiments of the present application is shown in Figure 6 The method can be implemented by a cloud service system as shown in Figure 1 The cloud service system includes infrastructures that can provide cloud services for tenants and a cloud management platform that manages these infrastructures. These infrastructures can include a plurality of resource pools, each resource pool including a plurality of resources located in the same cabinet or adjacent cabinets, and each resource pool including a plurality of resources of the same type. The method includes the following steps.

[0081] 601. The cloud management platform receives a cloud instance expansion request from a tenant, the cloud instance expansion request being used to indicate a first type of resource required to be added to a first cloud instance of the tenant and a second specification of the resource.

[0082] In the embodiments, after the first cloud instance is created, the first resource of the first cloud instance can be used to complete the business of the tenant. During this process, if the tenant finds that the first resource of the first cloud instance is insufficient, the tenant can expand the first cloud instance. Then, the cloud management platform can provide a management interface (for example, a cloud instance management column of a tenant interface, etc.) to a client of the tenant. Next, the tenant can input a cloud instance expansion request prepared by the tenant to the management interface through the client, and the cloud instance expansion request is used to indicate a first type of resource required to be added to the first cloud instance of the tenant and a second specification of the resource required by the first cloud instance. In this way, the cloud management platform can receive the cloud instance expansion request sent by the tenant through the client through the management interface.

[0083] For example, as shown in Figure 7 Figure 7 ​Another structural diagram of the cloud service system provided by the embodiments of the present application is shown in FIG. 6. When the tenant needs to expand the virtual machine 1, the tenant can send an expansion request for the virtual machine 1 to the cloud management platform. The expansion request can be used to indicate that the type of the resource needed to be added by the virtual machine 1 includes memory, and the specification of the memory needed to be added is 4G.

[0084] 602、The cloud management platform determines, from the multiple resource pools, a first resource pool that meets the first type based on the cloud instance expansion request, and determines, from the first resource pool, a second resource that meets the second specification. The first resource and the second resource are different resources in the first resource pool.

[0085] After obtaining the cloud instance expansion request, the cloud management platform can determine, based on the cloud instance expansion request, that the tenant needs to expand the first cloud instance, and the first type and the second specification of the resource needed to be added by the first cloud instance. Therefore, the cloud management platform can select, from the multiple resource pools, a first resource pool that meets the first type, and select, from the first resource pool, a second resource that meets the second specification. It should be noted that the second resource and the first resource are usually different resources in the multiple resources of the first resource pool.

[0086] More specifically, the cloud management platform can determine the second resource in the following manner:

[0087] (1) After determining the first resource pool, the cloud management platform can determine, from the remaining resources in the first resource pool except the first resource, multiple second resource groups that meet the second specification. Each second resource group includes at least one resource in the first resource pool. It should be noted that for any one of the multiple second resource groups, the second resource group meets the second specification means that the total specification of all resources in the second resource group is equal to the second specification.

[0088] (2) After determining the multiple second resource groups, the cloud management platform can evaluate the multiple second resource groups to obtain second SLA indicators of the multiple second resource groups. It should be noted that for any one of the multiple second resource groups, the second SLA indicator of the second resource group includes one or more of the following information: a time delay required for the first cloud instance to access the second resource group, and a bandwidth required for the first cloud instance to access the second resource group.

[0089] (3) After obtaining the second SLA indicators of the multiple second resource groups, the cloud management platform can select, from the multiple second resource groups, a second resource group whose second SLA indicator is less than the SLA threshold value as the second resource available for the first cloud instance.

[0090] Still as the above example, after obtaining the capacity expansion request, the cloud management platform can send the capacity expansion request to the separated resource management module. The separated resource monitoring submodule in the separated resource management module can determine a memory pool (a storage resource pool) from a plurality of resource pools based on the capacity expansion request. Since the virtual memory 1 and the virtual memory 2 in the memory pool have been allocated to the virtual machine 1, the separated resource monitoring submodule can determine a plurality of virtual memory groups with a total specification of 4G from the remaining virtual memories such as the virtual memory 3 and the virtual memory 4, the virtual memory group 1: the virtual memory 3, the virtual memory group 2: the virtual memory 5, the virtual memory group 3: the virtual memory 8, and the like. Then, the separated resource monitoring submodule can determine the SLA indicators of each virtual memory group (including the latency and bandwidth of the virtual machine 1 using each virtual memory group, and the like), and compare the SLA indicators of each virtual memory group with the SLA threshold. Since the SLA indicator of the virtual memory group 1 is less than the SLA threshold, the separated resource monitoring submodule can determine the virtual memory group 1 as the virtual memory that can be additionally used by the cloud instance 1.

[0091] 603、The cloud management platform allocates the second resource to the first cloud instance.

[0092] After determining the second resource, the cloud management platform can allocate the second resource to the first cloud instance for use by the first cloud instance, thereby meeting the capacity expansion demand of the cloud instance of the tenant.

[0093] Specifically, the cloud management platform can allocate the first resource and the third resource to the first cloud instance in the following manner:

[0094] After determining the second resource, the cloud management platform can determine a third resource pool from a plurality of resource pools, the third resource pool being a control resource pool, and select one of a plurality of resources in the third resource pool as the third resource (i.e., a certain control resource). Then, the cloud management platform can send the address of the second resource to the third resource, so that the third resource creates a communication connection between the first cloud instance and the second resource based on the address of the second resource, i.e., successfully allocates the second resource to the first cloud instance.

[0095] Still as the above example, the separated resource monitoring submodule can provide the address of the virtual memory group 1 (including the virtual memory 3) to the separated resource scheduling submodule. The separated resource scheduling submodule can select the control node 1 to serve the virtual machine 1 from a plurality of control nodes in the controller pool, and provide the address of the virtual memory group 1 to the control node 1, so that the control node 1 informs the virtual machine supervisor program 1 to allocate the virtual memory group 1 to the virtual machine 1 for use based on the address of the virtual memory group 1. Thus, the virtual machine 1 has virtual memory resources such as the virtual memory 1, the virtual memory 2, and the virtual memory 3, and successfully realizes capacity expansion.

[0096] Figure 8Another flowchart of the resource scheduling method based on the cloud management platform provided in the embodiments of the present application is shown in FIG. 8, which can be implemented by a cloud service system as shown in FIG. 9, which comprises infrastructures providing cloud services for tenants and a cloud management platform managing the infrastructures, and the infrastructures can comprise a plurality of resource pools, each of which comprises a plurality of resources located in the same cabinet or adjacent cabinets, and each of the resource pools comprises a plurality of resources of the same type. The method comprises the following steps: Figure 8 Figure 1 The cloud service system comprises infrastructures providing cloud services for tenants and a cloud management platform managing the infrastructures, and the infrastructures can comprise a plurality of resource pools, each of which comprises a plurality of resources located in the same cabinet or adjacent cabinets, and each of the resource pools comprises a plurality of resources of the same type. The method comprises the following steps:

[0097] 801. The cloud management platform receives a cloud instance migration request for a first cloud instance from a tenant.

[0098] In the embodiments, when the tenant determines that the first cloud instance needs to be migrated (for example, the expansion of the first cloud instance fails, etc.) during the use of the first cloud instance, the cloud management platform can provide a management interface (for example, a cloud instance management column of a tenant interface, etc.) to the client of the tenant. Then, the tenant can input a cloud instance migration request for the first cloud instance to the management interface through the client, so that the cloud management platform can receive the cloud instance migration request sent by the tenant through the client.

[0099] For example, as shown in FIG. 10, when the tenant needs to migrate the virtual machine 1, the tenant can send a migration request for the virtual machine 1 to the cloud management platform. Figure 9 Figure 9 Another structural diagram of the cloud service system provided in the embodiments of the present application is shown in FIG. 10, when the tenant needs to migrate the virtual machine 1, the tenant can send a migration request for the virtual machine 1 to the cloud management platform.

[0100] 802. The cloud management platform determines a third SLA index of the first resource and a fourth SLA index of the third resource based on the cloud instance migration request.

[0101] After obtaining the cloud instance migration request, the cloud management platform can determine that the tenant needs to migrate the first cloud instance based on the cloud instance migration request, so that the cloud management platform can evaluate the first resource and the third resource used by the first cloud instance, thereby obtaining the third SLA index of the first resource and the fourth SLA index of the third resource. The third SLA index comprises one or more of the time delay required for the second cloud instance (that is, the to-be-created cloud instance corresponding to the first cloud instance) to access the first resource and the bandwidth required for the second cloud instance to access the first resource, etc. The fourth SLA index comprises one or more of the time delay required for the second cloud instance to access the third resource and the bandwidth required for the second cloud instance to access the third resource, etc.

[0102] 803. If the third SLA index and the fourth SLA index are less than the SLA threshold, the cloud management platform creates a second cloud instance, allocates the first resource and the third resource to the second cloud instance, and releases the first cloud instance. ​​

[0103] 804、If the third SLA index is greater than or equal to the SLA threshold value and the fourth SLA index is less than the SLA threshold value, the cloud management platform determines a fourth resource matching the first resource in the first resource pool, creates a second cloud instance, allocates the fourth resource and the third resource to the second cloud instance, and releases the first cloud instance.

[0104] 805、If the third SLA index is greater than or equal to the SLA threshold value and the fourth SLA index is greater than or equal to the SLA threshold value, the cloud management platform determines a fourth resource matching the first resource in the first resource pool and a fifth resource matching the third resource in the second resource pool, creates a second cloud instance, allocates the fourth resource and the fifth resource to the second cloud instance, and releases the first cloud instance.

[0105] After obtaining the third SLA index and the fourth SLA index, the cloud management platform can determine the size relationship between the third SLA index, the fourth SLA index, and the SLA threshold value set by the tenant. Based on the size relationship, the cloud management platform can perform different migration operations for the first cloud instance:

[0106] (1) If the third SLA index and the fourth SLA index are both less than the SLA threshold value, it means that the first resource and the third resource originally used by the first cloud instance can still be used by the second cloud instance in this migration scenario. Therefore, the cloud management platform creates a second cloud instance, allocates the first resource and the third resource to the second cloud instance, and releases the first cloud instance, i.e., closes the first cloud instance. In this way, the cloud management platform successfully migrates the first cloud instance, thereby meeting the tenant's cloud instance migration requirements.

[0107] (2) If the third SLA index is greater than or equal to the SLA threshold value and the fourth SLA index is less than the SLA threshold value, it means that the third resource originally used by the first cloud instance can still be used by the second cloud instance in this migration scenario, but using the first resource originally used by the first cloud instance by the second cloud instance will cause fluctuations and instability in the SLA index. Therefore, the second cloud instance cannot use the first resource. Therefore, the cloud management platform can determine a fourth resource matching the first resource in the first resource pool (for example, the fourth resource has a larger specification than the first specification of the first resource), create a second cloud instance, then allocate the fourth resource and the third resource to the second cloud instance, and release the first cloud instance, i.e., close the first cloud instance. In this way, the cloud management platform successfully migrates the first cloud instance, thereby meeting the tenant's cloud instance migration requirements.

[0108] (3) If the third SLA indicator and the fourth SLA indicator are both greater than or equal to the SLA threshold, it indicates that, in the migration scenario, the second cloud instance uses the first resource and the third resource originally used by the first cloud instance will cause fluctuations and instability of the SLA indicators, so the second cloud instance cannot use the first resource and the third resource. Therefore, the cloud management platform determines the fourth resource matching the first resource in the first resource pool, determines the fifth resource (for example, the specification of the fifth resource is greater than the third specification of the third resource) matching the third resource in the second resource pool, creates the second cloud instance, and then allocates the fourth resource and the fifth resource to the second cloud instance, and releases the first cloud instance, that is, closes the first cloud instance. In this way, the cloud management platform successfully migrates the first cloud instance, thereby meeting the cloud instance migration demand of the tenant.

[0109] It is worth noting that in this embodiment, the manner of implementing cloud instance migration is usually hot migration.

[0110] It should be noted that the operation of the cloud management platform to determine the fourth resource in the first resource pool and the operation of the cloud management platform to determine the fifth resource in the second resource pool can refer to the foregoing related description of the cloud management platform to determine the first resource in the first resource pool, which will not be repeated here.

[0111] It should also be noted that the operation of the cloud management platform to create the second cloud instance and the operation of the cloud management platform to allocate the first resource, the third resource, the fourth resource, and the fifth resource to the second cloud instance can refer to the foregoing operation of the cloud management platform to create the first cloud instance and the operation of the cloud management platform to allocate the first resource and the third resource to the first cloud instance, which will not be repeated here.

[0112] Still as the above example, after receiving the migration request, the cloud management platform can send the migration request to the separated resource management module, and the separated resource monitoring submodule in the module can notify the separated resource scheduling submodule to determine the SLA indicators of virtual machine 2 (i.e., the migration object of virtual machine 1) accessing virtual memory 1, virtual memory 2 and virtual network card 1 based on the migration request, and then compare the sizes of the SLA indicators and the SLA threshold. Since the SLA indicators of virtual machine 3 accessing virtual memory 1 and virtual memory 2 are greater than the SLA threshold, and the SLA indicator of virtual machine 3 accessing virtual network card 1 is less than the SLA threshold, it is indicated that only the used virtual memory is migrated when virtual machine 1 is migrated, and the used virtual network card is retained, which will not cause great fluctuation of the SLA indicators such as time delay and bandwidth. Therefore, the separated resource scheduling submodule can select virtual memory 4 with a larger specification than virtual memory 1 and virtual memory 2 in the memory pool. The separated resource scheduling submodule can select control node 1 to serve virtual machine 1 in the plurality of control nodes of the controller pool, and notify control node 1 to start migration. Control node 1 can provide the addresses of virtual memory 1, virtual memory 2, virtual memory 4 and virtual network card 1 to virtual machine supervisor 1 for migration, that is, virtual machine supervisor 1 migrates the data in virtual memory 1 and virtual memory 2 to virtual memory 4, and retains virtual network card 1 unchanged. Control node 1 can pull up virtual machine 3 through virtual machine supervisor 2, assign virtual memory 4 and virtual network card 1 to virtual machine 3 based on the addresses of virtual memory 4 and virtual network card 1, and close virtual machine 1. Thus, the migration is successfully implemented.

[0113] It is worth noting that, as shown in another structural schematic diagram of a cloud service system provided by the embodiments of the present application, Figure 10 as shown in another structural schematic diagram of a cloud service system provided by the embodiments of the present application, Figure 10 when the cloud management platform needs to newly create a control node to implement its management and control business, the cloud management platform can send a control node creation request to the separated resource management module. Based on the control node creation request, the separated resource monitoring submodule queries the controller pool, and when it determines that the remaining resources in the controller pool are insufficient, but there are idle resources available in the virtual machine pool (containing a plurality of processors, used to deploy virtual machine supervisors and virtual machines), the separated resource monitoring submodule can find a control node, for example, control node 2, in the controller pool through the separated resource scheduling submodule. Then, the separated resource monitoring submodule sends a control node creation request to control node 2, so that control node 2 pulls up virtual machine 4 through virtual machine monitoring program 2, and makes virtual machine 4 run the related business of the control node to be used as a control node.

[0114] In the embodiment of the present application, after receiving the cloud instance creation request sent by the tenant, the cloud management platform can determine the first type and the first specification of the resource required by the first cloud instance of the tenant based on the cloud instance creation request, so the cloud management platform can determine the first resource pool satisfying the first type, and select the first resource satisfying the first specification from the first resource pool. After creating the first cloud instance of the tenant, the cloud management platform allocates the first resource to the first cloud instance of the tenant for use. As can be seen, the first resource pool selected by the cloud management platform contains a plurality of resources located in the same cabinet or adjacent cabinets, which is equivalent to that the plurality of resources of the same type are presented in a pooled manner. Since the first cloud instance of the tenant and the plurality of resources in the first resource pool are communicatively connected through the high-speed bus, when the first cloud instance of the tenant needs one or several resources of the plurality of resources, the cloud management platform can allocate the first resource satisfying the specification of the resource required by the tenant in the first resource pool, and allocate a sufficient number of first resources to the first cloud instance of the tenant for use. Therefore, in the cloud instance creation process, the resource utilization rate can be improved to a certain extent, and resource fragmentation can be avoided.

[0115] Further, in the embodiment of the present application, when the tenant needs to expand the first cloud instance, the first resource pool selected by the cloud management platform. Since the first cloud instance of the tenant and the remaining resources in the first resource pool except the first resource are communicatively connected through the high-speed bus, when the first cloud instance of the tenant needs one or several resources of the remaining resources, the cloud management platform can allocate the second resource satisfying the specification of the resource required by the tenant in the first resource pool, and allocate a sufficient number of second resources to the first cloud instance of the tenant for use. Therefore, in the cloud instance expansion process, the resource utilization rate can be improved to a certain extent, and resource fragmentation can be avoided.

[0116] Further, in the embodiment of the present application, when the tenant needs to migrate the first cloud instance, the cloud management platform can determine whether the resource (i.e., the first resource and the third resource) originally used by the first cloud instance needs to be migrated, and only the resource (e.g., the first resource) that needs to be migrated is migrated, and the resource (e.g., the third resource) that does not need to be migrated is associated with the second cloud instance. In this way, in the cloud instance migration process, the process of data migration can be simplified to a certain extent, thereby reducing the migration time and improving the migration success rate.

[0117] The above is the resource scheduling method based on the cloud management platform provided by the embodiment of the present application, and the cloud management platform will be introduced below. Figure 11 A structural schematic diagram of the cloud management platform provided by the embodiment of the present application is shown in FIG. 1. Figure 11As shown, the cloud management platform is configured to manage an infrastructure providing cloud services, the infrastructure comprising a plurality of resource pools of different types, each resource pool comprising a plurality of resources disposed in a same rack or adjacent racks, each resource pool comprising a plurality of resources of a same type, the cloud management platform comprising:

[0118] A first receiving module 1101 is configured to receive a cloud instance creation request from a tenant, the cloud instance creation request being configured to indicate a first type of resource required by a first cloud instance of the tenant and a first specification; for example, the first receiving module 1101 can be configured to implement the step 401 in the embodiment shown. Figure 4 The step 401 in the embodiment shown.

[0119] A first determining module 1102 is configured to determine, based on the cloud instance creation request, a first resource pool satisfying the first type from the plurality of resource pools, and determine a first resource satisfying the first specification from the first resource pool, the first resource being at least one resource from the plurality of resources of the first resource pool; for example, the first determining module 1102 can be configured to implement the step 402 in the embodiment shown. Figure 4 The step 402 in the embodiment shown.

[0120] A first allocating module 1103 is configured to create the first cloud instance and allocate the first resource to the first cloud instance; for example, the first allocating module 1103 can be configured to implement the step 403 in the embodiment shown. Figure 4 The step 403 in the embodiment shown.

[0121] In a possible implementation, the cloud instance creation request is further configured to indicate an SLA threshold set by the tenant, and the first determining module is configured to: determine a plurality of first resource groups satisfying the first specification from the plurality of resources of the first resource pool, each first resource group comprising at least one resource; determine a first SLA indicator of the plurality of first resource groups, the first SLA indicator of any first resource group comprising at least one of: a latency required by the first cloud instance to access the first resource group, and a bandwidth required by the first cloud instance to access the first resource group; and select, from the plurality of first resource groups, a first resource group having a first SLA indicator smaller than the SLA threshold as the first resource.

[0122] In a possible implementation, the cloud management platform further comprises: a second receiving module configured to receive a cloud instance expansion request from the tenant, the cloud instance expansion request being configured to indicate a first type of resource required to be added by the first cloud instance of the tenant and a second specification; a second determining module configured to determine, based on the cloud instance expansion request, a first resource pool satisfying the first type from the plurality of resource pools, and determine a second resource satisfying the second specification from the first resource pool, the first resource and the second resource being different resources in the first resource pool; and a second allocating module configured to allocate the second resource to the first cloud instance.

[0123] In a possible implementation, the second determining module is configured to: determine a plurality of second resource groups satisfying the second specification from the remaining resources in the first resource pool except the first resource; determine second SLA indicators of the plurality of second resource groups; and select a second resource group with a second SLA indicator less than the SLA threshold from the plurality of second resource groups as the second resource.

[0124] In a possible implementation, the cloud instance creation request further indicates a second type of resource required by the first cloud instance of the tenant and a third specification, and the cloud management platform further includes: a third determining module configured to determine a second resource pool satisfying the second type from the plurality of resource pools, and determine a third resource satisfying the third specification from the second resource pool, the third resource being at least one resource of the plurality of resources of the second resource pool; and a third allocating module configured to allocate the third resource to the first cloud instance.

[0125] In a possible implementation, the cloud management platform further includes: a third receiving module configured to receive a cloud instance migration request for the first cloud instance from the tenant; a fourth determining module configured to determine a third SLA indicator of the first resource and a fourth SLA indicator of the third resource based on the cloud instance migration request; and a fourth allocating module configured to: if the third SLA indicator and the fourth SLA indicator are less than the SLA threshold, create a second cloud instance, allocate the first resource and the third resource to the second cloud instance, and release the first cloud instance; if the third SLA indicator is greater than or equal to the SLA threshold and the fourth SLA indicator is less than the SLA threshold, determine a fourth resource matching the first resource in the first resource pool, create the second cloud instance, allocate the fourth resource and the third resource to the second cloud instance, and release the first cloud instance; and if the third SLA indicator and the fourth SLA indicator are greater than or equal to the SLA threshold, determine a fourth resource matching the first resource in the first resource pool and a fifth resource matching the third resource in the second resource pool, create the second cloud instance, allocate the fourth resource and the fifth resource to the second cloud instance, and release the first cloud instance.

[0126] In a possible implementation, the first resource pool includes any one of the following: a computing resource pool, a storage resource pool, and a network resource pool, the computing resource pool includes a plurality of computing resources located in the same cabinet or adjacent cabinets, the storage resource pool includes a plurality of storage resources located in the same cabinet or adjacent cabinets, and the network resource pool includes a plurality of network resources located in the same cabinet or adjacent cabinets.

[0127] In a possible implementation, the first cloud instance includes any one of the following: a physical server, a virtual machine, a container, a micro virtual machine, and a bare metal server.

[0128] It should be noted that the information interaction, implementation process, etc. between the modules / units of the above-mentioned device are based on the same concept as the method embodiment of the present application, and the technical effects they bring are the same as those of the method embodiment of the present application. For specific contents, please refer to the description in the method embodiment shown above in the embodiment of the present application, and no further details will be given here.

[0129] See also Figure 12 , Figure 12 A schematic diagram of the structure of a computing device provided in an embodiment of the present application. Figure 12 As shown, computing device 1200 (which can be used to present the aforementioned cloud management platform) includes: a processor 1201, a memory 1202, a communication interface 1203, and a bus 1204. Processor 1201, memory 1202, and communication interface 1203 are coupled via a bus (not labeled in the figure). Memory 1202 stores instructions. When the execution instructions in memory 1202 are executed, computing device 1200 performs the method performed by the cloud management platform in the aforementioned method embodiment.

[0130] The computing device 1200 may be one or more integrated circuits configured to implement the above method, such as one or more application specific integrated circuits (ASICs), one or more microprocessors (digital signal processors (DSPs), one or more field programmable gate arrays (FPGAs), or a combination of at least two of these integrated circuit forms. For example, when a unit in the device can be implemented in the form of a processing element scheduler, the processing element may be a general-purpose processor, such as a central processing unit (CPU) or other processor that can call a program. For example, these units may be integrated together and implemented in the form of a system-on-a-chip (SOC).

[0131] The processor 1201 can be a central processing unit (CPU), and can also be other general-purpose processors, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, transistor logic devices, hardware components or any combination thereof. The general-purpose processor can be a microprocessor or any conventional processor.

[0132] The memory 1202 can be a volatile memory or a non-volatile memory, or can include both volatile and non-volatile memories. Among them, the non-volatile memory can be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically EPROM (EEPROM) or a flash memory. The volatile memory can be a random access memory (RAM) used as an external cache. By way of example but not limitation, many forms of RAM can be used, such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), enhanced SDRAM (ESDRAM), synchlink DRAM (SLDRAM) and direct rambus RAM (DR RAM).

[0133] The memory 1202 stores executable program code, and the processor 1201 executes the executable program code to respectively implement the functions of the aforementioned first receiving module, first determining module and first allocating module and the like, thereby implementing the aforementioned cloud management platform-based resource scheduling method. That is, the memory 1202 stores instructions for executing the aforementioned cloud management platform-based resource scheduling method.

[0134] The communication interface 1203 uses a transceiving module such as, but not limited to, a network interface card, a transceiver, and the like to enable communication between the computing device 1200 and other devices or communication networks.

[0135] The bus 1204 can include, in addition to a data bus, a power bus, a control bus, and a state signal bus, and the like. The bus can be a peripheral component interconnect express (PCIe) bus, or an extended industry standard architecture (EISA) bus, a unified bus (Ubus or UB), a compute express link (CXL), a cache coherent interconnect for accelerators (CCIX), and the like. The bus can be divided into an address bus, a data bus, a control bus, and the like.

[0136] Referring to Figure 13 , Figure 13 A structural schematic diagram of a computing device cluster provided by an embodiment of the present application is shown. As Figure 13 shown, the computing device cluster 1300 includes at least one computing device 1200.

[0137] As Figure 13 shown, the computing device cluster 1300 includes at least one computing device 1200. The memory 1202 in one or more computing devices 1200 in the computing device cluster 1300 can have the same instructions for performing the cloud management platform-based resource scheduling method described above.

[0138] In some possible implementations, the memory 1202 in one or more computing devices 1200 in the computing device cluster 1300 can also respectively have partial instructions for performing the cloud management platform-based resource scheduling method described above. In other words, the combination of one or more computing devices 1200 can collectively perform the cloud management platform-based resource scheduling method described above.

[0139] It should be noted that the memory 1202 in different computing devices 1200 in the computing device cluster 1300 can store different instructions, respectively, for performing part of the functions of the cloud management platform described above. That is, the memory 1202 in different computing devices 1200 stores the functions of one or more of the first receiving module, the first determining module, and the first allocating module, and the like.

[0140] In some possible implementations, one or more computing devices 1200 in the computing device cluster 1300 may be connected via a network, which may be a wide area network or a local area network.

[0141] See also Figure 14 , Figure 14 A schematic diagram of computer devices in a computer cluster provided in an embodiment of the present application being connected via a network. Figure 14 As shown, two computing devices 1200A and 1200B are connected via a network. Specifically, the connection to the network is achieved through a communication interface in each computing device.

[0142] In one possible implementation, the memory of the computing device 1200A stores instructions for executing the functions of the first receiving module and other modules. Meanwhile, the memory of the computing device 1200B stores instructions for executing the functions of the first determining module and the first allocating module and other modules.

[0143] It should be understood that Figure 14 The functions of the computing device 1200A shown in FIG. 1 may also be completed by multiple computing devices. Similarly, the functions of the computing device 1200B may also be completed by multiple computing devices.

[0144] The embodiment of the present application also relates to a computer storage medium, in which a program for signal processing is stored. When the program is run on a computer, the computer executes the following Figure 4 、 Figure 6 or Figure 8 The steps performed by the cloud management platform in the illustrated embodiment.

[0145] The present application also relates to a computer program product, which stores instructions. When the instructions are executed by a computer, the computer executes the following Figure 4 、 Figure 6 or Figure 8 The steps performed by the cloud management platform in the illustrated embodiment.

[0146] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0147] In several embodiments provided in the present application, it should be understood that the disclosed system, device and method can be implemented in other manners. For example, the described device embodiments are merely schematic. The division of the units is merely a logical function division. There can be another division manner for the actual implementation, for example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the displayed or discussed mutual couplings or direct couplings or communication connections between the units can be indirect couplings or communication connections through some interfaces, devices or units, and can be electrical, mechanical or in other forms.

[0148] The units described as separated components can or can not be physically separated, and the components displayed as units can or can not be physical units, i.e., can be located in one place, or can be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purposes of the embodiments of the present application.

[0149] In addition, each functional unit in the embodiments of the present application can be integrated in one processing unit, or each unit can exist physically as a separate unit, or two or more units can be integrated in one unit. The integrated unit can be implemented in the form of hardware, or in the form of a software functional unit.

[0150] When the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium. Based on such an understanding, the technical solutions of the present application essentially or substantially, or all or part of the technical solutions, can be embodied in the form of a software product. The computer software product is stored in a storage medium, and includes a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the embodiments of the present application. The foregoing storage medium includes: U disk, mobile hard disk, read-only memory (ROM, read-only memory), random access memory (RAM, random access memory), magnetic disk or optical disk, and various other media that can store program codes.

Claims

1. A resource scheduling method based on a cloud management platform, characterized in that, The cloud management platform is used for managing an infrastructure providing cloud services, the infrastructure including a plurality of resource pools of different types, each resource pool including a plurality of resources disposed in a same cabinet or adjacent cabinets, each resource pool including a plurality of resources of a same type, and the method includes: The cloud management platform receives a cloud instance creation request from a tenant, the cloud instance creation request being used to indicate a first type and a first specification of resources required by a first cloud instance of the tenant; The cloud management platform determines, based on the cloud instance creation request, a first resource pool satisfying the first type from the plurality of resource pools, and determines a first resource satisfying the first specification from the first resource pool, the first resource being at least one resource of the plurality of resources of the first resource pool; The cloud management platform creates the first cloud instance and allocates the first resource to the first cloud instance.

2. The method of claim 1, wherein, The cloud instance creation request is also used to indicate a service level agreement (SLA) threshold set by the tenant, and the cloud management platform determining the first resource satisfying the first specification from the first resource pool includes: The cloud management platform determines a plurality of first resource groups satisfying the first specification from the plurality of resources of the first resource pool, each first resource group including at least one resource; The cloud management platform determines first SLA indicators of the plurality of first resource groups, the first SLA indicator of any first resource group including at least one of: a latency required by the first cloud instance to access the first resource group, and a bandwidth required by the first cloud instance to access the first resource group; The cloud management platform selects, from the plurality of first resource groups, a first resource group having a first SLA indicator less than the SLA threshold as the first resource.

3. The method according to claim 1 or 2, characterized in that, The method further includes: The cloud management platform receives a cloud instance expansion request from the tenant, the cloud instance expansion request being used to indicate the first type and a second specification of resources required to be added to the first cloud instance of the tenant; The cloud management platform determines, based on the cloud instance expansion request, the first resource pool satisfying the first type from the plurality of resource pools, and determines a second resource satisfying the second specification from the first resource pool, the first resource and the second resource being different resources in the first resource pool; The cloud management platform allocates the second resource to the first cloud instance.

4. The method of claim 3, wherein, The cloud management platform determining the second resource satisfying the second specification from the first resource pool includes: The cloud management platform determines a plurality of second resource groups satisfying the second specification from the remaining resources of the first resource pool other than the first resource; The cloud management platform determines second SLA indicators of the plurality of second resource groups; The cloud management platform selects, from the plurality of second resource groups, a second resource group having a second SLA indicator less than the SLA threshold as the second resource.

5. The method according to any one of claims 1 to 4, characterized in that, The cloud instance creation request is also used to indicate a second type and a third specification of resources required by the first cloud instance of the tenant, and the method further includes: The cloud management platform determines a second resource pool satisfying the second type from the multiple resource pools, and determines a third resource satisfying the third specification from the second resource pool, the third resource being at least one resource of the multiple resources of the second resource pool; The cloud management platform allocates the third resource to the first cloud instance.

6. The method of claim 5, wherein, The method further comprises: The cloud management platform receives a cloud instance migration request for the first cloud instance from the tenant; The cloud management platform determines a third SLA index of the first resource and a fourth SLA index of the third resource based on the cloud instance migration request; If the third SLA index and the fourth SLA index are less than an SLA threshold, the cloud management platform creates a second cloud instance, allocates the first resource and the third resource to the second cloud instance, and releases the first cloud instance; If the third SLA index is greater than or equal to the SLA threshold and the fourth SLA index is less than the SLA threshold, the cloud management platform determines a fourth resource matching the first resource in the first resource pool, creates a second cloud instance, allocates the fourth resource and the third resource to the second cloud instance, and releases the first cloud instance; If the third SLA index and the fourth SLA index are greater than or equal to the SLA threshold, the cloud management platform determines a fourth resource matching the first resource in the first resource pool, determines a fifth resource matching the third resource in the second resource pool, creates a second cloud instance, allocates the fourth resource and the fifth resource to the second cloud instance, and releases the first cloud instance.

7. The method according to any one of claims 1 to 6, characterized in that, The first resource pool comprises any one of a computing resource pool, a storage resource pool and a network resource pool, the computing resource pool comprises multiple computing resources located in the same cabinet or adjacent cabinets, the storage resource pool comprises multiple storage resources located in the same cabinet or adjacent cabinets, and the network resource pool comprises multiple network resources located in the same cabinet or adjacent cabinets.

8. The method according to any one of claims 1 to 7, characterized in that, The first cloud instance comprises any one of a physical server, a virtual machine, a container, a micro virtual machine and a bare metal server.

9. A cloud management platform, characterized by, The cloud management platform is configured to manage an infrastructure providing cloud services, the infrastructure comprising multiple resource pools of different types, each resource pool comprising multiple resources arranged in the same cabinet or adjacent cabinets, each resource pool comprising multiple resources of the same type, and the cloud management platform comprising: a first receiving module configured to receive a cloud instance creation request from a tenant, the cloud instance creation request being configured to indicate a first type and a first specification of resources required by a first cloud instance of the tenant; a first determining module configured to determine a first resource pool satisfying the first type from the multiple resource pools based on the cloud instance creation request, and determine a first resource satisfying the first specification from the first resource pool, the first resource being at least one resource of the multiple resources of the first resource pool; The first allocation module is configured to create the first cloud instance and allocate the first resource to the first cloud instance.

10. The cloud management platform of claim 9, wherein, The cloud instance creation request is further configured to indicate a SLA threshold set by the tenant, and the first determination module is configured to: determine a plurality of first resource groups meeting the first specification from a plurality of resources in the first resource pool, each first resource group containing at least one resource; determine first SLA indicators of the plurality of first resource groups, the first SLA indicator of any first resource group containing at least one of: a latency required for the first cloud instance to access the first resource group, and a bandwidth required for the first cloud instance to access the first resource group; select, from the plurality of first resource groups, a first resource group having a first SLA indicator less than the SLA threshold as the first resource.

11. The cloud management platform of claim 9 or 10, wherein, The cloud management platform further comprises: The second receiving module is configured to receive a cloud instance expansion request from the tenant, the cloud instance expansion request being configured to indicate the first type of resource required to be increased by the first cloud instance of the tenant and a second specification; The second determination module is configured to determine, based on the cloud instance expansion request, the first resource pool meeting the first type from the plurality of resource pools, and determine a second resource meeting the second specification from the first resource pool, the first resource and the second resource being different resources in the first resource pool; The second allocation module is configured to allocate the second resource to the first cloud instance.

12. The cloud management platform of claim 11, wherein, The second determination module is configured to: determine a plurality of second resource groups meeting the second specification from the remaining resources in the first resource pool except the first resource; determine second SLA indicators of the plurality of second resource groups; select, from the plurality of second resource groups, a second resource group having a second SLA indicator less than the SLA threshold as the second resource.

13. The cloud management platform of any of claims 9 to 12, wherein, The cloud instance creation request is further configured to indicate a second type of resource required by the first cloud instance of the tenant and a third specification, and the cloud management platform further comprises: The third determination module is configured to determine, from the plurality of resource pools, a second resource pool meeting the second type, and determine a third resource meeting the third specification from the second resource pool, the third resource being at least one resource in the plurality of resources of the second resource pool; The third allocation module is configured to allocate the third resource to the first cloud instance.

14. The cloud management platform of claim 13, wherein, The cloud management platform further comprises: The third receiving module is configured to receive a cloud instance migration request for the first cloud instance from the tenant; The fourth determination module is configured to determine, based on the cloud instance migration request, a third SLA indicator of the first resource and a fourth SLA indicator of the third resource; The fourth allocation module is configured to: if the third SLA indicator and the fourth SLA indicator are less than the SLA threshold, create a second cloud instance, allocate the first resource and the third resource to the second cloud instance, and release the first cloud instance; if the third SLA indicator is greater than or equal to the SLA threshold and the fourth SLA indicator is less than the SLA threshold, determining a fourth resource matching the first resource in the first resource pool, creating a second cloud instance, allocating the fourth resource and the third resource to the second cloud instance, and releasing the first cloud instance; if the third SLA indicator and the fourth SLA indicator are greater than or equal to the SLA threshold, determining a fourth resource matching the first resource in the first resource pool, determining a fifth resource matching the third resource in the second resource pool, creating a second cloud instance, allocating the fourth resource and the fifth resource to the second cloud instance, and releasing the first cloud instance.

15. The cloud management platform of any of claims 9 to 14, wherein, The first resource pool includes any one of a computing resource pool, a storage resource pool, and a network resource pool, the computing resource pool includes a plurality of computing resources located in a same cabinet or adjacent cabinets, the storage resource pool includes a plurality of storage resources located in a same cabinet or adjacent cabinets, and the network resource pool includes a plurality of network resources located in a same cabinet or adjacent cabinets.

16. The cloud management platform of any of claims 9 to 15, wherein, The first cloud instance includes any one of a physical server, a virtual machine, a container, a micro virtual machine, and a bare metal server.

17. A cloud service system, characterized by The cloud service system includes an infrastructure providing cloud services and a cloud management platform managing the infrastructure, the infrastructure includes a plurality of resource pools of different types, each resource pool includes a plurality of resources arranged in a same cabinet or adjacent cabinets, each resource pool includes a plurality of resources of a same type, and the cloud management platform is configured to implement steps performed by the cloud management platform in the method of any one of claims 1-8.

18. A cluster of computing devices, characterized in that, The cluster of computing devices includes at least one computing device, each computing device including a processor and a memory: The memory is configured to store instructions; The processor is configured to execute the instructions to cause the cluster of computing devices to perform the method of any one of claims 1-8.

19. A computer storage medium, comprising, The computer storage medium stores one or more instructions that, when executed by one or more computers, cause the one or more computers to perform the method of any one of claims 1-8.

20. A computer program product, characterised in that, The computer program product stores instructions that, when executed by a computer, cause the computer to perform the method of any one of claims 1-8.