Service deployment method, management platform, and system
By using a management platform to select or modify target cloud platforms across multiple cloud platforms, the efficiency and effectiveness of service deployment in a multi-cloud environment are resolved, achieving efficient and secure service deployment.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2025-07-28
- Publication Date
- 2026-07-30
AI Technical Summary
It is difficult to select a cloud platform with a suitable operating environment for a service from among multiple cloud platforms, resulting in low service deployment efficiency and poor results.
The management platform receives the environmental requirements of the target service, obtains the operating environments of multiple cloud platforms, and determines the target cloud platform that meets the environmental requirements, or modifies a cloud platform with lower costs to meet the environmental requirements, and then deploys the service on the target cloud platform.
This improved the efficiency of service deployment and ensured the effectiveness of service operation, thereby enhancing user experience and security.
Smart Images

Figure CN2025110843_30072026_PF_FP_ABST
Abstract
Description
A service deployment method, management platform and system
[0001] This application claims priority to Chinese patent application filed on January 24, 2025, with application number 202510123152.9 and entitled "A Service Deployment Method, Management Platform and System", the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of cloud technology, and in particular to a service deployment method, management platform and system. Background Technology
[0003] With the development of cloud technology, more and more enterprises, manufacturers, and other users are providing related services by deploying services on cloud platforms. For example, game developers deploy rendering services on cloud platforms to provide game players with game graphics rendering services.
[0004] Different services may require different operating environments. Users may have access to multiple cloud platforms, and these platforms may have different operating environments. Therefore, when deploying a service, users need to select the cloud platform with a suitable operating environment from among many available platforms. Summary of the Invention
[0005] This application provides a service deployment method, management platform, and system that can efficiently select cloud platforms from multiple cloud platforms whose operating environment is suitable for service operation.
[0006] Firstly, a service deployment method is provided, which can be executed by a management platform in a cloud system, which also includes multiple cloud platforms, wherein different cloud platforms have different operating environments.
[0007] In this method, the management platform first receives the environment requirements of the target service, which indicate the runtime environment required for the target service to run. For example, the runtime environment required for the target service to run may include one or more of the following: deployed services in the target cloud platform, available computing resources in the target cloud platform, and inter-service networking methods in the target cloud platform.
[0008] Next, the management platform identifies the cloud platform whose operating environment meets the environmental requirements from among multiple cloud platforms. For ease of description, the cloud platform whose operating environment meets the environmental requirements can be referred to as the target cloud platform for the target service. Specifically, the management platform can obtain the operating environment of each of the multiple cloud platforms and, using the operating environment of each cloud platform and the environmental requirements, determine the target cloud platform from among the multiple cloud platforms.
[0009] Then, the management platform deploys the target service to the target cloud platform to run the target service in the target cloud platform's operating environment.
[0010] This method allows the management platform to identify a suitable cloud platform from multiple cloud platforms that meets the environmental requirements of the target service. If the target cloud platform's operating environment meets these requirements, it means that the target cloud platform's operating environment matches or is compatible with the operating environment required for the target service, making it suitable for deployment and operation. Therefore, this method efficiently selects a suitable cloud platform from multiple platforms, improving service deployment efficiency and ensuring effective service operation.
[0011] In one possible implementation, based on environmental requirements and the operating environment of each of the multiple cloud platforms, the target cloud platform for the target service is determined from among the multiple cloud platforms. This includes: selecting cloud platforms to be modified from among the multiple cloud platforms based on environmental requirements and the operating environment of each of the multiple cloud platforms; wherein the cost of the operating environment of the cloud platform to be modified meeting the environmental requirements is less than the cost of the operating environments of other cloud platforms meeting the environmental requirements, and the other cloud platforms are cloud platforms other than the cloud platform to be modified; and modifying the operating environment of the cloud platform to be modified according to the environmental requirements to obtain the target cloud platform.
[0012] Among these multiple cloud platforms, there may not be one whose operating environment meets or fully satisfies the requirements. In such cases, we can first identify the cloud platform with the lowest modification cost. Modification cost refers to the expense of modifying the cloud platform to meet the environmental requirements. Modifying the cloud platform with the lowest modification cost allows us to create a suitable cloud platform for the target service at a relatively low cost.
[0013] In one possible implementation, the cost of the operating environment of the cloud platform to be modified meeting the environmental requirements includes one or more of the following: the time required to deploy the services on which the target service depends in the cloud platform to be modified, the scope of business affected by the operation of the target service in the cloud platform to be modified, and the utilization rate of the computing resources of the cloud platform to be modified.
[0014] Among them, the duration required to deploy the services that the target service depends on in the cloud platform, the scope of business affected by the operation of the target service in the cloud platform, and the utilization rate of the cloud platform's computing resources are all positively correlated with the cost of the cloud platform's operating environment meeting environmental requirements.
[0015] In one possible implementation, the target cloud platform for the target service is determined among multiple cloud platforms based on environmental requirements and the operating environment of each cloud platform. This includes: determining at least two cloud platforms among multiple cloud platforms based on environmental requirements and the operating environment of each cloud platform; wherein the operating environment of each of the at least two cloud platforms meets the environmental requirements; providing a first interface to the user, the first interface being used to display the operating environment of each of the at least two cloud platforms; and determining the target cloud platform among the at least two cloud platforms based on the selection operation issued by the user.
[0016] Among these multiple cloud platforms, there may be two or more cloud platform runtime environments that meet the environmental requirements. In this case, the runtime environments of these two or more cloud platforms can be displayed to the user, allowing the user to select the target cloud platform. This enhances user engagement and ensures a better user experience.
[0017] In one possible implementation, the environmental requirements include the computing resource requirements for the target service to run, and the operating environment of the target cloud platform includes the available computing resources of the target cloud platform; wherein, the available computing resources satisfy the computing resource requirements.
[0018] In this implementation, the first step is to ensure that the available computing resources of the target cloud platform meet the computing resource requirements for the operation of the target service, so as to avoid a situation where there is insufficient computing resources after the target service is deployed to the target cloud platform.
[0019] In one possible implementation, deploying the target service to the target cloud platform includes: providing a second interface to the user, the second interface being used to display the operating environment of the target cloud platform; and responding to the user's deployment instructions regarding the operating environment of the target cloud platform, deploying the target service to the target cloud platform.
[0020] In this implementation, the target cloud platform's operating environment can be shown to the user before deploying the target service. The target service can then be deployed only after the user confirms its availability. This ensures that the target cloud platform meets the user's preferences or other requirements before deployment, thus improving the user experience.
[0021] Furthermore, in this implementation, showing the user the operating environment of the target cloud platform also allows the user to determine whether the identified target cloud platform's operating environment truly meets the requirements of that environment, thus avoiding the deployment of the target service on an incorrect target cloud platform.
[0022] Secondly, a management platform is provided. The cloud system in which the management platform resides also includes multiple cloud platforms, each with a different operating environment. The management platform includes: a receiving module for receiving environment requirements, which indicate the operating environment required for the target service to run; a determining module for determining the target cloud platform for the target service based on the environment requirements and the operating environment of each cloud platform, wherein the operating environment of the target cloud platform meets the environment requirements; and a deployment module for deploying the target service to the target cloud platform to run the target service in the operating environment of the target cloud platform.
[0023] In one possible implementation, the determining module is used to: select cloud platforms to be modified from multiple cloud platforms based on environmental requirements and the operating environment of each cloud platform; wherein the cost of the operating environment of the cloud platform to be modified meeting the environmental requirements is less than the cost of the operating environment of other cloud platforms meeting the environmental requirements, and the other cloud platforms are cloud platforms other than the cloud platform to be modified from the multiple cloud platforms; and modify the operating environment of the cloud platform to be modified according to the environmental requirements to obtain the target cloud platform.
[0024] In one possible implementation, the cost of the operating environment of the cloud platform to be modified meeting the environmental requirements includes any one or more of the following: the time required to deploy the services on which the target service depends in the cloud platform to be modified, the scope of business affected by the operation of the target service in the cloud platform to be modified, and the utilization rate of the computing resources of the cloud platform to be modified.
[0025] In one possible implementation, the determining module is used to: determine at least two cloud platforms among the multiple cloud platforms based on environmental requirements and the operating environment of each cloud platform; wherein the operating environment of each of the at least two cloud platforms meets the environmental requirements; provide a first interface to the user, the first interface being used to display the operating environment of each of the at least two cloud platforms; and determine the target cloud platform among the at least two cloud platforms based on the selection operation issued by the user.
[0026] In one possible implementation, the environmental requirements include the computing resource requirements for the target service to run, and the operating environment of the target cloud platform includes the available computing resources of the target cloud platform; wherein, the available computing resources satisfy the computing resource requirements.
[0027] In one possible implementation, the deployment module is used to: provide a second interface to the user, which displays the operating environment of the target cloud platform; and respond to the user's deployment instructions regarding the operating environment of the target cloud platform by deploying the target service to the target cloud platform.
[0028] In one possible implementation, the operating environment of the target cloud platform includes any one or more of the following: deployed services in the target cloud platform, available computing resources in the target cloud platform, and the inter-service networking method in the target cloud platform.
[0029] Thirdly, a cloud system is provided, comprising: multiple cloud platforms, wherein different cloud platforms have different operating environments; a management platform connected to the multiple cloud platforms, configured to: receive environment requirements, which indicate the operating environment required for the operation of a target service; determine a target cloud platform for the target service among the multiple cloud platforms based on the environment requirements and the operating environment of each cloud platform; wherein the operating environment of the target cloud platform meets the environment requirements; and deploy the target service to the target cloud platform to run the target service in the operating environment of the target cloud platform.
[0030] Fourthly, a computing device cluster is provided, including at least one computing device, each computing device including a processor and a memory; the processor of the at least one computing device is configured to execute instructions stored in the memory of the at least one computing device, such that the computing device cluster performs the method provided in the first aspect.
[0031] Fifthly, a computer-readable storage medium is provided, including computer program instructions that, when executed by a cluster of computing devices, execute the method provided in the first aspect.
[0032] In a sixth aspect, a computer program product containing instructions is provided, which, when executed by a cluster of computer devices, causes the cluster of computer devices to perform the method provided in the first aspect.
[0033] The beneficial effects of aspects two through six can be found in the above description of the beneficial effects of aspect one, and will not be repeated here. Attached Figure Description
[0034] Figure 1 is a schematic diagram of a cloud system provided in an embodiment of this application;
[0035] Figure 2 is a schematic diagram of the structure of a management platform provided in an embodiment of this application;
[0036] Figure 3 is a flowchart of a service deployment method provided in an embodiment of this application;
[0037] Figure 4 is a schematic diagram of an interface provided in an embodiment of this application;
[0038] Figure 5 is a schematic diagram of an interface provided in an embodiment of this application;
[0039] Figure 6 is a schematic diagram of an interface provided in an embodiment of this application;
[0040] Figure 7 is a flowchart of a service deployment method provided in an embodiment of this application;
[0041] Figure 8 is a schematic diagram of an environmental modification provided in an embodiment of this application;
[0042] Figure 9 is a schematic diagram of a service deployment provided in an embodiment of this application;
[0043] Figure 10 is a schematic diagram of the structure of a management platform provided in an embodiment of this application;
[0044] Figure 11 is a schematic diagram of the structure of a computing device provided in an embodiment of this application;
[0045] Figure 12 is a schematic diagram of the structure of a computing device cluster provided in an embodiment of this application;
[0046] Figure 13 is a schematic diagram of the structure of a computing device cluster provided in an embodiment of this application. Detailed Implementation
[0047] The solutions provided in the embodiments of this application will now be described with reference to the accompanying drawings. In the embodiments of this application, "multiple" refers to two or more objects, and "various types" refers to two or more types. Terms such as "first," "second," etc., are only used to distinguish similar objects and are not necessarily used to describe a specific order or number of objects.
[0048] To facilitate understanding of the solutions provided in the embodiments of this application, the technical terms that may be involved in the embodiments of this application will be introduced first.
[0049] Services, also known as cloud services, refer to services deployed on a cloud platform to implement related business operations. Services can include rendering services, model training services, and data storage services. For example, services are provided by applications (APPs). Applications can be deployed on the cloud platform, thereby deploying services. For example, services can be deployed on the cloud platform using methods such as Infrastructure as Code (IaC). Services may have dependencies; the operation of one service depends on other services. Generally, to implement related business operations, some services may need to call other services. For example, in the image generation business, the rendering service needs to call the compositing service to composite the rendered image to complete the image generation. The other services called by a service during runtime can be called the services that the service depends on.
[0050] Service operation: refers to the program code that runs the service to implement the service's functions.
[0051] Service verification is a process in service operation. It refers to running a service before it is officially launched or put into use to verify whether the service can meet the expected requirements and whether there are any problems.
[0052] Operating environment: This can be simply referred to as the environment, and can be divided into the cloud platform's operating environment and the operating environment required for service operation. The cloud platform's operating environment refers to the environment within the cloud platform or the environment the cloud platform possesses; it includes the resources or conditions already present in the cloud platform that can support service operation. Typically, the cloud platform's operating environment consists of the services already deployed on the cloud platform, the available resources of the cloud platform, and the cloud platform's networking method. Available resources can include the type and quantity of available resources, and the cloud platform's networking method refers to the networking method between services within the cloud platform. The operating environment required for service operation, also called the service-dependent environment, refers to the resources or conditions required for service operation. Typically, the service-dependent operating environment can include the services the service depends on (i.e., the services the service needs to call during runtime), the required computing resources, and the required networking method. If the cloud platform hosting the service has the operating environment required for its operation, the service can run normally on that cloud platform. If the cloud platform hosting the service does not have the required operating environment (i.e., the cloud platform's operating environment does not match the service's required operating environment), the service may have difficulty running normally on that cloud platform.
[0053] Environmental requirements, also known as runtime environment requirements, indicate or describe the runtime environment required for a service to run. The runtime environment required for a service refers to the resources or conditions necessary for its operation. Accordingly, environmental requirements indicate or describe the resources or conditions required for a service to run. Typically, the runtime environment required for a service may include the services the service depends on (i.e., the services the service needs to call during runtime), the required computing resources, and the required network topology. Accordingly, environmental requirements may include service requirements, computing resource requirements, and network topology requirements. Service requirements indicate the services the service depends on, computing resource requirements indicate the computing resources required for the service to run, and network topology requirements indicate the network topology required for the service to run.
[0054] Computing resources, often simply referred to as resources, refer to the hardware, software, and data that support program execution and enable related functions. For example, resources can include processor resources, storage resources, and network resources. Processor resources can include a central processing unit (CPU) and a graphics processing unit (GPU). Storage resources can include memory, video memory, and hard disks. Network resources can include network interface controllers (NICs) and bandwidth. Furthermore, CPUs, GPUs, memory, hard disks, and NICs can be physical hardware or virtualized versions of physical hardware.
[0055] Available computing resources: also known as idle computing resources or computing resource reserves, refer to unused computing resources.
[0056] Network topology refers to the methods and rules for establishing communication between different devices or services in a computer network, as well as the disaster recovery methods for services.
[0057] Cloud technology refers to a managed service that unifies a series of resources such as hardware, software, and networks within a wide area network or local area network to enable data computing, storage, processing, and sharing.
[0058] Management platform: A platform provided by the resource provider for interaction with users. Users can register accounts on the management platform and rent resources within the cloud platform managed by the platform. For example, users can deploy services within the cloud platform through the management platform. In cloud technology, the management platform can be called a cloud management platform.
[0059] A cloud platform, often shortened to "cloud," is a collection of hardware and software resources. Typically, a cloud platform operates across multiple regions, each containing at least one data center, and each data center is equipped with hardware and software resources. Cloud service providers establish one or more cloud platforms. Cloud platforms can offer resources (including computing, storage, networking, and applications) to users in the form of services. Cloud platforms can be implemented as Infrastructure as a Service (IaaS), Platform as a Service (PaaS), or Software as a Service (SaaS). Cloud platforms can take the form of public clouds, private clouds, and hybrid clouds.
[0060] Public cloud: Hosted by a third-party cloud service provider, it provides services to the public via the internet. Public cloud offers advantages such as ease of use, high scalability, and pay-as-you-go billing, allowing businesses and other users to quickly start and expand their operations without significant upfront investment. However, because public cloud resources are shared and exposed to the internet, they also present security risks.
[0061] Private cloud: A cloud platform built for the exclusive use of enterprises and other users. Users can choose to host their private cloud in their own data center or rent private cloud resources from a third-party service provider. Private clouds generally have lower security risks.
[0062] Hybrid cloud is a cloud architecture that combines one or more public and private clouds through network connectivity. In other words, a hybrid cloud is a combination of public and private clouds. Users can flexibly switch and coordinate their work between the private and public clouds. Some of the user's data and applications are deployed in the private cloud, while other data is deployed in the public cloud, forming a unified cloud platform.
[0063] Tenant: A user who rents a cloud platform. Tenants can register an account on the cloud platform's management platform through a browser or other client, and use that account to access or utilize relevant resources or services within the cloud platform. The management platform can record different tenant accounts, enabling isolation between tenants based on their accounts.
[0064] A mirror image is a file format that can contain multiple files. A service's mirror image includes the service's program and the files that the program depends on. Service images can be used to deploy services.
[0065] Large enterprises and other users may have access to multiple cloud platforms. Due to business needs, user decisions, or operational factors, the services deployed and available computing resources on different cloud platforms may vary, resulting in different operating environments. Users may need to deploy new services or upgrade existing services. Since services require a specific operating environment with the necessary services and computing resources, it is crucial to select a cloud platform from among multiple options that meets the environmental requirements of the service to be deployed, ensuring the efficiency and effectiveness of service operation.
[0066] This application provides a service deployment method. When a user needs to deploy a service, this method obtains the service's environmental requirements and the runtime environments of multiple cloud platforms. Then, it filters out cloud platforms whose runtime environments meet the environmental requirements, determining the target cloud platform. Finally, it deploys the service on the target cloud platform to run the service within its runtime environment. This method efficiently selects suitable cloud platforms for service deployment from multiple cloud platforms, improving service deployment efficiency and ensuring the service's operational effectiveness.
[0067] Next, the service deployment method provided in the embodiments of this application will be introduced.
[0068] Figure 1 illustrates a cloud system 100 that can be used to implement this method. The cloud system 100 may include a management platform 110 and multiple cloud platforms, such as cloud platform 120, cloud platform 130, etc. The management platform 110 can connect to each of these multiple cloud platforms.
[0069] In some embodiments, the plurality of cloud platforms may include different types of cloud platforms. For example, the plurality of cloud platforms may include at least one private cloud and at least one public cloud. As another example, the plurality of cloud platforms may include at least one private cloud and at least one hybrid cloud. The plurality of cloud platforms may also include at least one hybrid cloud and at least one public cloud.
[0070] In some embodiments, the multiple cloud platforms are of the same type. For example, all of the multiple cloud platforms are private clouds. Another example is that all of the multiple cloud platforms are public clouds. Yet another example is that all of the multiple cloud platforms are hybrid clouds.
[0071] Each of these multiple cloud platforms has its own operating environment, and these environments may differ. For example, the services deployed on different cloud platforms may not be entirely the same, and the available computing resources may vary. The differences in computing resources can be due to variations in the type and / or quantity of computing resources. Computing resources can be categorized into types such as processor resources, storage resources, and network resources.
[0072] In some embodiments, "different services" can refer to services of different types. For example, service A1 deployed in cloud platform 120 and service A2 deployed in cloud platform 130 are services of different types; service A1 is a rendering service, and service A2 is a model training service.
[0073] In some embodiments, different services can be different versions of the same type of service. Specifically, service A3 deployed in cloud platform 120 and service A3' deployed in cloud platform 130 are different versions of the same type of service; for example, service A3 is version V1 of the data storage service, and service A3' is version V2 of the data storage service.
[0074] When a service needs to be deployed, the management platform 110 can determine the cloud platform for deploying the service from among multiple cloud platforms. For ease of description, the service to be deployed can be referred to as the target service, and the cloud platform used to deploy the target service can be referred to as the target cloud platform. The management platform 110 can determine the target cloud platform for the target service from among multiple cloud platforms according to the service deployment method provided in this application embodiment. As shown in Figure 1, the user 200 can input the environmental requirements of the target service into the management platform 110. For example, the user 200 can be an administrator or maintenance personnel of the cloud system 100. For example, the user 200 can be a tenant of the cloud system 100. The management platform 110 can also obtain the operating environment of each cloud platform. Then, based on the environmental requirements and the operating environment of each cloud platform, the management platform 110 can determine the target cloud platform for the target service from among the multiple cloud platforms. After determining the target cloud platform for the target service, the management platform 110 can deploy the target service to the target cloud platform to run the target service in the operating environment of the target cloud platform.
[0075] In some embodiments, as shown in FIG2, the management platform 110 may include a receiving module 111, a determining module 112, and a deployment module 113.
[0076] Referring to Figure 3, the receiving module 111 can execute step 301 to receive environment requirements. These environment requirements can be input by the user 200. For example, in step 300, the user 200 can log in to multiple cloud platforms through the receiving module 111 to deploy services on those platforms. For example, the user can log in to multiple cloud platforms using a single account through federated authentication or multi-cloud federated authentication.
[0077] The determining module 112 can execute step 302a to obtain the environment requirements received by the receiving module 111. The determining module 112 can also execute step 302b to obtain the operating environment of each cloud platform. Specifically, the determining module 112 can obtain description information of the cloud platform's operating environment, and based on this description information, the receiving module 111 can determine the operating environment of the cloud platform. The determining module 112 can execute step 303 to determine the target cloud platform for the target service among the multiple cloud platforms, based on the environment requirements and the operating environments of each cloud platform. For example, the target cloud platform is cloud platform 130.
[0078] In some embodiments, the determining module 112 can compare the operating environment indicated by the environmental requirements with the operating environments of each cloud platform to identify whether the operating environment of each cloud platform matches the operating environment indicated by the environmental requirements. If the operating environment of a cloud platform matches the operating environment indicated by the environmental requirements, it means that the operating environment of the cloud platform meets the environmental requirements. If the operating environment of a cloud platform does not match the operating environment indicated by the environmental requirements, it means that the operating environment of the cloud platform does not meet the environmental requirements. In this way, cloud platforms whose operating environments meet the environmental requirements can be determined. Then, cloud platforms whose operating environments meet the environmental requirements are used as target cloud platforms for the target service.
[0079] In some embodiments, the operating environments of at least two cloud platforms in cloud system 100 meet the environmental requirements. In this case, user 200 can select a target cloud platform from the at least two cloud platforms. Determination module 112 can provide interface B1 to user 200. Interface B1 can include the operating environment of each of the at least two cloud platforms. User 200 can issue a selection operation to select a cloud platform from the at least two cloud platforms. Determination module 112 can receive the selection operation and use the cloud platform selected by the selection operation as the target cloud platform. For example, the at least two cloud platforms can be set to cloud platform 120 and cloud platform 130, and interface B1 can be as shown in FIG. 4.
[0080] In some embodiments, the cloud platforms in cloud system 100 may not meet or fully meet the environmental requirements. In this case, the determining module 112 can first filter out the cloud platforms with lower costs from the multiple cloud platforms in cloud system 100 based on the environmental requirements and the operating environment of each cloud platform. Here, "cost" refers to the cost of ensuring the operating environment of the cloud platform meets the environmental requirements, or the cost of making the operating environment of the cloud platform meet the environmental requirements. Then, the operating environment of the cloud platform with lower costs is modified to obtain the target cloud platform. Modification refers to changing or rearranging the operating environment to alter it. The modified operating environment (i.e., the operating environment of the target cloud platform) meets the environmental requirements.
[0081] For example, as shown in Figure 2, the deployment module 113 may include a modification submodule, which can be used to modify the operating environment of the target cloud platform.
[0082] In some embodiments, as shown in FIG2, each cloud platform is equipped with an execution module, which can respond to the instructions of the deployment module 113 and perform related operations. For example, the execution module responds to the modification instructions of the deployment module 113 and performs modification operations on the operating environment of the cloud platform where the execution module is located.
[0083] The determination module 112 can execute step 304, notifying the deployment module 113 of the determined target cloud platform. Specifically, the determination module 112 can notify the deployment module 113 of the identifier of the target cloud platform, allowing the deployment module 113 to determine the target cloud platform based on this identifier.
[0084] Referring to Figure 3, deployment module 113 can execute step 307 to deploy the target service in the target cloud platform (e.g., cloud platform 130). In some embodiments, as shown in Figure 2, deployment module 113 may include a resource management submodule. The resource management submodule can deploy the target service to the target cloud platform. Specifically, the resource management submodule can select appropriate resources in the cloud platform according to the resource requirements of the target service (e.g., resource type, resource quantity, etc.) and deploy the target service using the selected resources. In some embodiments, as shown in Figure 2, deployment module 113 may include an image management submodule. The image management submodule can be used to acquire and store an image of the target service. The resource management submodule can use the image of the target service stored in the image management submodule to deploy the target service in the target cloud platform.
[0085] In some embodiments, as shown in Figure 2, the service deployment scenario can be a service version upgrade scenario.
[0086] In an illustrative example of this embodiment, for a service version upgrade scenario, the target service (i.e., the new version of the service) can be deployed on the target cloud platform, while the old version of the service in the target cloud platform is retained to avoid the impact of the instability of the new version of the service on business operations. In one example, the target cloud platform can be set as cloud platform 130, and the target service can be service A2'. Service A2' and service A2 are different versions of the same type of service, with service A2' being the new version and service A2 being the old version. Service A2' can be deployed on cloud platform 130, while service A2 in cloud platform 130 is retained.
[0087] In another illustrative example of this embodiment, for a service version upgrade scenario, a new version of the service (i.e., the target service) can be deployed on the target cloud platform, and the old version of the service can be deactivated to save cloud platform resources. The new version of the service takes over the relevant business operations from the old version, thus enabling verification of the new version while business operations are being performed.
[0088] In some embodiments, as shown in Figure 2, the service deployment scenario can be a new service deployment scenario. Here, a new service refers to a new service in cloud system 100, where no service of this type has yet been deployed on any of the cloud platforms within cloud system 100. For a new service deployment scenario, the target service can be deployed on the target cloud platform without changing other services on the target cloud platform. In one example, as shown in Figure 2, the target cloud platform can be set to cloud platform 120, and the target service can be service A4. Service A4 is a new service, not a new version of a certain type of service. Service A4 can be deployed on cloud platform 120 without changing other services on cloud platform 120.
[0089] In some embodiments, before performing step 307, the deployment module 113 may perform step 305 to provide interface B2 to user 200. Interface B2 may include the operating environment of the target cloud platform. The operating environment of the target cloud platform may include services deployed in the target cloud platform, available computing resources of the target cloud platform, etc. In one example, the target cloud platform may be set to cloud platform 120, as shown in FIG5, and interface B2 may include services deployed in cloud platform 120, such as service A1, service A3, etc. Interface B2 may also include available computing resources of cloud platform 120. In one example, the target cloud platform may be set to cloud platform 130, as shown in FIG6, and interface B2 may include services deployed in cloud platform 130, such as service A2, service A3', etc. Interface B2 may also include available computing resources of cloud platform 130.
[0090] Through interface B2, user 200 can learn about the operating environment of the target cloud platform, enabling user 200 to check whether the operating environment of the target cloud platform truly meets the environmental requirements, thus avoiding the deployment of the target service on the wrong target cloud platform.
[0091] Through interface B2, the user can execute step 306 to issue a deployment instruction for the target cloud platform's operating environment. For example, user 200, after confirming that the target cloud platform's operating environment meets the environmental requirements, issues a deployment instruction for the target cloud platform's operating environment. Deployment module 113 can receive and respond to the deployment instruction, executing step 308 to deploy the target service to the target cloud platform.
[0092] In some embodiments, as shown in Figure 5 or Figure 6, interface B2 may further include a deployment control area. User 200 can issue relevant instructions through the deployment control area. The deployment control area includes a function area for deploying the target service, to which user 200 can issue deployment instructions. For example, as shown in Figure 6, in a service version upgrade scenario, the function area for deploying the target service is also called the function area for upgrading the target service. User 200 can issue upgrade instructions to the function area for upgrading the target service. This upgrade instruction is a deployment instruction, used to instruct management platform 110 to deploy the target service (i.e., a new version of the service) in the target cloud platform.
[0093] After the target service is deployed on the target cloud platform, the deployment module 113 can execute step 308 to run the target service in the target cloud platform's runtime environment. For example, it can instruct the target cloud platform to allocate resources for the service, ensuring the service receives the necessary resources to run. Another example is that the target cloud platform's runtime environment includes services that the target service depends on; the deployment module 113 can instruct the target service to call these dependent services, enabling the target service to perform its functions. Additionally, the target service can utilize the target cloud platform's networking method to call other services, and so on. As shown in Figure 2, the deployment module 113 may include a networking submodule, which can establish communication links between the target service and other services according to the target cloud platform's networking method, allowing the target service to call other services through these communication links. For example, as shown in Figure 2, the deployment module 113 may include an operation submodule, which can be used to execute step 308.
[0094] In some embodiments, as shown in FIG2, the deployment module 113 may include a routing control submodule. The routing control submodule may forward the business data of all or part of the business users to the target service to verify whether the target service can process the business data normally.
[0095] In some embodiments, running the target service is to verify the target service. Upon completion of the target service verification, user 200 may issue a resource release instruction in step 309. Deployment module 113 may respond to this resource release instruction and execute step 310 to release the resources occupied by the target service.
[0096] The preceding examples illustrate the relevant functions of the cloud system 100 and management platform 110 provided in this application embodiment. Next, taking implementation in the cloud system 100 as an example, the execution flow of the service deployment method provided in this application embodiment is described. This method can be executed by the management platform 110. As shown in Figure 7, the method includes the following steps.
[0097] Step 701: The management platform 110 receives the environment requirement, which indicates the operating environment required for the target service to run.
[0098] Environmental requirements can be input by user 200. When user 200 has service deployment needs, they can input relevant information about the operating environment required for the service to run into the management platform 110. This information can be called environmental requirements. The service in question can be called the target service. Environmental requirements can indicate computing resource requirements, service requirements, network topology requirements, etc. Specifically, computing resource requirements indicate the computing resources needed for the target service to run; these resources can be used to deploy the target service and support its operation. Service requirements indicate the services that the target service depends on. Network topology requirements indicate the network topology required for communication between the target service and other services.
[0099] In some embodiments, the management platform 110 can also receive service deployment scenarios input by the user 200. As mentioned above, service deployment scenarios can be divided into service version upgrade scenarios and new service deployment scenarios.
[0100] Step 702: The management platform 110 can determine the target cloud platform for the target service among the multiple cloud platforms based on the environmental requirements and the operating environment of each cloud platform; wherein the operating environment of the target cloud platform meets the environmental requirements.
[0101] The target cloud platform's operating environment meeting the environmental requirements means that the target cloud platform's operating environment is consistent with the operating environment indicated by the environmental requirements, or that the operating environment indicated by the environmental requirements is a subset of the target cloud platform's operating environment.
[0102] In some embodiments, the environmental requirements include computing resource requirements, which indicate the computing resources needed to run the target service. The cloud platform's operating environment includes the cloud platform's available computing resources. Available computing resources satisfying the computing resource requirements may mean that the resource type of the available computing resources is consistent with the resource type of the computing resources indicated by the computing resource requirements, and that the amount of available computing resources is greater than or equal to the amount of computing resources indicated by the computing resource requirements.
[0103] In an illustrative example, computing resources can be categorized into resource types such as processor resources, storage resources, and network resources. The consistency between the resource type of available computing resources and the resource type indicated by the computing resource demand means that both available computing resources and the computing resources indicated by the computing resource demand are processor resources, or both are storage resources, or both are network resources, or both are processor resources and storage resources, or both are storage resources and network resources, or both are processor resources, storage resources, and network resources.
[0104] In an illustrative example, computing resources can be processor resources, and computing resource requirements include processor architecture requirements. Available computing resources satisfying a computing resource requirement can be defined as the processor architecture of the available computing resources satisfying that processor architecture requirement.
[0105] In some embodiments, the operating environments of multiple cloud platforms in cloud system 100 may not meet the environmental requirements. In this case, management platform 110 can first filter out the cloud platforms with lower costs based on the environmental requirements and the operating environment of each of the multiple cloud platforms. That is, the cost of the selected cloud platform is less than the cost of the other cloud platforms among the multiple cloud platforms. Here, cost refers to the cost of the cloud platform's operating environment meeting the environmental requirements. This cost, also known as the modification cost, refers to the cost required to modify the operating environment to meet the environmental requirements. For ease of description, the cloud platform with lower costs can be referred to as the cloud platform to be modified. In other words, the cost of the cloud platform to be modified meeting the environmental requirements is less than the cost of the other cloud platforms among the multiple cloud platforms meeting the environmental requirements. Here, "other cloud platforms" refers to the cloud platforms other than the cloud platform to be modified.
[0106] In one example, the cost of meeting the environmental requirements of the cloud platform's operating environment can include the time required to deploy the services that the target service depends on within the cloud platform.
[0107] The services already deployed in a cloud platform may not include one or more services that the target service depends on; these services can be referred to as missing services in the cloud platform. To ensure the cloud platform's operating environment meets environmental requirements, the missing services need to be deployed in the cloud platform. The missing services may not be entirely the same across different cloud platforms; that is, to ensure different cloud platforms' operating environments meet environmental requirements, different services need to be deployed on different cloud platforms. For example, as shown in Figure 8, the services that the target service depends on can be defined as services A1 and A2. The services already deployed in cloud platform 120 are services A1 and A3; therefore, the missing service in cloud platform 120 is service A2. The services already deployed in cloud platform 130 are services A2 and A3'; therefore, the missing service in cloud platform 130 is service A1. The time required to deploy service A2 is the time required to deploy the services that the target service depends on in cloud platform 120, and the time required to deploy service A1 is the time required to deploy the services that the target service depends on in cloud platform 130. The time required to deploy a service can be the actual time historically spent deploying that service. Historically, when a service was deployed, the actual time taken to deploy it can be recorded to obtain the historical time required to deploy the service.
[0108] The time required to deploy the services that the target service depends on in a cloud platform affects the efficiency of the deployment. Therefore, the time required to deploy the services that the target service depends on in a cloud platform is positively correlated with the cost of the cloud platform.
[0109] In one example, the cost of the cloud platform's operating environment meeting environmental requirements can include the scope of business operations on the cloud platform affected by the operation of the target service.
[0110] Conflicts may exist between services. For example, rendering services and model training services may compete for or contend for GPUs, leading to conflicts between them. Services that conflict with the target service may be deployed on the cloud platform. For ease of description, services that conflict with the target service are referred to as victim services. To avoid conflicts, victim services can be migrated to other cloud platforms. However, migrating victim services causes service interruption. Furthermore, migrating victim services also incurs computational resource overhead. The duration of service interruption for victim services on the cloud platform and the computational resource overhead of migrating victim services increase the cost of the cloud platform. The computational resource overhead of migrating victim services on the cloud platform can be represented by the number of victim services on the cloud platform. Therefore, the scope of business affected by the operation of the target service on the cloud platform can include the number of victim services on the cloud platform and the duration of service interruption for victim services.
[0111] The larger the scope of business affected by the operation of the target service in the cloud platform, the greater the impact on the business in the cloud platform. Therefore, the scope of business affected by the operation of the target service in the cloud platform is positively correlated with the cost of the cloud platform.
[0112] In one example, the cost of a cloud platform's operating environment meeting environmental requirements can include the utilization rate of the cloud platform's computing resources. The higher the resource utilization rate of the cloud platform, the greater the impact of the resource overhead caused by the target service on other services in the cloud platform. Therefore, the resource utilization rate of the cloud platform is positively correlated with the cost of the cloud platform.
[0113] In one example, the cost of the cloud platform's operating environment meeting environmental requirements may include at least two of the following: the time required to deploy services on which the target service depends in the cloud platform, the scope of business affected by the operation of the target service in the cloud platform, and the utilization rate of the cloud platform's computing resources.
[0114] In some embodiments, the time required to deploy services on which the target service depends, the scope of business affected by the operation of the target service on the cloud platform, and the utilization rate of the cloud platform's computing resources can be referred to as cost metrics. When there are multiple cost metrics, each cost metric can be assigned a value, and the values of different cost metrics can be normalized to obtain a score for each cost metric. The scores of each cost metric of the cloud platform are used to calculate the cost of the cloud platform. For example, for a single cost metric, the values of the cost metrics of each cloud platform can be sorted to obtain a sorting result. The total score can be set to 100 points, and the sorting result can be assigned scores at equal intervals. For example, it can be divided into 5 intervals, with the cost metric in the first interval having a score of 100, the cost metric in the second interval having a score of 80, ..., and the cost metric in the fifth interval having a score of 20.
[0115] The cost of a cloud platform can be obtained by summing the scores of its various cost metrics.
[0116] In one example of this embodiment, weights can be assigned to the cost metrics, and the scores of each cost metric of the cloud platform can be weighted and summed to obtain the cost of the cloud platform. Here, n cost metrics can be set, and weights [w1, w2, ... w] can be assigned. n ]. It can be done through formula Calculate the cost of this cloud platform. Where D... j V represents the j-th cloud platform. i w represents the score of the i-th cost metric. i The weight represents the i-th cost indicator.
[0117] For example, as shown in Table 1, the time required to deploy the target service's dependent services on cloud platform 120 is 5 minutes, with a score of 100 and a weight of 40%. The business scope affected by the target service deployment on cloud platform 120 is 0, with a score of 20. The computing resource utilization rate of cloud platform 120 is 20%, with a score of 100. The time required to deploy the target service's dependent services on cloud platform 130 is 3 minutes, with a score of 50 and a weight of 40%. The business scope affected by the target service deployment on cloud platform 120 is 0, with a score of 20. The computing resource utilization rate of cloud platform 120 is 15%, with a score of 50. Among these, the weight of the cost indicator "time required to deploy the target service's dependent services on the cloud platform" is 40%, the weight of the cost indicator "business scope affected by the target service deployment on the cloud platform" is 40%, and the weight of the cost indicator "computing resource utilization rate" is 20%. The calculated cost for cloud platform 120 is 58, and the cost for cloud platform 130 is 43.
[0118] Table 1
[0119] In this way, the cost of each cloud platform in cloud system 100 can be obtained, and the cloud platform with the lower cost can be identified. The cloud platform with the lower cost can also be referred to as the cloud platform to be modified.
[0120] Once the cloud platform to be modified is identified, its operating environment can be modified according to the environmental requirements of the target service deployment to ensure that the operating environment meets these requirements. The modified cloud platform is referred to as the target cloud platform.
[0121] In some embodiments, the services already deployed on the cloud platform to be modified do not include one or more services that the target service depends on. The modification of the cloud platform to be modified can involve deploying these one or more services on the cloud platform. For example, these one or more services can be deployed on the cloud platform to be modified through service orchestration. Specifically, an IaC file can be generated, which is used to orchestrate the services in the cloud platform to be modified, including the one or more services. Then, the IaC file is used to orchestrate the services in the cloud platform to be modified, thereby deploying the one or more services to the cloud platform and completing the modification of the cloud platform's operating environment.
[0122] In some embodiments, at least two cloud platforms in the cloud system 100 may have operating environments that meet the environmental requirements of the target service. That is, the management platform 110 can determine at least two cloud platforms from among the multiple cloud platforms based on the environmental requirements and the operating environment of each cloud platform; wherein the operating environment of each of the at least two cloud platforms meets the environmental requirements. In this case, the user 200 can select the target cloud platform from the at least two cloud platforms. The management platform 110 can provide the user 200 with an interface B1, which displays the operating environment of each of the at least two cloud platforms. The user 200 can issue a selection operation for any of the at least two cloud platforms, which is used to select the target cloud platform. The management platform 110 can receive the selection operation and, based on the selection operation, determine the target cloud platform from the at least two cloud platforms. Related implementation methods can be referred to the above description of the embodiment shown in Figure 4, and will not be repeated here.
[0123] In some embodiments, as described above, the management platform 110 may receive a service deployment scenario input by the user 200. In step 702, the target cloud platform may be determined among multiple cloud platforms based on the service deployment scenario.
[0124] In one example, the service deployment scenario can be defined as a service version upgrade scenario. In step 702, cloud platforms that have deployed older versions of services are first selected from multiple cloud platforms in cloud system 100. The older version service refers to an older version of the service type to which the target service belongs. There can be at least two cloud platforms that have deployed older version services. Then, based on environmental requirements and the operating environment of each of these at least two cloud platforms, the target cloud platform is determined. This example ensures that the operating environment of the target service is consistent with the operating environment of the older version service.
[0125] In one example, the service deployment scenario can be set as a new service deployment scenario. If there are at least two cloud platforms that meet the environment requirements, the cloud platform with fewer service types among the at least two cloud platforms can be used as the target cloud platform to achieve distributed deployment of different types of services.
[0126] Therefore, the target cloud platform for the target service can be determined through the above methods.
[0127] Referring again to Figure 7, the management platform 110 can execute step 703 to deploy the target service to the target cloud platform so that the target service can run in the target cloud platform's operating environment. For example, the available computing resources in the target cloud platform's operating environment can support the operation of the target service, the target service can call related services in the target cloud platform's operating environment, the target service can communicate with other services through the networking methods in the target cloud platform's operating environment, and so on.
[0128] In some embodiments, the management platform 110 may provide an interface B2 to the user 200, which displays the operating environment of the target cloud platform. The user 200 may issue a deployment instruction for the operating environment of the target cloud platform to confirm the deployment of the target service on the target cloud platform. Upon receiving the deployment instruction, the management platform 110 responds to the deployment instruction and deploys the target service to the target cloud platform. Related implementation methods can be found in the description of the embodiments shown in Figures 5 or 6 above, and will not be repeated here. In this embodiment, the user 200 can know the operating environment of the target cloud platform, enabling the user 200 to check whether the operating environment of the target cloud platform truly meets the environmental requirements, thus avoiding the deployment and operation of the target service on an incorrect target cloud platform.
[0129] In some embodiments, the target service is a service that needs to be verified. Business flows can be directed to the target service through routing orchestration to verify the target service. Referring to Figure 9, the target service can be set as service A1', and service A3' is a service that service A1' depends on. For example, the management platform 110 can direct business flow 1 to service A1' through business flow control, allowing service A1' to process business flow 1. Service A1' can send the processing result of business flow 1 to the routing submodule. The routing submodule can identify that the processing result is the processing result of service A1', belonging to the verification business. The routing submodule can forward the processing result to service A3'. Verification business refers to the verification of a service; that is, the verification of a service can be called verification business. For example, service A1' can request the interface of service A3' from the routing control submodule, and service A1' sends the processing result of business flow 1 to service A3' through this interface. For example, as shown in Figure 9, relevant users can initiate a call to service A1' through the verification workbench to verify service A1'.
[0130] For example, while verifying the target service, the target cloud platform can also perform baseline business operations. These baseline business operations are non-verification operations, performed by officially launched services. As shown in Figure 9, services A1 and A3 can both be officially launched services. Service A1 in the target cloud platform can process business flow 2 and send the processing result to the routing control submodule. The routing control submodule can identify that the processing result belongs to the baseline business and send it to service A3. For example, as shown in Figure 9, relevant users can initiate calls to service A1 through the baseline workbench to perform baseline business operations.
[0131] For example, a service flow has a user identifier (ID). The user identifier can be used to identify whether the service flow is used for baseline services or for authentication services. The routing control submodule can forward the service flow to the corresponding service based on the service flow's user identifier.
[0132] In summary, the service deployment method provided in this application embodiment can quickly select a suitable cloud platform for service deployment from multiple cloud platforms, thereby improving service deployment efficiency and ensuring service operation performance.
[0133] In some embodiments, the service deployment method provided in this application may also be implemented in the following ways.
[0134] In various cloud platform scenarios, suitable environments can be quickly orchestrated and generated based on the user's environmental requirements.
[0135] 1. Enterprises / organizations deploy multiple private clouds or hybrid clouds for their IT systems;
[0136] 2. Due to factors such as upgrade cycles, the cloud services and versions deployed on each cloud are not entirely consistent.
[0137] 3. The changed or added cloud services have complex dependencies on other cloud services and versions.
[0138] In this embodiment, the multi-cloud environment scheduling engine synchronizes information about the multi-cloud environment, including cloud networking, cloud service health, current version, resource availability, historical change data, processor architecture, and other information.
[0139] User-submitted environment requirements can include the required environment information and usage scenarios, including the cloud services and versions the environment depends on, the specifications of the deployed cloud service resources, network topology, processor requirements, and usage scenarios such as service deployment and upgrade scenarios.
[0140] The cloud service orchestration engine evaluates factors such as cloud service dependencies, version compatibility information, cloud platform resource availability, and impact of change operations based on user input and environment synchronization information from various cloud platforms through a cost assessment module, and selects a suitable target cloud environment.
[0141] Environment change orchestration: Based on the selected cloud environment, the cloud scheduling engine generates the required environment change configuration file (such as an IaC configuration file) and distributes the configuration file to the corresponding cloud platform to execute the change operation. By supporting multi-instance deployment and routing orchestration of cloud services, it returns the required environment and workbench entry point to the user without affecting the use of other users.
[0142] In this embodiment, service deployment can be achieved through the following components.
[0143] 1. User authentication / management module: Enables a single account to be used in multiple cloud environments through federated authentication and multi-cloud federated authentication.
[0144] 2. Cloud Service Orchestration Engine: Based on the user's input environment requirements, it orchestrates and generates the necessary environment. The accompanying cloud service orchestration engine includes resource management, routing control, configuration center, image / package management, environment information / topology management, configuration generation modules (such as IaC configuration generation), and a Console / workbench framework.
[0145] 3. Cost Assessment Module: To improve the efficiency of rapid environment deployment, the cloud service orchestration engine calls this module to perform cost assessment. Factors considered in the assessment module include: change operation duration (installation, environment upgrade), availability of environment resources, and the impact of interruptions caused by the change.
[0146] 4. Cloud service orchestration executor: orchestrates and executes the configuration files generated by the cloud orchestration engine, including the routing, scheduling, and orchestration of different cloud service instances.
[0147] For example, a user can enter the following:
[0148] Scenario testing: Upgrading service A or deploying a new service (depending on services B and C);
[0149] The resource specifications required for cloud services, such as CPU, memory, and disk size;
[0150] Dependent cloud services (optional): such as services B and C that service A depends on; (dependent services can be automatically obtained after the multi-cloud environment management data is initialized)
[0151] Version information (optional): Service B is version v1, and Service C is version v1.
[0152] The management platform can output the following content.
[0153] The multi-cloud environment management service quickly generates the environment required for service deployment and returns the user's console / workbench interface.
[0154] The service deployment process can be described as follows.
[0155] 1. Users input the cloud service template to be deployed, including version dependencies, resource specifications, environment type, configuration parameters, test scenarios, etc.
[0156] 2. The multi-cloud service orchestration engine calls the cost assessment module based on the obtained environment information. It then uses historical statistics on change operation duration, environmental resource availability, and the impact of change interruptions (if changes are made to the cloud platform, interruptions may occur) to determine a suitable deployment environment.
[0157] 3. Based on the evaluation results, the multi-cloud service engine generates configuration files for environment changes (such as IaC configuration files) and deploys different instances for different versions of the same cloud service.
[0158] 4. The distributed configuration files (such as the IaC configuration file) contain strategies for inter-service forwarding. Service call orchestration is achieved through routing strategies based on cloud service call interfaces.
[0159] 5. The multi-cloud environment service generates a Console link and returns it to the applicant user. The user can use this link to authorize operations, such as deploying a new version of the service, upgrading an existing version, or issuing cloud service instances.
[0160] 6. Test complete. Release resources via Console.
[0161] The cost evaluation module can use the following matching degree algorithm.
[0162] 1. Rank and evaluate each factor separately:
[0163] 11. Change operation time (installation, environment upgrade)
[0164] 12. Environmental resource availability
[0165] 13. The impact of the interruption of the change.
[0166] 2. Calculate the score for the factor according to the ranking. The total score is 100 points. Assign scores at equal intervals according to the ranking. For example, if n=5, V1 is assigned a score of 100, V2 is assigned a score of 80, ..., V0 is assigned a score of 0.
[0167] 3. Each factor has a weighting [W1, W2, ..., Wn].
[0168] 4. Matching degree calculation
[0169] The matching algorithm example is as follows.
[0170] It can be configured to have two clouds, Cloud1 and Cloud2. Cloud1 already has services B(v1) and C(v2), and Cloud2 already has services B(v2) and C(v1). A new service A is installed, which depends on B(v2) and C(v2).
[0171] Cloud1 adds B(v2), with operation time, resource utilization, and interruption time of (5 minutes, 20%, 0 minutes) respectively;
[0172] Cloud2 adds C(v2), with operation time, resource utilization, and interruption time of (3 minutes, 15%, 0 minutes) (new service instance);
[0173] 3. The weights for change duration, average resource utilization, and downtime are 40%, 20%, and 40%, respectively.
[0174] The calculated scores are shown in Table 2.
[0175] Table 2
[0176] Service deployment scenarios can be divided into testing and verification before service upgrades and deployment of new types of services.
[0177] The testing and verification methods before service upgrade are as follows.
[0178] For user X, the application is for service A, which depends on services B and C. The multi-cloud environment management service returns to the workbench interface:
[0179] The console / workbench provides upgrade-related parameters and entry points, allowing user X to upgrade service A through tools or manual methods.
[0180] User X can verify this by providing instances of Service A before and after the upgrade.
[0181] Once verification is complete, the environment can be released on the workbench.
[0182] The above scenarios are typically used for testing and verification before service upgrades.
[0183] The deployment methods for new types of services are as follows.
[0184] For user Y, a new type of service is requested for deployment. This new type of service depends on services B and C (version information for services B and C is optional). The multi-cloud environment management service returns to the workbench interface.
[0185] User Y can obtain the parameters and resource information for deploying new services from the workbench.
[0186] After user Y deploys a new type of service using tools or manually, service instances are issued for verification.
[0187] Multi-cloud service environment management service deploys multiple cloud service instances (such as service A) on a cloud service platform. The dependent services of the corresponding test service are shared through routing orchestration, thereby enabling rapid environment orchestration.
[0188] User 1's call scenario is as follows:
[0189] 1. User 1 initiates a call to service A (version: v1) from the Console. Service A (version: v1) requests the interface of service B from the API gateway.
[0190] 2. The API gateway identifies the call's traceid-001 and uses the traceid to find that the initiating user is user 1;
[0191] 3. Based on the environment to which User 1 belongs as the baseline environment, the API gateway will forward the call to Service B1;
[0192] 4. User 1 initiates a call to service A (version: v1) from the Console. Service A (version: v1) requests the interface of service B from the API gateway.
[0193] User 2's scenario is as follows:
[0194] 1. User 1 initiates a call to service A (version: v1) from the Console. Service A (version: v2) requests the interface of service B from the API gateway.
[0195] 2. The API gateway identifies the traceid-001 of the call and uses the traceid-001 to find that the initiating user is user 2;
[0196] 3. If User 2's environment is Test Environment 1, the API Gateway will forward the call to Service B (version: v2);
[0197] 4. User 2 initiates a call to service A (version: v1) from the workbench. Service A (version: v1) requests the interface of service B (v2) from the API gateway.
[0198] Among them, traceid-001 and traceid-001 mentioned above are both trace IDs for service calls. The API gateway can query the corresponding user based on the traceId, and can query the corresponding routing and forwarding rules based on the user.
[0199] In summary, the solution presented in this embodiment can automatically select and orchestrate the required environment in a multi-cloud scenario by synchronizing information across multiple cloud environments through multi-cloud environment management, thus meeting the needs of testing environments in multi-cloud scenarios. Specifically, in a multi-cloud scenario, the required cloud platform environment is found through condition matching based on user input.
[0200] This embodiment's solution selects a suitable target cloud environment based on user-inputted application information, by evaluating factors such as cloud service dependencies, version compatibility, cloud platform resource availability, and the impact of change operations. In multi-cloud scenarios, the user inputs necessary environment requirements, and the system, through cost assessment, minimizes the impact on the existing environment, providing applicants with a better experience and improving the efficiency of environment application.
[0201] This embodiment's solution can return different console interfaces based on user application requirements, allowing users to perform operations such as deploying, upgrading, or providing instances of the requested cloud services. The console interface obtained by the user is strongly relevant to the application scenario, avoiding useless information and improving the user experience. Furthermore, operations on the requested environment are restricted to prevent damage to the environment and thus avoid affecting other users.
[0202] Based on the above description, this application provides a management platform 1000. The cloud system where the management platform 100 resides also includes multiple cloud platforms, wherein different cloud platforms have different operating environments. As shown in Figure 10, the management platform 100 includes:
[0203] The receiving module 1010 is used to receive environmental requirements, which are used to indicate the operating environment required for the target service to run;
[0204] The determination module 1020 is used to determine the target cloud platform for the target service among the multiple cloud platforms based on the environmental requirements and the operating environment of each cloud platform; wherein the operating environment of the target cloud platform meets the environmental requirements.
[0205] The deployment module 1030 is used to deploy the target service to the target cloud platform so that the target service can run in the operating environment of the target cloud platform.
[0206] In some embodiments, the determining module 1020 is configured to: based on the environmental requirements and the operating environment of each of the multiple cloud platforms, select a cloud platform to be modified from the multiple cloud platforms; wherein the cost of the operating environment of the cloud platform to be modified meeting the environmental requirements is less than the cost of the operating environment of other cloud platforms meeting the environmental requirements, and the other cloud platforms are cloud platforms other than the cloud platform to be modified from the multiple cloud platforms; and modify the operating environment of the cloud platform to be modified according to the environmental requirements to obtain the target cloud platform.
[0207] In one example of this embodiment, the cost of the operating environment of the cloud platform to be modified meeting the environmental requirements includes any one or more of the following: the time required to deploy the services on which the target service depends in the cloud platform to be modified, the scope of business affected by the operation of the target service in the cloud platform to be modified, and the utilization rate of the computing resources of the cloud platform to be modified.
[0208] In some embodiments, the determining module 1020 is configured to: determine at least two cloud platforms among the plurality of cloud platforms based on the environmental requirements and the operating environment of each cloud platform among the plurality of cloud platforms; wherein the operating environment of each of the at least two cloud platforms meets the environmental requirements; provide a first interface to the user, the first interface being used to display the operating environment of each of the at least two cloud platforms; and determine the target cloud platform among the at least two cloud platforms based on the selection operation issued by the user.
[0209] In some embodiments, the environmental requirements include the computing resource requirements for running the target service, and the operating environment of the target cloud platform includes the available computing resources of the target cloud platform; wherein the available computing resources satisfy the computing resource requirements.
[0210] In some embodiments, the deployment module 1030 is configured to: provide a second interface to a user, the second interface being used to display the operating environment of the target cloud platform; and, in response to a deployment instruction issued by the user regarding the operating environment of the target cloud platform, deploy the target service to the target cloud platform. In some embodiments, the operating environment of the target cloud platform includes any one or more of the following: deployed services in the target cloud platform, available computing resources in the target cloud platform, and inter-service networking methods in the target cloud platform.
[0211] The receiving module 1010, determining module 1020, and deploying module 1030 can all be implemented in software or in hardware. For example, the implementation of the receiving module 1010 will be described below. Similarly, the implementation of the determining module 1020 and the deploying module 1030 can refer to the implementation of the receiving module 1010.
[0212] As an example of a software functional unit, the receiving module 1010 may include code running on a computing instance. The computing instance may include at least one of a physical host (computing device), a virtual machine, and a container. Further, the aforementioned computing instance may be one or more. For example, the receiving module 1010 may include code running on multiple hosts / virtual machines / containers. It should be noted that the multiple hosts / virtual machines / containers used to run the code may be distributed in the same region or in different regions. Further, the multiple hosts / virtual machines / containers used to run the code may be distributed in the same Availability Zone (AZ) or in different AZs, each AZ including one or more geographically proximate data centers. Typically, a region may include multiple AZs.
[0213] Similarly, multiple hosts / virtual machines / containers used to run this code can be distributed within the same VPC or across multiple VPCs. Typically, a VPC is set up within a region. Communication between two VPCs within the same region, as well as between VPCs in different regions, requires a communication gateway to be set up within each VPC to enable interconnection between VPCs.
[0214] As an example of a hardware functional unit, the receiving module 1010 may include at least one computing device, such as a server. Alternatively, the receiving module 1010 may also be a device implemented using an application-specific integrated circuit (ASIC) or a programmable logic device (PLD). The PLD may be implemented using a complex programmable logical device (CPLD), a field-programmable gate array (FPGA), generic array logic (GAL), or any combination thereof.
[0215] The multiple computing devices included in the receiving module 1010 can be distributed in the same region or in different regions. Similarly, the multiple computing devices included in the receiving module 1010 can be distributed in the same Availability Zone (AZ) or in different AZs. Likewise, the multiple computing devices included in the receiving module 1010 can be distributed in the same Virtual Private Cloud (VPC) or in multiple VPCs. These multiple computing devices can be any combination of computing devices such as servers, ASICs, PLDs, CPLDs, FPGAs, and GALs.
[0216] It should be noted that, in other embodiments, the receiving module 1010 can be used to execute any step in the method shown in FIG. 7, the determining module 1020 can be used to execute any step in the method shown in FIG. 7, and the deployment module 1030 can be used to execute any step in the method shown in FIG. 7. The steps implemented by the receiving module 1010, the determining module 1020, and the deployment module 1030 can be specified as needed. By implementing different steps in the method shown in FIG. 7 through the receiving module 1010, the determining module 1020, and the deployment module 1030 respectively, all functions of the management platform 1000 can be realized.
[0217] This application also provides a computing device 1100. As shown in FIG11, the computing device 1100 includes: a bus 1102, a processor 1104, a memory 1106, and a communication interface 1108. The processor 1104, the memory 1106, and the communication interface 1108 communicate with each other via the bus 1102. The computing device 1100 may be a server or a terminal device. It should be understood that this application does not limit the number of processors and memories in the computing device 1100.
[0218] Bus 1102 can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. Buses can be categorized as address buses, data buses, control buses, etc. For ease of illustration, only one line is used in Figure 11, but this does not imply that there is only one bus or one type of bus. Bus 1102 can include pathways for transmitting information between various components of computing device 1100 (e.g., memory 1106, processor 1104, communication interface 1108).
[0219] The processor 1104 may include any one or more processors such as a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor (MP), or a digital signal processor (DSP).
[0220] The memory 1106 may include volatile memory, such as random access memory (RAM). The memory 1106 may also include non-volatile memory, such as read-only memory (ROM), flash memory, hard disk drive (HDD), or solid state drive (SSD).
[0221] The memory 1106 stores executable program code, which the processor 1104 executes to implement the functions of the aforementioned receiving module 1010, determining module 1020, and deployment module 1030, thereby implementing the method shown in FIG7. That is, the memory 1106 stores instructions for executing the method shown in FIG7.
[0222] The communication interface 1108 uses transceiver modules such as, but not limited to, network interface cards and transceivers to enable communication between the computing device 1100 and other devices or communication networks.
[0223] This application also provides 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.
[0224] As shown in Figure 12, the computing device cluster includes at least one computing device 1100. The memory 1106 of one or more computing devices 1100 in the computing device cluster may store the same instructions for executing the method shown in Figure 7.
[0225] In some possible implementations, the memory 1106 of one or more computing devices 1100 in the computing device cluster may also store partial instructions for executing the method shown in FIG7. In other words, a combination of one or more computing devices 1100 can jointly execute the instructions for executing the method shown in FIG7.
[0226] It should be noted that the memory 1106 in different computing devices 1100 in the computing device cluster can store different instructions, which are used to execute some functions of the management platform 1000. That is, the instructions stored in the memory 1106 in different computing devices 1100 can realize the functions of one or more modules of the receiving module 1010, the determining module 1020 and the deployment module 1030.
[0227] In some possible implementations, one or more computing devices in a computing device cluster can be connected via a network. This network can be a wide area network (WAN) or a local area network (LAN), etc. Figure 13 illustrates one possible implementation. As shown in Figure 13, two computing devices 1100A and 1100B are connected via a network. Specifically, they are connected to the network through communication interfaces in each computing device. In this type of possible implementation, the memory 1106 in computing device 1100A stores instructions for performing the functions of the receiving module 1010. Simultaneously, the memory 1106 in computing device 1100B stores instructions for performing the functions of the determining module 1020 and the deployment module 1030.
[0228] It should be understood that the functions of computing device 1100A shown in Figure 13 can also be performed by multiple computing devices 1100. Similarly, the functions of computing device 1100B can also be performed by multiple computing devices 1100.
[0229] This application also provides another computing device cluster. The connection relationship between the computing devices in this computing device cluster can be similar to the connection method of the computing device clusters described in Figures 12 and 13. The difference is that the memory 1106 of one or more computing devices 1100 in this computing device cluster can store the same instructions for executing the method shown in Figure 7.
[0230] In some possible implementations, the memory 1106 of one or more computing devices 1100 in the computing device cluster may also store partial instructions for executing the method shown in FIG7. In other words, a combination of one or more computing devices 1100 can jointly execute the instructions for executing the method shown in FIG7.
[0231] This application also provides a cloud system comprising: multiple cloud platforms and a management platform connected to the multiple cloud platforms.
[0232] Among these multiple cloud platforms, different cloud platforms have different operating environments.
[0233] The management platform is used to: receive environmental requirements, which indicate the operating environment required for the target service to run; determine the target cloud platform for the target service among the multiple cloud platforms based on the environmental requirements and the operating environment of each cloud platform; wherein the operating environment of the target cloud platform meets the environmental requirements; and deploy the target service to the target cloud platform to run the target service in the operating environment of the target cloud platform.
[0234] The cloud platform can be implemented with reference to the above description of the cloud platform in the embodiment shown in Figure 1, and the management platform can be implemented with reference to the above description of management platform 110 or management platform 1000.
[0235] This application also provides a computer program product containing instructions. The computer program product may be a software or program product containing instructions, capable of running on a computing device or stored on any usable medium. When the computer program product is run on at least one computing device, it causes the at least one computing device to perform the method shown in FIG7.
[0236] This application also provides a computer-readable storage medium. The computer-readable storage medium can be any available medium that a computing device can store, or a host migration device such as a data center that includes one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state drive). The computer-readable storage medium includes instructions that instruct the computing device to perform the method shown in FIG7.
[0237] The above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the protection scope of the technical solutions of the embodiments of this application.
Claims
1. A service deployment method characterized by, The method is applied to a management platform in a cloud system, and the cloud system further includes a plurality of cloud platforms, wherein different cloud platforms in the plurality of cloud platforms have different running environments; the method includes: receiving an environment requirement, the environment requirement being used to indicate a running environment required by a target service to run; determining a target cloud platform of the target service in the plurality of cloud platforms based on the environment requirement and a running environment of each cloud platform in the plurality of cloud platforms, wherein the running environment of the target cloud platform meets the environment requirement; deploying the target service into the target cloud platform to run the target service in the running environment of the target cloud platform.
2. The method of claim 1, wherein, The determining of the target cloud platform of the target service in the plurality of cloud platforms based on the environment requirement and the running environment of each cloud platform in the plurality of cloud platforms includes: The filtering of a to-be-renovated cloud platform in the plurality of cloud platforms based on the environment requirement and the running environment of each cloud platform in the plurality of cloud platforms, wherein a cost of the running environment of the to-be-renovated cloud platform meeting the environment requirement is less than a cost of a running environment of other cloud platforms meeting the environment requirement, the other cloud platforms being cloud platforms in the plurality of cloud platforms except the to-be-renovated cloud platform; renovating the running environment of the to-be-renovated cloud platform according to the environment requirement to obtain the target cloud platform.
3. The method of claim 2, wherein, The cost of the running environment of the to-be-renovated cloud platform meeting the environment requirement includes any one or more of the following: a time length required for deploying a service relied on by the target service in the to-be-renovated cloud platform, a business range affected by running of the target service in the to-be-renovated cloud platform, and a computing resource utilization of the to-be-renovated cloud platform.
4. The method of claim 1, wherein, The determining of the target cloud platform of the target service in the plurality of cloud platforms based on the environment requirement and the running environment of each cloud platform in the plurality of cloud platforms includes: The determining of at least two cloud platforms in the plurality of cloud platforms based on the environment requirement and the running environment of each cloud platform in the plurality of cloud platforms, wherein the running environment of each cloud platform in the at least two cloud platforms meets the environment requirement; providing a first interface to a user, the first interface being used to show the running environment of each cloud platform in the at least two cloud platforms; determining the target cloud platform in the at least two cloud platforms based on a selection operation issued by the user.
5. The method according to any one of claims 1-4, characterized in that, The environment requirement includes a computing resource requirement of running of the target service, and the running environment of the target cloud platform includes available computing resources of the target cloud platform, wherein the available computing resources meet the computing resource requirement.
6. The method according to any one of claims 1-5, characterized in that, The deploying of the target service into the target cloud platform includes: providing a second interface to a user, the second interface being used to show the running environment of the target cloud platform; deploying the target service into the target cloud platform in response to a deployment indication issued by the user for the running environment of the target cloud platform.
7. The method according to any one of claims 1 to 6, characterized in that, The running environment of the target cloud platform includes any one or more of the following: a deployed service in the target cloud platform, available computing resources of the target cloud platform, and an inter-service networking manner in the target cloud platform.
8. A management platform, characterized by The cloud system where the management platform is located further includes a plurality of cloud platforms, different cloud platforms in the plurality of cloud platforms having different running environments; and the management platform includes: a receiving module configured to receive an environment requirement, the environment requirement being used to indicate a running environment required by a target service to run; a determining module configured to determine, based on the environment requirement and a running environment of each cloud platform in a plurality of cloud platforms, a target cloud platform of the target service in the plurality of cloud platforms; wherein the running environment of the target cloud platform meets the environment requirement; a deploying module configured to deploy the target service into the target cloud platform to run the target service in the running environment of the target cloud platform.
9. The management platform of claim 8, wherein, The determining module is configured to: filter out a to-be-renovated cloud platform from the plurality of cloud platforms based on the environment requirement and the running environment of each cloud platform in the plurality of cloud platforms; wherein a cost of the running environment of the to-be-renovated cloud platform meeting the environment requirement is less than a cost of a running environment of other cloud platforms meeting the environment requirement, the other cloud platforms being cloud platforms in the plurality of cloud platforms other than the to-be-renovated cloud platform; and renovate the running environment of the to-be-renovated cloud platform according to the environment requirement to obtain the target cloud platform.
10. The management platform of claim 9, wherein, The cost of the running environment of the to-be-renovated cloud platform meeting the environment requirement includes any one or more of the following: a time length required for deploying a service relied on by the target service in the to-be-renovated cloud platform, a business scope affected by running of the target service in the to-be-renovated cloud platform, and a computing resource utilization rate of the to-be-renovated cloud platform.
11. The management platform of claim 8, wherein, The determining module is configured to: determine at least two cloud platforms from the plurality of cloud platforms based on the environment requirement and the running environment of each cloud platform in the plurality of cloud platforms; wherein the running environment of each cloud platform in the at least two cloud platforms meets the environment requirement; provide a first interface to a user, the first interface being used to show the running environment of each cloud platform in the at least two cloud platforms; and determine the target cloud platform from the at least two cloud platforms based on a selection operation issued by the user.
12. The management platform of any one of claims 8-11, wherein, The environment requirement includes a computing resource requirement of running of the target service, and the running environment of the target cloud platform includes available computing resources of the target cloud platform; wherein the available computing resources meet the computing resource requirement.
13. The management platform of any one of claims 8-12, wherein, The deploying module is configured to: provide a second interface to a user, the second interface being used to show the running environment of the target cloud platform; and deploy the target service into the target cloud platform in response to a deployment instruction issued by the user with respect to the running environment of the target cloud platform.
14. The management platform of any one of claims 8-13, wherein, The running environment of the target cloud platform includes any one or more of the following: a deployed service in the target cloud platform, available computing resources of the target cloud platform, and an inter-service networking manner in the target cloud platform.
15. A cloud system, characterized by The cloud system includes: a plurality of cloud platforms, wherein different cloud platforms in the plurality of cloud platforms have different runtime environments; a management platform connected with the plurality of cloud platforms, configured to: receive an environment requirement, the environment requirement being used to indicate a runtime environment required by a target service to run; determine, based on the environment requirement and a runtime environment of each cloud platform in the plurality of cloud platforms, a target cloud platform of the target service in the plurality of cloud platforms, wherein the runtime environment of the target cloud platform meets the environment requirement; deploy the target service into the target cloud platform to run the target service in the runtime environment of the target cloud platform.
16. A cluster of computing devices, characterized in that, at least one computing device, each computing device comprising a processor and a memory; the processor of the at least one computing device is configured to execute instructions stored in the memory of the at least one computing device to cause the cluster of computing devices to perform the method of any one of claims 1-7.
17. A computer-readable storage medium, characterized in that, computer program instructions that, when executed by a cluster of computing devices, cause the cluster of computing devices to perform the method of any one of claims 1-7.
18. A computer program product comprising instructions, characterized in that, computer program instructions that, when executed by a cluster of computing devices, cause the cluster of computing devices to perform the method of any one of claims 1-7.