Cloud service providing method and apparatus

By sharing hot standby virtual instances in the cloud management platform and adopting an affinity scheduling strategy, the problem of high cost of hot standby nodes is solved, and low-cost business recovery capability and fault recoverability are achieved.

WO2025241645A1PCT designated stage Publication Date: 2025-11-27HUAWEI CLOUD COMPUTING TECHNOLOGIES CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2025/080147
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-06-20
Filing Date
2025-03-03
Publication Date
2025-11-27

AI Technical Summary

Technical Problem

The use of hot standby nodes in existing technologies is costly, resulting in high business recovery capabilities provided by cloud services, which cannot effectively reduce costs.

Method used

By sharing hot standby virtual instances across multiple physical clusters through a cloud management platform, and employing an affinity scheduling strategy to deploy virtual instance clusters and their hot standby virtual instances in the same physical cluster, hot standby resources can be shared between different virtual instance clusters, reducing costs.

Benefits of technology

It enables the sharing of hot standby resources between different virtual instance clusters, ensuring the recoverability of virtual instance clusters in case of failure and providing low-cost business recovery capabilities.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025080147_27112025_PF_FP_ABST
    Figure CN2025080147_27112025_PF_FP_ABST
Patent Text Reader

Abstract

The present application belongs to the technical field of cloud services. Disclosed are a cloud service providing method and apparatus. The cloud service providing method is executed by a cloud management platform. The cloud management platform manages a plurality of physical clusters that provide cloud services. The cloud service providing method comprises: a cloud management platform receiving a virtual instance creation request from a tenant; selecting from among a plurality of physical clusters a first physical cluster capable of providing specifications of virtual instances in a virtual instance cluster, and on the basis of a first image file, creating the virtual instance cluster in the first physical cluster; and when a first hot standby virtual instance using the first image file has been deployed in the plurality of physical clusters, configuring the first hot standby virtual instance as a hot standby virtual instance of the virtual instance cluster. The present application enables a cloud management platform to provide tenants with low-cost service recovery capabilities, wherein a virtual instance creation request is used for indicating the creation of a virtual instance cluster on the basis of a first image file, and specifications of virtual instances in the virtual instance cluster.
Need to check novelty before this filing date? Find Prior Art

Description

Cloud service providing method and device

[0001] The present application claims priority to Chinese Patent Application No. 202410650774.2, filed on May 21, 2024, entitled "Server system based on cloud service technology", and Chinese Patent Application No. 202410805409.4, filed on June 20, 2024, entitled "Cloud service providing method and device", the contents of which are incorporated herein by reference in their entirety. TECHNICAL FIELD

[0002] The present application relates to the field of cloud service technology, and in particular to a cloud service providing method and device. BACKGROUND

[0003] Cluster computing technology refers to multiple computers connected through a network to work together to form a high-performance computing environment. The driving force for the emergence of cluster computing is the explosive growth of data that needs to be processed, and the logic of computing tasks becomes increasingly complex, and a single computer cannot complete the computing task within a limited time. In this case, single-node hardware or system failure will cause the overall delay or stagnation of the application. Moreover, since the computing shards and parallel processing of cluster computing use multiple computer servers, it is inevitable to increase the impact of hardware and system failures on upper-layer tasks. Therefore, computing availability assurance technology emerges as the times require.

[0004] For example, node hot standby replacement technology can be used to replace the original node with a hot standby node to ensure the performance of a distributed cluster. The cluster management and control surface will divide the nodes into two categories: worker nodes and hot standby nodes. Worker nodes and hot standby nodes belong to the same logical cluster. The hot standby node is a started and running node, and the configuration of the hot standby node is exactly the same as that of the worker node, and the same necessary software is installed. In the normal state, the scheduler will not be instructed to compute the hot standby node, and the worker node will not interact with the hot standby node. When using the hot standby node to replace the worker node, the configuration of the logical cluster needs to be updated to configure the hot standby node as a worker node, and the original worker node is removed from the worker node set, and then the hot standby node configured as a worker node can read the checkpoint to resume the application and run, and the entire recovery delay is short.

[0005] However, the cost of using a hot standby node is currently high. SUMMARY

[0006] The present application provides a cloud service providing method and device. The present application enables a cloud management platform to provide tenants with lower-cost business recovery capabilities. The technical solutions provided by the present application are as follows:

[0007] In a first aspect, the present application provides a cloud service providing method based on a public cloud technology. The cloud service providing method is executed by a cloud management platform. The cloud management platform is configured to manage an infrastructure for providing cloud services. The infrastructure comprises a plurality of servers. The plurality of servers are configured to deploy virtual instances for implementing a tenant's business. The plurality of servers are divided into a plurality of physical clusters. The cloud service providing method comprises: receiving, by the cloud management platform, a virtual instance creation request of a tenant, the virtual instance creation request being configured to indicate a specification of a virtual instance in a virtual instance cluster and a first image file used for creating the virtual instance cluster; selecting, by the cloud management platform, a first physical cluster from the plurality of physical clusters, the first physical cluster being capable of providing the specification of the virtual instance in the virtual instance cluster; creating, by the cloud management platform, the virtual instance cluster in the first physical cluster based on the first image file; and configuring, by the cloud management platform, a first hot-standby virtual instance in the plurality of physical clusters as a hot-standby virtual instance of the virtual instance cluster, in a case that the first hot-standby virtual instance has been deployed in the plurality of physical clusters and uses the first image file.

[0008] In a case that the cloud management platform has deployed the first hot-standby virtual instance in the plurality of servers and the first hot-standby virtual instance uses the first image file, the cloud management platform can configure the first hot-standby virtual instance as the hot-standby virtual instance of the virtual instance cluster, so that the virtual instance cluster of the tenant and the virtual instance cluster of another tenant can share the first hot-standby virtual instance, the sharing of the hot-standby virtual resource between different virtual instance clusters is realized, the fault recoverability of the virtual instance cluster is ensured, and the problem of high cost of using the hot-standby virtual instance is solved, so that the cloud management platform can provide the tenant with a lower-cost business recovery capability.

[0009] In a possible implementation, the cloud management platform selects the first physical cluster from the plurality of physical clusters, comprising: in a case that the cloud management platform has deployed the first hot-standby virtual instance in the plurality of physical clusters and the first hot-standby virtual instance uses the first image file, obtaining a physical cluster in which the first hot-standby virtual instance is located, and in a case that idle resources of the physical cluster in which the first hot-standby virtual instance is located can meet the specification of the virtual instance in the virtual instance cluster, determining the physical cluster in which the first hot-standby virtual instance is located as the first physical cluster.

[0010] The method of determining the first physical cluster is equivalent to using an affinity scheduling strategy for resource scheduling. By using the affinity scheduling strategy for resource scheduling, the virtual instance cluster and the hot-standby virtual instance cluster thereof can be deployed in the same physical cluster, which can ensure the performance of the virtual instance cluster when using the hot-standby virtual instance cluster, and can avoid the same type of hot-standby virtual instances being scattered in multiple physical clusters, thereby further optimizing the use cost of the hot-standby resource.

[0011] In a possible implementation, the cloud management platform configures the first hot-standby virtual instance as a hot-standby virtual instance of the virtual instance cluster, including: in a case where the virtual instance creation request indicates that the hot-standby virtual instance is shared with other tenants, the cloud management platform configures the first hot-standby virtual instance as a hot-standby virtual instance of the virtual instance cluster.

[0012] In a case where the virtual instance creation request indicates that the hot-standby virtual instance is shared with other tenants, the deployed first hot-standby virtual instance can not meet the hot-standby capability required by the virtual instance cluster. In a possible implementation, the cloud service providing method further includes: in a case where the first hot-standby virtual instance available for the virtual instance cluster cannot meet the hot-standby capability required by the virtual instance cluster, the cloud management platform creates a second hot-standby virtual instance based on the first image file, and configures the second hot-standby virtual instance as a hot-standby virtual instance of the virtual instance cluster, so that the hot-standby virtual instance configured for the virtual instance cluster meets the hot-standby capability required by the virtual instance cluster.

[0013] In an implementation scenario, before performing the resource provisioning process, the cloud management platform can first create the first image file required by the virtual instance cluster based on the indication of the tenant. The cloud service providing method further includes: the cloud management platform receives a first image creation request of the tenant, the first image creation request is used to indicate that a first image file is created using first resources, the first resources include an operating system and a driver, or the first resources include an operating system, a driver and an application program used to implement the business of the tenant; the cloud management platform obtains the first image file based on the first image creation request, and provides an identifier of the first image file to the tenant.

[0014] When the tenant needs to replace the image file used by the virtual instance cluster, the tenant can perform a specified operation on a client used by the tenant to trigger an image replacement request, so that the cloud management platform replaces the image file used by the virtual instance cluster with a second image file based on the image replacement request to upgrade the virtual instance cluster. In a possible implementation, the cloud service providing method further includes: the cloud management platform receives an image replacement request of the tenant, the image replacement request is used to indicate that the image file used by the virtual instance cluster is replaced with a second image file; the cloud management platform replaces the image file used by the virtual instance cluster with the second image file based on the image replacement request, and queries whether a third hot-standby virtual instance using the second image file has been deployed in the plurality of physical clusters; in a case where the third hot-standby virtual instance using the second image file has been deployed in the plurality of physical clusters, the cloud management platform switches the hot-standby virtual instance of the virtual instance cluster to the third hot-standby virtual instance.

[0015] In the case that the cloud management platform has deployed the third hot-standby virtual instance using the second image file in multiple physical clusters, the cloud management platform switches the hot-standby virtual instance of the upgraded virtual instance cluster to the third hot-standby virtual instance, so that the virtual instance cluster of the tenant and the virtual instance cluster of another tenant can jointly use the third hot-standby virtual instance, the sharing of the hot-standby virtual resource between different virtual instance clusters is realized, the fault recoverability of the virtual instance cluster is ensured, and the problem of high cost of using the hot-standby virtual instance is solved, so that the cloud management platform can provide the tenant with a lower-cost business recovery capability.

[0016] In a possible implementation, the cloud service providing method further includes: in the case that the cloud management platform has deployed the third hot-standby virtual instance using the second image file in multiple physical clusters, the cloud management platform acquires a second physical cluster where the third hot-standby virtual instance is located; and in the case that idle resources of the second physical cluster can meet the specifications of the virtual instances in the virtual instance cluster, the cloud management platform migrates the virtual instance cluster to the second physical cluster.

[0017] The manner of determining the second physical cluster is equivalent to using an affinity scheduling strategy for resource scheduling. By using the affinity scheduling strategy for resource scheduling, the virtual instance cluster and the hot-standby virtual instance cluster thereof can be deployed in the same physical cluster, which can ensure the performance of the virtual instance cluster when using the hot-standby virtual instance cluster and avoid the same type of hot-standby virtual instance being dispersed in multiple physical clusters, thereby further optimizing the use cost of the hot-standby resource.

[0018] In a possible implementation, the cloud management platform switches the hot-standby virtual instance of the virtual instance cluster to the third hot-standby virtual instance includes: in the case that the virtual instance creation request indicates that the hot-standby virtual instance is shared with another tenant, the cloud management platform switches the hot-standby virtual instance of the virtual instance cluster to the third hot-standby virtual instance.

[0019] In the case that the virtual instance creation request indicates that the hot-standby virtual instance is shared with another tenant, the deployed third hot-standby virtual instance can not meet the hot-standby capability required by the virtual instance cluster. In a possible implementation, the cloud service providing method further includes: in the case that the third hot-standby virtual instance available for the virtual instance cluster cannot meet the hot-standby capability required by the virtual instance cluster, the cloud management platform creates a fourth hot-standby virtual instance based on the second image file, and configures the fourth hot-standby virtual instance as the hot-standby virtual instance of the virtual instance cluster, so that the hot-standby virtual instance configured for the virtual instance cluster meets the hot-standby capability required by the virtual instance cluster.

[0020] In a possible implementation, the hot-standby capability required by the virtual instance cluster is determined by the cloud management platform according to preset rules, or indicated by the virtual instance creation request. For example, when the tenant indicates the total number of hot-standby virtual instances required by the virtual instance cluster in the virtual instance creation request, the total number indicated by the virtual instance creation request is determined as the total number of hot-standby virtual instances required by the virtual instance cluster. When the tenant does not indicate the total number of hot-standby virtual instances required by the virtual instance cluster in the virtual instance creation request, the cloud management platform can determine the total number of hot-standby virtual instances required by the virtual instance cluster according to the total number of working virtual instances in the virtual instance cluster, according to the allocation ratio of working virtual instances to hot-standby virtual instances.

[0021] In an implementation scenario, before replacing the image file of the virtual instance cluster, the cloud management platform can first create a second image file required by the virtual instance cluster based on the indication of the tenant. Then the cloud service providing method further includes: receiving, by the cloud management platform, a second image creation request of the tenant, the second image creation request being used to indicate creating a second image file using a second resource, the second resource including an operating system and a driver, or the second resource including an operating system, a driver, and an application program used to implement the business of the tenant; obtaining, by the cloud management platform, the second image file based on the second image creation request, and providing, by the cloud management platform, an identifier of the second image file to the tenant.

[0022] During the use of the virtual instance cluster by the tenant, the performance of the working virtual instance in the virtual instance cluster may be poor, the working virtual instance may have a high risk of failure or may have failed. At this time, the tenant can trigger an instance replacement request to indicate replacing a specified virtual instance in the virtual instance cluster using a hot-standby virtual instance of the virtual instance cluster, so as to ensure that the virtual instance cluster can work normally. In a possible implementation scenario, the cloud service providing method further includes: receiving, by the cloud management platform, an instance replacement request of the tenant, the instance replacement request being used to indicate replacing a specified virtual instance in the virtual instance cluster using a hot-standby virtual instance of the virtual instance cluster; configuring, by the cloud management platform, one of the hot-standby virtual instances of the virtual instance cluster as a working virtual instance in the virtual instance cluster based on the instance replacement request, and removing, by the cloud management platform, the specified virtual instance from the virtual instance cluster.

[0023] Optionally, after adding the hot-standby virtual instance as a working virtual instance of the virtual instance cluster, the cloud management platform can first feed back the hot-standby virtual instance information of the virtual instance cluster to the tenant to inquire whether the tenant uses the hot-standby virtual instance to replace the specified virtual instance, and only after receiving the consent indication of the tenant, the hot-standby virtual instance is used to replace the specified virtual instance. Then, the cloud management platform configures one of the hot-standby virtual instances of the virtual instance cluster as a working virtual instance in the virtual instance cluster based on the instance replacement request, and removes the specified virtual instance from the virtual instance cluster, including: the cloud management platform configures one of the hot-standby virtual instances of the virtual instance cluster as a working virtual instance in the virtual instance cluster based on the instance replacement request, and feeds back the information of the hot-standby virtual instance configured as the working virtual instance in the virtual instance cluster to the tenant; the cloud management platform removes the specified virtual instance from the virtual instance cluster after receiving the replacement confirmation instruction of the tenant, and the replacement confirmation instruction is used to indicate that the hot-standby virtual instance configured as the working virtual instance in the virtual instance cluster is used to replace the specified virtual instance.

[0024] Optionally, in order to ensure the sufficiency of the hot-standby resources of the virtual instance cluster, the cloud management platform needs to supplement the hot-standby virtual instances for the virtual instance cluster after using the hot-standby virtual instance to replace the specified virtual instance, so as to realize the automatic rotation of resources. The cloud service providing method further includes: the cloud management platform selects a server in an idle state from a plurality of servers managed by the cloud management platform, and configures the hot-standby virtual instance of the virtual instance cluster in the selected server based on the image file used by the virtual instance cluster.

[0025] When the cloud management platform deploys the virtual instance cluster and its hot-standby virtual instance by using the affinity scheduling strategy, when selecting a server in an idle state, the server used to configure the hot-standby virtual instance can be preferentially selected in the physical cluster where the virtual instance cluster is located. For example, the selected server is located in the physical cluster where the virtual instance cluster is located.

[0026] In a second aspect, the application provides a cloud service providing apparatus based on public cloud technology. The cloud service providing apparatus is deployed in a cloud management platform. The cloud management platform is configured to manage infrastructure for providing cloud services. The infrastructure includes a plurality of servers. The plurality of servers are configured to deploy virtual instances for implementing tenant services. The plurality of servers are divided into a plurality of physical clusters. The cloud service providing apparatus includes: an interaction module configured to receive a virtual instance creation request of a tenant, the virtual instance creation request being configured to indicate a virtual instance cluster and a specification of a virtual instance in the virtual instance cluster based on a first image file; and a processing module configured to select a first physical cluster from the plurality of physical clusters, the first physical cluster being capable of providing the specification of the virtual instance in the virtual instance cluster, and create the virtual instance cluster in the first physical cluster based on the first image file. The processing module is further configured to, in a case where a first hot-standby virtual instance using the first image file has been deployed in the plurality of physical clusters, configure the first hot-standby virtual instance as a hot-standby virtual instance of the virtual instance cluster.

[0027] In a possible implementation, the processing module is specifically configured to, in a case where a first hot-standby virtual instance using the first image file has been deployed in the plurality of physical clusters, acquire a physical cluster in which the first hot-standby virtual instance is located, and in a case where idle resources of the physical cluster in which the first hot-standby virtual instance is located are capable of meeting the specification of the virtual instance in the virtual instance cluster, determine the physical cluster in which the first hot-standby virtual instance is located as the first physical cluster.

[0028] In a possible implementation, the processing module is specifically configured to, in a case where the virtual instance creation request indicates that the hot-standby virtual instance is shared with other tenants, configure the first hot-standby virtual instance as the hot-standby virtual instance of the virtual instance cluster.

[0029] In a possible implementation, the processing module is further configured to, in a case where the first hot-standby virtual instance available for the virtual instance cluster is incapable of meeting a hot-standby capability required by the virtual instance cluster, create a second hot-standby virtual instance based on the first image file, and configure the second hot-standby virtual instance as the hot-standby virtual instance of the virtual instance cluster, so that the hot-standby virtual instances configured for the virtual instance cluster meet the hot-standby capability required by the virtual instance cluster.

[0030] In a possible implementation, the interaction module is further configured to receive a first image creation request of a tenant, the first image creation request being configured to indicate that a first image file is created using first resources, the first resources including an operating system and a driver, or the first resources including an operating system, a driver, and an application program for implementing a service of the tenant; the processing module is further configured to obtain the first image file based on the first image creation request; and the interaction module is further configured to provide an identifier of the first image file to the tenant.

[0031] In a possible implementation, the interaction module is further configured to receive a mirror replacement request of the tenant, the mirror replacement request being used to indicate that the mirror file used by the virtual instance cluster is replaced by a second mirror file; the processing module is further configured to replace, based on the mirror replacement request, the mirror file used by the virtual instance cluster by the second mirror file, and query whether a third hot-standby virtual instance using the second mirror file has been deployed in the plurality of physical clusters; and the processing module is further configured to, in a case where the third hot-standby virtual instance using the second mirror file has been deployed in the plurality of physical clusters, switch the hot-standby virtual instance of the virtual instance cluster to the third hot-standby virtual instance.

[0032] In a possible implementation, the processing module is further configured to, in a case where the third hot-standby virtual instance using the second mirror file has been deployed in the plurality of physical clusters, obtain a second physical cluster in which the third hot-standby virtual instance is located; and the processing module is further configured to, in a case where idle resources of the second physical cluster can meet the specifications of the virtual instances in the virtual instance cluster, migrate the virtual instance cluster to the second physical cluster.

[0033] In a possible implementation, the processing module is specifically configured to, in a case where the virtual instance creation request indicates that the hot-standby virtual instance is shared with other tenants, switch the hot-standby virtual instance of the virtual instance cluster to the third hot-standby virtual instance.

[0034] In a possible implementation, the processing module is further configured to, in a case where the third hot-standby virtual instance available for the virtual instance cluster cannot meet the hot-standby capability required by the virtual instance cluster, create a fourth hot-standby virtual instance based on the second mirror file, and configure the fourth hot-standby virtual instance as the hot-standby virtual instance of the virtual instance cluster, so that the hot-standby virtual instance configured for the virtual instance cluster meets the hot-standby capability required by the virtual instance cluster.

[0035] In a possible implementation, the hot-standby capability required by the virtual instance cluster is determined by the cloud management platform according to a preset rule, or indicated by the virtual instance creation request.

[0036] In a possible implementation, the interaction module is further configured to receive a second mirror creation request of the tenant, the second mirror creation request being used to indicate that a second mirror file is created using second resources, the second resources including an operating system and a driver, or the second resources including an operating system, a driver, and an application program used to implement a service of the tenant; the processing module is further configured to obtain the second mirror file based on the second mirror creation request; and the interaction module is further configured to provide an identifier of the second mirror file to the tenant.

[0037] In a possible implementation, the interaction module is further configured to receive an instance replacement request of the tenant, the instance replacement request being used to instruct to replace a specified virtual instance in the virtual instance cluster with a hot-standby virtual instance of the virtual instance cluster; and the processing module is further configured to, based on the instance replacement request, configure one of the hot-standby virtual instances of the virtual instance cluster as a working virtual instance in the virtual instance cluster, and remove the specified virtual instance from the virtual instance cluster.

[0038] In a possible implementation, the processing module is specifically configured to, based on the instance replacement request, configure one of the hot-standby virtual instances of the virtual instance cluster as a working virtual instance in the virtual instance cluster; the interaction module is further configured to feed back, to the tenant, information about the hot-standby virtual instance configured as the working virtual instance in the virtual instance cluster, and receive a replacement confirmation instruction of the tenant, the replacement confirmation instruction being used to instruct to replace the specified virtual instance with the hot-standby virtual instance configured as the working virtual instance in the virtual instance cluster; and the processing module is further configured to, after the interaction module receives the replacement confirmation instruction of the tenant, remove the specified virtual instance from the virtual instance cluster.

[0039] In a possible implementation, the processing module is further configured to select, from a plurality of servers managed by the processing module, a server in an idle state, and configure, based on an image file used by the virtual instance cluster, a hot-standby virtual instance of the virtual instance cluster in the selected server.

[0040] In a possible implementation, the selected server is located in a physical cluster where the virtual instance cluster is located.

[0041] In a third aspect, the present application provides a computing device, including a memory and a processor, the memory storing program instructions, and the processor executing the program instructions to perform the method in the first aspect of the present application and any possible implementation thereof.

[0042] In a fourth aspect, the present application provides a computing device cluster, including a plurality of computing devices, the plurality of computing devices including a plurality of processors and a plurality of memories, the plurality of memories storing program instructions, and the plurality of processors executing the program instructions to cause the computing device cluster to perform the method in the first aspect of the present application and any possible implementation thereof.

[0043] In a fifth aspect, the present application provides a computer-readable storage medium, which is a non-volatile computer-readable storage medium, and includes program instructions, when the program instructions are executed on a computing device, causing the computing device to perform the method in the first aspect of the present application and any possible implementation thereof.

[0044] In a sixth aspect, the present application provides a computer program product comprising instructions which, when the computer program product runs on a computer, enable the computer to perform the method provided in the first aspect of the present application and any possible implementation manner thereof. BRIEF DESCRIPTION OF DRAWINGS

[0045] Fig. 1 is a logical architecture diagram of a high-availability cluster provided by an embodiment of the present application;

[0046] Fig. 2 is a structural diagram of an implementation scenario involved in a cloud service providing method provided by an embodiment of the present application;

[0047] Fig. 3 is a deployment diagram of underlying resources in a data center provided by an embodiment of the present application;

[0048] Fig. 4 is a flowchart of a resource provisioning process provided by an embodiment of the present application;

[0049] Fig. 5 is a configuration interface diagram of a virtual instance cluster provided by an embodiment of the present application;

[0050] Fig. 6 is a flowchart of another resource provisioning process provided by an embodiment of the present application;

[0051] Fig. 7 is a flowchart of still another resource provisioning process provided by an embodiment of the present application;

[0052] Fig. 8 is a logical diagram of a cloud management platform provided by an embodiment of the present application;

[0053] Fig. 9 is an implementation process diagram of a resource provisioning process when the functions of the cloud management platform are implemented by the components shown in Fig. 8;

[0054] Fig. 10 is a flowchart of an implementation process of a node upgrade process provided by an embodiment of the present application;

[0055] Fig. 11 is a flowchart of an implementation process of another node upgrade process provided by an embodiment of the present application;

[0056] Fig. 12 is a flowchart of an implementation process of still another node upgrade process provided by an embodiment of the present application;

[0057] Fig. 13 is an implementation process diagram of implementing node upgrade by instructing to replace the image file of a virtual instance cluster when the functions of the cloud management platform are implemented by the components shown in Fig. 8;

[0058] Fig. 14 is a flowchart of an implementation process of a node replacement process provided by an embodiment of the present application;

[0059] Fig. 15 is a management interface diagram of a virtual instance cluster provided by an embodiment of the present application;

[0060] FIG. 16 is a flow chart illustrating an implementation process of another node replacement process according to an embodiment of the present application;

[0061] FIG. 17 is a flow chart illustrating an implementation process of another node replacement process according to an embodiment of the present application;

[0062] FIG. 18 is a schematic diagram illustrating an implementation process of node replacement when the functions of a cloud management platform are implemented by the components shown in FIG. 8;

[0063] FIG. 19 is a schematic diagram illustrating a HAHCS cooperating with an AI training service to ensure fast recovery of an AI training cluster in the event of a failure according to an embodiment of the present application;

[0064] FIG. 20 is a schematic diagram illustrating a HAHCS cooperating with an AI training service to ensure fast replacement of a slow virtual instance in an AI training cluster according to an embodiment of the present application;

[0065] FIG. 21 is a schematic diagram illustrating a cloud service providing apparatus according to an embodiment of the present application;

[0066] FIG. 22 is a schematic diagram illustrating a computing device according to an embodiment of the present application;

[0067] FIG. 23 is a schematic diagram illustrating a computing device cluster according to an embodiment of the present application;

[0068] FIG. 24 is a schematic diagram illustrating another computing device cluster according to an embodiment of the present application. DETAILED DESCRIPTION

[0069] To make the purpose, technical solutions and advantages of the present application clearer, the embodiments of the present application will be described in further detail below with reference to the drawings.

[0070] To make the purpose, technical solutions and advantages of the present application clearer, the embodiments of the present application will be described in further detail below with reference to the drawings.

[0071] Cloud computing: Cloud computing is a kind of distributed computing, which refers to a network that uniformly manages and schedules a large number of computing resources and storage resources to provide on-demand services to users. The computing resources and storage resources are provided by a cluster of computing devices set in a data center. Moreover, cloud computing can provide multiple types of service types for users, for example, it can provide infrastructure as a service (IaaS), platform as a service (PaaS) and software as a service (SaaS) and the like. The role of infrastructure as a service is to provide virtual machines or other resources as services to tenants. The role of platform as a service is to provide a development platform as a service to tenants. The role of software as a service is to provide an application (App, also known as application) as a service to customers.

[0072] An internet data center (IDC) is a facility and related service system that provides operation and maintenance for centralized collection, storage, processing and transmission of data based on the Internet network. Conceptually, it can be understood as a public commercial Internet "machine room", and it is also an IT professional service and an important infrastructure of the IT industry. IDC is not only a service concept, but also a network concept, which constitutes part of the network infrastructure, just like the backbone network and access network, providing a high-end data delivery service and high-speed access service. Generally, the offline IDC of a tenant can be understood as the offline machine room of the tenant, which is a standardized telecom professional machine room environment established by the tenant using existing Internet communication lines and bandwidth resources, for providing server hosting, rental and related value-added services and the like. A cloud data center is an Internet data center deployed using the underlying resources owned by a cloud vendor.

[0073] A resource pool is a collection of various hardware resources and software resources involved in a cloud data center. Generally, according to the type of resources, the resources in the resource pool can be divided into computing resources, storage resources and network resources, etc.

[0074] Physical machine (PM): A physical resource used to carry virtualization technology. A host is also referred to as a physical machine. Generally, a host used to deploy a virtual instance is a physical server. A physical machine has multiple physical devices. For example, a physical server has physical devices such as a processor and a memory. Multiple virtual instances can be deployed in a host. Multiple virtual instances deployed on the same host share the physical resources of the host. According to different use cases, the multiple virtual instances deployed in a host can belong to the same tenant or belong to different tenants, respectively.

[0075] Virtualization is a resource management technology. Virtualization can abstract and convert various entity resources of a host, such as computing resources, network resources, and storage resources, to break the barriers between the entity structures of the host, so that a tenant can use these resources in a better way than the original configuration. The resources obtained through virtualization are referred to as virtualized resources, which are not limited by the setup method, setting region, or physical configuration of the existing entity resources.

[0076] Virtualized resources are usually provided to tenants in the form of virtual instances. A virtual instance can use the hardware resources of a host and run on an operating system (OS) of the host. An application runs in the virtual instance, and the application is used to implement a service of a tenant. The hardware resources of the host can be used by one or more tenants in the granularity of a virtual instance. Different virtual instances are isolated from each other, so that tenants can conveniently and flexibly use physical resources under the premise of secure isolation, and the utilization of physical resources can be greatly improved. Generally, a virtual instance can be a virtual machine, a container, or an independent process (for example, a function). A virtual instance can also be referred to as an elastic compute service (ECS) or an elastic instance (different cloud service providers have different names).

[0077] Virtual machine (VM): refers to a complete computer system that has complete hardware system functions, runs in a completely isolated environment, and is simulated by virtualization technology. Part of the instructions of the virtual machine can be processed in the host machine, and the other part of the instructions can be executed in an emulated manner. The virtual machine is also called a virtual server. The virtual machine can be regarded as a collection of a plurality of virtual devices, which has complete hardware system functions and runs in a completely isolated environment. The virtual device is virtually obtained based on a physical device capable of being shared resources by means of virtualization technology. For example, a virtual processor virtually obtained based on a processor by means of virtualization technology is a virtual device. For another example, a training card virtually obtained based on a field-programmable gate array (FPGA) by means of virtualization technology is also a virtual device. Exemplarily, the virtual machine in the present application can be a kernel-based virtual machine (KVM). The work that can be completed in a server can be implemented in the virtual machine. When the virtual machine is created in the server, part of the hard disk and memory capacity of the entity machine need to be used as the hard disk and memory capacity of the virtual machine. Each virtual machine has an independent hard disk and operating system, and the tenant of the virtual machine can operate the virtual machine like using the server. The running environment (such as a virtual machine application, an operating system and virtual hardware) in different virtual machines is completely isolated, and the communication between different virtual machines needs to be forwarded through a network message of a virtual manager.

[0078] The container uses the namespace and cgroup techniques supported by the Linux kernel to isolate the application APP process and its dependent packages (running environment bins / libs, specifically all files required to run the APP) in an independent running environment. The container provides a lightweight virtual running environment. The container can be obtained by packaging all the codes, libraries and dependencies of the tenant's application into an image. When the image is executed, the image runs in a virtual running environment. At this time, the container is the runtime instance of the image, similar to a lightweight sandbox, which can be started, started, stopped and deleted. The infrastructure of the container can be the hardware of the server or a virtual machine on the cloud (that is, a container can also be deployed in a virtual machine), and the operating system uses the Linux kernel, supports namespace and cgroup, wherein the namespace is used to realize the isolation between processes, and the cgroup is used to realize the allocation of process resources, and the resources are specifically virtual processors and memories allocated to the process. The container engine is similar to the virtual machine manager and runs in the operating system to manage the container. Compared with the characteristics of the virtual machine with the operating system, the container does not exist the operating system, and the container runs as a process in the operating system of the host computer, so the starting speed of the container is faster than that of the virtual machine, and the container is particularly suitable for lightweight applications, and a host computer can simultaneously run thousands of containers (processes).

[0079] Orchestration in the computer field refers to the arrangement, coordination and management of automation for describing complex computer systems, middleware and services. Orchestration usually involves three aspects: 1) resource orchestration, responsible for resource allocation; 2) workload orchestration, responsible for sharing workloads between resources and responsible for managing their life cycle; and 3) service orchestration, responsible for service discovery and high availability.

[0080] An image file is a template used to create a server or a disk, which contains an operating system, business data or application software. The image file is a file storage form. Similar to a compressed file, it makes a specific series of files into a single file according to a certain format to facilitate user download and use, such as an operating system, a game, etc. Its most important feature is that it can be recognized by a specific software and can be directly burned to a CD. The burning software in the general sense can directly burn the contents contained in the supported image file to a CD. The image file can be regarded as the "extract" of the CD. The image file is widely used in the fields of data backup, system installation and software distribution. The use method of the image file is similar to that of the physical CD. Only the image file needs to be loaded into a virtual CD drive, and the operation can be performed like using a physical CD.

[0081] Network card: Also known as network interface controller (NIC), network adapter, or LAN receiver, it is a computer hardware designed to allow the host or computing device to communicate on the network.

[0082] Memory: Also known as memory or main memory, its function is to temporarily store the operation data in the CPU and exchange data with the external storage such as hard disk.

[0083] Quality of service (QoS) is a technology to effectively manage network resources. QoS provides end-to-end quality of service guarantee for different needs of various services. QoS allows different flows to compete for network resources unequally under limited bandwidth resources, and can provide better service capability for specified network communication. For example, voice, video and important data applications can be given priority in network devices.

[0084] Resource pooling refers to the integration of various computing and storage resources to form a unified resource library for unified dynamic allocation and management. Resource pooling can achieve high sharing of resources, improve resource utilization, simplify resource management, and provide flexible services for on-demand allocation.

[0085] File system is the method and data structure used by the operating system to organize files on a storage device or partition. The software mechanism in the operating system responsible for managing and storing file information is called file management system, abbreviated as file system.

[0086] Checkpoint-restore (CR) technology: a fault recovery technology for compute-intensive applications, widely used in high performance computing (HPC), scientific computing, artificial intelligence (AI) training, etc. The basic principle is that during the execution of a task by a cluster, the running state of the cluster is saved periodically or periodically, and the processed results and the process state of the task are persisted to storage. When the cluster encounters a fault, it reads the last checkpoint saved before the fault and re-executes the task from the checkpoint. These saved running states are called checkpoints (CKPT). In this way, the cluster can directly restore the computing progress to the checkpoint time after a fault, so that the fault recovery will only lose the progress between the fault time point and the previous checkpoint, without the need to start over, and can avoid the time overhead of re-execution. CR technology can only deal with transient (transition) faults, i.e. faults that can be recovered by re-running the program or restarting the server. For other types of faults, CR technology must be combined with fault node replacement capabilities to achieve fault recovery, thereby ensuring high availability of the cluster.

[0087] Compute-intensive application: an application that requires a large amount of computing resources to complete its work. The computing power required is much greater than that provided by a single computer, and a computing cluster is generally used to run such applications.

[0088] Computing cluster: a group of computers connected by various software and hardware technologies, which work closely together to complete computing tasks that a single computer cannot complete. Due to the powerful computing power of the computing cluster and the fact that any computer failure during the computing process will cause the cluster task to be interrupted, it is also known as a tightly coupled high-performance computing cluster. The computers in the computing cluster are also known as computing nodes (computing nodes, simply nodes), or simply nodes.

[0089] Logical cluster: a logical computing cluster presented to users on top of a physical cluster. A logical cluster may be the entire physical cluster, or it may be a part of the physical cluster. Physical computing clusters often contain thousands or even tens of thousands of computers, while actual applications only require dozens or hundreds of computers, so the physical cluster needs to be sliced, i.e. logical clusters, and the networks between logical clusters are isolated by default. In public cloud technology, the user is the tenant.

[0090] Hyperpod cluster: a group of computing clusters connected by a hyper-speed network, in which the high-speed network bandwidth between computing nodes can make the computing ratio close to or even exceed 1, and the entire system can be regarded as a supercomputer. The computing nodes in the hyperpod cluster can become hypernodes, and the hypernodes are based on hypernode hardware. The hypernode hardware is, for example, a tensor processing unit (TPU). The hypernode and the physical cluster are a containing relationship, and a physical cluster can include multiple physical hypernodes and ordinary nodes. The physical hypernodes are interconnected by a cluster network, and the physical hypernodes are interconnected by a hyperplane network. The computing ratio is the ratio of the network bandwidth between the computing nodes to the computing power of the computing nodes. The unit of network bandwidth is usually gigabytes per second (GBps), and the unit of computing power of the computing nodes is usually one trillion floating point operations per second (Tflops). Compared with the general sense of computing cluster, the network performance of hypernode is better, and the scale is smaller.

[0091] Hyperplane network: refers to a hyper-speed network that links between servers inside a physical hypernode, which has lower latency and larger bandwidth than a conventional network. For example, the bandwidth of the hyperplane network is one order of magnitude higher than that of the cluster network.

[0092] Cluster computing technology refers to multiple computers connected by a network to work together to form a high-performance computing environment. The high-performance computing environment is, for example, a computing cluster. The driving force for the emergence of cluster computing is the explosive growth of the amount of data that needs to be processed, and the logic of the computing task becomes increasingly complex, and a single computer cannot complete the computing task within a limited time. Cluster computing achieves computing scalability by distributing tasks to multiple computers for simultaneous computing, providing a foundation for complex processing of large-scale data.

[0093] The cluster computing technology is usually used for distributed parallel applications, which split data and decompose large tasks into multiple subtasks, and distribute multiple subtasks to multiple computing nodes for parallel processing to improve processing efficiency. During the processing of distributed parallel applications, there may be a need for communication and synchronization between computing tasks on multiple computing nodes, that is, a single computing task is not independent, but needs to cooperate with each other to complete the work. In this case, single-node hardware or system failure will cause the overall delay or stagnation of the application. Moreover, since the computing shards and parallel processing of cluster computing use multiple computing nodes at the same time, it inevitably increases the impact of hardware and system failures on upper-layer tasks. Therefore, cluster computing availability protection technology has emerged, and common cluster computing availability protection technologies are as follows:

[0094] 1. Faulty hardware monitoring and shielding technology: By monitoring hardware resource indicators at runtime, identify potentially faulty computing nodes in advance, shield potentially faulty computing nodes in resource allocation, so as to minimize the allocation of resources to potentially faulty computing nodes, and reduce the failure probability of allocated resources.

[0095] 2. Load balancing technology: Through resource redundancy and reasonable task allocation, avoid the failure of all resources on which the task depends, and effectively improve the availability of computing resources.

[0096] 3. Fault-tolerant mechanism: After the failure of a computing node in the cluster, the computing resource side provides a non-failed computing node similar to the network location and computing environment of the failed computing node, which replaces the failed computing node to continue executing the task originally executed by the failed computing node.

[0097] To deal with the failure of a single computing node, there are mainly two computing availability guarantee technologies, which are re-computation technology and checkpoint technology. Among them, the re-computation technology means that when the task fails, the task is rescheduled to other normal computing nodes for execution, and the previous data is calculated repeatedly, and if necessary, the upstream tasks are traced back to calculate to restore the computing progress of the current task.

[0098] The re-computation power application represented by AI training is a typical distributed parallel application. The training framework of AI training distributes the training logic to multiple computing cards of multiple computing nodes, and improves the performance and efficiency of model training through data parallelism, model parallelism, pipeline parallelism, etc. However, in the AI training process, the execution logic on multiple computing nodes and multiple computing cards needs to communicate with each other to pass gradients and parameters, which makes the computing processes of multiple computing nodes closely coupled, and the failure of one computing node may cause the entire training process to stop. At the same time, with the rapid expansion of the scale of AI large models, the scale of the cluster computing infrastructure used for training models is also getting larger and larger. This has led to the fact that occasional hardware failures have become the norm under the super-large cluster scale, reducing the mean time between failures (MTBF) to tens of hours, or even hours. Frequent failures mean that the training process will inevitably experience multiple training stops due to hardware failures, which will greatly affect the time cost of training and the resource efficiency of resources used for training. However, the time cost and resource efficiency of re-computation power applications in the cloud scenario are the most critical indicators related to resources. Less time investment means that the task can end as soon as possible, and the results or products of the re-computation power application can be put into use as soon as possible. High resource efficiency means that the resource cost of the application is lower and more competitive.

[0099] Currently, the availability guarantee technology widely used in AI training is checkpoint recovery technology. In the cloud scenario, cloud services need higher recoverability and shorter recovery time, and therefore need to ensure that the execution process of heavy computing applications represented by AI training has higher availability. Therefore, how to improve the recoverability after failure in the execution process of heavy computing applications, while reducing the time spent in the execution process of heavy computing applications, has become a core technology in heavy computing applications.

[0100] Due to the intensive and regular communication between computing cards and computing nodes in heavy computing applications represented by AI training, the computing clusters used have significant differences from traditional high-performance computing clusters. For example, high-speed networks are usually used to interconnect computing nodes in AI training clusters, which means that the topological location of computing nodes in the network is unique. Therefore, the failure node replacement method in the traditional HPC field and the general cloud computing scenario is not applicable. In addition, the replacement of failed nodes in the general cloud computing scenario requires reinitialization of the nodes, which also increases the burden of business recovery.

[0101] Although, currently, node hot standby replacement technology can be used to replace the original node with a hot standby node to guarantee the performance of a distributed cluster. The cluster management and control surface will divide the nodes into two categories: worker nodes (also known as worker virtual instances) and hot standby nodes (also known as hot standby virtual instances). Worker nodes and hot standby nodes belong to the same logical cluster. Hot standby nodes are already started and running nodes, and their configurations are exactly the same as those of worker nodes, and they are installed with the same necessary software. In the normal state, the scheduler will not issue calculations to hot standby nodes, and worker nodes will not interact with hot standby nodes. When using hot standby nodes to replace worker nodes, the configuration of the logical cluster needs to be updated to configure the hot standby nodes as worker nodes, and the original worker nodes are removed from the worker node set, and then the hot standby nodes configured as worker nodes can read the checkpoint recovery application and run, and the entire recovery delay is short.

[0102] However, the hot standby replacement technology essentially builds high availability capability by creating redundant resources when creating a cluster, and there are mainly two implementation schemes: Scheme 1: The customer directly purchases additional nodes as hot standby nodes when creating a logical cluster, and the cost of using hot standby nodes is high in this scheme. In addition, the maintenance of the hot standby node pool, including hot standby pool node rotation and capacity supplementation, etc. technologies need to be built by the customer, and the customer's use is difficult. Scheme 2: When the customer creates a logical cluster, the cloud service provider configures hot standby nodes for the customer, and the cost is borne by the cloud service provider. As can be seen, the cost of using hot standby nodes is currently high.

[0103] In view of this, the embodiment of the present application provides a cloud service providing method and system based on public cloud technology. The method is executed by a cloud management platform. The cloud management platform is used to manage infrastructure providing cloud services. The infrastructure includes a plurality of servers. The plurality of servers are used to deploy virtual instances implementing tenant services, and the plurality of servers are divided into a plurality of physical clusters. In the cloud service providing method, after receiving a virtual instance creation request of a tenant, the cloud management platform can learn that the tenant needs to create a virtual instance cluster based on a first image file and the specifications of the virtual instances in the virtual instance cluster according to the virtual instance creation request. Then, the cloud management platform queries whether a first hot backup virtual instance using the first image file has been deployed in the plurality of servers. In the case that the first hot backup virtual instance using the first image file has been deployed in the plurality of servers, a virtual instance cluster is created based on the specifications of the virtual instances in the virtual instance cluster, and the first hot backup virtual instance is configured as a hot backup virtual instance of the virtual instance cluster.

[0104] In this way, since the cloud management platform can configure the first hot backup virtual instance as a hot backup virtual instance of the virtual instance cluster in the case that the first hot backup virtual instance using the first image file has been deployed in the plurality of servers, the virtual instance cluster of the tenant and the virtual instance cluster of other tenants can jointly use the first hot backup virtual instance, the sharing of hot backup virtual resources between different virtual instance clusters is realized, the fault recoverability of the virtual instance cluster can be guaranteed, and the problem of high cost of using hot backup virtual instances at present is solved, so that the cloud management platform can provide the tenant with a lower-cost business recovery capability.

[0105] The present application is equivalent to propose a high availability hyper cluster service (HAHCS) which can provide a customer with a high availability cluster (HAC) or a high availability hyperpod cluster (HAHC), so that the customer can realize his own business by using the HAC or the HAHC. The HAC is a computing cluster with hot backup resources, the hot backup resources of which are visible to the customer, and the hot backup resources can be shared between different logical clusters. The HAHC is created based on hyperpod hardware, and the difference between the HAHC and the HAC is that the HAHC can support hyperpod hardware, and because the sharing range of the hyperpod hardware is smaller (such as the sharing range is reduced to a hyperpod), the HAHC has a higher price than the HAC. The HAHCS needs the customer to explicitly select to purchase the HAC and the HAHC, and the mandatory configuration needs to be completed when purchasing to take effect. Compared with ordinary hyperpods or cluster resources, the high availability guarantee service fee will be charged.

[0106] For example, FIG. 1 is a logical architecture diagram of a high-availability cluster provided by an embodiment of the present application. As shown in FIG. 1, the high-availability cluster 01 has the worker nodes 01 to 04, and the high-availability cluster 02 has the worker nodes 11 to 18. The high-availability cluster 01 and 02 each apply for two hot-standby nodes, and the cloud management platform allocates the hot-standby nodes 01 and 02 to the high-availability cluster 01 and 02, i.e., the high-availability cluster 01 and 02 share the hot-standby nodes 01 and 02. From a resource management interface of the high-availability cluster 01, a tenant of the high-availability cluster 01 can see that the hot-standby nodes 01 and 02 are used by the high-availability cluster 01, and the tenant can instruct to replace a worker node in the high-availability cluster 01 with any one of the hot-standby nodes 01 and 02 when needed. From the resource management interface of the high-availability cluster 01, a tenant of the high-availability cluster 02 can see that the hot-standby nodes 01 and 02 are used by the high-availability cluster 02, and the tenant can instruct to replace a worker node in the high-availability cluster 02 with any one of the hot-standby nodes 01 and 02 when needed. However, the tenant of the high-availability cluster 01 and the tenant of the high-availability cluster 02 do not perceive that the hot-standby pool is actually in a shared state.

[0107] The technical solutions of the present application are described in detail from the aspects of implementation scenarios, method flows, hardware devices, software devices, and the like.

[0108] The implementation scenarios of the embodiments of the present application are described below.

[0109] FIG. 2 is a structural diagram of an implementation scenario involved in a cloud service providing method provided by an embodiment of the present application. As shown in FIG. 2, the implementation scenario includes a data center 1 and a client 2. The data center 1 and the client 2 can establish a communication connection through a network. Optionally, the network can be the Internet, or other networks, which are not limited by the embodiments of the present application. A tenant can interact with the data center 1 through the client 2. For example, the tenant can send cloud service request information and the like to the data center 1 through the client 2. The data center 1 is configured to respond based on the information sent by the client 2.

[0110] A large amount of infrastructure owned by a cloud service provider, such as computing resources, storage resources, and network resources, is deployed in the data center 1. For example, the computing resources can be computing devices (such as servers and the like) capable of providing computing capabilities. As shown in FIG. 2, the data center 1 includes a cloud management platform and infrastructure (not shown in FIG. 2). The cloud management platform and the infrastructure are connected through an intra-data-center network. The cloud management platform is configured to manage the infrastructure. The infrastructure is configured to provide public cloud services. The infrastructure includes a plurality of servers. Cloud services can be optionally deployed in the servers. The cloud services are implemented by running virtual instances, and thus are also referred to as virtual instance deployments for implementing tenant businesses in the servers. A tenant can send a cloud service request and related information to the servers through a client 2 used by the tenant, and the servers can process the cloud service request and related information and provide cloud services to the tenant based on the processed cloud service request and related information. For example, the cloud management platform can provide cloud services for tenants by using the cloud service providing method provided in the embodiments of the present application.

[0111] The cloud management platform can be logically divided into a tenant console, a computing management service, a network management service, a storage management service, an authentication service, and an image management service. The tenant console provides an interface or an application program interface (API) for interacting with tenants. The computing management service is configured to manage servers running virtual instances and bare metal servers. The network management service is configured to manage network services (such as gateways, firewalls, and the like). The storage management service is configured to manage storage services (such as data bucket services). The authentication service is configured to manage the account and password of a tenant. The image management service is configured to manage the image of a virtual instance.

[0112] In the implementation scenario shown in FIG. 2, a plurality of servers are provided in one data center. The servers include a hardware layer and a software layer. The hardware layer is a conventional configuration of the servers. The hardware layer is deployed with hardware devices such as processors, memories, network cards, disks, and buses. The software layer includes an operating system installed and running on the servers. The operating system of a virtual machine can be referred to as a host operating system. A virtual machine manager (also referred to as a Hypervisor) is running in the host operating system. The virtual machine manager is configured to implement computing virtualization, network virtualization, and storage virtualization of virtual machines, and is responsible for managing the virtual machines.

[0113] The cloud management platform client can receive the control plane command sent by the cloud management platform, create a virtual instance on the server according to the control plane control command, and perform full life cycle management on the virtual instance. For example, the cloud management platform client can detect the use of hardware resources of the server in real time and report to the cloud management platform. When the cloud management platform confirms to create a virtual instance on a server, it will send a virtual instance creation command to the cloud management platform client on the server, and the cloud management platform client will create a virtual instance on the server after receiving the command. In this way, tenants can create, manage, log in and operate virtual instances in the data center through the cloud management platform.

[0114] The server can be used to run virtual machines of different specifications. Virtual machine specifications include general computing, memory optimization, and super memory, etc. Each type has specific specifications. After the tenant selects a virtual machine specification, the cloud management platform selects a server in the data center that supports the specification and determines that the server has sufficient idle hardware resources, and then creates a virtual machine with the specification on the server. By configuring the server through the cloud management platform, the analysis and planning of the server hardware resources can be realized, and the corresponding computing products of the physical hardware can be planned according to the hardware performance of the server, such as planning virtual machines of different specifications to meet the differentiated demands of different tenants. Moreover, according to the performance difference of virtual machines of different specifications, a differentiated pricing strategy can be implemented. For example, virtual instances of high-performance specifications are sold at a higher price, and virtual instances of ordinary performance specifications are sold at a lower price, so that tenants can purchase virtual instances on demand.

[0115] In an implementation, as shown in FIG. 3, the location of the underlying resources in the data center can be described by cloud resource deployment regions and availability zones (AZs). A tenant can choose to deploy a cloud service based on resources in a specific region and AZ. A region is divided from the dimensions of geographical location and network latency. The same resource pool is used within the same region, which can be understood as sharing public services such as elastic computing, block storage, object storage, virtual private cloud (VPC) network, elastic internet protocol (EIP) address, and image. A region is divided into general regions and dedicated regions. A general region refers to a region that provides general cloud services to public tenants. A dedicated region refers to a region that carries the same type of business or provides business services to specific tenants. A region usually includes multiple AZs. Multiple AZs in a region are connected by high-speed optical fibers to meet the needs of tenants to build high-availability systems across AZs. An AZ is a collection of one or more data centers shown in FIG. 3. The resources such as computing, network, and storage within an AZ are logically divided into multiple clusters.

[0116] A tenant can send instructions to the cloud management platform through a client 2 used by the tenant to create, manage, log in to, and operate virtual instances in a server, and use cloud services provided by the virtual instances. For example, the cloud management platform can provide an access interface. The access interface can be provided in the form of an interface or an API. A tenant can remotely access the access interface to register a cloud account and a password with the cloud management platform and log in to the cloud management platform using the cloud account and the password. The cloud management platform can also authenticate the cloud account and the password. After successful authentication, the tenant can further select and pay for a virtual instance of a specific specification (processor, memory, disk) in the cloud management platform. After the tenant successfully pays for the virtual instance, the cloud management platform provides the tenant with a remote login account and a password for the purchased virtual instance. The tenant can use the remote login account and the password to remotely log in to the virtual instance, install and run an application of the tenant in the virtual instance, and implement the business of the tenant through the application.

[0117] The client 2 can be a computer, a personal computer, a laptop computer, a mobile phone, a smartphone, a tablet computer, a cloud host, a portable mobile terminal, a multimedia player, an electronic book reader, a wearable device, a smart home appliance, an artificial intelligence device, a smart wearable device, a smart vehicle device, or an Internet of Things device, etc.

[0118] In an implementation manner, the cloud service providing method provided by the embodiment of the present application can be implemented by running an executable program on a computing device in the data center 1. Optionally, the cloud service providing method provided by the embodiment of the present application can be applied to a cloud service providing system. The cloud service providing system is deployed in a server managed by a cloud management platform. The cloud service providing system can implement the cloud service providing method provided by the embodiment of the present application by running the executable program of the cloud service providing method provided by the embodiment of the present application. In addition, the executable program implementing the cloud service providing method can be presented in the form of an application installation package, and the server can implement the cloud service providing method provided by the embodiment of the present application by running the executable program in the application installation package after installing the application installation package.

[0119] It should be understood that the above is an exemplary description of the implementation scenario of the cloud service providing method provided by the embodiment of the present application, and does not constitute a limitation on the implementation scenario of the cloud service providing method. Those skilled in the art can know that the implementation scenario can be adjusted according to application requirements as the business requirements change, and the embodiment of the present application does not make a specific limitation. In addition, when the cloud service providing method provided by the embodiment of the present application is applied to other scenarios, the executable program of the method can also be presented in the form of an application installation package or in other ways, and the embodiment of the present application does not make a one-by-one enumeration.

[0120] The implementation process of the cloud service providing method provided by the embodiment of the present application based on the public cloud technology will be described below. The implementation process can be divided into a resource allocation process, a node upgrade process and a node replacement process according to functions. The resource allocation refers to that the cloud management platform creates a virtual instance cluster for implementing a tenant business based on the instruction of the tenant. The node upgrade refers to that the cloud management platform upgrades all virtual instances in the virtual instance cluster based on the instruction of the tenant. The node replacement refers to that the cloud management platform replaces a working virtual instance in the virtual instance cluster with a hot standby virtual instance of the virtual instance cluster based on the instruction of the tenant. The implementation process of the three processes will be described in turn.

[0121] FIG. 4 is a flowchart of a resource allocation process provided by an embodiment of the present application. As shown in FIG. 4, the resource allocation process includes the following steps 401 to 404.

[0122] Step 401, the cloud management platform receives a virtual instance creation request of a tenant, and the virtual instance creation request is used to instruct to create a virtual instance cluster and the specification of a virtual instance in the virtual instance cluster based on a first image file.

[0123] When the tenant needs to create a virtual instance cluster using the cloud management platform, the tenant can perform a specified operation on a client used by the tenant to trigger a virtual instance creation request, so that the cloud management platform creates a virtual instance cluster for the tenant based on the virtual instance creation request. In a possible implementation, the cloud management platform can provide an interactive interface to the tenant, and the tenant can trigger the virtual instance creation request based on the interactive interface. After the tenant triggers the virtual instance creation request, the cloud management platform can obtain the virtual instance creation request through the interactive interface. Optionally, the interactive interface includes one or more of the following implementations: an application programming interface (API), an interactive template, and a user interface (UI). The interactive template is a template provided by the cloud management platform to the tenant for implementing different functions. When the tenant needs to use a certain function, the tenant can download the template for implementing the function, add relevant information of the tenant in the template, and then feed back the template with the relevant information of the tenant to the cloud management platform. After receiving the template with the relevant information of the tenant, the cloud management platform can obtain the function implemented by the template, and customize the function according to the information of the tenant. The configuration interface refers to an interface in which the tenant can operate to indicate the function implemented by the tenant. The cloud management platform can obtain the function implemented by the tenant from the configuration interface.

[0124] When the tenant triggers the virtual instance creation request, the tenant also needs to specify an image file used by the virtual instance cluster to be created and a specification of a virtual instance in the virtual instance cluster. In a possible implementation, the cloud management platform can provide a configuration interface of the virtual instance cluster to the tenant, and the tenant can specify relevant configurations of the virtual instance cluster in the configuration interface of the virtual instance cluster and click submit after the configurations are completed. The submit operation triggers the client used by the tenant to send a virtual instance creation request to the cloud management platform, and the virtual instance creation request carries configuration information of the virtual instance cluster. For example, the relevant configurations of the virtual instance cluster include the image file used by the virtual instance cluster to be created and the specification of the virtual instance in the virtual instance cluster. The configuration interface of the virtual instance cluster can present image files and specifications of virtual instances that can be selected by the tenant, and the tenant can select the required image file and the specification of the virtual instance according to the requirements. For example, FIG. 5 is a schematic diagram of a configuration interface of a virtual instance cluster provided by an embodiment of the present application. As shown in FIG. 5, the configuration interface of the virtual instance cluster includes a plurality of configuration items. The plurality of configuration items include a payment method of the virtual instance cluster to be created by the tenant, a CPU architecture, a specification of a virtual instance, and an image file used by the virtual instance cluster. The tenant can fill in the information in the plurality of configuration items according to the requirements, and the tenant can trigger the virtual instance creation request by clicking submit after the filling is completed.

[0125] It should be noted that, since the cloud service providing method of the present application is equivalent to providing a tenant with a high-availability super cluster service, when the tenant specifies the related configurations of the virtual instance, the cloud management platform needs to prompt the tenant to select whether to enable the cluster high-availability capability. When the tenant selects to enable the cluster high-availability capability, the cloud management platform configures the high-availability capability for the virtual instance cluster of the tenant by executing the present application. Further, the cloud management platform can optionally also prompt the tenant to select the type of high-availability cluster, such as selecting a performance-type high-availability cluster or a cost-type high-availability cluster, so that the tenant can select the type of high-availability cluster according to the needs. Of course, the tenant can also not select the type of high-availability cluster, in which case it can be considered that the tenant selects to create a virtual instance cluster of a default type. For example, the default type is cost-type. At the same time, the cloud management platform can optionally also prompt the tenant to select whether to share the hot standby virtual instance with other virtual instances. When the tenant does not select whether to share the hot standby virtual instance with other virtual instances, the cloud management platform configures the hot standby virtual instance for the virtual instance cluster of the tenant according to the default configuration. For example, the default configuration is to share the hot standby virtual instance with other virtual instances. In addition, the cloud management platform can optionally also prompt the tenant to configure the number of hot standby virtual instances required by the virtual instance cluster of the tenant. When the tenant does not configure the number of hot standby virtual instances, the cloud management platform configures the hot standby virtual instance for the virtual instance cluster of the tenant according to the default number. For example, the default number can optionally be equal to a percentage of the total number of virtual instances in the virtual instance cluster. For example, the default total number is the result of rounding up the quotient of the total number of virtual instances in the virtual instance cluster and eight. As shown in FIG. 5, the configuration interface of the virtual instance also has an option for the tenant to select whether to enable the cluster high-availability capability, an option to select the type of high-availability cluster, an option to select whether to share the hot standby virtual instance with other virtual instances, and a configuration item to configure the number of hot standby virtual instances required by the virtual instance cluster.

[0126] The high-availability cluster provided by the application can be of two types: performance type and cost type. For the performance type high-availability cluster, the standby virtual instance is in a started state during the working process of the working virtual instance, and the mirror file of the standby virtual instance contains the same operating system, drivers and executable programs of all running software as the working virtual instance. Such configuration of the standby virtual instance of the performance type high-availability cluster can facilitate the standby virtual instance to directly replace the working virtual instance to provide extreme service recovery speed. For the cost type high-availability cluster, the standby virtual instance is in a started state during the working process of the working virtual instance, and the mirror file of the standby virtual instance contains the same operating system and drivers as the working virtual instance, but does not contain the executable programs of the running software in the working virtual instance. These executable programs of the running software are version managed and shared through file storage, and the standby virtual instance needs to mount the corresponding file storage and directory to obtain the executable programs of the running software before replacing the working virtual instance. Such configuration of the standby virtual instance in the cost type high-availability cluster may result in a slightly lower service recovery speed of the cost type high-availability cluster compared to the service recovery speed of the performance type high-availability cluster, but it can be used as a standby virtual instance for working virtual instances using different running software, so that the cost type high-availability cluster can share standby resources in a larger range.

[0127] Step 402, the cloud management platform queries whether a first standby virtual instance using a first mirror file has been deployed in the plurality of physical clusters.

[0128] In the application, standby virtual instances can be shared between different virtual instance clusters. Therefore, after obtaining the first mirror file to be used by the virtual instance cluster to be created by the tenant, the cloud management platform can first query whether a first standby virtual instance using the first mirror file has been deployed in the plurality of physical clusters managed by the cloud management platform. When a first standby virtual instance using the first mirror file has been deployed in the plurality of physical clusters managed by the cloud management platform, the cloud management platform should configure the first standby virtual instance as the standby virtual instance of the virtual instance cluster to be created according to the principle of sharing standby virtual instances. Wherein, the plurality of physical clusters have deployed a first standby virtual instance using a first mirror file means that one or more physical clusters in the plurality of physical clusters have deployed a first standby virtual instance using a first mirror file.

[0129] In a possible implementation, after the cloud management platform completes the creation of the virtual instance cluster, the cloud management platform records the information of the created virtual instance cluster. For example, the cloud management platform records the identifier of the virtual instance cluster, the identifier of the hot-standby virtual instance configured for the virtual instance cluster, and the information of the hot-standby virtual instance. The information of the hot-standby virtual instance indicates the image file used by the hot-standby virtual instance and the physical cluster in which the hot-standby virtual instance is located. When the virtual instance cluster is a performance type high-availability cluster, the information indicating the image file used by the hot-standby virtual instance can indicate the following: the name and version number of the operating system used by the hot-standby virtual instance, the name and version number of the driver, and the name and version number of all running software. Here, the running software can optionally include system software required by the virtual instance and business software for implementing the tenant, and the following description does not distinguish between the two if specifically stated. When the virtual instance cluster is a cost type high-availability cluster, the information indicating the image file used by the hot-standby virtual instance can indicate the following: the name and version number of the operating system used by the hot-standby virtual instance and the name and version number of the driver. Then, after the cloud management platform obtains the first image file required by the virtual instance cluster of the tenant, the cloud management platform can query the information of all created virtual instance clusters according to the identifier of the first image file, to determine whether a first hot-standby virtual instance using the first image file has been deployed in the plurality of physical clusters. When the virtual instance cluster is a performance type high-availability cluster, the first hot-standby virtual instance using the first image file means that the name and version number of the operating system used by the first hot-standby virtual instance, the name and version number of the driver, and the name and version number of all running software are respectively identical to the corresponding contents indicated by the first image file. When the virtual instance cluster is a cost type high-availability cluster, the first hot-standby virtual instance using the first image file means that the name and version number of the operating system used by the first hot-standby virtual instance and the name and version number of the driver are respectively identical to the corresponding contents indicated by the first image file. In addition, since the hot-standby virtual instance of the virtual instance cluster requires the same configuration as the working virtual instance in the virtual instance cluster, when the first hot-standby virtual instance is determined, it is also necessary to ensure that the configurations of the first hot-standby virtual instance except the first image file are respectively identical to the configurations of the virtual instance in the virtual instance cluster.

[0130] It should be noted that the step 402 can be implemented in various manners. In one implementation, when the virtual instance cluster creation request indicates the information whether the hot-standby virtual instance is shared with other virtual instances, the cloud management platform can determine whether to perform the step 402 according to whether the tenant chooses to share the hot-standby virtual instance with other virtual instances. When the tenant indicates the cloud management platform that the virtual instance cluster of the tenant is shared with other virtual instances, the step 402 is performed. When the cloud management platform determines that the virtual instance cluster is not shared with other virtual instances, the step 402 is not performed. In another implementation, when the virtual instance cluster creation request does not indicate the information whether the hot-standby virtual instance is shared with other virtual instances, the cloud management platform performs the step 402 to query whether the first hot-standby virtual instance using the first image file has been deployed in the plurality of physical clusters managed by the cloud management platform after receiving the virtual instance creation request of the tenant. When it is queried that the first hot-standby virtual instance using the first image file has been deployed in the plurality of physical clusters, the tenant is asked whether the hot-standby virtual instance is shared with other virtual instances. When the tenant chooses to share the hot-standby virtual instance with other virtual instances, the cloud management platform determines that the first hot-standby virtual instance can be configured as the hot-standby virtual instance of the virtual instance cluster to be created. When the tenant chooses not to share the hot-standby virtual instance with other virtual instances, the cloud management platform determines that the first hot-standby virtual instance cannot be configured as the hot-standby virtual instance of the virtual instance cluster to be created.

[0131] The step 403, the cloud management platform selects a first physical cluster that can provide the specification of the virtual instance in the virtual instance cluster from the plurality of physical clusters, and creates the virtual instance cluster in the first physical cluster based on the first image file.

[0132] Since the multiple servers managed by the cloud management platform are divided into multiple physical clusters, after the cloud management platform obtains the specification of the virtual instance in the virtual instance cluster to be created, the cloud management platform needs to first select a first physical cluster that can provide the specification of the virtual instance in the virtual instance cluster from the multiple physical clusters, and then create the virtual instance cluster in the first physical cluster based on the first image file. The physical cluster that can provide the specification of the virtual instance in the virtual instance cluster needs to ensure that the parameters of the created virtual instance cluster can match the specification of the virtual instance in the virtual instance cluster. For example, when the specification of the virtual instance indicated by the virtual instance creation request includes the specification of the virtual graphics processing unit (VGPU) of the virtual instance, and the specification of the VGPU indicates multiple parameters (such as computing power, memory size, memory bit width, and memory bandwidth), if the multiple parameters of the VGPU of the virtual instance in the created virtual instance cluster correspond to the multiple parameters indicated by the specification one by one, and any one of the multiple parameters of the VGPU of the virtual instance in the created virtual instance cluster is equal to or slightly greater than the corresponding parameter indicated by the specification, it is considered that the parameters of the created VGPU match the specification of the VGPU indicated by the virtual instance creation request. According to the foregoing description, the virtual instance cluster can be a performance high-availability cluster, or a cost high-availability cluster. When the virtual instance cluster is a performance high-availability cluster, since the first image file used to generate the virtual instance includes the entire content of the operating system, the driver, and the running software, the virtual instance cluster created by the cloud management platform needs to satisfy: after the cloud management platform starts the virtual instance cluster based on the first image file, the virtual instance cluster can enter an available state. When the virtual instance cluster is a cost high-availability cluster, since the first image file used to generate the virtual instance does not include the running software of the virtual instance cluster, the cloud management platform creating the virtual instance cluster further includes: after starting the virtual instance based on the first image file, mounting the running software of the virtual instance for the virtual instance, and configuring related environment variables for the virtual instance. The running software that needs to be mounted by the virtual instance can be specified by the tenant, and the executable program of the running software that needs to be mounted by the virtual instance can be stored in the file system of the cloud management platform. In addition, creating the virtual instance cluster not only includes creating each virtual instance in the virtual instance cluster, but also includes configuring connection and other configuration items between the virtual instances in the virtual instance cluster. For example, configuring the network between the virtual instances. When the virtual instance cluster is a supernode cluster, the supernode network also needs to be configured.

[0133] In a possible implementation, when the cloud management platform selects the first physical cluster, the cloud management platform can first acquire the total amount of available resources of various resources in each of the plurality of physical clusters, and then compare the total amount of various resources with the specifications of the virtual instances in the virtual instance cluster. When the total amount of available resources of any one resource in any one of the plurality of physical clusters is not less than the demand of the virtual instance cluster for the specification of the virtual instance on the any one resource, the any one of the plurality of physical clusters is determined as the first physical cluster.

[0134] Optionally, when the cloud management platform selects the first physical cluster for deploying the virtual instance cluster, the cloud management platform can further select the first physical cluster according to a preset scheduling policy. When a physical cluster can meet the preset scheduling policy, and the total amount of available resources of any one resource in the physical cluster is not less than the demand of the virtual instance cluster for the specification of the virtual instance on the any one resource, the physical cluster is determined as the first physical cluster. The cloud management platform can select the scheduling policy according to application requirements. For example, the cloud management platform can select an affinity scheduling policy. The affinity scheduling policy means that the virtual instance cluster and the hot-standby virtual instance are preferentially deployed in the same physical cluster. Then, the cloud management platform selects the first physical cluster that can provide the specifications of the virtual instances in the virtual instance cluster from the plurality of physical clusters, including: when the cloud management platform has deployed a first hot-standby virtual instance using the first image file in the plurality of physical clusters, the cloud management platform acquires the physical cluster in which the first hot-standby virtual instance is located, and when the idle resources of the physical cluster in which the first hot-standby virtual instance is located can meet the specifications of the virtual instances in the virtual instance cluster, the cloud management platform determines the physical cluster in which the first hot-standby virtual instance is located as the first physical cluster, and creates the virtual instance cluster in the first physical cluster based on the first image file. Accordingly, as shown in FIG. 6, step 403 includes 4031, when the cloud management platform has deployed a first hot-standby virtual instance using the first image file in the plurality of physical clusters, the cloud management platform acquires the physical cluster in which the first hot-standby virtual instance is located, and when the idle resources of the physical cluster in which the first hot-standby virtual instance is located can meet the specifications of the virtual instances in the virtual instance cluster, the cloud management platform determines the physical cluster in which the first hot-standby virtual instance is located as the first physical cluster, and creates the virtual instance cluster in the first physical cluster based on the first image file. By using the affinity scheduling policy to schedule resources, the virtual instance cluster and the hot-standby virtual instance cluster can be deployed in the same physical cluster, which can ensure the performance of the virtual instance cluster when the virtual instance cluster uses the hot-standby virtual instance cluster, and can avoid the same type of hot-standby virtual instances being scattered in a plurality of physical clusters, thereby further optimizing the use cost of the hot-standby resources.

[0135] According to the foregoing description, the cloud management platform records the information of the virtual instance cluster that has been created, and then, when determining the first physical cluster, the cloud management platform can query the information of all the virtual instance clusters that have been created according to the identifier of the first image file, to obtain the physical cluster in which the first hot-standby virtual instance using the first image file is located, and then determine the physical cluster in which the first hot-standby virtual instance is located as the first physical cluster, in the case that the idle resources of the physical cluster in which the first hot-standby virtual instance is located can meet the specifications of the virtual instances in the virtual instance cluster. The process of determining the first physical cluster includes two operations, one is to determine that the idle resources of the physical cluster can meet the specifications of the virtual instances in the virtual instance cluster, and the other is to determine that the first hot-standby virtual instance is deployed in the physical cluster. In the process of determining the first physical cluster, the cloud management platform can determine the execution order of the two operations according to the application requirements, and the embodiments of the present application do not make specific limitations thereon. For example, the cloud management platform can first determine the physical clusters in which all the first hot-standby virtual instances using the first image file are located, and then determine whether the idle resources of the physical cluster can meet the specifications of the virtual instances in the virtual instance cluster. Alternatively, the cloud management platform can first find all the candidate physical clusters in which the idle resources can meet the specifications of the virtual instances in the virtual instance cluster, and then determine the physical cluster in which the first hot-standby virtual instance is deployed in the candidate physical clusters. In addition, there can be multiple physical clusters in which the idle resources can meet the specifications of the virtual instances in the virtual instance cluster and in which the first hot-standby virtual instance is deployed. At this time, the cloud management platform needs to select one from the multiple physical clusters as the first physical cluster after the two operations. The selection principle can be determined according to the application requirements. For example, the cloud management platform can select the one in which the first hot-standby virtual instance is deployed closest to the tenant as the first physical cluster. Alternatively, the cloud management platform can select the one in which the first hot-standby virtual instance is deployed with the most idle resources as the first physical cluster. Alternatively, in the case that the multiple physical clusters can achieve basically the same performance, the cloud management platform can randomly select one from the multiple physical clusters as the first physical cluster.

[0136] It should be noted that when the cloud management platform adopts the affinity scheduling strategy, the idle resources of the physical cluster using the first image file that can be deployed can not be able to meet the specifications of the virtual instances in the virtual instance cluster. At this time, the idle resources of the physical cluster should be able to meet the specifications of the virtual instances in the virtual instance cluster as the priority principle. That is, when the cloud management platform selects the first physical cluster, the idle resources of the first physical cluster need to be prioritized to meet the specifications of the virtual instances in the virtual instance cluster, even if the first physical cluster is not deployed with the physical cluster using the first image file. In addition, according to the description in step 402, when the tenant indicates that the virtual instance cluster it needs to create shares the hot backup resources with other virtual instance clusters, step 402 is executed. Therefore, the cloud management platform determines the first physical cluster according to the deployment of the first hot backup virtual instance only when the virtual instance creation request indicates that the hot backup virtual instance is shared with other tenants. In the case where the virtual instance creation request does not indicate that the hot backup virtual instance is shared with other tenants, the cloud management platform does not need to refer to the deployment of the first hot backup virtual instance to determine the first physical cluster.

[0137] Step 404, when the first hot backup virtual instance using the first image file has been deployed in the plurality of physical clusters, the cloud management platform configures the first hot backup virtual instance as the hot backup virtual instance of the virtual instance cluster.

[0138] After the cloud management platform completes the creation of the virtual instance cluster, the cloud management platform can configure the first hot backup virtual instance as the hot backup virtual instance of the virtual instance cluster. It should be noted that according to the description in step 402, when the tenant selects the virtual instance cluster it needs to create to share hot backup resources with other virtual instance clusters, step 402 is executed. Therefore, the cloud management platform configures the first hot backup virtual instance as the hot backup virtual instance of the virtual instance cluster only when the virtual instance creation request indicates that the hot backup virtual instance is shared with other tenants. Correspondingly, when the virtual instance creation request indicates that the hot backup virtual instance is not shared with other tenants, the cloud management platform needs to create a hot backup virtual instance for the virtual instance cluster based on the first image file, and configure the created hot backup virtual instance as the hot backup virtual instance of the virtual instance cluster. Wherein, the plurality of configurations of the created hot backup virtual instance correspond to the plurality of configurations of the virtual instances in the virtual instance cluster one by one. For the implementation process of the cloud management platform creating a hot backup virtual instance for the virtual instance cluster based on the first image file, please refer to the related description of the cloud management platform creating a virtual instance cluster based on the first image file, which will not be described here.

[0139] In addition, in the case where the virtual instance creation request indicates that the hot backup virtual instance is shared with other tenants, the deployed first hot backup virtual instance can not be able to meet the hot backup capability required by the virtual instance cluster. Therefore, as shown in FIG. 7, the resource allocation process can further include the following step 405.

[0140] At step 405, when the first hot-standby virtual instance available for the virtual instance cluster fails to meet the hot-standby capability required by the virtual instance cluster, the cloud management platform creates a second hot-standby virtual instance based on the first image file, and configures the second hot-standby virtual instance as a hot-standby virtual instance of the virtual instance cluster, so that the hot-standby virtual instances configured for the virtual instance cluster meet the hot-standby capability required by the virtual instance cluster.

[0141] In an example, since the multiple configurations of the hot-standby virtual instance need to be the same as the multiple configurations of the virtual instances in the virtual instance cluster, the hot-standby capability required by the virtual instance cluster can be represented by the total number of the hot-standby virtual instances. Accordingly, when the first hot-standby virtual instance available for the virtual instance cluster fails to meet the hot-standby capability required by the virtual instance cluster, it can be manifested that the total number of the first hot-standby virtual instance available for the virtual instance cluster is less than the total number of the hot-standby virtual instances required by the virtual instance cluster. At this time, before creating the second hot-standby virtual instance, the cloud management platform needs to first obtain the total number of the second hot-standby virtual instances to be created, and then create the same number of second hot-standby virtual instances, and configure the second hot-standby virtual instances as the hot-standby virtual instances of the virtual instance cluster. Alternatively, the hot-standby capability required by the virtual instance cluster is determined by the cloud management platform according to a preset rule, or indicated by the virtual instance creation request. For example, when the tenant indicates the total number of the hot-standby virtual instances required by the virtual instance cluster in the virtual instance creation request, the total number indicated by the virtual instance creation request is determined as the total number of the hot-standby virtual instances required by the virtual instance cluster. When the tenant does not indicate the total number of the hot-standby virtual instances required by the virtual instance cluster in the virtual instance creation request, the cloud management platform can determine the total number of the hot-standby virtual instances required by the virtual instance cluster according to the total number of the working virtual instances in the virtual instance cluster, and according to the allocation ratio of the working virtual instances to the hot-standby virtual instances. The implementation process of the cloud management platform for creating the second hot-standby virtual instance based on the first image file is described in the relevant description of the cloud management platform for creating the virtual instance cluster based on the first image file, which is not repeated here.

[0142] In an implementation scenario, before performing the resource allocation process, the cloud management platform can first create the first image file required by the virtual instance cluster based on the indication of the tenant. As shown in FIG. 7, the method further includes steps 406 and 407.

[0143] At step 406, the cloud management platform receives a first image creation request of the tenant, and the first image creation request is used to indicate that a first image file is created using a first resource, and the first resource includes an operating system and a driver, or the first resource includes an operating system, a driver, and an application program for implementing the business of the tenant.

[0144] When the tenant needs to create an image file using the cloud management platform, the tenant can perform a specified operation on a client used by the tenant to trigger a first image creation request, so that the cloud management platform creates an image file for the tenant based on the first image creation request. In a possible implementation, the cloud management platform can provide an interactive interface to the tenant, and the tenant can trigger the first image creation request based on the interactive interface. After the tenant triggers the first image creation request, the cloud management platform can obtain the first image creation request through the interactive interface. Optionally, the interactive interface includes one or more of the following implementations: an API, an interactive template, and a configuration interface.

[0145] When the tenant performs the specified operation for triggering the first image creation request, the tenant also needs to indicate a first resource required for creating the first image file. Optionally, the first resource can be selected by the tenant from alternative resources provided by the cloud management platform. For example, the cloud management platform displays a resource list of selectable resources to the tenant, and the tenant selects the required first resource in the resource list. When the first resource includes multiple types of resources, the resource list includes multiple resource sub-tables divided according to the types of resources, and the tenant can select resources of corresponding types in each resource sub-table. The multiple types of resources are, for example, an operating system, a driver, and a running software. The cloud management platform can display an operating system sub-table, a driver sub-table, and a running software sub-table, so that the tenant selects an operating system required for creating the first image file in the operating system sub-table, selects a driver required for creating the first image file in the driver sub-table, and selects a running software required for creating the first image file in the running software sub-table. The cloud management platform can manage the operating system, the driver, and the running software according to names and versions. Similarly, the first resource can be a resource provided by the tenant. For example, the cloud management platform can provide an image file configuration interface to the tenant, and the tenant can fill in the names and versions of the operating system, the names and versions of the driver, and the names and versions of the running software required for creating the first image file in the configuration interface, to inform the cloud management platform of the first resource required by the tenant for creating the first image file. It should be noted that the first resource can optionally include a running software or not include a running software, and whether the first resource includes a running software can be selected by the tenant according to application requirements. For example, when the tenant wants to create a performance-type virtual instance based on the first image file, the tenant can select that the first resource includes a running software, and when the tenant wants to create a cost-type virtual instance based on the first image file, the tenant can select that the first resource does not include a running software.

[0146] In step 407, the cloud management platform obtains the first image file based on the first image creation request, and provides an identifier of the first image file to the tenant.

[0147] After receiving the first image creation request of the tenant, the cloud management platform can obtain the first image file based on the first resource. Optionally, after determining the information of the first resource, the cloud management platform can first query whether there is an image file created based on the first resource in the existing image files of the cloud management platform. For example, the cloud management platform can query the related information of the existing image files of the cloud management platform based on the name and version of the operating system, the name and version of the driver, and the name and version of the running software in the first resource, to obtain whether there is an image file generated based on the operating system with the same name and version, the driver with the same name and version, and the running software with the same name and version in the existing image files of the cloud management platform. When the related information of the image file indicates that there is an image file generated based on the operating system with the same name and version, the driver with the same name and version, and the running software with the same name and version, the cloud management platform does not need to generate the first image file based on the first resource, and can directly feed back the identification of the image file generated based on the operating system with the same name and version, the driver with the same name and version, and the running software with the same name and version to the tenant. When the related information of the image file indicates that there is no image file generated based on the operating system with the same name and version, the driver with the same name and version, and the running software with the same name and version, the cloud management platform needs to generate the first image file based on the first resource, and feed back the identification of the generated first image file to the tenant. It should be noted that when the first resource includes the operating system and the driver, when querying whether there is an image file created based on the first resource, it is not necessary to compare the name and version of the running software of the image file.

[0148] It should be noted that, since the mirror file of the cost-type high-availability cluster contains the operating system and the driver, and does not contain the running software, and the performance-type high-availability cluster further includes the running software compared with the cost-type high-availability cluster, the cost-type high-availability cluster can be compatible with the mirror file of the performance-type high-availability cluster to increase the sharing range of the hot-standby virtual instance. The cloud management platform can prompt the tenant to select whether to allow the mirror file of the cost-type high-availability cluster (also referred to as a cost-type mirror file) to be compatible with the mirror file of the performance-type high-availability cluster (also referred to as a performance-type mirror file), for example, the cloud management platform prompts the tenant to select in the mirror file configuration interface or the configuration interface of the virtual instance cluster. When the first mirror creation request indicates to create the cost-type mirror file, and indicates that the cost-type mirror file is compatible with the performance-type mirror file, when the cloud management platform queries whether there is the mirror file created based on the first resource in the mirror files already existing in the cloud management platform, if the related information of the mirror file indicates that there is the mirror file generated based on the operating system with the same name and the same version and the driver with the same name and the same version, it is determined that there is the performance-type mirror file created based on the first resource in the mirror files already existing in the cloud management platform, and the performance-type mirror file can be compatible with the cost-type mirror file. Correspondingly, after the virtual instance is started based on the performance-type mirror file, the running software preinstalled in the performance-type mirror file can be uninstalled first, and then the running software actually required by the virtual instance can be installed from the file system. In this way, although the time required for software uninstallation is increased, since the sharing range is larger, the cost of the hot-standby node can be further reduced.

[0149] In an implementation manner, the functions of the cloud management platform of the present application can be implemented through multiple components. A possible implementation manner thereof is exemplified below. FIG. 8 is a logical schematic diagram of a cloud management platform provided by an embodiment of the present application. As shown in FIG. 8, the functions of the cloud management platform can be implemented through the following multiple components: a mirror management module, a file system, a service management and control plane, a resource scheduling module, a hot-standby management module, a cold-standby management module, a node controller, and a network controller. The hot-standby management module further includes a hot-standby resource management unit and a hot-replacement task orchestration unit. The cold-standby management module further includes a cold-standby resource management unit and a resource reconstruction unit. To ensure the simplicity of the description, the functions of these components are briefly described below, and the specific working principles of these components can be referred to the related descriptions of the corresponding functions in the method embodiments.

[0150] The mirror management module is configured to create a mirror file using resources designated by the customer for creating the mirror file, and is responsible for version maintenance and other management operations of the mirror file. The resources for creating the mirror file can be selected by the customer from alternative resources provided by the mirror management module, or can be provided by the customer. The resources for creating the mirror file include an operating system and a driver, and can optionally include executable programs of running software required by a virtual instance.

[0151] The file system is configured to provide the customer with storage capability of executable programs of running software and data. For example, the file system is configured to store an operating system, a driver, and executable programs of running software. The type of the file system can be selected according to application requirements. For example, the file system used in the present application is an elastic file system.

[0152] The service management surface is configured to provide an interactive interface for the customer to use the high-availability super cluster service, and is responsible for orchestrating the execution of various resource life cycle operation tasks. The interactive interface can be provided in the form of a UI, an interactive module, or an API.

[0153] The resource scheduling module is configured to schedule resources for deploying virtual instances in the infrastructure managed by the cloud management platform according to scheduling requirements. For example, the resource scheduling module is configured to schedule computing nodes (i.e., nodes in FIG. 8) for deploying virtual instances in the computing nodes owned by the cloud management platform according to scheduling requirements. The computing nodes are, for example, servers.

[0154] The hot backup resource management unit is configured to manage the hot backup resources. For example, the hot backup resource management unit is configured to select a hot backup virtual instance from a plurality of hot backup virtual instances of a virtual instance cluster to replace a working virtual instance in the virtual instance cluster, and to load-share the hot backup virtual instances. The resources owned by the cloud management platform can be divided into an idle resource pool, a cold backup resource pool, a hot backup resource pool, and a virtual instance resource pool according to the usage state. The virtual instance resource pool includes a plurality of virtual instance clusters. The hot backup resource pool includes hot backup virtual instances configured for the virtual instance clusters. The resources in the idle resource pool are all in an idle state. When it is necessary to create a virtual instance cluster or to configure a hot backup virtual instance for a virtual instance cluster, a resource for deploying a virtual instance can be selected from the idle resource pool. The cold backup resource pool includes cold backup resources. The cold backup resources are also essentially in an idle state, but they are usually marked as unavailable. The cold backup resources are dedicated to cold backup replacement scenarios, and the unavailable mark of the cold backup resources is removed after the cold backup resources are used for replacement. The purpose of setting the cold backup resource pool is to avoid the situation that there is no cold backup resource available in a business volume increase scenario, so the cold backup resources are usually marked as unavailable. Therefore, when it is necessary to supplement hot backup resources, the idle resources or the cold backup resources can be selected to supplement the hot backup resources, and the idle resources are preferentially used for supplementing the hot backup resources. At the same time, in order to ensure that the cold backup resources are sufficient, the cold backup resources need to be supplemented at an appropriate time after the cold backup resources are used, and if the cold backup resources cannot be supplemented for a long time, an operation and maintenance personnel needs to be involved through an alarm. When the cold backup resources are used to replace the working virtual instances, the cold backup resources are essentially re-created on a server, and the created virtual instances are configured, started, and installed with necessary software according to the configuration of the working virtual instances to be replaced, and then the created virtual instances are used to replace the working virtual instances to be replaced. Due to this feature, the cold backup resources can be shared by all logical clusters in the same physical cluster, so that the customers or related services do not need to or need to less bear additional costs.

[0155] The hot replacement task orchestration unit is configured to control the service management surface and the cold backup management module to use the hot backup virtual instances to replace the working virtual instances and to supplement the hot backup virtual instances. For example, after the hot backup virtual instances are used to replace the working virtual instances, the number of the hot backup virtual instances of the virtual instance cluster is reduced, and in order to ensure that there are sufficient hot backup resources available for the virtual instance cluster, the hot backup virtual instances need to be added to the virtual instance cluster, so that the total number of the hot backup virtual instances of the virtual instance cluster is maintained constant.

[0156] The cold backup resource management unit is configured to manage the idle resource pool and the cold backup resource pool. The cold backup resources are equivalent to high availability (HA) reservations for non-virtual instance clusters.

[0157] The resource rebuilding unit is mainly used in the scenario of supplementing the hot backup resource. The resource rebuilding unit is used to rebuild the hot backup virtual instance according to the metadata of the hot backup virtual instance to be supplemented, and supplement the rebuilt hot backup virtual instance to the hot backup resource pool. After the hot backup virtual instance is used to replace the working virtual instance, the hot backup virtual instance used to replace the working virtual instance is the hot backup virtual instance to be supplemented. The metadata of the virtual instance is the relevant data required for managing the virtual instance. For example, the metadata of the virtual instance includes the name, identity (ID) and internet protocol (IP) address of the virtual instance.

[0158] The node controller is used to connect the virtualization layer (also referred to as the virtual machine manager) or the hardware layer, and perform operations such as creating a virtual instance according to the resource scheduling result of the resource scheduling module.

[0159] The network controller is used to configure the network for the virtual instance cluster.

[0160] The following takes the cloud management platform as an example to further describe the implementation process of the resource allocation process. FIG. 9 is a schematic diagram of the implementation process of the resource allocation process when the functions of the cloud management platform are implemented by the components shown in FIG. 8. As shown in FIG. 9, the resource allocation process includes steps 901 to 907.

[0161] In step 901, the image management module receives a first image creation request of a tenant, obtains a first image file based on the first image creation request, and provides an identifier of the first image file to the tenant.

[0162] In an implementation manner, after the service management and control plane receives the first image creation request sent by the client used by the tenant, the service management and control plane sends the first image creation request to the image management module. According to the foregoing description, according to the existing image files of the cloud management platform, the first image file is obtained by the image management module based on the first resource creation, or is an existing image file in the cloud management platform. Then, the image management module obtains the first image file by creation or searching from the existing image files of the cloud management platform. After the image management module obtains the first image file, the image management module provides an identifier of the first image file to the tenant, so that the tenant uses the first image file. For the image file used to create the performance-type virtual instance cluster, the first resource indicated by the tenant needs to include the name and version of the operating system, the driver and the running software. For the image file used to create the cost-type virtual instance cluster, the first resource indicated by the tenant needs to include the name and version of the operating system and the driver, and optionally does not include the name and version of the running software. The running software can be configured in the elastic file system, and the software installation package other than the operating system and the driver can be saved in the elastic file system.

[0163] Step 902, the service management surface receives a virtual instance creation request of a tenant, the virtual instance creation request is used to indicate the specification of creating a virtual instance cluster and a virtual instance in the virtual instance cluster based on a first image file.

[0164] The virtual instance creation request carries the identification of the image file required by the virtual instance cluster and the specification of the virtual instance in the virtual instance cluster, and the virtual instance creation request also carries information indicating the start of the cluster high availability capability. The virtual instance creation request can optionally carry information indicating whether the virtual instance cluster is performance-based or cost-based, information indicating whether the hot standby virtual instance of the virtual instance cluster is exclusive to the virtual instance cluster, and information indicating the number of hot standby virtual instances required by the virtual instance cluster. When the virtual instance creation request does not carry information indicating whether the virtual instance cluster is performance-based or cost-based, the service management surface defaults the virtual instance cluster to be cost-based. When the virtual instance creation request does not carry information indicating whether the hot standby virtual instance of the virtual instance cluster is exclusive to the virtual instance cluster, the service management surface defaults the hot standby virtual instance of the virtual instance cluster to not be exclusive to the virtual instance cluster. When the virtual instance creation request does not carry information indicating the number of hot standby virtual instances required by the virtual instance cluster, the service management surface defaults the number of hot standby virtual instances required by the virtual instance cluster to be the result of rounding up the quotient of the total number of virtual instances in the virtual instance cluster and eight.

[0165] Step 903, the service management surface inquires whether there is a hot standby virtual instance using the first image file in the hot standby resource management unit, and receives information returned by the hot standby resource management unit indicating the first physical cluster deploying the hot standby virtual instance using the first image file.

[0166] When there can be multiple first physical clusters deploying the existing hot standby virtual instance using the first image file, the hot standby resource management returns a list including information of multiple first physical clusters. It should be noted that when the virtual instance creation request indicates that the hot standby virtual instance of the virtual instance cluster is exclusive to the virtual instance cluster, step 903 does not need to be performed, and the service management surface directly performs step 904 based on the virtual instance creation request.

[0167] Step 904, the service management surface sends a scheduling request to the resource scheduling module, and receives a scheduling result sent by the resource scheduling module, the scheduling request is used to request the resource scheduling module to schedule a physical cluster for deploying the virtual instance cluster, and the scheduling result indicates the identification of the candidate physical cluster for deploying the virtual instance cluster.

[0168] The scheduling request indicates resources and resource amounts required by the virtual instance cluster. After receiving the scheduling request, the resource scheduling module searches for a physical cluster with idle resources capable of satisfying the scheduling request from the multiple physical clusters managed by the resource scheduling module according to the resources and resource amounts indicated by the scheduling request, and feeds back one or more physical clusters with idle resources capable of satisfying the scheduling request to the service control plane. It should be noted that when step 904 is performed, the scheduling request can optionally declare a priority for scheduling a physical cluster with a hot-standby virtual instance using the first image file in accordance with the affinity scheduling principle. When the idle resources of the physical cluster with a hot-standby virtual instance using the first image file and the physical cluster without a hot-standby virtual instance using the first image file can both satisfy the scheduling request, the scheduling result indicates that the virtual instance cluster is deployed in the physical cluster with a hot-standby virtual instance using the first image file (the first physical cluster).

[0169] In step 905, the service control plane inquires the hot-standby resource management unit whether there are enough available hot-standby virtual instances, and receives feedback from the hot-standby resource management unit.

[0170] When the hot-standby resource management unit feeds back that there are not enough available hot-standby virtual instances, the hot-standby resource management unit determines the number of hot-standby virtual instances that need to be additionally created according to a preset rule or input of the tenant, and feeds back the number of hot-standby virtual instances that need to be additionally created to the service control plane. When there are enough available hot-standby virtual instances, the hot-standby resource management unit feeds back to the service control plane that there are enough available hot-standby virtual instances, to indicate that no hot-standby virtual instance needs to be additionally created for the virtual instance cluster. Optionally, when there are not enough available hot-standby virtual instances, the hot-standby resource management unit can also allocate an identifier to the hot-standby virtual instances that need to be additionally created, and feed back the identifier of the hot-standby virtual instances that need to be additionally created to the service control plane. Wherein, there are not enough available hot-standby virtual instances means that there is no existing hot-standby virtual instance using the first image file available for the virtual instance cluster, or the total number and / or performance of the existing hot-standby virtual instances using the first image file cannot fully meet the demand of the virtual instance cluster for hot-standby virtual instances. If the resource scheduling module performs resource scheduling based on the affinity scheduling strategy, the service control plane inquires whether there are enough available hot-standby virtual instances in the physical cluster indicated by the scheduling result of the hot-standby resource management unit.

[0171] In step 906, the service control plane configures cluster network for the physical cluster used to deploy the virtual instance cluster according to the scheduling result by calling the network controller, and also needs to call the network controller to configure hyperplane network when the virtual instance cluster is a supernode cluster.

[0172] Step 907, the service management plane calls the node controller to create the virtual instance cluster and configure the hot-standby virtual instance for the virtual instance cluster according to the scheduling result and the feedback result of the hot-standby resource management unit on whether the hot-standby resource is sufficient.

[0173] When the hot-standby resource management unit feeds back that the hot-standby resource is sufficient, the node controller needs to create the virtual instance cluster in the physical cluster used for deploying the virtual instance cluster, and configure the existing hot-standby virtual instance using the first image file for the virtual instance cluster. As shown in FIG. 9, the created virtual instance cluster is virtual instance cluster 1 in FIG. 9, and its hot-standby virtual instance is hot-standby 1 in FIG. 9. When the hot-standby resource management unit feeds back that there is no sufficient hot-standby virtual instance, the node controller also needs to create the hot-standby virtual instance of the virtual instance cluster, and configure the created hot-standby virtual instance for the virtual instance cluster. When the affinity scheduling strategy is adopted, the node controller creates the virtual instance cluster and its hot-standby virtual instance in the physical cluster used for deploying the virtual instance cluster. When the affinity scheduling strategy is not adopted, the node controller creates the virtual instance cluster in the physical cluster used for deploying the virtual instance cluster, and selects the physical cluster used for deploying the hot-standby virtual instance according to the resource requirement of the hot-standby virtual instance. When the hot-standby resource management unit feeds back the identification of the hot-standby virtual instance that needs to be additionally created to the service management plane, the service management plane assigns the identification fed back by the hot-standby resource management unit to the created hot-standby virtual instance after creating the hot-standby virtual instance, so as to facilitate the hot-standby resource management to manage the created hot-standby virtual instance based on the identification. When the hot-standby resource management unit does not feed back the identification of the hot-standby virtual instance that needs to be additionally created to the service management plane, the service management plane assigns an identification to the hot-standby virtual instance after creating the hot-standby virtual instance, and feeds back the assigned identification to the hot-standby resource management unit.

[0174] According to the foregoing description, the virtual instance cluster can be a performance high-availability cluster or a cost high-availability cluster. When the virtual instance cluster is a performance high-availability cluster, since the first image file used to generate the virtual instance includes the entire content of the operating system, the driver and the running software, the virtual instance cluster can enter the available state after the cloud management platform starts the virtual instance cluster based on the first image file. When the virtual instance cluster is a cost high-availability cluster, since the first image file used to generate the virtual instance does not include the running software of the virtual instance cluster, the cloud management platform needs to mount the running software of the virtual instance to the virtual instance and configure the related environment variables for the virtual instance after starting the virtual instance based on the first image file, so as to make the virtual instance enter the available state.

[0175] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of steps 901 to 907 described above can refer to the corresponding content in steps 401 to 407 described above, and will not be described herein again.

[0176] The implementation process of the node upgrade flow is described below. The upgrade of the nodes in the virtual instance cluster includes updating one or more combinations of the following: the operating system, the driver and the running software. Since the image file of the virtual instance cluster needs to include the operating system and the driver, and optionally the running software in the virtual instance cluster, it can be seen that except for the scenario of upgrading only the running software in the virtual instance cluster, other scenarios of upgrading the virtual instance cluster can be implemented by replacing the image file of the virtual instance cluster. Therefore, the node upgrade scenarios can be summarized as the following two scenarios: the first node upgrade scenario is to upgrade the virtual instance cluster by replacing the image file of the virtual instance cluster, and the second node upgrade scenario is to upgrade only the running software in the virtual instance cluster. The implementation process of the first node upgrade scenario is described below.

[0177] FIG. 10 is a flowchart of an implementation process of a node upgrade flow according to an embodiment of the present application. As shown in FIG. 10, the node upgrade flow includes steps 1001 to 1004.

[0178] In step 1001, the cloud management platform receives an image replacement request of a tenant, and the image replacement request is used to indicate that the image file used by the virtual instance cluster is replaced by a second image file.

[0179] When the tenant needs to replace the image file used by the virtual instance cluster, the tenant can perform a specified operation on the client used by the tenant to trigger the image replacement request, so that the cloud management platform replaces the image file used by the virtual instance cluster with the second image file based on the image replacement request for the tenant. In a possible implementation manner, the cloud management platform can provide an interactive interface to the tenant, and the tenant can trigger the image replacement request based on the interactive interface. After the tenant triggers the image replacement request, the cloud management platform can obtain the image replacement request through the interactive interface. Optionally, the interactive interface includes one or more of the following implementation manners: API, interactive template and UI.

[0180] The tenant also needs to specify the identifier of the virtual instance cluster whose image file needs to be replaced and the identifier of the second image file after the virtual instance cluster is replaced when triggering the image replacement request. In a possible implementation, the cloud management platform can provide a configuration interface of the virtual instance cluster for the tenant, and the tenant can specify the second image file after the virtual instance cluster is replaced in the configuration interface of the virtual instance, and click submit after the configuration is completed. The submit operation triggers the client used by the tenant to send an image replacement request to the cloud management platform, and the image replacement request carries the identifier of the virtual instance cluster whose image file needs to be replaced and the identifier of the second image file after the virtual instance cluster is replaced. For example, FIG. 5 is a schematic diagram of a configuration interface of a virtual instance cluster provided by an embodiment of the present application. As shown in FIG. 5, the configuration interface of the virtual instance cluster includes a plurality of configuration items. One of the configuration items is used to indicate the image file of the virtual instance cluster. When the tenant needs to replace the image file of a certain virtual instance cluster, the tenant can access the configuration interface of the virtual instance cluster and input the identifier of the image file that needs to be replaced in the configuration item used to indicate the image file. After the tenant completes the input, the tenant can trigger the image replacement request by clicking the submit button in the configuration interface.

[0181] In step 1002, the cloud management platform replaces the image file used by the virtual instance cluster with the second image file based on the image replacement request.

[0182] The replacement of the image file used by the virtual instance cluster with the second image file can be implemented by restarting the virtual instance cluster using the second image file. When the image file of the virtual instance cluster includes the running software of the virtual instance cluster, after the cloud management platform restarts the virtual instance cluster using the second image file, the virtual instance cluster can enter an available state, and the task of upgrading the virtual instance cluster by replacing the image file is completed.

[0183] In step 1003, the cloud management platform queries whether a third hot-standby virtual instance using the second image file has been deployed in the plurality of physical clusters.

[0184] For implementation process of step 1003, refer to the implementation process of step 402, which will not be described herein.

[0185] In step 1004, the cloud management platform switches the hot-standby virtual instance of the virtual instance cluster to the third hot-standby virtual instance in the case that the third hot-standby virtual instance using the second image file has been deployed in the plurality of physical clusters.

[0186] Since the configuration of the hot-standby virtual instance of the virtual instance cluster needs to be consistent with the configuration of the working virtual instance in the virtual instance cluster, after the image file used by the working virtual instance in the virtual instance cluster is replaced with the second image file, the hot-standby virtual instance of the virtual instance cluster also needs to be upgraded to a hot-standby virtual instance using the second image file. In the case where a third hot-standby virtual instance using the second image file has been deployed in multiple physical clusters, the hot-standby virtual instance of the virtual instance cluster can be switched to the third hot-standby virtual instance, so that the virtual instance cluster after replacing the second image file shares the third hot-standby virtual instance with other virtual instance clusters, thereby reducing the use cost of hot-standby resources. Similar to step 404, switching the hot-standby virtual instance of the virtual instance cluster to the third hot-standby virtual instance also needs to be performed when the tenant selects that the virtual instance cluster shares the hot-standby resource with other virtual instance clusters. Conversely, when the virtual instance creation request indicates that the hot-standby virtual instance is not shared with other virtual instance clusters, the cloud management platform needs to create a hot-standby virtual instance for the virtual instance cluster based on the second image file, and configure the created hot-standby virtual instance as the hot-standby virtual instance of the virtual instance cluster. Alternatively, the first image file of the hot-standby virtual instance originally used by the virtual instance cluster is replaced with the second image file to upgrade the hot-standby virtual instance originally used by the virtual instance cluster. Among them, the multiple configurations of the created hot-standby virtual instance correspond to the multiple configurations of the working virtual instance in the virtual instance cluster one by one. For the implementation process of the cloud management platform creating a hot-standby virtual instance for the virtual instance cluster based on the second image file, please refer to the related description of the cloud management platform creating a virtual instance cluster based on the first image file, which will not be repeated here.

[0187] In addition, in the case where the virtual instance creation request indicates that the hot-standby virtual instance is shared with other tenants, the deployed second hot-standby virtual instance can not meet the hot-standby capability required by the virtual instance cluster. Then, as shown in FIG. 11, the node upgrade process can also optionally include step 1005.

[0188] Step 1005, when the third hot-standby virtual instance available for the virtual instance cluster cannot meet the hot-standby capability required by the virtual instance cluster, the cloud management platform creates a fourth hot-standby virtual instance based on the second image file, and configures the fourth hot-standby virtual instance as the hot-standby virtual instance of the virtual instance cluster, so that the hot-standby virtual instance configured for the virtual instance cluster meets the hot-standby capability required by the virtual instance cluster.

[0189] For the implementation process of step 1005, please refer to the implementation process of step 405 accordingly, which will not be repeated here.

[0190] In a possible manner, when the cloud management platform deploys the virtual instance cluster and its hot-standby virtual instance by using an affinity scheduling strategy, the node upgrade process further includes the following steps 1006 and 1007, as shown in FIG. 12.

[0191] Step 1006: In a case where the cloud management platform has deployed a third hot-standby virtual instance using a second image file in a plurality of physical clusters, the cloud management platform obtains a second physical cluster in which the third hot-standby virtual instance is located.

[0192] For implementation procedures of the step 1006, reference can be made to the implementation procedures of the step 403, and details are not described herein again.

[0193] Step 1007: In a case where idle resources of the second physical cluster can meet the specifications of virtual instances in the virtual instance cluster, the cloud management platform migrates the virtual instance cluster to the second physical cluster.

[0194] When the cloud management platform deploys the virtual instance cluster and its hot-standby virtual instance by using the affinity scheduling strategy, the virtual instance cluster and its hot-standby virtual instance need to be deployed in the same physical cluster. Therefore, after the second physical cluster in which the third hot-standby virtual instance is located is determined, in a case where idle resources of the second physical cluster can meet the specifications of virtual instances in the virtual instance cluster, the cloud management platform can optionally migrate the virtual instance cluster to the second physical cluster. Optionally, the cloud management platform can optionally migrate the virtual instance cluster to the second physical cluster by using a cold migration manner. The cold migration of the virtual instance cluster to the second physical cluster refers to redeploying the virtual instance cluster in the second physical cluster, and then deleting the virtual instance cluster in the first physical cluster.

[0195] In an implementation scenario, before the node upgrade process is performed, the cloud management platform can first create a second image file after the virtual instance cluster is replaced based on an indication of a tenant. As shown in FIG. 12, the method further includes the following steps 1008 and 1009.

[0196] Step 1008: The cloud management platform receives a second image creation request of the tenant, and the second image creation request is used to indicate that a second image file is created by using second resources, the second resources including an operating system and a driver, or the second resources including an operating system, a driver, and an application program used to implement a business of the tenant.

[0197] For implementation procedures of the step 1008, reference can be made to the implementation procedures of the step 406, and details are not described herein again.

[0198] Step 1009: The cloud management platform obtains the second image file based on the second image creation request, and provides an identifier of the second image file to the tenant.

[0199] The implementation process of step 1009 can refer to the implementation process of step 407 for details, which will not be repeated here.

[0200] The implementation process of the node upgrade flow will be further described below by taking, as an example, the function of the cloud management platform being implemented by the multiple components shown in FIG. 8. FIG. 13 is a schematic diagram of the implementation process of implementing node upgrade by instructing to replace the image file of the virtual instance cluster when the function of the cloud management platform is implemented by the multiple components shown in FIG. 8. As shown in FIG. 13, the node upgrade flow includes the following steps 1301 to 1310.

[0201] In step 1301, the image management module receives a second image creation request of a tenant, obtains a second image file based on the second image creation request, and provides an identifier of the second image file to the tenant.

[0202] In an implementation manner, after the service management and control plane receives the second image creation request sent by the client used by the tenant, the service management and control plane sends the second image creation request to the image management module. According to the foregoing description, according to the existing image file of the cloud management platform, the second image file is obtained by the image management module based on the second resource creation, or is an existing image file in the cloud management platform. The image management module obtains the second image file by creation or searching from the existing image file of the cloud management platform. After the image management module obtains the second image file, the image management module provides an identifier of the second image file to the tenant, so that the tenant uses the first image file. For the image file used to create the performance-type virtual instance cluster, the second resource indicated by the tenant needs to include the name and version of the operating system, the driver, and the running software. For the image file used to create the cost-type virtual instance cluster, the second resource indicated by the tenant needs to include the name and version of the operating system and the driver, and optionally does not include the name and version of the running software. The running software can be configured in the elastic file system, and the software installation package other than the operating system and the driver can be saved in the elastic file system.

[0203] In step 1302, the service management and control plane receives an image replacement request of a tenant, and the image replacement request is used to instruct to replace the image file used by the virtual instance cluster with the second image file.

[0204] The image replacement request carries an identifier of the virtual instance cluster whose image file needs to be replaced and an identifier of the second image file. After receiving the image replacement request, the service management and control plane can call the logical cluster upgrade interface of the cloud management platform for the tenant, so as to upgrade all virtual instances in the virtual instance cluster.

[0205] In step 1303, the service management and control plane receives a shutdown request of a tenant, and shuts down the virtual instance cluster based on the shutdown request.

[0206] When the tenant triggers the image replacement request, the tenant can also trigger a shutdown request to instruct the service management plane to shut down the virtual instance cluster during the process of replacing the image file for the virtual instance cluster. It should be noted that the tenant can also not trigger the shutdown request. For example, since replacing the image file of the virtual instance cluster requires shutting down the virtual instance cluster, after receiving the image replacement request, the service management plane can automatically shut down the virtual instance cluster.

[0207] Step 1304: The service management plane inquires the resource scheduling module whether the physical cluster where the virtual instance cluster is located is exclusively used by the virtual instance cluster, and receives feedback from the resource scheduling module. When the physical cluster where the virtual instance cluster is located is not exclusively used by the virtual instance cluster, step 1305 is performed; when the physical cluster where the virtual instance cluster is located is exclusively used by the virtual instance cluster, step 1310 is performed.

[0208] If the resource scheduling module schedules resources based on the affinity scheduling strategy, after receiving the image replacement request, the service management plane needs to first inquire the resource scheduling module whether the physical cluster where the virtual instance cluster is located is exclusively used by the virtual instance cluster. The physical cluster exclusively used by the virtual instance cluster means that the current physical cluster only has the virtual instance cluster deployed therein. When the physical cluster is exclusively used by the virtual instance cluster, after replacing the image file of the virtual instance cluster with the second image file, there will be no virtual instance cluster using different image files in the current physical cluster. Therefore, the virtual instance cluster can continue to be deployed in the physical cluster, and the image file of the virtual instance cluster can be replaced with the second image file. At this time, there is no need to reschedule the virtual instance cluster to other physical clusters and migrate the virtual instance cluster to other physical clusters, so steps 1305 to 1309 can be directly skipped to perform step 1310. When the physical cluster is not exclusively used by the virtual instance cluster, according to the principle of affinity scheduling, the virtual instance cluster and the hot-standby virtual instance using the image file should all be the first image file deployed in the current physical cluster. In order to avoid the existence of virtual instance clusters using different image files in the same physical cluster, the virtual instance cluster whose image file needs to be replaced needs to be migrated to other physical clusters, and step 1305 is continued.

[0209] Step 1305: The service management plane inquires the hot-standby resource management unit whether there is a hot-standby virtual instance using the second image file, and receives information indicating a second physical cluster returned by the hot-standby resource management unit, the second physical cluster having the hot-standby virtual instance using the second image file deployed therein.

[0210] The implementation process of step 1305 can refer to the related description in step 903, and will not be described here.

[0211] Step 1306, the service management and control surface sends a scheduling request to the resource scheduling module, and receives a scheduling result sent by the resource scheduling module. The scheduling request is used to request the resource scheduling module to reschedule a physical cluster for deploying a virtual instance cluster. The scheduling result indicates an identifier of an alternative physical cluster for deploying the virtual instance cluster.

[0212] The implementation process of step 1306 can refer to the related description in step 904, and will not be described here.

[0213] Step 1307, the service management and control surface inquires the hot-standby resource management unit whether there are enough available hot-standby virtual instances for the virtual instance cluster, and receives feedback from the hot-standby resource management unit.

[0214] The implementation process of step 1307 can refer to the related description in step 905, and will not be described here.

[0215] Step 1308, according to the scheduling result, the service management and control surface calls the network controller to configure a cluster network for the physical cluster for deploying the virtual instance cluster. When the virtual instance cluster is a supernode cluster, the network controller also needs to be called to configure a supernetwork.

[0216] The implementation process of step 1308 can refer to the related description in step 906, and will not be described here.

[0217] Step 1309, according to the scheduling result and the feedback result of the hot-standby resource management unit on whether the hot-standby resource is enough available, the service management and control surface calls the node controller to create the virtual instance cluster and configure hot-standby virtual instances for the virtual instance cluster.

[0218] Since the virtual instance cluster is originally deployed in the first physical cluster, when the scheduling result indicates that the virtual instance cluster is scheduled to the second physical cluster, the virtual instance cluster needs to be migrated to the second physical cluster. Since the process of replacing the image file needs to shut down the virtual instance cluster, the migration here can be cold migration. The cold migration of the virtual instance cluster to the second physical cluster includes: first, redeploying the working virtual instances and the hot-standby virtual instances in the virtual instance cluster in the second physical cluster, and then deleting the working virtual instances in the virtual instance cluster in the first physical cluster. Redeploying the working virtual instances and the hot-standby virtual instances in the virtual instance cluster in the second physical cluster is equivalent to recreating the virtual instance cluster in the second physical cluster. As shown in FIG. 13, after migrating the virtual instance cluster 1 to the second physical cluster, the virtual instance cluster 2 is obtained, and the hot-standby virtual instance is hot-standby 2 in FIG. 13. The implementation process of step 1309 can refer to the related description in step 907, and will not be described here.

[0219] Step 1310, when determining that the virtual instance cluster after replacing the image file is still deployed in the first physical cluster, the service management plane calls the node controller to replace the image file of the virtual instance cluster with the second image file, and configures the hot-standby virtual instances for the virtual instance cluster.

[0220] According to the foregoing description, the virtual instance cluster after replacing the image file is still deployed in the first physical cluster includes two cases. The first case: the physical cluster where the virtual instance cluster is located is exclusively used by the virtual instance cluster. The second case: the physical cluster where the virtual instance cluster is located is not exclusively used by the virtual instance cluster, but the scheduling result of the resource scheduling module indicates that the virtual instance cluster is still deployed in the first physical cluster. When the second case occurs, it indicates that there are not enough idle resources for the hot-standby virtual instances using the second image file in other physical clusters, and there are still enough resources in the first physical cluster to issue the required number of hot-standby virtual instances for the virtual instance cluster.

[0221] When the virtual instance cluster after replacing the image file is still deployed in the first physical cluster due to the first case, the node controller can replace the image file of the original hot-standby virtual instance of the virtual instance cluster with the second image file when configuring the hot-standby virtual instances for the virtual instance cluster. During this process, the node controller can mark the hot-standby virtual instance as "upgrading" to avoid mis-scheduling requests for using the pre-upgrade image.

[0222] When the virtual instance cluster after replacing the image file is still deployed in the first physical cluster due to the second case, the node controller can first query whether there are enough available hot-standby virtual instances using the second image file in the first physical cluster when configuring the hot-standby virtual instances for the virtual instance cluster. When there are enough available hot-standby virtual instances using the second image file in the first physical cluster, the node controller configures the existing hot-standby virtual instances using the second image file in the first physical cluster as the hot-standby virtual instances for the virtual instance cluster. When there are not enough available hot-standby virtual instances using the second image file in the first physical cluster, the node controller also needs to create hot-standby virtual instances for the virtual instance cluster based on the second image file, and configure the created hot-standby virtual instances for the virtual instance cluster. For the implementation process, please refer to the related description in step 907.

[0223] It should be noted that the above process is an implementation process of upgrading the virtual instance cluster by replacing the image file of the virtual instance cluster. When the virtual instance cluster does not need to be upgraded by replacing the image file of the virtual instance cluster, the image file of the virtual instance cluster does not need to be updated when the virtual instance cluster is upgraded, and the content mounted on the virtual instance cluster can be upgraded. For example, when the running software of the cost-type virtual instance cluster needs to be upgraded, the image file of the virtual instance cluster does not need to be replaced. At this time, the node controller can unload the original software environment of the virtual instance cluster, and then mount the software environment of the upgraded running software to achieve the upgrade. Moreover, since the hot standby virtual instance of the cost-type virtual instance cluster does not contain the running software in the working virtual instance, the upgrade process of the cost-type virtual instance cluster only involves the upgrade of the working virtual instance in the virtual instance cluster, and does not involve the upgrade of the hot standby virtual instance of the virtual instance cluster. When the hot standby virtual instance is used to replace the working virtual instance in the virtual instance cluster, the hot standby virtual instance is directly mounted with a new software directory.

[0224] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of steps 1301 to 1310 can refer to the corresponding contents in the foregoing steps 1001 to 1009, which will not be described here.

[0225] FIG. 14 is a flowchart of an implementation process of a node replacement process according to an embodiment of the present application. As shown in FIG. 14, the node replacement process includes step 1401 and step 1402.

[0226] In step 1401, the cloud management platform receives an instance replacement request of a tenant, and the instance replacement request is used to indicate that a hot standby virtual instance of a virtual instance cluster is used to replace a specified virtual instance in the virtual instance cluster.

[0227] During the use of the virtual instance cluster by the tenant, the performance of the working virtual instance in the virtual instance cluster may be degraded, the working virtual instance may have a high risk of failure or may have failed, and the like. At this time, the tenant can trigger an instance replacement request to indicate that a hot standby virtual instance of a virtual instance cluster is used to replace a specified virtual instance in the virtual instance cluster, so as to ensure that the virtual instance cluster can work normally. In one possible implementation manner, the cloud management platform can provide an interactive interface to the tenant, and the tenant can trigger the instance replacement request by performing a specified operation based on the interactive interface. After the tenant triggers the instance replacement request, the cloud management platform can obtain the instance replacement request through the interactive interface. Optionally, the interactive interface includes one or more of the following implementation manners: API, interactive template, and UI.

[0228] When the tenant triggers the instance replacement request, the tenant also needs to specify the virtual instance cluster and the working virtual instance to be replaced in the virtual instance cluster. Therefore, the instance replacement request needs to carry the identifier of the virtual instance cluster and the identifier of the specified virtual instance to be replaced. In a possible implementation, the cloud management platform can provide the tenant with a management interface of the virtual instance cluster. The management interface displays the relevant information of all virtual instances in the virtual instance cluster and displays a plurality of management buttons for each virtual instance. The plurality of management buttons include a power-on button, a power-off button, a replacement button, and the like. The tenant clicks the replacement button of the working virtual instance to be replaced in the management interface, and then clicks a submit button. After that, the client used by the tenant sends an instance replacement request to the cloud management platform, and the instance replacement request carries the identifier of the virtual instance cluster and the identifier of the working virtual instance to be replaced. For example, FIG. 15 is a schematic diagram of a management interface of a virtual instance cluster provided by an embodiment of the present application. As shown in FIG. 15, the management interface of the virtual instance cluster aaaa displays the relevant information of all virtual instances (virtual instance 1 to virtual instance n) in the virtual instance cluster and displays a plurality of management buttons for each virtual instance, including a power-on button, a power-off button, a replacement button, and a configuration viewing button. The tenant can click the replacement button of the working virtual instance to be replaced in the management interface according to the requirement, so as to trigger the instance replacement request indicating to replace the working virtual instance.

[0229] Step 1402. The cloud management platform configures one of the hot-standby virtual instances of the virtual instance cluster as a working virtual instance in the virtual instance cluster and removes the specified virtual instance from the virtual instance cluster based on the instance replacement request.

[0230] After receiving the instance replacement request, the cloud management platform can execute the process of replacing the specified virtual instance with the hot-standby virtual instance. Since the virtual instance cluster usually has multiple hot-standby virtual instances, the cloud management platform needs to first select a hot-standby virtual instance from the multiple hot-standby virtual instances, then perform initialization and configuration preparation operations on the selected hot-standby virtual instance, then move the hot-standby virtual instance that has completed the preparation operations out of the hot-standby resource pool and add it as a working virtual instance of the virtual instance cluster, and move the specified virtual instance to be replaced out of the virtual instance cluster. The initialization and configuration preparation operations performed on the hot-standby virtual instance are to configure the hot-standby virtual instance as a working virtual instance that is exactly the same as the specified virtual instance to be replaced. The preparation operations include configuring the network of the hot-standby virtual instance, configuring the hot-standby virtual instance with the relevant information of the specified virtual instance to be replaced, synchronizing the information recorded in the specified virtual instance to be replaced to the hot-standby virtual instance, configuring the hot-standby virtual instance to have the same state as the specified virtual instance to be replaced, mounting relevant software for the hot-standby virtual instance according to the requirements of the virtual instance cluster, etc. It should be noted that when the virtual instance cluster is a cost-type high-availability cluster, since the image file of the hot-standby virtual instance does not include running software, the cloud management platform also needs to mount relevant software for the hot-standby virtual instance according to the requirements of the virtual instance cluster. Correspondingly, when the virtual instance cluster is a performance-type high-availability cluster, since the image file of the hot-standby virtual instance includes running software, the cloud management platform does not need to mount relevant software for the hot-standby virtual instance according to the requirements of the virtual instance cluster.

[0231] In a possible implementation, after the cloud management platform obtains the identifier of the virtual instance cluster in which the virtual instance to be replaced is located from the instance replacement request, the cloud management platform queries the relevant information of the virtual instance cluster according to the identifier to obtain the relevant information of all hot-standby virtual instances of the virtual instance cluster, and then selects a hot-standby virtual instance for replacing the specified virtual instance from the multiple hot-standby virtual instances according to a preset strategy. The preset strategy used by the cloud management platform to select the hot-standby virtual instance can be determined according to application requirements. For example, the preset strategy indicates that the hot-standby virtual instance with the best performance is selected from the multiple hot-standby virtual instances.

[0232] Optionally, after adding the hot-standby virtual instance as a working virtual instance of the virtual instance cluster, the cloud management platform can first feed back the hot-standby virtual instance information of the working virtual instance of the virtual instance cluster to the tenant to inquire whether the tenant uses the hot-standby virtual instance to replace the specified virtual instance, and only after receiving the consent indication of the tenant, the hot-standby virtual instance is used to replace the specified virtual instance. As shown in FIG. 16, the implementation process of step 1402 includes the following step 14021 and step 14022.

[0233] In step 14021, the cloud management platform configures one of the hot-standby virtual instances of the virtual instance cluster as a working virtual instance in the virtual instance cluster based on the instance replacement request, and feeds back information of the hot-standby virtual instance configured as the working virtual instance in the virtual instance cluster to the tenant.

[0234] After receiving the instance replacement request, the cloud management platform selects one hot-standby virtual instance from the plurality of hot-standby virtual instances, performs initialization and configuration and other preparation operations on the selected hot-standby virtual instance, moves the hot-standby virtual instance after the preparation operations out of the hot-standby resource pool, configures it as a working virtual instance of the virtual instance cluster, and feeds back information of the hot-standby virtual instance configured as the working virtual instance in the virtual instance cluster to the tenant, so as to instruct the tenant whether to replace the specified virtual instance with the selected hot-standby virtual instance. The cloud management platform feeds back the information of the hot-standby virtual instance configured as the working virtual instance in the virtual instance cluster to the tenant, which can facilitate the tenant to audit whether to replace the specified virtual instance with the selected virtual instance, or can facilitate the tenant to perform preparation work before replacement based on the selected virtual instance. For example, after receiving the information of the hot-standby virtual instance configured as the working virtual instance in the virtual instance cluster, the tenant can determine that the hot-standby virtual instance used to replace the specified virtual instance has been added to the virtual instance cluster, then migrates the service running in the specified virtual instance to the hot-standby virtual instance, and instructs to replace the specified virtual instance with the hot-standby virtual instance after the migration is completed. Optionally, the cloud management platform feeds back the information of the hot-standby virtual instance to the tenant, which can be achieved by sending a replacement response carrying the identifier of the hot-standby virtual instance to the client used by the tenant. Optionally, the replacement response can also carry indication information of one or more of the following contents: image file, network configuration or resource configuration used by the hot-standby virtual instance.

[0235] That is, the cloud management platform selects a target hot-standby virtual instance for replacing the specified virtual instance in the virtual instance cluster based on the instance replacement request, and after configuring the target hot-standby virtual instance after completing the preparation operation as a working virtual instance in the virtual instance cluster, does not automatically execute the operation of removing the specified virtual instance from the virtual instance cluster, but sends a message carrying the identification of the target hot-standby virtual instance to the tenant to wait for the tenant to actively trigger the operation of removing the specified virtual instance from the virtual instance cluster based on the message. For example, the high-availability logical cluster originally has 16 working virtual instances, and after configuring the target hot-standby virtual instance after completing the preparation operation as a working virtual instance in the virtual instance cluster, there are 17 working virtual instances in the high-availability cluster. At this time, the target hot-standby virtual instance has joined the high-availability logical cluster as a working virtual instance, and at this time the cloud management platform does not automatically execute the operation of removing the specified virtual instance from the virtual instance cluster, but sends a message carrying the information of the target hot-standby virtual instance to the tenant. After the target hot-standby virtual instance has joined the high-availability logical cluster as a working virtual instance, the customer can operate it.

[0236] Step 14022, the cloud management platform removes the specified virtual instance from the virtual instance cluster after receiving the replacement confirmation instruction of the tenant, and the replacement confirmation instruction is used to indicate that the specified virtual instance is replaced by the hot-standby virtual instance configured as a working virtual instance in the virtual instance cluster.

[0237] After the cloud management platform receives the replacement confirmation instruction of the tenant, it can be determined that the tenant agrees to replace the specified virtual instance with the selected hot-standby virtual instance, and then executes the operation of removing the specified virtual instance from the virtual instance cluster. For example, continue to take the example of step 14021, after the tenant receives the message sent by the cloud management platform to the tenant carrying the information of the target hot-standby virtual instance, if the tenant agrees to replace the specified virtual instance with the target hot-standby virtual instance, the tenant can call the pre-replacement confirmation interface to trigger the replacement confirmation instruction. The cloud management platform removes the specified virtual instance from the virtual instance cluster after receiving the replacement confirmation instruction. At this time, the total number of working virtual instances in the high-availability cluster of the tenant returns to 16. When the tenant does not agree to replace the specified virtual instance with the selected hot-standby virtual instance, the cloud management platform can perform a rollback operation to remove the target hot-standby virtual instance from the virtual instance cluster, and reselect a hot-standby virtual instance for replacing the specified virtual instance according to the above process until the tenant agrees to replace the specified virtual instance with the selected hot-standby virtual instance, or the tenant indicates to cancel the replacement operation.

[0238] From the above, the implementation process is equivalent to that, after receiving the instance replacement request, the cloud management platform first performs the preparation work required for replacement, after completing the preparation work, feeds back the relevant information of the hot backup virtual instance used for replacing the specified virtual instance to the tenant to inquire whether the tenant agrees to replace the specified virtual instance with the selected hot backup virtual instance, and after receiving the indication of the tenant indicating the confirmation of the replacement agreement, performs the real replacement operation. The process of the cloud management platform performing the preparation work required for replacement can be referred to as the process of performing the pre-replacement operation. The process of the cloud management platform feeding back the relevant information of the hot backup virtual instance used for replacing the specified virtual instance to the tenant and performing the replacement according to the indication of the tenant can be referred to as the process of performing the pre-replacement confirmation. Therefore, the node replacement flow including the step 14021 and the step 14022 is also referred to as the pre-replacement and pre-replacement confirmation flow.

[0239] Optionally, to ensure the sufficiency of the hot backup resources of the virtual instance cluster, after replacing the specified virtual instance with the hot backup virtual instance, the cloud management platform also needs to supplement the hot backup virtual instance for the virtual instance cluster to realize the automatic rotation of resources. As shown in FIG. 17, the node replacement flow further includes a step 1403.

[0240] In the step 1403, the cloud management platform selects a server in an idle state from the plurality of servers managed by the cloud management platform, and configures the hot backup virtual instance of the virtual instance cluster in the selected server based on the image file used by the virtual instance cluster.

[0241] According to the foregoing description, the resources owned by the cloud management platform can be divided into an idle resource pool, a cold backup resource pool, a hot backup resource pool, and a virtual instance resource pool according to the use state. The resources in the idle resource pool and the cold backup resource pool are both in an idle state, so when the cloud management platform needs to supplement the hot backup virtual instance, the server can be selected from the idle resource pool and the cold backup resource pool to configure the hot backup virtual instance of the virtual instance cluster. However, since the purpose of setting the cold backup resource pool is to avoid the situation that no cold backup resource is available in the scenario of increased business volume, when the hot backup resource needs to be supplemented, the server can be preferentially selected from the idle resource pool, and when there is no available resource in the idle resource pool, the server can be selected from the cold backup resource pool. In addition, when the cloud management platform deploys the virtual instance cluster and its hot backup virtual instance by using the affinity scheduling strategy, when the server in an idle state is selected, the server used for configuring the hot backup virtual instance can be preferentially selected in the physical cluster where the virtual instance cluster is located.

[0242] When configuring the hot-standby virtual instance of the virtual instance cluster in the selected server, it is necessary to ensure that the newly configured hot-standby virtual instance is consistent with the metadata of the hot-standby virtual instance used to replace the specified virtual instance. The metadata of the virtual instance includes all the data required to manage the virtual instance. In the process of supplementing the hot-standby virtual instance, the server used to deploy the hot-standby virtual instance can be selected based on the principle of sufficient backup capacity and node balance. The sufficient backup capacity means that after supplementing the hot-standby virtual instance of the virtual instance cluster, the total capacity of the hot-standby virtual instance can meet the resource requirements of the virtual instance cluster for the hot-standby virtual instance. The node balance means that when selecting a server for deploying the supplemented hot-standby virtual instance, it is necessary to ensure that the loads of multiple servers managed by the cloud management platform are in a relatively balanced state.

[0243] The implementation process of node replacement will be further described below by taking the cloud management platform functions implemented by the multiple components shown in FIG. 8 as an example. FIG. 18 is a schematic diagram of the implementation process of node replacement when the functions of the cloud management platform are implemented by the multiple components shown in FIG. 8. As shown in FIG. 18, node replacement includes steps 1801 to 1812.

[0244] In step 1801, the service management and control plane receives an instance replacement request of a tenant, and the instance replacement request carries the identifier of a specified virtual instance to be replaced and the identifier of a virtual instance cluster where the specified virtual instance is located.

[0245] The instance replacement request needs to carry the identifier of the virtual instance cluster and the identifier of the specified virtual instance to be replaced.

[0246] In step 1802, the service management and control plane initiates a hot replacement task based on the instance replacement request.

[0247] After receiving the instance replacement request, the service management and control plane can call the interface of the hot replacement task scheduling unit to instruct the hot replacement task scheduling unit to execute the hot replacement task.

[0248] In step 1803, the hot replacement task scheduling unit instructs the hot standby management unit to schedule a target hot-standby virtual instance used to replace the specified virtual instance, and receives the related information of the target hot-standby virtual instance fed back by the hot standby management unit.

[0249] The related information of the target hot-standby virtual instance includes a name, an identifier, and an IP address of the target hot-standby virtual instance. The hot-standby management unit is configured to manage the hot-standby resources of the virtual instance cluster. When the hot-replacement task scheduling unit performs the hot-replacement task, the hot-replacement task scheduling unit needs to rely on the hot-standby management unit to schedule the target hot-standby virtual instance from the multiple hot-standby virtual instances of the virtual instance cluster. The scheduling process includes that the hot-standby virtual instance selects the target hot-standby virtual instance from the multiple hot-standby virtual instances of the virtual instance cluster, and performs preparation operations such as initialization and configuration on the target hot-standby virtual instance, and removes the target hot-standby virtual instance from the hot-standby resource pool. For implementation of these processes, please refer to the related description in step 1402, which will not be repeated here.

[0250] In step 1804, the hot-replacement task scheduling unit calls the network controller to reconfigure the cluster network, so as to move the target hot-standby virtual instance into the cluster network, and remove the specified virtual instance from the cluster network.

[0251] In step 1805, the hot-replacement task scheduling unit updates the metadata of the virtual instance cluster to the service management surface, so as to complete the node replacement.

[0252] After the hot-replacement task scheduling unit moves the target hot-standby virtual instance into the cluster network, and removes the specified virtual instance from the cluster network, the metadata of the virtual instance cluster needs to be updated synchronously, and the metadata of the virtual instance cluster needs to be updated to the service management surface. The metadata of the virtual instance cluster includes all data required for managing the virtual instance cluster. For example, the metadata of the virtual instance cluster includes identifiers and related information of all working virtual instances in the virtual instance cluster, and identifiers and related information of the hot-standby virtual instances of the virtual instance cluster.

[0253] In step 1806, the service management surface notifies the tenant that the node replacement is completed.

[0254] In step 1807, the hot-replacement task scheduling unit instructs the resource reconstruction unit to perform resource reconstruction, so as to supplement the hot-standby virtual instance to the virtual instance cluster.

[0255] After the service management surface completes the node replacement, the service management surface can call an interface of the resource reconstruction unit to instruct to start performing the resource reconstruction task. The resource reconstruction task is configured to select a target idle node for creating a hot-standby virtual instance from idle nodes of the cloud management platform, create the hot-standby virtual instance in the target idle node, and supplement the hot-standby virtual instance to the hot-standby resources of the virtual instance cluster.

[0256] In step 1808, the resource reconstruction unit obtains one or more target idle servers that can meet the specification of the hot-standby virtual instance of the virtual instance cluster from the cold-standby resource management unit, and provides a server list including the one or more target idle servers to the hot-replacement task scheduling unit.

[0257] The cold backup resource management unit is configured to manage the cold backup resources of the virtual instance cluster. After receiving the instruction indicating the resource reconstruction, the resource reconstruction unit needs to rely on the cold backup resource management unit to schedule the target idle server in the idle resource pool and the cold backup resource pool. If the resource scheduling is based on the affinity scheduling strategy, the server list includes all servers in the physical cluster where the hot backup virtual instance of the virtual instance cluster is located, which can meet the specifications of the hot backup virtual instance of the virtual instance cluster.

[0258] In step 1809, the hot replacement task scheduling unit provides the server list and the identifier of the second image file to the service management and control surface.

[0259] After obtaining the server list, the hot replacement task scheduling unit can call the resource scheduling module through the service management and control surface to select the server for deploying the hot backup virtual instance in the server list.

[0260] In step 1810, the service management and control surface sends a scheduling request to the resource scheduling module and receives a scheduling result sent by the resource scheduling module. The scheduling result indicates the server for deploying the hot backup virtual instance, and the server list is carried in the scheduling request.

[0261] In step 1811, the service management and control surface calls the node controller to create the hot backup virtual instance based on the second image file according to the scheduling result, and receives a creation result sent by the node controller.

[0262] The scheduling result is used to indicate the server where the to-be-created hot backup virtual instance is located. After receiving the scheduling result, the service management and control surface can schedule the node controller based on the scheduling result, so that the node controller creates the hot backup virtual instance using the second image file in the server indicated by the scheduling result. The creation result is used to indicate whether the creation of the hot backup virtual instance is completed.

[0263] In step 1812, after the creation result indicates that the creation of the hot backup virtual instance is completed, the service management and control surface adds the new hot backup virtual instance to the hot backup virtual instance pool, and notifies the hot backup resource management unit that the hot backup virtual instance for the virtual instance cluster is supplemented.

[0264] The implementation process of the above steps 1801 to 1806 is described in the foregoing steps 1401 to 1402, and the implementation process of the above steps 1807 to 1812 is described in the foregoing step 1403. Here, the description is omitted.

[0265] The high-availability super cluster service (HAHCS) provided by the embodiments of the present application can cooperate with other services to ensure the high-availability capability of the other services. The implementation process is exemplarily described below by taking the other service as the heavy computing application AI training service.

[0266] Example one: the HAHCS provided by the embodiments of the present application cooperates with the AI training service to ensure that the virtual instances in the AI training cluster for implementing the AI training service can realize quick recovery when the hardware where the virtual instances are located fails. Wherein, the tenant deploys an AI training supernode cluster in the public cloud through the AI training service, and specifies to use the HAHCS provided by the present application to create the AI training supernode cluster in the cluster configuration stage. At the same time, the AI training supernode cluster periodically saves the checkpoint during the running process. In addition, the tenant purchases a monitoring service for the AI training supernode cluster to use the monitoring service to notify the tenant of the failure events of the AI training supernode cluster. As shown in FIG. 19, the implementation process of example one includes:

[0267] Step 1901, the AI training service receives the failure event of the monitoring service.

[0268] After the monitoring service monitors that the virtual instance in the AI training supernode cluster fails, the monitoring service notifies the AI training service of the failure event for indicating the failure.

[0269] Step 1902, the AI training service calls the API of the HAHCS to obtain the state of the virtual instance indicated by the failure event to confirm whether the virtual instance fails.

[0270] Step 1903, the AI training service suspends the AI training task when it is determined that the virtual instance fails.

[0271] Step 1904, the AI training service calls the API of the HAHCS to issue an instance replacement request, and the instance replacement request carries the identifier of the virtual instance that fails and the identifier of the AI training supernode cluster.

[0272] Step 1905, after the HAHCS receives the instance replacement request, the HAHCS synchronously selects a hot standby virtual instance for replacing the virtual instance that fails, and asynchronously replaces the virtual instance that fails with the selected hot standby virtual instance.

[0273] After the HAHCS selects the hot-standby virtual instance, the HAHCS can optionally feed back (as a feedback to the AI training service) an identifier of the hot-standby virtual instance and a task identifier of the AI training task executed by the faulty virtual instance to the tenant, so that the tenant can determine whether to agree to replace the faulty virtual instance with the selected hot-standby virtual instance. The task identifier of the AI training task actually indicates the AI training supernode cluster. After receiving an instruction from the tenant indicating that the tenant agrees to replace the faulty virtual instance with the selected hot-standby virtual instance, the HAHCS replaces the faulty virtual instance with the selected hot-standby virtual instance. Meanwhile, the AI training service can periodically refresh the configuration information of the AI training supernode cluster, and after the HAHCS replaces the faulty virtual instance with the selected hot-standby virtual instance, the refreshed configuration information can indicate that the faulty virtual instance is removed from the AI training supernode cluster and the selected hot-standby virtual instance is added to the AI training supernode cluster.

[0274] Step 1906, after the HAHCS successfully replaces the faulty virtual instance with the selected hot-standby virtual instance, the HAHCS notifies the AI training service that the virtual instance replacement is completed.

[0275] After the HAHCS successfully replaces the faulty virtual instance with the selected hot-standby virtual instance, the HAHCS can optionally perform a resource reconstruction operation asynchronously to supplement the AI training supernode cluster with a hot-standby virtual instance.

[0276] Step 1907, after the AI training cluster confirms that the virtual instance replacement is completed, the AI training cluster reschedules the AI training task and pulls the checkpoint to restore the service.

[0277] By using the HAHCS provided in the embodiments of the present application to replace the faulty virtual instance in the AI training supernode cluster, the node switching can be quickly performed, and the service recovery delay of the AI training service is reduced. Meanwhile, the HAHCS provided in the embodiments of the present application enables the tenant to not need to manage and maintain the hot-standby virtual instance pool, and the availability of the HAHCS provided in the embodiments of the present application is improved. The management and maintenance of the hot-standby virtual instance pool include the selection of the hot-standby virtual instance, the following upgrade, the capacity maintenance, and the node rotation.

[0278] Example two: the HAHCS provided by the embodiments of the present application cooperates with the AI training service to realize the fast replacement of slow virtual instances in the AI training cluster for realizing the AI training service. Wherein, the tenant deploys an AI training supernode cluster in the public cloud through the AI training service, and specifies to use the HAHCS provided by the present application to create the AI training supernode cluster in the cluster configuration stage. At the same time, the AI training service deploys a slow node diagnosis service when starting the AI training supernode cluster. The slow node diagnosis service is used to detect the virtual instances with performance decline in the AI training supernode cluster, and to inform the tenant of the virtual instances with performance decline. As shown in FIG. 20, the implementation process of example two includes:

[0279] Step 2001: the AI training service perceives the performance decline of the AI training supernode cluster.

[0280] Step 2002: the AI training service starts the slow node diagnosis service, and obtains the identifier of the virtual instance with performance decline in the AI training supernode cluster.

[0281] Step 2003: the AI training service suspends the AI training task, and performs global state synchronization based on the current execution progress of the AI training task.

[0282] Step 2004: the HAHCS receives the instance replacement request sent by the tenant through calling the pre-replacement interface, and the instance replacement request carries the identifier of the AI training supernode cluster and the identifier of the virtual instance in the AI training supernode cluster which needs to be replaced.

[0283] After obtaining the identifier of the virtual instance with performance decline in the AI training supernode cluster, the AI training service can inquire the tenant whether to replace the virtual instance with performance decline. When the tenant needs to replace the virtual instance with performance decline, the tenant can trigger the instance replacement request.

[0284] Step 2005: the HAHCS synchronously selects the hot standby virtual instance for replacing the virtual instance with performance decline based on the instance replacement request, asynchronously adds the selected hot standby virtual instance to the AI training supernode cluster, and feeds back the information of the hot standby virtual instance added to the AI training supernode cluster to the tenant.

[0285] HAHCS provides tenants with information about the hot standby virtual instance added to the AI ​​training supernode cluster. This allows tenants to decide whether to replace a degraded virtual instance with the selected hot standby instance. For example, HAHCS provides tenants with the identifier of the selected hot standby virtual instance and the task identifier of the AI ​​training task executed by the degraded virtual instance, awaiting the tenant's triggering of a pre-replacement confirmation command. Simultaneously, the AI ​​training service can periodically refresh the configuration information of the AI ​​training supernode cluster. After HAHCS adds the selected hot standby virtual instance to the AI ​​training supernode cluster, the refreshed configuration information indicates that the selected hot standby virtual instance has been added to the AI ​​training supernode cluster.

[0286] Step 2006: The AI ​​training task, based on the information of the hot standby virtual instance added to the AI ​​training supernode cluster fed back by HHACS, migrates the application deployed on the virtual instance with degraded performance to the hot standby virtual instance added to the AI ​​training supernode cluster, and triggers a pre-replacement confirmation instruction after the migration is completed.

[0287] After receiving feedback from HHAHCS regarding the addition of a hot standby virtual instance to the AI ​​training supernode cluster, the AI ​​training task can obtain a hot standby virtual instance to replace the degraded virtual instance. Then, it migrates the application deployed on the degraded virtual instance to the hot standby virtual instance, allowing it to continue running after the replacement. Upon completion of the migration, the AI ​​training task triggers a pre-replacement confirmation command to instruct HHAHCS to remove the degraded virtual instance from the AI ​​training supernode cluster. Optionally, after triggering the pre-replacement confirmation command, the AI ​​training cluster can refresh its configuration information and resume task execution based on the hot standby virtual instance.

[0288] Step 2007: HAHCS removes the performance-degraded virtual instances from the AI ​​training supernode cluster based on the pre-replacement confirmation command.

[0289] After removing a degraded virtual instance from the AI ​​training supernode cluster, HAHCS notifies the AI ​​training service that the virtual instance replacement is complete. HAHCS can also move the degraded virtual instance to the hot standby pool of the AI ​​training supernode cluster, using it as a hot standby virtual instance for the AI ​​training supernode cluster. Optionally, HAHCS can also perform repair operations on the degraded virtual instance to restore its performance.

[0290] After step 2008, the AI training cluster confirms that the virtual instance replacement is completed, reschedules the AI training task, and pulls the checkpoint to restore the service.

[0291] By replacing the virtual instance with performance degradation in the AI training supernode cluster through the HAHCS provided in the embodiments of the present application, the quick replacement of the virtual instance with performance degradation can be realized, and the running performance of the AI training supernode cluster is guaranteed. At the same time, the HAHCS provided in the embodiments of the present application enables the tenant to not need to manage and maintain the hot backup virtual instance pool, and the availability of the HAHCS provided in the embodiments of the present application is improved. The management and maintenance of the hot backup virtual instance pool include the selection, following upgrade, capacity maintenance, and node rotation of the hot backup virtual instance, and the like.

[0292] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of steps 1901 to 1907 and steps 2001 to 2008 described above can refer to the related description in the foregoing steps, which will not be described here.

[0293] In summary, in the cloud service providing method based on the public cloud technology provided in the embodiments of the present application, when the cloud management platform has deployed a first hot backup virtual instance using a first image file in a plurality of servers, the first hot backup virtual instance can be configured as a hot backup virtual instance of a virtual instance cluster, so that the virtual instance cluster of the tenant and the virtual instance cluster of other tenants can jointly use the first hot backup virtual instance, the sharing of hot backup virtual resources between different virtual instance clusters is realized, the fault recoverability of the virtual instance cluster is guaranteed, and the problem of high cost of using the hot backup virtual instance at present is solved, so that the cloud management platform can provide the tenant with a lower-cost service recovery capability.

[0294] Moreover, since the backup virtual instance configured for the virtual instance cluster by the method is a hot backup virtual instance, the virtual instance cluster can have a lower service recovery time delay in the scenario of using the backup virtual instance, and the fault recovery speed of the virtual instance cluster is accelerated. At the same time, in the present application, after the tenant triggers the resource delivery, upgrade, and node replacement operations, the remaining operations are executed by the cloud management platform, so that the management and maintenance of the resources and the like are transparent to the tenant, and the tenant does not need to perform these management and maintenance operations by himself, thereby reducing the threshold for the tenant to use the cloud service, reducing the burden of the tenant to use the cloud service, and improving the availability of the cloud service provided in the embodiments of the present application.

[0295] It should be noted that, although the implementation principle of the cloud service providing method based on the public cloud technology provided in the present application is described above by taking the virtual instance as an example, the cloud service providing method based on the public cloud technology provided in the present application can also provide cloud services in other presentation forms. Moreover, when the cloud service providing method based on the public cloud technology provided in the present application provides cloud services in other presentation forms, the cloud services in other presentation forms also have the features of the virtual instance described above. For example, the cloud management platform can also provide tenants with bare metal instances by using the cloud service providing method based on the public cloud technology provided in the present application, the logical clusters of different bare metal instances can also share the bare metal instances as hot standby resources, and the bare metal instances as work nodes and the bare metal instances as hot standby resources are preferentially deployed in the same physical cluster. Moreover, the implementation processes of resource allocation, node upgrading and node replacement of the cloud services in other presentation forms can also be implemented by referring to the implementation processes of resource allocation, node upgrading and node replacement of the virtual instance described above, and details are not described herein.

[0296] In addition, the order of the steps of the cloud service providing method provided in the embodiments of the present application can be adjusted appropriately, and the steps can be increased or decreased as appropriate. Any person skilled in the art can easily think of changes within the technical scope disclosed in the present application, and the changes should be covered within the protection scope of the present application, and thus details are not described herein.

[0297] The virtual device of the embodiments of the present application is described below.

[0298] The cloud service providing method of the embodiments of the present application is described above, and the cloud service providing device corresponding to the above method is also provided in the embodiments of the present application. FIG. 21 is a structural schematic diagram of a cloud service providing device provided in the embodiments of the present application. Based on the following multiple components shown in FIG. 21, the cloud service providing device shown in FIG. 21 can perform all or part of the operations shown in FIGS. 4, 6, 7, 9, 10, 11, 12, 13, 14, 16, 17, 18, 19 and 20. It should be understood that the device can include more additional components than the shown components or omit part of the shown components, and the embodiments of the present application do not limit this. Optionally, the cloud service providing device is deployed in a cloud management platform. The cloud management platform is used to manage the infrastructure for providing cloud services. The infrastructure includes multiple servers. The multiple servers are used to deploy virtual instances for implementing tenant services. The multiple servers are divided into multiple physical clusters. The cloud service providing device includes: as shown in FIG. 21, the cloud service providing device 210 can include:

[0299] The interaction module 2101 is configured to receive a virtual instance creation request of a tenant, and the virtual instance creation request is used to indicate to create a virtual instance cluster and a specification of a virtual instance in the virtual instance cluster based on a first image file.

[0300] The processing module 2102 is configured to select a first physical cluster that can provide the specification of the virtual instance in the virtual instance cluster from a plurality of physical clusters, and create the virtual instance cluster in the first physical cluster based on the first image file.

[0301] The processing module 2102 is further configured to, in a case where a first hot-standby virtual instance using the first image file has been deployed in the plurality of physical clusters, configure the first hot-standby virtual instance as a hot-standby virtual instance of the virtual instance cluster.

[0302] In a possible implementation, the processing module 2102 is specifically configured to, in a case where a first hot-standby virtual instance using the first image file has been deployed in the plurality of physical clusters, obtain a physical cluster where the first hot-standby virtual instance is located, and in a case where idle resources of the physical cluster where the first hot-standby virtual instance is located can meet the specification of the virtual instance in the virtual instance cluster, determine the physical cluster where the first hot-standby virtual instance is located as the first physical cluster.

[0303] In a possible implementation, the processing module 2102 is specifically configured to, in a case where the virtual instance creation request indicates to share the hot-standby virtual instance with other tenants, configure the first hot-standby virtual instance as the hot-standby virtual instance of the virtual instance cluster.

[0304] In a possible implementation, the processing module 2102 is further configured to, in a case where the first hot-standby virtual instance available for the virtual instance cluster cannot meet a hot-standby capability required by the virtual instance cluster, create a second hot-standby virtual instance based on the first image file, and configure the second hot-standby virtual instance as the hot-standby virtual instance of the virtual instance cluster, so that the hot-standby virtual instances configured for the virtual instance cluster meet the hot-standby capability required by the virtual instance cluster.

[0305] In a possible implementation, the interaction module 2101 is further configured to receive a first image creation request of a tenant, and the first image creation request is used to indicate to create a first image file using first resources, the first resources including an operating system and a driver, or the first resources including an operating system, a driver and an application program used to implement a service of the tenant; the processing module 2102 is further configured to obtain the first image file based on the first image creation request; and the interaction module 2101 is further configured to provide an identifier of the first image file to the tenant.

[0306] In a possible implementation, the interaction module 2101 is further configured to receive a mirror replacement request of the tenant, the mirror replacement request being used to instruct to replace the mirror file used by the virtual instance cluster with a second mirror file; the processing module 2102 is further configured to replace, based on the mirror replacement request, the mirror file used by the virtual instance cluster with the second mirror file, and query whether a third hot-standby virtual instance using the second mirror file has been deployed in the plurality of physical clusters; and the processing module 2102 is further configured to, in the case that the third hot-standby virtual instance using the second mirror file has been deployed in the plurality of physical clusters, switch the hot-standby virtual instance of the virtual instance cluster to the third hot-standby virtual instance.

[0307] In a possible implementation, the processing module 2102 is further configured to, in the case that the third hot-standby virtual instance using the second mirror file has been deployed in the plurality of physical clusters, obtain a second physical cluster in which the third hot-standby virtual instance is located; and the processing module 2102 is further configured to, in the case that the idle resources of the second physical cluster can meet the specifications of the virtual instances in the virtual instance cluster, migrate the virtual instance cluster to the second physical cluster.

[0308] In a possible implementation, the processing module 2102 is specifically configured to, in the case that the virtual instance creation request instructs to share the hot-standby virtual instance with other tenants, switch the hot-standby virtual instance of the virtual instance cluster to the third hot-standby virtual instance.

[0309] In a possible implementation, the processing module 2102 is further configured to, in the case that the third hot-standby virtual instance available for the virtual instance cluster cannot meet the required hot-standby capability of the virtual instance cluster, create a fourth hot-standby virtual instance based on the second mirror file, and configure the fourth hot-standby virtual instance as the hot-standby virtual instance of the virtual instance cluster, so that the hot-standby virtual instance configured for the virtual instance cluster meets the required hot-standby capability of the virtual instance cluster.

[0310] In a possible implementation, the required hot-standby capability of the virtual instance cluster is determined by the cloud management platform according to a preset rule, or is indicated by the virtual instance creation request.

[0311] In a possible implementation, the interaction module 2101 is further configured to receive a second mirror creation request of the tenant, the second mirror creation request being used to instruct to create a second mirror file using second resources, the second resources including an operating system and a driver, or the second resources including an operating system, a driver, and an application program used to implement a service of the tenant; the processing module 2102 is further configured to obtain the second mirror file based on the second mirror creation request; and the interaction module 2101 is further configured to provide an identifier of the second mirror file to the tenant.

[0312] In a possible implementation, the interaction module 2101 is further configured to receive an instance replacement request of the tenant, the instance replacement request being used to instruct to replace a specified virtual instance in a virtual instance cluster with a hot-standby virtual instance of the virtual instance cluster; and the processing module 2102 is further configured to configure one of the hot-standby virtual instances of the virtual instance cluster as a working virtual instance in the virtual instance cluster and remove the specified virtual instance from the virtual instance cluster based on the instance replacement request.

[0313] In a possible implementation, the processing module 2102 is specifically configured to configure one of the hot-standby virtual instances of the virtual instance cluster as a working virtual instance in the virtual instance cluster based on the instance replacement request; the interaction module 2101 is further configured to feed back information of the hot-standby virtual instance configured as the working virtual instance in the virtual instance cluster to the tenant, and receive a replacement confirmation instruction of the tenant, the replacement confirmation instruction being used to instruct to replace the specified virtual instance with the hot-standby virtual instance configured as the working virtual instance in the virtual instance cluster; and the processing module 2102 is further configured to remove the specified virtual instance from the virtual instance cluster after the interaction module 2101 receives the replacement confirmation instruction of the tenant.

[0314] In a possible implementation, the processing module 2102 is further configured to select a server in an idle state from a plurality of servers managed by the processing module 2102, and configure the hot-standby virtual instance of the virtual instance cluster in the selected server based on an image file used by the virtual instance cluster.

[0315] In a possible implementation, the selected server is located in a physical cluster where the virtual instance cluster is located.

[0316] Here, the detailed working processes of the interaction module 2101 and the processing module 2102 are described in the foregoing method embodiments, which will not be repeated here.

[0317] The interaction module 2101 and the processing module 2102 can be implemented by software or by hardware. For example, the implementation of the interaction module 2101 is described as follows. Similarly, the implementation of the processing module 2102 can refer to the implementation of the interaction module 2101.

[0318] As an example of a software functional unit, the interaction module 2101 can include code running on a compute instance. Among others, the compute instance can include at least one of a physical host (a computing device), a virtual machine, a container. Further, the compute instance can be one or more. For example, the interaction module 2101 can include code running on multiple hosts / virtual machines / containers. It is noted that the multiple hosts / virtual machines / containers for running the code can be distributed in the same region, or in different regions. Further, the multiple hosts / virtual machines / containers for running the code can be distributed in the same availability zone (AZ), or in different AZs, each of which includes one cloud data center or multiple cloud data centers in close geographical proximity. Typically, one region can include multiple AZs.

[0319] Similarly, the multiple hosts / virtual machines / containers for running the code can be distributed in the same virtual private cloud (VPC), or in multiple VPCs. Typically, one VPC is set up within one region, and communication between two VPCs in the same region, or between VPCs in different regions, requires a communication gateway to be set up in each VPC, and the interconnection between VPCs is realized through the communication gateway.

[0320] As an example of a hardware functional unit, the interaction module 2101 can include at least one computing device, such as a server, etc. Alternatively, the interaction module 2101 can also be a device implemented by an application-specific integrated circuit (ASIC), or a programmable logic device (PLD), etc. Among others, the PLD can be implemented by a complex programmable logical device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.

[0321] The plurality of computing devices included in the interaction module 2101 can be distributed in the same region or in different regions. The plurality of computing devices included in the interaction module 2101 can be distributed in the same AZ or in different AZs. Similarly, the plurality of computing devices included in the interaction module 2101 can be distributed in the same VPC or in multiple VPCs. The plurality of computing devices can be any combination of servers, ASICs, PLDs, CPLDs, FPGAs, and GALs.

[0322] It should be noted that, in other embodiments, any of the interaction module 2101 and the processing module 2102 can be used to perform any step in the cloud service providing method. The steps responsible for the implementation of the interaction module 2101 and the processing module 2102 can be specified as needed, and the entire function of the cloud service providing apparatus can be implemented by the interaction module 2101 and the processing module 2102 respectively implementing different steps in the cloud service providing method.

[0323] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working process of each component described above can refer to the corresponding content in the foregoing method embodiments, which will not be described here.

[0324] The basic hardware structure related to the embodiments of the present application is described below.

[0325] The present application also provides a computing device 2200. As shown in FIG. 22, the computing device 2200 includes a bus 2202, a processor 2204, a memory 2206, and a communication interface 2208. The processor 2204, the memory 2206, and the communication interface 2208 communicate through the bus 2202. The computing device 2200 can be a server or a terminal device. It should be understood that the present application does not limit the number of processors and memories in the computing device 2200.

[0326] The bus 2202 can be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The bus can be divided into an address bus, a data bus, a control bus, etc. For the convenience of representation, only one line is shown in FIG. 22, but it does not mean that there is only one bus or only one type of bus. The bus 2202 can include a path for transmitting information between various components (e.g., the memory 2206, the processor 2204, the communication interface 2208) of the computing device 2200.

[0327] The processor 2204 can include any one or more of a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor (MP), or a digital signal processor (DSP), among other processors.

[0328] The memory 2206 can include volatile memory, such as random access memory (RAM), and non-volatile memory, such as read-only memory (ROM), flash memory, a hard disk drive (HDD), or a solid-state drive (SSD).

[0329] The memory 2206 stores executable program code that the processor 2204 executes to implement the functionality of the aforementioned interaction module 2101 and processing module 2102, respectively, to implement the cloud service providing method. That is, the memory 2206 has instructions for implementing the cloud service providing method stored thereon.

[0330] The communication interface 2208 uses a transceiver module, such as but not limited to a network interface card or a transceiver, to enable communication between the computing device 2200 and other devices or communication networks.

[0331] Embodiments of the present disclosure also provide a computing device cluster. The computing device cluster includes at least one computing device. The computing device can be a server, such as a central server, an edge server, or a local server in a local data center. In some embodiments, the computing device can also be a terminal device, such as a desktop computer, a laptop computer, or a smartphone.

[0332] As shown in FIG. 23, the computing device cluster includes at least one computing device 2200. The memory 2206 in one or more of the computing devices 2200 in the computing device cluster can have the same instructions for implementing the cloud service providing method stored therein.

[0333] In some possible implementations, the memory 2206 of one or more of the computing devices 2200 in the computing device cluster can also have partial instructions for implementing the cloud service providing method stored therein, respectively. In other words, the combination of the one or more computing devices 2200 can collectively execute the instructions for implementing the cloud service providing method.

[0334] It should be noted that the memories 2206 in different computing devices 2200 in the computing device cluster can store different instructions for respectively performing part of the functions of the cloud service providing apparatus. That is, the instructions stored in the memories 2206 in different computing devices 2200 can implement the functions of one or more of the interaction module 2101 and the processing module 2102.

[0335] In some possible implementation manners, one or more computing devices in the computing device cluster can be connected through a network. The network can be a wide area network or a local area network, etc. FIG. 24 shows a possible implementation manner. As shown in FIG. 24, two computing devices 2200A and 2200B are connected through a network. Specifically, the computing devices are connected to the network through communication interfaces in the computing devices. In this kind of possible implementation manner, the memory 2206 in the computing device 2200A stores instructions for performing the functions of the interaction module 2101. Meanwhile, the memory 2206 in the computing device 2200B stores instructions for performing the functions of the processing module 2102.

[0336] The connection manner between the computing device cluster shown in FIG. 24 can be that, considering that the cloud service providing method provided in the present application needs to store a large amount of data, it is considered to assign the functions implemented by the processing module 2102 to the computing device 2200B to perform.

[0337] It should be understood that the functions of the computing device 2200A shown in FIG. 24 can also be completed by multiple computing devices 2200. Similarly, the functions of the computing device 2200B can also be completed by multiple computing devices 2200.

[0338] The embodiments of the present application also provide another computing device cluster. The connection relationship between the computing devices in the computing device cluster can be similar to the connection manners of the computing device clusters shown in FIG. 23 and FIG. 24. The difference is that the memories 2206 in one or more computing devices 2200 in the computing device cluster can store the same instructions for performing the cloud service providing method.

[0339] In some possible implementation manners, the memories 2206 in one or more computing devices 2200 in the computing device cluster can also respectively store part of the instructions for performing the cloud service providing method. In other words, the combination of one or more computing devices 2200 can collectively execute the instructions for performing the cloud service providing method.

[0340] The embodiments of the present application further provide a computer program product containing instructions. The computer program product can be software or program product containing instructions, which can run on a computing device or be stored in any available medium. When the computer program product runs on at least one computing device, the at least one computing device is caused to perform the cloud service providing method.

[0341] The embodiments of the present application further provide a computer readable storage medium. The computer readable storage medium can be any available medium or data storage device containing one or more available media that is accessible by a computing device, such as a data center. The available medium can be a magnetic medium, such as a floppy diskette, a hard disk, a magnetic tape, an optical medium, such as a DVD, or a semiconductor medium, such as a solid state hard drive, etc. The computer readable storage medium contains instructions, which instruct the computing device to perform the cloud service providing method, or instruct the computing device to perform the cloud service providing method.

[0342] It can be understood by those skilled in the art that all or part of the steps of the above-mentioned embodiments can be completed by hardware, or by a program instructing related hardware, which can be stored in a computer readable storage medium. The storage medium mentioned above can be a read-only memory, a magnetic disk or an optical disk, etc.

[0343] It should be noted that the information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data for analysis, stored data, displayed data, etc.) and signals involved in the present application are all authorized by the user or fully authorized by all parties, and the collection, use and processing of related data need to comply with relevant laws, regulations and standards of relevant countries and regions. For example, the raw data and executable codes involved in the present application are obtained under sufficient authorization.

[0344] In the embodiments of the present application, the terms "first", "second" and "third" are only used for descriptive purposes, and cannot be understood as indicating or implying relative importance. The term "at least one" means one or more, and the term "multiple" means two or more, unless otherwise explicitly limited.

[0345] In the present application, the term "and / or" is only used to describe the association relationship of the associated objects, which means that there can be three relationships, for example, A and / or B can mean that A exists alone, A and B exist together, and B exists alone. In addition, the character " / " in this paper generally represents that the front and rear associated objects have an "or" relationship.

[0346] Finally, it should be noted that: the above examples are used to illustrate the technical solutions of the present application, but not limited to them; although the present application is described in detail with reference to the foregoing examples, those skilled in the art should understand that: it can still modify the technical solutions recorded in the foregoing examples, or make equivalent replacement for part of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the protection scope of the technical solutions of the embodiments of the present application.

Claims

1. A cloud service providing method based on public cloud technology, characterized by, The method is performed by a cloud management platform, the cloud management platform is used for managing infrastructure providing cloud services, the infrastructure includes a plurality of servers used for deploying virtual instances implementing tenant businesses, the plurality of servers are divided into a plurality of physical clusters, and the method includes: The cloud management platform receives a virtual instance creation request of a tenant, the virtual instance creation request is used for indicating a specification of a virtual instance in a virtual instance cluster and a virtual instance cluster to be created based on a first image file; The cloud management platform selects a first physical cluster capable of providing the specification of the virtual instance in the virtual instance cluster from the plurality of physical clusters, and creates the virtual instance cluster in the first physical cluster based on the first image file; In a case where a first hot-standby virtual instance using the first image file has been deployed in the plurality of physical clusters, the cloud management platform configures the first hot-standby virtual instance as a hot-standby virtual instance of the virtual instance cluster.

2. The method of claim 1, wherein, The cloud management platform selects a first physical cluster capable of providing the specification of the virtual instance in the virtual instance cluster from the plurality of physical clusters, including: In a case where a first hot-standby virtual instance using the first image file has been deployed in the plurality of physical clusters, the cloud management platform acquires a physical cluster where the first hot-standby virtual instance is located, and in a case where idle resources of the physical cluster where the first hot-standby virtual instance is located can meet the specification of the virtual instance in the virtual instance cluster, the cloud management platform determines the physical cluster where the first hot-standby virtual instance is located as the first physical cluster.

3. The method of claim 1 or 2, wherein, The cloud management platform configures the first hot-standby virtual instance as a hot-standby virtual instance of the virtual instance cluster, including: In a case where the virtual instance creation request indicates that the hot-standby virtual instance is shared with other tenants, the cloud management platform configures the first hot-standby virtual instance as a hot-standby virtual instance of the virtual instance cluster.

4. The method according to any one of claims 1 to 3, characterized in that, The method further includes: In a case where the first hot-standby virtual instance available for the virtual instance cluster cannot meet the hot-standby capability required by the virtual instance cluster, the cloud management platform creates a second hot-standby virtual instance based on the first image file, and configures the second hot-standby virtual instance as a hot-standby virtual instance of the virtual instance cluster, so that the hot-standby virtual instances configured for the virtual instance cluster meet the hot-standby capability required by the virtual instance cluster.

5. The method according to any one of claims 1 to 4, characterized in that, The method further includes: The cloud management platform receives a first image creation request of the tenant, the first image creation request is used for indicating that the first image file is created using first resources, the first resources include an operating system and a driver, or the first resources include an operating system, a driver and an application program used for implementing the business of the tenant; The cloud management platform obtains the first image file based on the first image creation request, and provides an identifier of the first image file to the tenant.

6. The method of any one of claims 1 to 5, wherein, The method further includes: The cloud management platform receives an image replacement request of the tenant, the image replacement request being used to indicate replacing an image file used by the virtual instance cluster with a second image file; The cloud management platform replaces the image file used by the virtual instance cluster with the second image file based on the image replacement request, and queries whether a third hot-standby virtual instance using the second image file has been deployed in the multiple physical clusters; The cloud management platform switches the hot-standby virtual instance of the virtual instance cluster to the third hot-standby virtual instance in a case that the third hot-standby virtual instance using the second image file has been deployed in the multiple physical clusters.

7. The method of claim 6, wherein, The method further comprises: The cloud management platform acquires a second physical cluster in which the third hot-standby virtual instance is located in a case that the third hot-standby virtual instance using the second image file has been deployed in the multiple physical clusters; The cloud management platform migrates the virtual instance cluster to the second physical cluster in a case that idle resources of the second physical cluster can meet the specifications of virtual instances in the virtual instance cluster.

8. The method of claim 6 or 7, wherein, The cloud management platform switches the hot-standby virtual instance of the virtual instance cluster to the third hot-standby virtual instance, comprising: The cloud management platform switches the hot-standby virtual instance of the virtual instance cluster to the third hot-standby virtual instance in a case that the virtual instance creation request indicates sharing the hot-standby virtual instance with other tenants.

9. The method of any one of claims 6 to 8, wherein, The method further comprises: The cloud management platform creates a fourth hot-standby virtual instance based on the second image file in a case that the third hot-standby virtual instance available for the virtual instance cluster cannot meet the required hot-standby capability of the virtual instance cluster, and configures the fourth hot-standby virtual instance as the hot-standby virtual instance of the virtual instance cluster, so that the hot-standby virtual instance configured for the virtual instance cluster meets the required hot-standby capability of the virtual instance cluster.

10. The method of claim 4 or 9, wherein, The required hot-standby capability of the virtual instance cluster is determined by the cloud management platform according to a preset rule, or is indicated by the virtual instance creation request.

11. The method of any one of claims 7 to 10, wherein, The method further comprises: The cloud management platform receives a second image creation request of the tenant, the second image creation request being used to indicate creating the second image file using second resources, the second resources including an operating system and a driver, or the second resources including an operating system, a driver and an application program used to implement the business of the tenant; The cloud management platform obtains the second image file based on the second image creation request, and provides an identifier of the second image file to the tenant.

12. The method of any one of claims 1 to 11, wherein, The method further comprises: The cloud management platform receives an instance replacement request of the tenant, the instance replacement request being used to indicate replacing a specified virtual instance in the virtual instance cluster using the hot-standby virtual instance of the virtual instance cluster; The cloud management platform configures one of the hot-standby virtual instances of the virtual instance cluster as a working virtual instance in the virtual instance cluster based on the instance replacement request, and removes the specified virtual instance from the virtual instance cluster.

13. The method of claim 12, wherein, The cloud management platform configures one of the hot-standby virtual instances of the virtual instance cluster as a working virtual instance in the virtual instance cluster and removes the specified virtual instance from the virtual instance cluster based on the instance replacement request, including: The cloud management platform configures one of the hot-standby virtual instances of the virtual instance cluster as a working virtual instance in the virtual instance cluster based on the instance replacement request, and feeds back information of the hot-standby virtual instance configured as the working virtual instance in the virtual instance cluster to the tenant. The cloud management platform removes the specified virtual instance from the virtual instance cluster after receiving the replacement confirmation instruction of the tenant, and the replacement confirmation instruction is used to indicate that the specified virtual instance is replaced by the hot-standby virtual instance configured as the working virtual instance in the virtual instance cluster.

14. The method of claim 12 or 13, wherein, The method further includes: The cloud management platform selects a server in an idle state from a plurality of servers managed by the cloud management platform, and configures a hot-standby virtual instance of the virtual instance cluster in the selected server based on an image file used by the virtual instance cluster.

15. The method of claim 14, wherein The selected server is located in a physical cluster where the virtual instance cluster is located.

16. A cloud service providing apparatus based on a public cloud technology, characterized by comprising: The device is deployed in a cloud management platform, the cloud management platform is used to manage infrastructure providing cloud services, the infrastructure includes a plurality of servers, the plurality of servers are used to deploy virtual instances implementing tenant businesses, the plurality of servers are divided into a plurality of physical clusters, and the device includes: The interaction module is used to receive a virtual instance creation request of a tenant, and the virtual instance creation request is used to indicate the creation of a virtual instance cluster and the specifications of virtual instances in the virtual instance cluster based on a first image file; The processing module is used to select a first physical cluster that can provide the specifications of virtual instances in the virtual instance cluster from the plurality of physical clusters, and create the virtual instance cluster in the first physical cluster based on the first image file; The processing module is further used to configure a first hot-standby virtual instance using the first image file in the plurality of physical clusters as a hot-standby virtual instance of the virtual instance cluster.

17. The device of claim 16, wherein The processing module is specifically used to, in a case that a first hot-standby virtual instance using the first image file has been deployed in the plurality of physical clusters, acquire a physical cluster where the first hot-standby virtual instance is located, and determine the physical cluster where the first hot-standby virtual instance is located as the first physical cluster in a case that idle resources of the physical cluster where the first hot-standby virtual instance is located can meet the specifications of virtual instances in the virtual instance cluster.

18. The device of claim 16 or 17, wherein The processing module is specifically used to, in a case that the virtual instance creation request indicates that the hot-standby virtual instance is shared with other tenants, configure the first hot-standby virtual instance as a hot-standby virtual instance of the virtual instance cluster.

19. The apparatus of any of claims 16-18, wherein the processing module is further configured to, in a case that the first hot-standby virtual instance available to the virtual instance cluster is unable to meet the hot-standby capability required by the virtual instance cluster, create a second hot-standby virtual instance based on the first image file and configure the second hot-standby virtual instance as a hot-standby virtual instance of the virtual instance cluster, so that the hot-standby virtual instances configured for the virtual instance cluster meet the hot-standby capability required by the virtual instance cluster.

20. The apparatus of any of claims 16-19, wherein the interaction module is further configured to receive a first image creation request of the tenant, the first image creation request being used to indicate that the first image file is created using first resources, the first resources including an operating system and a driver, or the first resources including an operating system, a driver and an application used to implement a service of the tenant; the processing module is further configured to obtain the first image file based on the first image creation request; the interaction module is further configured to provide an identifier of the first image file to the tenant.

21. The apparatus of any of claims 16-20, wherein the interaction module is further configured to receive an image replacement request of the tenant, the image replacement request being used to indicate that an image file used by the virtual instance cluster is replaced by a second image file; the processing module is further configured to replace, based on the image replacement request, the image file used by the virtual instance cluster with the second image file and query whether a third hot-standby virtual instance using the second image file has been deployed in the plurality of physical clusters; the processing module is further configured to, in a case that the third hot-standby virtual instance using the second image file has been deployed in the plurality of physical clusters, switch the hot-standby virtual instance of the virtual instance cluster to the third hot-standby virtual instance.

22. The apparatus of claim 21, wherein the processing module is further configured to, in a case that the third hot-standby virtual instance using the second image file has been deployed in the plurality of physical clusters, obtain a second physical cluster where the third hot-standby virtual instance is located; the processing module is further configured to, in a case that an idle resource of the second physical cluster is able to meet a specification of a virtual instance in the virtual instance cluster, migrate the virtual instance cluster to the second physical cluster.

23. The apparatus of any of claims 21-22, wherein the processing module is specifically configured to, in a case that the virtual instance creation request indicates that the hot-standby virtual instance is shared with other tenants, switch the hot-standby virtual instance of the virtual instance cluster to the third hot-standby virtual instance.

24. The apparatus of any of claims 21-23, wherein ​ ​ ​ ​ ​ The processing module is further configured to, in a case where the third hot-standby virtual instance available for the virtual instance cluster fails to meet the hot-standby capability required by the virtual instance cluster, create a fourth hot-standby virtual instance based on the second image file, and configure the fourth hot-standby virtual instance as a hot-standby virtual instance of the virtual instance cluster, so that the hot-standby virtual instances configured for the virtual instance cluster meet the hot-standby capability required by the virtual instance cluster.

25. The apparatus of claim 19 or 24, wherein, The hot-standby capability required by the virtual instance cluster is determined by the cloud management platform according to a preset rule, or indicated by the virtual instance creation request.

26. The apparatus of any of claims 22-25, wherein The interaction module is further configured to receive a second image creation request of the tenant, the second image creation request being used to instruct to create the second image file using second resources, the second resources including an operating system and a driver, or the second resources including an operating system, a driver, and an application program used to implement a service of the tenant. The processing module is further configured to obtain the second image file based on the second image creation request. The interaction module is further configured to provide an identifier of the second image file to the tenant.

27. The apparatus of any of claims 16-26, wherein The interaction module is further configured to receive an instance replacement request of the tenant, the instance replacement request being used to instruct to replace a specified virtual instance in the virtual instance cluster using a hot-standby virtual instance of the virtual instance cluster. The processing module is further configured to, based on the instance replacement request, configure one of the hot-standby virtual instances of the virtual instance cluster as a working virtual instance in the virtual instance cluster, and remove the specified virtual instance from the virtual instance cluster.

28. The apparatus of claim 27, wherein The processing module is specifically configured to, based on the instance replacement request, configure one of the hot-standby virtual instances of the virtual instance cluster as a working virtual instance in the virtual instance cluster. The interaction module is further configured to feed back information of the hot-standby virtual instance configured as the working virtual instance in the virtual instance cluster to the tenant, and receive a replacement confirmation instruction of the tenant, the replacement confirmation instruction being used to instruct to replace the specified virtual instance using the hot-standby virtual instance configured as the working virtual instance in the virtual instance cluster. The processing module is further configured to remove the specified virtual instance from the virtual instance cluster after the interaction module receives the replacement confirmation instruction of the tenant.

29. The apparatus of claim 27 or 28, wherein The processing module is further configured to select a server in an idle state from a plurality of servers managed by the processing module, and configure the hot-standby virtual instances of the virtual instance cluster in the selected server based on the image file used by the virtual instance cluster.

30. The apparatus of claim 29, wherein The selected server is located in a physical cluster where the virtual instance cluster is located.

31. A cluster of computing devices, characterized in that, comprising a plurality of processing units and a plurality of memories having stored therein program instructions, the plurality of processing units executing the program instructions such that the cluster of computing devices performs the method of any of claims 1 to 15.

32. A computer-readable storage medium, comprising: comprising program instructions that, when executed on a computing device, cause the computing device to perform the method of any of claims 1 to 15.

33. A computer program product comprising instructions, wherein: comprising program instructions that, when executed on a computing device, cause the computing device to perform the method of any of claims 1 to 15.

Citation Information

Patent Citations

  • Construction method of virtual cluster double-layer redundancy framework

    CN103309774A

  • Virtual server cluster method and system for establishing virtualization based on cloud desktop, and medium

    CN111459607A

  • Cloud platform virtual machine high-availability system

    CN117221092A

  • Mechanism to enable secure memory sharing between enclaves and I / O adapters

    US20190384923A1