A method, apparatus, electronic device, and storage medium for deploying proprietary cloud applications.

By dividing private cloud applications into multiple application components and using component task templates to generate deployment information, the problems of high deployment costs and poor portability of private cloud applications are solved, achieving a more efficient and flexible deployment method.

CN116566813BActive Publication Date: 2025-11-14TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210114814.2
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-01-30
Publication Date
2025-11-14
Estimated Expiration
2042-01-30

AI Technical Summary

Technical Problem

In existing technologies, the deployment cost of private cloud applications is high and their portability is poor, mainly because it requires the design and development of application deployment tools and the system deployment environment testing is complex.

Method used

The private cloud application is divided into multiple application components, each with a unique target task template. By obtaining component parameter information and deployment order, application deployment information is generated, and basic deployment operations are performed to deploy the private cloud application.

Benefits of technology

It reduces the deployment cost of private cloud applications and improves their portability, reduces reliance on R&D technology objects, enhances deployment flexibility, and lowers the barrier to entry.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116566813B_ABST
    Figure CN116566813B_ABST
Patent Text Reader

Abstract

This application provides a method, apparatus, electronic device, and storage medium for deploying private cloud applications. Based on at least one basic deployment operation for a specified component category, corresponding component task templates are configured. This allows for the rapid generation of application deployment information based on the respective component task templates when deploying a specified private cloud application, thereby achieving the deployment of the specified private cloud application. Compared to related technologies, this method only requires retrieving the corresponding component task templates for each application component from a maintained set of component task templates. Based on the basic deployment operations and corresponding parameter information recorded in each component task template, the deployment of the corresponding private cloud application can be achieved. This effectively reduces the dependence on research and development technologies in related technologies, making private cloud application deployment more flexible and significantly lowering the deployment threshold and cost.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of cloud technology, and in particular to a method, apparatus, electronic device, and storage medium for deploying proprietary cloud applications. Background Technology

[0002] With the development of the internet, real-time data streams, and the diversification of connected devices, as well as the demands for search services, social networks, mobile commerce, and open collaboration, cloud computing has developed rapidly. Specifically, cloud computing infrastructure providers deploy cloud resource pools (referred to as cloud platforms, generally called Infrastructure as a Service (IaaS) platforms) composed of various types of virtual resources. This allows external stakeholders to access the resources they need on demand and scale at any time through an open network, greatly improving resource utilization efficiency.

[0003] Furthermore, in practice, cloud computing infrastructure providers can adopt a proprietary deployment model when providing cloud services to target users to achieve the deployment of specified target cloud services.

[0004] Specifically, basic capability providers often create corresponding private cloud applications based on the cloud service functions customized for the target object. Furthermore, in order to reduce the deployment cost of private cloud applications, basic capability providers often need to provide corresponding application deployment tools to assist relevant technical objects in distributing the application code of private cloud applications to the private service devices specified by the target object, so as to realize the deployment of the private cloud applications specified by the target object.

[0005] However, the above approach still has the following drawbacks:

[0006] (1) In related technologies, in order to achieve rapid deployment of private cloud applications, basic capability providers usually need to design and develop corresponding application deployment tools for the system environment and other factors required by the application code. This process requires a lot of manpower and time costs, resulting in high deployment costs for private cloud applications in actual scenarios.

[0007] (2) In related technologies, since the system deployment environment equipped on the dedicated service equipment of different target objects is often different, in actual situations, it is often necessary for the related technology object to test the system deployment environment equipped on the dedicated service equipment specified by the target object in order to determine whether the current system deployment environment meets the actual deployment requirements of its customized dedicated cloud application. Since the above environment testing process is usually quite complicated, the deployment threshold of dedicated cloud applications is high in related technologies, resulting in poor portability of dedicated cloud applications. Summary of the Invention

[0008] This application provides a method, apparatus, electronic device, and storage medium for deploying private cloud applications, which reduces the deployment cost of private cloud applications and improves the portability of private cloud applications.

[0009] On one hand, embodiments of this application provide a method for deploying a private cloud application, the method comprising:

[0010] Obtain resource information for a specified private cloud application, wherein the private cloud application contains multiple application components, and each application component corresponds to at least one sub-function of the private cloud application; the resource information includes at least: the parameter information of each of the multiple application components, and the corresponding component deployment order among the multiple application components.

[0011] For multiple application components, perform the following operations respectively: Based on the component category of an application component, determine the corresponding target task template from the preset set of component task templates, wherein each component task template records at least one basic deployment operation determined for the component category.

[0012] Based on resource information, the templates of each target task are combined to generate corresponding application deployment information. The application deployment information records at least one basic deployment operation determined for the private cloud application.

[0013] Execute the basic deployment operations recorded in the application deployment information to deploy the private cloud application.

[0014] On one hand, embodiments of this application provide a dedicated cloud application deployment apparatus, the apparatus comprising:

[0015] The acquisition module is used to acquire resource information of a specified private cloud application. The private cloud application contains multiple application components, and each application component corresponds to at least one sub-function of the private cloud application. The resource information includes at least the parameter information of each of the multiple application components and the corresponding component deployment order among the multiple application components.

[0016] The determination module is used to perform the following operations for multiple application components: based on the component category of an application component, determine the corresponding target task template from a preset set of component task templates, wherein each component task template records at least one basic deployment operation determined for the component category.

[0017] The combination module is used to combine various target task templates based on resource information to generate corresponding application deployment information. The application deployment information records at least one basic deployment operation determined for the private cloud application.

[0018] The execution module is used to execute the basic deployment operations recorded in the application deployment information to deploy the private cloud application.

[0019] Optionally, before obtaining the deployment resource information of a specified private cloud application, the acquisition module is also used for:

[0020] For each of the multiple application components and their respective component categories, perform the following operations:

[0021] Obtain category description information for a component category. The category description information should at least record: the deployment environment for the category determined for a component category.

[0022] Based on the category description information, at least one basic deployment operation corresponding to the category deployment environment is determined from the preset set of basic deployment operations.

[0023] Based on preset deployment rules, at least one basic deployment operation is combined to generate a corresponding component task template.

[0024] Optionally, when retrieving resource information for a specific private cloud application, the acquisition module is specifically used for:

[0025] Obtain the deployment application tree determined for the private cloud application. The deployment application tree includes at least: the application version of the private cloud application, and the parameter information of each of the multiple application components contained in the private cloud application.

[0026] Based on the application version of the private cloud application, the component deployment order corresponding to the application version is determined from the preset deployment order set.

[0027] By combining the deployment order of components and the parameter information of each of the multiple application components, the resource information of the private cloud application can be obtained.

[0028] Optionally, each basic deployment operation carries corresponding operation description information, which includes at least the execution order of the corresponding basic deployment operations. Then, based on preset deployment rules, when combining at least one basic deployment operation to generate a corresponding component task template, the combination module is specifically used for:

[0029] Based on the execution order of at least one basic deployment operation, sort the at least one basic deployment operation in ascending order.

[0030] Based on the sorting results of at least one basic deployment operation, at least one basic deployment action is combined to generate a corresponding component task template.

[0031] Optionally, when combining various target task templates based on resource information to generate corresponding application deployment information, the combination module is specifically used for:

[0032] For the parameter information of multiple application components, perform the following operations respectively: Based on the target task template of an application component, combine the parameter information of an application component to determine the corresponding basic deployment operations of the application component.

[0033] Based on the component deployment order, the basic deployment operations of multiple application components are sorted, and the corresponding application deployment information is generated based on the sorting results.

[0034] Optionally, the operation description information may also include: the execution attributes of the corresponding basic deployment operation; then, when executing the deployment operations recorded in the application deployment information to deploy the private cloud application, the execution module is specifically used for:

[0035] Based on the execution order of each basic deployment operation in the application deployment information, and arranged in ascending order, the execution attributes of each basic deployment operation are determined sequentially, including:

[0036] If the execution attribute of a basic deployment operation is: skippable, then read the deployment attribute of the next basic deployment operation.

[0037] If the execution attribute of a basic deployment operation is "executable", then execute the basic deployment operation and read the deployment attribute of the next basic deployment operation.

[0038] Optionally, the execution module is also used for:

[0039] If the execution attribute of a basic deployment operation is: timeout allowed, then within the preset timeout period, the basic deployment operation is executed, and the deployment attribute of the next basic deployment operation is read.

[0040] On one hand, embodiments of this application provide a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the steps of the above-described private cloud application deployment method.

[0041] On one hand, embodiments of this application provide a computer-readable storage medium storing a computer program executable by a computer device, which, when run on the computer device, causes the computer device to perform the steps of the above-described proprietary cloud application deployment method.

[0042] In this embodiment, the deployment of a private cloud application is achieved based on the corresponding component deployment order and at least one basic deployment operation included in the target task template determined by each application component. Compared with the tool-based cloud application deployment methods in related technologies, the above method only needs to obtain the component task template corresponding to each application component from the maintained set of component task templates. Then, based on the basic deployment operations and corresponding parameter information recorded in each component task template, the deployment of the corresponding private cloud application can be achieved. Since the above-mentioned systematic private cloud application deployment method can obtain the corresponding component task template according to its corresponding component category for different system deployment environments, the private cloud application deployment method provided in this embodiment reduces the dependence on R&D technology objects in related technologies, thereby making the deployment of private cloud applications more flexible and significantly reducing the deployment threshold and cost. Attached Figure Description

[0043] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:

[0044] Figure 1 This is a schematic diagram of an optional application scenario in an embodiment of this application;

[0045] Figure 2 This is a schematic diagram of a private cloud application deployment platform in an embodiment of this application;

[0046] Figure 3 This is a schematic diagram of a possible client interface in an embodiment of this application;

[0047] Figure 4 This is a flowchart of a private cloud application deployment method according to an embodiment of this application;

[0048] Figure 5 This is a schematic diagram of a component task template for a product component category in an embodiment of this application;

[0049] Figure 6 This is a schematic diagram of a list subscript in a component task template according to an embodiment of this application;

[0050] Figure 7 This is a schematic diagram of a special field in a component task template in one embodiment of this application;

[0051] Figure 8 This is an interactive flowchart illustrating the deployment of a private cloud application in one embodiment of this application.

[0052] Figure 9This is a logical diagram illustrating a private cloud application deployment scenario in an embodiment of this application.

[0053] Figure 10 A schematic diagram of the structure of a proprietary cloud application deployment device according to an embodiment of this application;

[0054] Figure 11 This is a schematic diagram of an electronic device using an embodiment of this application. Detailed Implementation

[0055] To make the objectives, technical solutions, and beneficial effects of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.

[0056] For ease of understanding, the terms used in the embodiments of this invention are explained below.

[0057] Cloud technology is a collective term for network technologies, information technologies, integration technologies, management platform technologies, and application technologies based on cloud computing business models. It can form resource pools, providing flexible and convenient on-demand access. Cloud computing technology will become a crucial support. Backend services of technical network systems require substantial computing and storage resources, such as video websites, image websites, and many portal websites. With the rapid development and application of the internet industry, every item may have its own identification mark in the future, requiring transmission to backend systems for logical processing. Data at different levels will be processed separately, and various industry data will all require robust system support, which can only be achieved through cloud computing.

[0058] Cloud computing is a computing model that distributes computing tasks across a resource pool consisting of a large number of computers, enabling various application systems to access computing power, storage space, and information services as needed. The network providing these resources is called the "cloud." From the user's perspective, resources in the "cloud" appear infinitely scalable, readily available, on-demand, and expandable, with payment based on usage.

[0059] As a provider of fundamental cloud computing capabilities, a cloud computing resource pool (referred to as a cloud platform, generally called an IaaS (Infrastructure as a Service) platform) is established. Various types of virtual resources are deployed within this pool for external customers to choose from. The cloud computing resource pool primarily includes: computing devices (virtualized machines containing operating systems), storage devices, and network devices.

[0060] Based on logical function, a PaaS (Platform as a Service) layer can be deployed on top of the IaaS (Infrastructure as a Service) layer, and a SaaS (Software as a Service) layer can be deployed on top of the PaaS layer. Alternatively, SaaS can be deployed directly on top of IaaS. PaaS is a platform for running software, such as databases and web containers. SaaS refers to various types of business software, such as web portals and bulk SMS senders. Generally speaking, SaaS and PaaS are upper layers compared to IaaS.

[0061] Proprietary cloud: A targeted cloud computing model that builds an enterprise's private cloud in the data center of a cloud service provider. Similar to cloud hosting, it creates a cloud platform system on top of a public cloud architecture that meets the enterprise's own business architecture and security requirements, thereby achieving better isolation than a public cloud and better flexibility than a private cloud.

[0062] Cloud applications: Hardware, software, and other applications provided to users by cloud service providers through virtual technology and network transmission and interaction.

[0063] The design concept of the embodiments of this application will be introduced below.

[0064] In related technologies, the deployment of private cloud applications often faces the following shortcomings:

[0065] Firstly, in related technologies, it is necessary to design and develop corresponding application deployment tools based on the system deployment environment required by the current private cloud application. This process requires a lot of manpower and time costs, resulting in high deployment costs for private cloud applications in actual scenarios.

[0066] Secondly, in order to ensure the successful deployment of private cloud applications, the relevant technology often requires the relevant technology object to test the system deployment environment equipped in the dedicated service equipment specified by the target object, in order to determine whether the current system deployment environment meets the actual deployment requirements of its customized private cloud application. However, the above-mentioned environment testing process is usually quite complicated, resulting in a high deployment threshold for private cloud applications and poor portability of private cloud applications in the relevant technology.

[0067] In other words, among the related technologies, the tool-based cloud application deployment method is highly dependent on the relevant R&D technology objects, resulting in a high deployment threshold and high deployment cost for private cloud applications.

[0068] In view of this, embodiments of this application provide a method, apparatus, electronic device, and storage medium for deploying a private cloud application. In this method, the private cloud application to be deployed can be divided into multiple independently deployable application components, and each application component can correspond to a unique target task template according to its component category. The target task template records at least one basic deployment operation determined for the corresponding component category. The method can further combine the target task templates by obtaining the parameter information of each application component and the corresponding component deployment order to generate corresponding application deployment information, thereby realizing the deployment of the private cloud application according to the basic deployment operation recorded in the application deployment information.

[0069] In this embodiment, the deployment of a private cloud application is achieved based on the corresponding component deployment order and at least one basic deployment operation included in the target task template determined by each application component. Compared with the tool-based cloud application deployment methods in related technologies, the above method only needs to obtain the component task template corresponding to each application component from the maintained set of component task templates, and then deploy the corresponding private cloud application according to the basic deployment operations and corresponding parameter information recorded in each component task template.

[0070] In other words, in the above approach, basic capability providers only need to design and maintain a sufficient number of component task templates to deploy various private cloud applications. Furthermore, due to the systematic private cloud application deployment method described above, corresponding component task templates can be obtained for different system deployment environments based on their respective component categories. This further reduces the dependence on R&D technology objects in related technologies, making private cloud application deployment more flexible and significantly reducing the corresponding deployment threshold and deployment costs.

[0071] The following provides examples illustrating the application scenarios applicable to the dedicated cloud application deployment method in this application embodiment. (Refer to...) Figure 1 This is a schematic diagram of an application scenario applicable to the embodiments of this application. The application scenario diagram includes two terminal devices 101 and a server 102.

[0072] Terminal device 101 has applications installed related to proprietary cloud application deployment. These applications can be pre-installed clients, web applications, or mini-programs embedded in other applications. Terminal device 101 can be a smartphone, tablet, laptop, desktop computer, smart speaker, smartwatch, smart TV, etc., but is not limited to these.

[0073] Server 102 serves as the backend server for the aforementioned applications, providing related services for the deployment of private cloud applications. Server 102 can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks (CDNs), and big data and artificial intelligence platforms. Terminal device 101 and server 102 can be directly or indirectly connected via wired or wireless communication; this application does not impose any restrictions on this connection.

[0074] In response to an application deployment operation triggered for a specified private cloud application, terminal device 101 sends a deployment request to server 102. The private cloud application includes multiple application components, each of which corresponds to at least one sub-function of the private cloud application. The deployment request sent by terminal device 101 includes resource information of the private cloud application, which includes at least the parameter information of each of the multiple application components and the corresponding component deployment order among the multiple application components.

[0075] Server 102 can receive deployment requests sent by terminal device 101 and generate corresponding application deployment information based on the resource information contained in the deployment request and the preset task templates of each component. Then, server 102 can also execute the basic deployment operations recorded in the application deployment information to deploy the private cloud application to the terminal device 101 according to each basic deployment operation. In a preferred embodiment, the deployment request sent by terminal device 101 may further include the device identifier of other devices that have established a communication connection with server 102. Then, server 102 can deploy the specified private cloud application to the other devices according to the obtained device identifier.

[0076] Furthermore, server 102 can be an independent physical server, a server cluster or distributed system composed of multiple physical servers, or multiple cloud servers that provide basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms.

[0077] Please see Figure 2This application embodiment also provides a private cloud application deployment platform 200, which is built based on the private cloud application deployment device 1000 described below in this embodiment. The client of the private cloud application deployment platform 200 can run on the terminal device 101, and the functions of the private cloud application deployment platform 200 can be implemented by a server, a cloud server, a blockchain server, or a server cluster. The private cloud application deployment platform 200 mainly includes a control module 201, a management module 202, and an execution module 203, wherein:

[0078] The control module 201 is used to obtain a deployment request sent through a running client, wherein the running client is implemented based on cloud services, and the deployment request contains resource information of a specified private cloud application.

[0079] The management module 202 is used to parse the resource information in the deployment request sent by the control module 201, and generate corresponding application deployment information based on the parsed parameter information and the corresponding component deployment order, combined with the preset component task templates. The application deployment information records at least one basic deployment operation determined for the specified private cloud application.

[0080] The execution module 203 is used to execute the basic deployment operations recorded in the application deployment information to achieve the deployment of the specified private cloud application.

[0081] The functions of the control module 201 can be implemented by the server 102, or by a cloud server, blockchain server, or server cluster. It can be directed to the relevant application deployment objects of the basic capability provider. The application deployment objects can send corresponding deployment requests to the control module 201 through a specified operation triggered on the running client.

[0082] Specifically, Figure 3 An exemplary schematic diagram of a possible interface in the above-described running client is shown. In this client, the relevant application deployment object can send a deployment request for the selected private cloud application 1 to the private cloud application deployment platform through a triggered click operation.

[0083] The various component task templates provided by the management module 202 can be, but are not limited to, static files for various application components (such as image, dbsql, product, yunapi, etc.). Each component task template records at least one basic deployment operation for the corresponding component category.

[0084] The management module 202 can be implemented by server 102, one or more cloud servers, or a server cluster. The management module supports parsing the resource information in the deployment request and generating the corresponding application deployment information based on the parsed parameter information and the corresponding component deployment order, combined with the preset component task templates.

[0085] The management module 202 also supports managing each basic deployment operation recorded in each component task template. For example, it supports managing the execution order of each basic deployment operation in the actual deployment, and it supports managing the execution attributes of each deployment operation in the actual deployment. In an optional embodiment, the management module 202 includes a template manager 2021 that supports component task template management, a deployment manager 2022 that supports application deployment information generation, and a setting interface 2203 that supports interfacing with the execution module 203.

[0086] The aforementioned setting interface 2203 can be a general and open interface for at least one basic deployment operation. The management module 202 can interface with the execution module 203 through the setting interface 2203 so that the execution module 203 can call and execute the basic deployment operations recorded in the application deployment information to realize the deployment of the specified private cloud application.

[0087] based on Figure 1 The system architecture shown, or Figure 2 The proprietary cloud application deployment platform shown in this application embodiment provides a proprietary cloud application deployment method, which can be executed by a computer device, and the computer device can be... Figure 1 Terminal devices and servers in the middle, such as Figure 4 As shown, the method includes:

[0088] S401: Obtain resource information for a specified private cloud application.

[0089] Specifically, a private cloud application is a cloud computing application deployed in a private network environment. The private cloud application contains multiple application components, each of which corresponds to at least one sub-function of the private cloud application.

[0090] For example, in practice, the application functions of the private cloud application to be deployed can be divided into multiple corresponding sub-functions. Based on the determined sub-functions, the private cloud application can be divided into multiple independently deployable application components. Specifically, in this embodiment, it is assumed that the private cloud application includes: application component 1, application component 2, and application component 3. Based on the above method, the deployment of the private cloud application can be achieved by deploying the above multiple application components respectively.

[0091] Furthermore, the resource information of the private cloud application can include the parameter information of each of the aforementioned application components and the corresponding deployment order among the application components. Specifically, the aforementioned parameter information can be obtained from a defined deployment application tree. Further, this deployment application tree may also include the application version of the private cloud application. By matching the defined application version with the preset deployment order, the component deployment order determined for the current application version can be obtained.

[0092] As one embodiment, the resource information may also include application description information of the private cloud application. Specifically, the application description information may include: the application version of the private cloud application and the application planning ID, etc., thereby further indicating the deployment of the private cloud application.

[0093] S402: For multiple application components, perform the following operations respectively: Based on the component category of an application component, determine the corresponding target task template from the preset set of component task templates.

[0094] Specifically, when obtaining the target task templates for each of the multiple application components, the templates are determined from a set of preset component task templates based on the component category of each application component; each component task template records at least one basic deployment operation determined for the component category.

[0095] For example, depending on the corresponding deployment environment, component categories may include: image, dbsql, product, yunapi, etc. For each of the above component categories, a corresponding component task template can be defined and maintained, which can be regarded as the corresponding target task template. In other words, for each component category, at least one corresponding basic deployment operation can be quickly determined in the above way.

[0096] It should be understood that in specific implementations, an independent component task template can also be defined and maintained for some special application components. The above method is only for illustrative purposes and will not be elaborated further here.

[0097] S403: Based on resource information, combine the templates of each target task to generate corresponding application deployment information.

[0098] Specifically, since each target task template records at least one basic deployment operation determined for the corresponding component category, by combining the acquired resource information with each target task template according to the corresponding combination rules, application deployment information corresponding to the above-mentioned private cloud application can be generated. The application deployment information records at least one basic deployment operation determined for the private cloud application, indicating the various basic deployment operations to be executed required for the deployment of the above-mentioned private cloud application.

[0099] S404: Execute the basic deployment operations recorded in the application deployment information to deploy the private cloud application.

[0100] Specifically, the basic deployment operations recorded in the application deployment information can be executed through HTTP calls and other methods to achieve the deployment of private cloud applications through the orderly execution of each basic deployment operation.

[0101] In this embodiment, the deployment of a private cloud application is achieved based on the corresponding component deployment order and at least one basic deployment operation included in the target task template determined by each application component. Compared to the tool-based cloud application deployment methods in related technologies, the above method only needs to obtain the component task templates corresponding to each application component from the maintained set of component task templates. Then, based on the basic deployment operations and corresponding parameter information recorded in each component task template, the deployment of the corresponding private cloud application can be achieved. Because the above systematic private cloud application deployment method can obtain the corresponding component task templates according to the corresponding component categories for different system deployment environments, it effectively reduces the dependence of related technologies on R&D technology objects, making the deployment of private cloud applications more flexible and significantly reducing the deployment threshold and cost.

[0102] Optionally, in step S402 above, this application embodiment provides at least the following implementation methods for generating component task templates:

[0103] For each component category of multiple application components, perform the following operations: obtain category description information for a component category, wherein the category description information records at least the category deployment environment for a component category; then, based on the category description information, determine at least one basic deployment operation corresponding to the category deployment environment from a preset set of basic deployment operations, and combine the at least one basic deployment operation based on preset deployment rules to generate a corresponding component task template.

[0104] As one embodiment, a component task template can be a corresponding static file designed and developed for a category deployment environment specific to a given component category. Furthermore, each component task template contains at least one basic deployment operation defined for the specified component category.

[0105] For example, assuming application component 1 is a product component category, please refer to the component task template for the product component category. Figure 5As shown, the component task template can include five basic deployment operations adapted to the product category deployment environment, namely material preparation, configuration preparation, script deployment, application deployment, and service registration. Specifically, the above basic deployment operations can be represented as an atomic deployment operation executed during a component deployment task.

[0106] As one embodiment, in the component task template, each basic deployment operation may further carry corresponding operation description information, wherein the operation description information includes at least: the execution order of the corresponding basic deployment operations.

[0107] Based on the above approach, relevant management objects can adaptively change the execution order of each basic deployment operation recorded in the component task template for different deployment scenarios, thereby achieving more granular control over the deployment of private cloud applications.

[0108] For example, please refer to Figure 6 As shown, in Figure 5 In the component task template shown, the execution order of each basic deployment operation can be defined using list subscripts; specifically, as shown in Table 1 below:

[0109] Table 1

[0110]

[0111]

[0112] In the example above, the list index corresponding to each basic deployment operation defines the execution order of that basic deployment operation in the actual deployment. For example, for the basic deployment operation "configuration preparation", its corresponding list index "2" can be defined as the second position in the actual deployment. Then the execution order shown in the example above can be defined as: "material preparation - configuration preparation - script deployment - application deployment - service registration". This means that in real-world scenarios, relevant management objects can change the execution order of each basic deployment operation by modifying its corresponding list index, thereby achieving more granular control over the deployment of private cloud applications.

[0113] As one embodiment, the operation description information carried by each basic deployment operation may further include the execution attributes of the corresponding basic deployment operation, such as skippable or executable; specifically, the above execution attributes can be defined through special fields carried by the basic deployment operation.

[0114] Based on the above approach, relevant management objects can adaptively modify the execution attributes of each basic deployment operation recorded in the component task template for different deployment scenarios, thereby achieving more granular control over the deployment of private cloud applications.

[0115] For example, please refer to Figure 7 As shown, in Figure 5 In the component task template shown, the execution attributes of each basic deployment operation can be defined through special fields carried by each basic deployment operation; specifically, as shown in Table 2 below:

[0116] Table 2

[0117]

[0118]

[0119] In the above example, each basic deployment operation carries a special field that defines the execution attribute of the basic deployment operation in the actual deployment. For example, for the basic deployment operation "application deployment", carrying a specified special field "TimeOut", based on this special field, its execution attribute in the actual deployment can be defined as "to be executed". That is, in the actual deployment, the basic deployment operation "application deployment" can be skipped and other subsequent basic deployment operations can be executed.

[0120] Specifically, if the execution order of the various basic deployment operations in the above example can be defined as "material preparation - configuration preparation - script deployment - application deployment - service registration", then after the basic deployment operation "script deployment" is executed, the basic deployment operation "application deployment" can be skipped, and the basic deployment operation "service registration" can be executed next. In other words, in the above example, it is only necessary to execute "material preparation - configuration preparation - script deployment - service registration" recorded in the corresponding component task template in sequence. This means that in actual scenarios, the relevant management objects can, based on the method shown in the above example, modify the special fields carried by each basic deployment operation to change the execution attributes between the corresponding basic deployment operations, thereby making the execution process of each basic deployment operation more structured, so as to achieve more granular control over the deployment of private cloud applications.

[0121] Optionally, in step S403 above, this application embodiment provides at least the following implementation methods for generating application deployment information:

[0122] For the parameter information of multiple application components, perform the following operations respectively: Based on the target task template of an application component, combine the parameter information of the application component to determine the basic deployment operations of the application component, sort the basic deployment operations of multiple application components according to the component deployment order, and generate the corresponding application deployment information based on the sorting result.

[0123] Specifically, for an application component, based on the matching fields in the target task template and parameter information, the target task template and parameter information are combined. For example, based on the matching fields for component material information in the target task template, the component material information contained in the parameter information is combined with the corresponding basic deployment operations.

[0124] Furthermore, since the deployment of a dedicated cloud application involves the deployment of multiple application components, and each application component corresponds to multiple basic deployment operations, the corresponding application deployment information can be generated by sorting the basic deployment operations of multiple application components according to the obtained component deployment order. It is worth noting that the component deployment order can be obtained from resource information, that is, defined by the externally connected deployment object, or it can be customized by the relevant management object according to the actual situation. This will not be elaborated further here.

[0125] For example, the component deployment order can be predetermined by the relevant management object. For instance, based on the component categories dbsql, yunapi, and image mentioned above, the relevant management object can set the component deployment order as "dbsql-yunapi-image". This means that when deploying each application component, the application components corresponding to the dbsql component category will be deployed first, and the application components corresponding to the image component category will be deployed later, in order to further improve the orchestration flexibility of component task templates.

[0126] To better explain the embodiments of this application, the following describes a private cloud application deployment method provided by the embodiments of this application, in conjunction with a specific implementation scenario. The process of this method can be described by: Figure 1 The terminal device 101 shown interacts with the server 102 to perform the following steps, such as: Figure 8 As shown:

[0127] S801, the terminal device sends resource information for a specified private cloud application to the server.

[0128] Specifically, the server includes a database and a service module. The service module provides automated deployment services for private cloud applications. When executing the automated deployment service for private cloud applications, the server obtains the resource information of the specified private cloud application through a preset scheduling interface. The private cloud application contains multiple application components, and each application component corresponds to at least one sub-function of the private cloud application. The resource information includes at least the parameter information of each of the multiple application components and the corresponding component deployment order among the multiple application components.

[0129] S802, the server performs the following operations for multiple application components respectively: based on the component category of an application component, it determines the corresponding target task template from the preset set of component task templates.

[0130] Specifically, each component task template records at least one basic deployment operation specific to the component category.

[0131] For example, depending on the corresponding deployment environment, the component categories may include: image, dbsql, product, yuanpi, etc. For each of the above component categories, a corresponding component task template can be defined and maintained, which can be regarded as the corresponding target task template. In other words, for each component category, at least one corresponding basic deployment operation can be quickly determined in the above way.

[0132] It should be understood that in specific implementations, an independent component task template can also be defined and maintained for some special application components. The above method is only for illustrative purposes and will not be elaborated further here.

[0133] S803: Based on resource information, the server combines various target task templates to generate corresponding application deployment information.

[0134] Specifically, the server combines the target task template and parameter information based on the matching fields in the target task template and the parameter information of the application components. For example, based on the matching fields for component material information in the target task template, the server combines the component material information contained in the parameter information with the corresponding basic deployment operations to generate the corresponding application deployment information.

[0135] S804, the server executes the basic deployment operations recorded in the application deployment information to deploy the private cloud application.

[0136] Specifically, the server executes the basic deployment operations recorded in the application deployment information through a preset scheduling interface to deploy the private cloud application.

[0137] Optionally, the above-mentioned methods for deploying private cloud applications may also include:

[0138] S805: The server returns the deployment results of the specified private cloud application to the terminal device.

[0139] Specifically, the server can use the aforementioned scheduling interface to return the deployment results of the currently specified private cloud application to the terminal device, thereby ensuring the accuracy of the private cloud application deployment.

[0140] See Figure 9 The diagram shown is a logical schematic of a private cloud application deployment method provided in an embodiment of this application. First, resource information of a specified private cloud application is obtained. This private cloud application contains multiple application components, each corresponding to at least one sub-function of the application. Taking the private cloud application "Tcenter" as an example, this application contains multiple application components: application component "product-tcenter-X1", application component "dbsql-tcenter-X2", and application component "product-tcenter-X3". The component categories of these application components are "product", "dbsql", and "product", respectively. Next, each application component can determine its corresponding target task template from a preset component task template based on its corresponding component category. Specifically, the target task templates determined by each application component are shown in Table 3 below.

[0141] Table 3

[0142] Application Components Component task template product-tcenter-X1 formwork_product dbsql-tcenter-X2 formwork_dbsql product-tcenter-X formwork_product

[0143] Furthermore, the formwork_product component task template records five basic deployment operations specific to the "product" component type: "material preparation," "configuration preparation," "script deployment," "application deployment," and "service registration." Similarly, the formwork_dbsql component task template records three basic deployment operations specific to the "dbsql" component type: "material preparation," "configuration preparation," and "application deployment." Based on the basic deployment operations recorded in each component task template, and the parameter information of each application component in the resource information (e.g., component material information, component planning ID, component region information, etc.), application deployment information corresponding to the private cloud application "Tcenter" can be generated. Furthermore, by executing the basic deployment operations recorded in the application deployment information, the deployment of the private cloud application "Tcenter" can be achieved.

[0144] Based on the above method, application deployment information for a specified private cloud application "Tcenter" can be quickly generated based on preset formwork_dbsql component task templates and formwork_product component task templates. On the one hand, compared with related technologies, the above method avoids the large amount of manpower and time costs caused by the repeated design and development of application deployment tools, thus significantly reducing the deployment cost of private cloud applications. On the other hand, since each component task template in the above method contains at least one basic deployment operation for a specified component category, and the corresponding component task template can be obtained according to the corresponding component category for different system deployment environments, the private cloud application deployment method provided in this application embodiment further reduces the excessive reliance on R&D technology objects in related technologies, thereby making the deployment of private cloud applications more flexible and significantly reducing the deployment threshold and deployment cost.

[0145] Based on the same technical concept, this application provides a schematic diagram of the structure of a dedicated cloud application deployment device, such as... Figure 10 As shown, the device 1000 includes:

[0146] The acquisition module 1001 is used to acquire resource information of a specified private cloud application. The private cloud application contains multiple application components, and each application component corresponds to at least one sub-function of the private cloud application. The resource information includes at least the parameter information of each of the multiple application components and the corresponding component deployment order among the multiple application components.

[0147] The determination module 1002 is used to perform the following operations for multiple application components: based on the component category of an application component, determine the corresponding target task template from a preset set of component task templates, wherein each component task template records at least one basic deployment operation determined for the component category.

[0148] The combination module 1003 is used to combine various target task templates based on resource information to generate corresponding application deployment information. The application deployment information records at least one basic deployment operation determined for the private cloud application.

[0149] The execution module 1004 is used to execute the basic deployment operations recorded in the application deployment information to realize the deployment of the private cloud application.

[0150] Optionally, before obtaining the deployment resource information of a specified private cloud application, the acquisition module 1001 is also used for:

[0151] For each of the multiple application components and their respective component categories, perform the following operations:

[0152] Obtain category description information for a component category. The category description information should at least record: the deployment environment for the category determined for a component category.

[0153] Based on the category description information, at least one basic deployment operation corresponding to the category deployment environment is determined from the preset set of basic deployment operations.

[0154] Based on preset deployment rules, at least one basic deployment operation is combined to generate a corresponding component task template.

[0155] Optionally, when obtaining resource information for a specified private cloud application, module 1001 is specifically used for:

[0156] Obtain the deployment application tree determined for the private cloud application. The deployment application tree includes at least: the application version of the private cloud application, and the parameter information of each of the multiple application components contained in the private cloud application.

[0157] Based on the application version of the private cloud application, the component deployment order corresponding to the application version is determined from the preset deployment order set.

[0158] By combining the deployment order of components and the parameter information of each of the multiple application components, the resource information of the private cloud application can be obtained.

[0159] Optionally, each basic deployment operation carries corresponding operation description information, which includes at least the execution order of the corresponding basic deployment operations. Then, based on preset deployment rules, when combining at least one basic deployment operation to generate a corresponding component task template, the combination module 1003 is specifically used for:

[0160] Based on the execution order of at least one basic deployment operation, sort the at least one basic deployment operation in ascending order.

[0161] Based on the sorting results of at least one basic deployment operation, at least one basic deployment action is combined to generate a corresponding component task template.

[0162] Optionally, when combining various target task templates based on resource information to generate corresponding application deployment information, the combination module 1003 is specifically used for:

[0163] For the parameter information of multiple application components, perform the following operations respectively: Based on the target task template of an application component, combine the parameter information of an application component to determine the corresponding basic deployment operations of the application component.

[0164] Based on the component deployment order, the basic deployment operations of multiple application components are sorted, and the corresponding application deployment information is generated based on the sorting results.

[0165] Optionally, the operation description information also includes: the execution attributes of the corresponding basic deployment operation; then, when executing the deployment operations recorded in the application deployment information to deploy the private cloud application, the execution module 1004 is specifically used for:

[0166] Based on the execution order of each basic deployment operation in the application deployment information, and arranged in ascending order, the execution attributes of each basic deployment operation are determined sequentially, including:

[0167] If the execution attribute of a basic deployment operation is: skippable, then read the deployment attribute of the next basic deployment operation.

[0168] If the execution attribute of a basic deployment operation is "executable", then execute the basic deployment operation and read the deployment attribute of the next basic deployment operation.

[0169] Optionally, execution module 1004 is also used for:

[0170] If the execution attribute of a basic deployment operation is: timeout allowed, then within the preset timeout period, the basic deployment operation is executed, and the deployment attribute of the next basic deployment operation is read.

[0171] In this embodiment, the deployment of a private cloud application is achieved based on the corresponding component deployment order and at least one basic deployment operation included in the target task template determined by each application component. Compared with the tool-based cloud application deployment methods in related technologies, the above method only needs to obtain the component task template corresponding to each application component from the maintained set of component task templates. Then, based on the basic deployment operations and corresponding parameter information recorded in each component task template, the deployment of the corresponding private cloud application can be achieved. Since the above-mentioned systematic private cloud application deployment method can obtain the corresponding component task template according to its corresponding component category for different system deployment environments, the private cloud application deployment method provided in this embodiment reduces the dependence on R&D technology objects in related technologies, thereby making the deployment of private cloud applications more flexible and significantly reducing the deployment threshold and cost.

[0172] Based on the same technical concept, embodiments of this application provide a computer device, which can be... Figure 1 The target device and / or server shown, such as Figure 11As shown, it includes at least one processor 1102 and a memory 1101 connected to at least one processor. In this embodiment, the specific connection medium between the processor 1102 and the memory 1101 is not limited. Figure 11 Taking the connection between processor 1102 and memory 1101 via a bus as an example, the bus can be divided into address bus, data bus, control bus, etc.

[0173] In this embodiment of the application, the memory 1101 stores instructions that can be executed by at least one processor 1102. By executing the instructions stored in the memory 1101, at least one processor 1102 can perform the steps of the above-described private cloud application deployment method.

[0174] The processor 1102 is the control center of the computer device, capable of connecting various parts of the computer device via various interfaces and lines. It enables the deployment of private cloud applications by running or executing instructions stored in the memory 1101 and accessing data stored in the memory 1101. Optionally, the processor 1102 may include one or more processing units. The processor 1102 may integrate an application processor and a modem processor. The application processor primarily handles the operating system, user interface, and applications, while the modem processor primarily handles wireless communication. It is understood that the modem processor may not be integrated into the processor 1102. In some embodiments, the processor 1102 and the memory 1101 may be implemented on the same chip; in other embodiments, they may be implemented on separate chips.

[0175] The processor 1102 can be a general-purpose processor, such as a central processing unit (CPU), digital signal processor, application-specific integrated circuit (ASIC), field-programmable gate array (FPGA), or other programmable logic device, discrete gate or transistor logic device, or discrete hardware component, capable of implementing or executing the methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the methods disclosed in the embodiments of this application can be directly manifested as being executed by a hardware processor, or executed by a combination of hardware and software modules within the processor.

[0176] Memory 1101, as a non-volatile computer-readable storage medium, can be used to store non-volatile software programs, non-volatile computer-executable programs, and modules. Memory 1101 may include at least one type of storage medium, such as flash memory, hard disk, multimedia card, card-type memory, random access memory (RAM), static random access memory (SRAM), programmable read-only memory (PROM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), magnetic memory, magnetic disk, optical disk, etc. Memory 1101 can be any other medium capable of carrying or storing desired program code in the form of instructions or data structures that can be accessed by a computer, but is not limited thereto. In the embodiments of this application, memory 1101 can also be a circuit or any other device capable of implementing storage functions for storing program instructions and / or data.

[0177] Based on the same inventive concept, embodiments of this application provide a computer-readable storage medium storing a computer program executable by a computer device, which, when run on the computer device, causes the computer device to perform the steps of the above-described proprietary cloud application deployment method.

[0178] Based on the same inventive concept, this application provides a computer program product, which includes a computer program stored on a computer-readable storage medium. The computer program includes program instructions, which, when executed by a computer, cause the computer to perform the steps of the above-described proprietary cloud application deployment method.

[0179] Those skilled in the art will understand that embodiments of the present invention can be provided as methods or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0180] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0181] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0182] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0183] Although preferred embodiments of the invention have been described, those skilled in the art, upon learning the basic inventive concept, can make other changes and modifications to these embodiments. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments as well as all changes and modifications falling within the scope of the invention.

[0184] Obviously, those skilled in the art can make various modifications and variations to this invention without departing from its spirit and scope. Therefore, if these modifications and variations fall within the scope of the claims of this invention and their equivalents, this invention also intends to include these modifications and variations.

Claims

1. A method for deploying a private cloud application, characterized in that, include: Obtain resource information of a specified private cloud application, wherein the private cloud application contains multiple application components, each application component corresponding to at least one sub-function of the private cloud application; the resource information includes at least: parameter information of each of the multiple application components, and the corresponding component deployment order among the multiple application components; For the multiple application components, the following operations are performed respectively: Based on the component category of an application component, a corresponding target task template is determined from a preset set of component task templates, wherein each component task template records at least one basic deployment operation determined for the component category; Based on the resource information, the templates of each target task are combined to generate corresponding application deployment information, wherein the application deployment information records at least one basic deployment operation determined for the private cloud application. The basic deployment operations recorded in the application deployment information are executed respectively to deploy the private cloud application; The step of combining various target task templates based on the resource information to generate corresponding application deployment information includes: For each application component, the following steps are performed: Based on the matching field in the parameter information of the application component that corresponds to the target task template, the parameter information of the application component is combined with the target task template corresponding to the application component to determine the basic deployment operations corresponding to the application component. Based on the basic deployment operations corresponding to each application component, and in conjunction with the deployment order of the components, the basic deployment operations of each application component are sorted, and based on the sorting results, corresponding application deployment information is generated.

2. The method as described in claim 1, characterized in that, Before obtaining the resource information of the specified private cloud application, the process also includes: For each of the aforementioned application components' respective component categories, perform the following operations: Obtain category description information for a component category, wherein the category description information records at least: the deployment environment for the category determined for the component category; Based on the category description information, at least one basic deployment operation corresponding to the category deployment environment is determined from a preset set of basic deployment operations; Based on preset deployment rules, the at least one basic deployment operation is combined to generate a corresponding component task template.

3. The method as described in claim 1 or 2, characterized in that, The process of obtaining resource information for a specified private cloud application includes: Obtain the deployment application tree determined for the private cloud application, the deployment application tree including at least: the application version of the private cloud application, and the parameter information of each of the multiple application components included in the private cloud application; Based on the application version of the private cloud application, the component deployment order corresponding to the application version is determined from a preset deployment order set; The resource information of the private cloud application is obtained by combining the deployment order of the components and the parameter information of each of the multiple application components.

4. The method as described in claim 2, characterized in that, Each basic deployment operation carries corresponding operation description information, which includes at least: the execution order of the corresponding basic deployment operations; then, based on preset deployment rules, the at least one basic deployment operation is combined to generate a corresponding component task template, including: Based on the execution order of each of the at least one basic deployment operations, the at least one basic deployment operations are sorted in ascending order; Based on the sorting results of the at least one basic deployment operation, the at least one basic deployment action is combined to generate a corresponding component task template.

5. The method as described in claim 4, characterized in that, The operation description information also includes: the execution attributes of the corresponding basic deployment operation; then, executing the basic deployment operations recorded in the application deployment information to deploy the private cloud application includes: Based on the execution order of each basic deployment operation in the application deployment information, the execution attributes of each basic deployment operation are determined sequentially in ascending order, wherein: If the execution attribute of a basic deployment operation is: skippable, then read the deployment attribute of the next basic deployment operation; If the execution attribute of a basic deployment operation is "executable", then execute the basic deployment operation and read the deployment attribute of the next basic deployment operation.

6. The method as described in claim 5, characterized in that, Also includes: If the execution attribute of a basic deployment operation is: timeout allowed, then within the preset timeout period, the basic deployment operation is executed, and the deployment attribute of the next basic deployment operation is read.

7. A proprietary cloud application deployment device, characterized in that, include: The acquisition module is used to acquire resource information of a specified private cloud application, wherein the private cloud application includes multiple application components, and each application component corresponds to at least one sub-function of the private cloud application; the resource information includes at least: parameter information of each of the multiple application components, and the corresponding component deployment order among the multiple application components; The determination module is used to perform the following operations for the multiple application components respectively: based on the component category of an application component, determine the corresponding target task template from a preset set of component task templates, wherein each component task template records at least one basic deployment operation determined for the component category; The combination module is used to combine various target task templates based on the resource information to generate corresponding application deployment information, wherein the application deployment information records at least one basic deployment operation determined for the private cloud application. The execution module is used to execute the basic deployment operations recorded in the application deployment information to realize the deployment of the private cloud application; Specifically, when the combination module combines various target task templates based on the resource information to generate corresponding application deployment information, it is used for: For each application component, the following steps are performed: Based on the matching field in the parameter information of the application component that corresponds to the target task template, the parameter information of the application component is combined with the target task template corresponding to the application component to determine the basic deployment operations corresponding to the application component. Based on the basic deployment operations corresponding to each application component, and in conjunction with the deployment order of the components, the basic deployment operations of each application component are sorted, and based on the sorting results, corresponding application deployment information is generated.

8. A computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the steps of the method according to any one of claims 1-6.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer instructions that, when executed on a computer, cause the computer to perform the method as described in any one of claims 1-6.

Citation Information

Patent Citations

  • Application deployment method, device, server and storage medium

    CN110413288A