Software product deployment method, device, readable medium and electronic device
By obtaining the product configuration parameters and parameter definition rules for the products to be deployed in the NFV system, quickly determine the type of software product and deploy it, the problem of cumbersome deployment methods in the existing technology is solved and the deployment efficiency is improved.
Patent Information
- Application Number
- CN202111514736.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-13
- Publication Date
- 2025-02-18
- Estimated Expiration
- 2041-12-13
AI Technical Summary
In the prior art, the deployment methods of software products in NFV systems are cumbersome, which leads to users who need to select from a huge software product library, which consumes a lot of time and reduces deployment efficiency.
By obtaining the product configuration parameters and parameter definition rules for the product to be deployed, determining the software product type based on these parameters, obtaining the object to be deployed, and deploying the software product on the object.
It realizes the rapid determination of product information for products to be deployed, reduces the time for users to select in a huge product library, and improves the deployment efficiency of software products.
Smart Images

Figure CN114185554B_ABST
Abstract
Description
Technical Field
[0001] The present application belongs to the field of communication technology, and specifically relates to a software product deployment method, a software product deployment device, a computer-readable medium, and an electronic device. Background Art
[0002] Network Function Virtualization (NFV) is the use of software to install, control, and operate network functions running on general-purpose hardware. It integrates cloud and virtualization technologies, enabling the next generation of network services to have better scalability and automation capabilities, and solving the problem of deploying network functions on general-purpose hardware.
[0003] Different levels of the NFV system or different components at the same level may use products from different manufacturers. Due to the large number of manufacturers and levels, the number of products to be deployed is huge. The existing deployment method requires users to select the software products they need from a large number of software products, which often takes a lot of time to obtain the required software products, reducing the efficiency of deployment.
[0004] It should be noted that the information disclosed in the above background technology section is only used to enhance the understanding of the background of the present application, and therefore may include information that does not constitute the prior art known to ordinary technicians in the field. Summary of the invention
[0005] The purpose of this application is to provide a software product deployment method, a software product deployment device, a computer-readable medium and an electronic device, which at least to a certain extent overcome the technical problems in the related art such as the cumbersome selection process of the product to be deployed, the waste of time, and the low deployment efficiency.
[0006] Other features and advantages of the present application will become apparent from the following detailed description, or may be learned in part by the practice of the present application.
[0007] According to one aspect of an embodiment of the present application, the present application provides a software product deployment method, including:
[0008] Acquire product configuration parameters and parameter definition rules of a plurality of products to be deployed, wherein the parameter definition rules are used to indicate the software product types defined by the product configuration parameters;
[0009] Determining product information of the plurality of products to be deployed respectively based on the product configuration parameters and the software product types indicated by the parameter definition rules;
[0010] Obtaining an object on which the multiple products to be deployed need to be deployed;
[0011] The multiple products to be deployed are deployed on the object.
[0012] In some embodiments of the present application, based on the above technical solution, based on the product configuration parameters and the software product types indicated by the parameter definition rules, the product information of the multiple products to be deployed are respectively determined, including:
[0013] Establishing a mapping relationship between the product configuration parameters and the software product based on the software product type indicated by the parameter definition rule;
[0014] According to the mapping relationship, the multiple products to be deployed are called based on the product configuration parameters to obtain product information of the multiple products to be deployed.
[0015] In some embodiments of the present application, based on the above technical solution, the product configuration parameters include product entity parameters, product type parameters and product value parameters of the software product, the product type parameters are used to indicate the type of the product entity parameters, and the product value parameters are used to indicate the values of the product entity parameters;
[0016] Determining the product information of the multiple products to be deployed respectively based on the product configuration parameters and the software product types indicated by the parameter definition rules includes:
[0017] Establishing a mapping relationship between the product entity parameter and the software product based on the software product type indicated by the parameter definition rule;
[0018] According to the mapping relationship, the multiple products to be deployed are called based on the product entity parameters to obtain product information of the multiple products to be deployed.
[0019] In some embodiments of the present application, based on the above technical solution, the parameter definition rule includes parameter rule content and parameter rule type, and the parameter rule type is used to indicate the type of the parameter rule content. Before determining the product information of the multiple products to be deployed respectively based on the product configuration parameters and the software product type indicated by the parameter definition rule, the method further includes:
[0020] Calling a parsing tool corresponding to the parameter rule type according to the parameter rule type;
[0021] The parameter rule content is parsed using a parsing tool corresponding to the parameter rule type.
[0022] In some embodiments of the present application, based on the above technical solution, the product configuration parameters also include product level parameters and product label parameters, the product level parameters are used to indicate the deployment level of the software product, and the product label parameters are used to indicate the functions of other parameters in the product configuration parameters except the product label parameters.
[0023] In some embodiments of the present application, based on the above technical solution, the product configuration parameters also include product level parameters.
[0024] Before respectively determining the product information of the plurality of products to be deployed based on the product configuration parameters and the software product types indicated by the parameter definition rules, the method further includes:
[0025] Parsing the product configuration parameters,
[0026] The product configuration parameters are extracted using the product level parameters as an index.
[0027] In some embodiments of the present application, based on the above technical solution, deploying the multiple products to be deployed on the object includes:
[0028] Determining the deployment order of multiple software products in the product deployment solution through product dependency rules;
[0029] Building a workflow template based on the deployment sequence and product information of the multiple products to be deployed;
[0030] And according to the workflow template, the multiple products to be deployed are deployed to the corresponding objects respectively.
[0031] According to one aspect of an embodiment of the present application, the present application provides a software product deployment device, including:
[0032] An acquisition module, used to acquire product configuration parameters and parameter definition rules of multiple products to be deployed, wherein the parameter definition rules are used to indicate the software product type defined by the product configuration parameters, and to acquire objects on which the multiple products to be deployed need to be deployed;
[0033] A product parsing module, configured to respectively determine product information of the plurality of products to be deployed based on the product configuration parameters and the software product types indicated by the parameter definition rules;
[0034] A deployment module is used to deploy the multiple products to be deployed on the object.
[0035] In some embodiments of the present application, based on the above technical solution, the product analysis module includes:
[0036] A product mapping unit, configured to establish a mapping relationship between the product configuration parameters and the software product based on the software product type indicated by the parameter definition rule;
[0037] The parsing unit is used to call the multiple products to be deployed according to the mapping relationship and based on the product configuration parameters to obtain product information of the multiple products to be deployed.
[0038] In some embodiments of the present application, based on the above technical solution, the parameter definition rule includes parameter rule content and parameter rule type, the parameter rule type is used to indicate the type of the parameter rule content, and the product parsing module further includes:
[0039] A calling unit, configured to call a parsing tool corresponding to the parameter rule type according to the parameter rule type;
[0040] The rule parsing unit is used to parse the parameter rule content using a parsing tool corresponding to the parameter rule type.
[0041] In some embodiments of the present application, based on the above technical solution, the product configuration parameters include product entity parameters, product type parameters and product value parameters of the software product, the product type parameters are used to indicate the type of the product entity parameters, and the product value parameters are used to indicate the value of the product entity parameters; the product parsing module includes:
[0042] An entity mapping unit, configured to establish a mapping relationship between the product entity parameters and the software product based on the software product type indicated by the parameter definition rule;
[0043] The entity parsing unit is used to call the multiple products to be deployed based on the product entity parameters according to the mapping relationship to obtain product information of the multiple products to be deployed.
[0044] In some embodiments of the present application, based on the above technical solution, the product configuration parameters also include product level parameters.
[0045] The product deployment device further includes a parameter parsing module, which is used to parse the product configuration parameters and extract the product configuration parameters using the product level parameters as indexes.
[0046] In some embodiments of the present application, based on the above technical solution, the deployment module includes:
[0047] An orchestration unit, configured to determine a deployment order of multiple software products in the product deployment solution through product dependency rules;
[0048] A workflow construction unit, configured to construct a workflow template based on the deployment sequence and product information of the multiple products to be deployed;
[0049] A deployment unit is used to deploy the multiple products to be deployed to the corresponding objects respectively according to the workflow template.
[0050] According to one aspect of an embodiment of the present application, a computer-readable medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the software product deployment method in the above technical solution is implemented.
[0051] According to one aspect of an embodiment of the present application, an electronic device is provided, comprising: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to execute the software product deployment method in the above technical solution by executing the executable instructions.
[0052] According to one aspect of the embodiments of the present application, a computer program product or a computer program is provided, the computer program product or the computer program includes computer instructions, and the computer instructions are stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the software product deployment method in the above technical solution.
[0053] In the technical solution provided in the embodiment of the present application, the present application obtains product configuration parameters and parameter definition rules of multiple products to be deployed, wherein the parameter definition rules are used to indicate the software product type defined by the product configuration parameters; and based on the product configuration parameters and the software product type indicated by the parameter definition rules, the product information of the multiple products to be deployed is determined respectively; then the objects on which the multiple products to be deployed need to be deployed are obtained; and finally, the multiple products to be deployed are deployed on the objects. Through the method of the present application, the product information of the multiple products to be deployed can be quickly determined using the obtained product configuration parameters and parameter definition rules. Therefore, users can customize product configuration parameters and quickly obtain product information to be deployed without spending a lot of time selecting products to be deployed in a huge product library, which saves time and greatly improves the deployment efficiency of software products.
[0054] It should be understood that the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the present application. BRIEF DESCRIPTION OF THE DRAWINGS
[0055] The drawings herein are incorporated into the specification and constitute a part of the specification, illustrate embodiments consistent with the present application, and together with the specification are used to explain the principles of the present application. Obviously, the drawings described below are only some embodiments of the present application, and for ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0056] Figure 1 The exemplary system architecture block diagram applying the technical solution of the present application is schematically shown.
[0057] Figure 2 The flowchart of the software product deployment method of the present application is schematically shown.
[0058] Figure 3 A flowchart of a method for determining product information of multiple products to be deployed in the present application is schematically shown.
[0059] Figure 4 A flowchart schematically shows another method for determining product information of multiple products to be deployed in the present application.
[0060] Figure 5 A flow chart of a method for parsing parameter rules in the present application is schematically shown.
[0061] Figure 6 A flow chart of a parameter extraction method of the present application is schematically shown.
[0062] Figure 7 The flowchart schematically shows the method for deploying multiple products to be deployed in the present application.
[0063] Figure 8 A product dependency rule table of the present application is schematically shown.
[0064] Fig. 9 Schematically shows Figure 8 The workflow template diagram formed by the corresponding dependency rules.
[0065] Fig.10 The structural block diagram of the software product deployment device of the present application is schematically shown.
[0066] Fig.11 The flowchart schematically shows the workflow of each module in the software product deployment device of the present application.
[0067] Fig.12 The structure block diagram of a computer system suitable for implementing an electronic device of an embodiment of the present application is schematically shown. DETAILED DESCRIPTION
[0068] Example embodiments will now be described more fully with reference to the accompanying drawings. However, example embodiments can be implemented in a variety of forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this application will be more comprehensive and complete and fully convey the concept of the example embodiments to those skilled in the art.
[0069] In addition, described feature, structure or characteristic can be combined in one or more embodiments in any suitable manner. In the following description, many specific details are provided to provide a full understanding of the embodiments of the present application. However, those skilled in the art will appreciate that the technical scheme of the present application can be put into practice without one or more of the specific details, or other methods, components, devices, steps, etc. can be adopted. In other cases, known methods, devices, realizations or operations are not shown or described in detail to avoid blurring the various aspects of the application.
[0070] The block diagrams shown in the accompanying drawings are merely functional entities and do not necessarily correspond to physically independent entities. That is, these functional entities may be implemented in software form, or in one or more hardware modules or integrated circuits, or in different networks and / or processor devices and / or microcontroller devices.
[0071] The flowcharts shown in the accompanying drawings are only exemplary and do not necessarily include all the contents and operations / steps, nor must they be executed in the order described. For example, some operations / steps can be decomposed, and some operations / steps can be combined or partially combined, so the actual execution order may change according to actual conditions.
[0072] The software product deployment method of the present application can be applied to systems that require software product selection, and is not limited to NFV systems. The following specifically introduces the software product deployment solution of the present application on the NFV system.
[0073] Network Function Virtualization (NFV) is the use of software to install, control, and operate network functions running on general-purpose hardware. It integrates cloud and virtualization technologies to enable new-generation network services to have better scalability and automation capabilities. NFV uses standard IT virtualization technology to split network function modules, which can accelerate the deployment of new network services.
[0074] The standard architecture of NFV proposes three key standards, namely decoupling, separation of hardware and software; flexibility, automation and scalable network function deployment; dynamic operation, controlling the operating parameters of network functions through granular control and monitoring of network status. Based on these three standards, the following three main modules are deployed.
[0075] Network Function Virtualization Infrastructure (NFV Infrastructure, NFVI for short) includes virtualization layer and physical resources, such as COTS servers, switches, storage devices, etc. Specifically, NFVI can include virtualization software layer, virtualization management software layer and cloud management software layer. NFVI can be deployed across several physical locations. In this case, the network that provides data connection for these physical sites is also called part of NFVI. In order to be compatible with the existing network architecture, the network access point of NFVI must be able to interconnect with other physical networks.
[0076] Virtual Network Functions (VNFs) refer to specific virtual network functions that provide certain network services. They are software and are deployed in virtual machines, containers, or physical machines using the infrastructure provided by NFVI.
[0077] The Management and Orchestration (MANO) module provides overall management and orchestration of NFV. Through the reasonable orchestration of MANO, the whole system can play its due role by doing the right thing at the right time.
[0078] The ultimate goal of the NFV cloud network system is to achieve three-layer decoupling. When deploying the three modules above NFV, due to different layers, such as the NFVI layer and VNFs layer mentioned above, or different layers in the same layer, such as the virtualization software layer and virtualization management software layer in the NFVI layer mentioned above; and different software deployments in the same layer may use components from different manufacturers, such as Huawei products or ZTE products. Based on this, the number of software products to be deployed is huge, and the existing deployment method requires users to select the software products they need from the huge number of software products. For example, if a user wants to deploy product A at a certain position in the virtualization software layer in the NFVI layer, he needs to select the required product A from the huge software library, and it takes a lot of time to obtain the required software product, thus resulting in low overall deployment efficiency.
[0079] In order to solve the above technical problems, the present application discloses a software product deployment method, a software product deployment device, a computer-readable medium, and an electronic device. It should be noted that the present application can be used for the software product deployment of the above three main modules, and can also be used for the software product deployment of any layer of the above three main modules, and can also be used for the software product deployment of a certain layer in any layer of the module. The present application does not limit this.
[0080] The content of this application will be further explained below through various aspects.
[0081] The implementation terminal of the corresponding method of the present application can be any device with computing and processing functions. The device can also be connected to an external device for transmitting data. It can be a portable mobile device, such as a smart phone, a tablet computer, a laptop computer, a PDA (Personal Digital Assistant), etc., or it can be a fixed device, such as a computer device, a field terminal, a desktop computer, a server, a workstation, etc. It can also be a collection of multiple devices, such as the physical infrastructure of cloud computing.
[0082] Figure 1 The exemplary system architecture block diagram applying the technical solution of the present application is schematically shown.
[0083] like Figure 1 As shown, the system architecture 100 may include a terminal device 110, a network 120, and a server 130. The terminal device 110 may include various electronic devices such as a smart phone, a tablet computer, a laptop computer, and a desktop computer. The server 130 may be an independent physical server, or a server cluster or a distributed system composed of multiple physical servers, or a cloud server providing cloud computing services. The network 120 may be a communication medium of various connection types that can provide a communication link between the terminal device 110 and the server 130, such as a wired communication link or a wireless communication link.
[0084] According to the implementation requirements, the system architecture in the embodiment of the present application can have any number of terminal devices, networks and servers. For example, the server 130 can be a server group composed of multiple server devices. In addition, the technical solution provided in the embodiment of the present application can be applied to the terminal device 110, can also be applied to the server 130, or can be implemented by the terminal device 110 and the server 130 together, and the present application does not make any special restrictions on this.
[0085] Among them, the server 130 or the terminal device 110 of the present application may include a storage device, and a large amount of software product information is stored in the storage device. The present application can obtain product configuration parameters and parameter definition rules of multiple products to be deployed through the terminal device 110. The user can enter the product configuration parameters and parameter definition rules of multiple products to be deployed in the terminal device 110, and then the server 130 or the terminal device 110 obtains the product configuration parameters and parameter definition rules of multiple products to be deployed, and can determine the product information of the multiple products to be deployed respectively based on the software product types indicated by the product configuration parameters and the parameter definition rules; and retrieve the corresponding multiple products to be deployed from the storage device of the server 130 or the terminal device 110. The objects of multiple products to be deployed can also be obtained through the terminal device 110, and the user can enter the objects of multiple products to be deployed on the terminal device 110. Finally, the server 130 or the terminal device 110 can deploy the multiple products to be deployed on the objects to complete the software product deployment of the NFV system.
[0086] The above section introduces the contents of an exemplary system architecture that applies the technical solution of the present application. Next, we will continue to introduce the software product deployment method of the present application.
[0087] like Figure 2 As shown, Figure 2 The flowchart of the software product deployment method of the present application is schematically shown.
[0088] According to one aspect of an embodiment of the present application, the present application provides a software product deployment method, including steps S210 to S240.
[0089] In step S210: obtaining product configuration parameters and parameter definition rules of a plurality of products to be deployed, wherein the parameter definition rule is used to indicate the software product type defined by the product configuration parameters;
[0090] Product configuration parameters are parameters used to configure software products. In one embodiment of the present application, the product configuration parameters of the present application may include product entity parameters, product type parameters, and product value parameters of the software product, wherein the product type parameter is used to indicate the type of the product entity parameter, and the product value parameter is used to indicate the value of the product entity parameter. These three parameters may have a basic triple structure of data, and the contents of these three parameters are specifically described below.
[0091] The product entity parameter of the present application corresponds to the field (KEY) in the data triplet, which can be used to indicate the identification of the product. There are many specific forms of the product entity parameter, for example, the product entity parameter can be text, string, garbled code, etc. For example, the corresponding product entity parameter of software product A can be product A, a1234 or 0x124.
[0092] The product type parameter is used to indicate the data type (type) of the product entity parameter. For example, the product entity parameter can be a floating point type, a character type, a Boolean type, or an int type in the data. The type represents the storage format of the product entity parameter in the storage device of the server 130 or the terminal device 110. The corresponding product value parameter (value) indicates the value indicated by the corresponding data type of the product entity parameter, which is also used by the storage device based on the data. For example, the product type corresponding to product A is int type, and the value is 10000000.
[0093] The product configuration parameters (level) of the present application include not only the above parameters, but in one embodiment of the present application, the product configuration parameters of the present application also include product level parameters, which are used to indicate the deployment level of the software product. For example, for the NFV system, the virtualization software layer in the corresponding NFVI layer is a level, indicating that product A needs to be deployed on the virtualization software layer in the NFVI layer. The level at which the specific object to be deployed for the software product is located can be determined by the product level parameters. Therefore, some software products can also be screened out based on the product level parameter conditions. For the NFV system, the products used at each level are different. If the deployment level of the software product is determined by the product level parameters, then software products that are not at this level can be excluded and will not become products to be deployed.
[0094] In one embodiment of the present application, the product configuration parameters of the present application may also include a product label parameter (Label), which is mainly for users and is used to indicate the role of other parameters in the product configuration parameters except the product label parameter, and is used to assist in the configuration of the parameters. For example, the product label parameter may indicate that the role of the product level parameter is to determine the deployment level of the software product, and the role of the product entity parameter is to determine the identification of the software product. Through the product label parameter, users can better implement the configuration of the software product.
[0095] In one embodiment of the present application, the product configuration parameters of the present application may also include product component parameters, which are used to represent a combination of software products. The product component parameters can be set selectively, because for objects that specifically need to deploy software products in the NFV system, some only need one software product, so the product component parameters are not involved. When an object that needs to be deployed requires a combination of multiple software products for deployment, the corresponding product component parameters of the present application can reflect the information of its combination. For example, for an object to be deployed, product A and product B need to be deployed in combination. Then the corresponding product component parameters can be Component (A, B).
[0096] The above introduces the information of the product configuration parameters of the present application, and the following introduces the parameter definition rules of the present application. The parameter definition rules are used to indicate the type of software product defined by the product configuration parameters. Therefore, the product configuration parameters can be converted into software products through the parameter definition rules. Therefore, when the user inputs the product configuration parameters through the terminal device 110, the corresponding terminal device 110 or server 130 can call out the software product corresponding to the product configuration parameters for automatic deployment.
[0097] In one embodiment of the present application, the parameter definition rule includes parameter rule content (rules) and parameter rule type (rules type), and the parameter rule type is used to indicate the type of parameter rule content. Among them, the parameter rule content includes the rules that the product configuration parameters need to follow during the configuration, verification and parsing process. It can be understood as converting the product configuration parameters into the rules that the software product must follow.
[0098] For example, the present application may utilize simple rules or engine rules. Simple rules may be expressed in the form of numerical ranges. For example, the product entity parameters are expressed in numbers, such as 010190, where the first two digits may represent the level, the next two digits represent the manufacturer, and the next two digits represent the product model. By utilizing the parameter rules of the numerical range, different numerical ranges may be determined according to the number of layers. For example, the numerical range for the NFVI layer is 00-50, the numerical range for the VNFs layer is 51-75, and the numerical range for the MANO layer is 76-99. Since the NFVI layer generally has more products to be deployed, the corresponding numerical range is larger. Correspondingly, the levels under the NFVI layer may be further refined, and different sub-intervals may be further divided within the numerical range of 00-50. The next two digits may correspond to different manufacturers, with one numerical value representing one manufacturer, 01 representing manufacturer A, and 02 representing manufacturer B. The numbers that follow can represent the product model. The model here can be determined according to the number of products corresponding to the manufacturer. If the number is small, the corresponding numbers at the end will be smaller. For example, manufacturer A has less than 100 software products, so only two digits can be left at the end.
[0099] Therefore, through the above rules, it is possible to convert product configuration parameters into software products. For example, product entity parameter 010190 can represent model B software product of manufacturer A located in the virtualization software layer in the NFVI layer.
[0100] The present application can also use engine rules. Engine rules are conditional relationships of "if then", which are conditional judgment rules. For example, the product entity parameters are represented by characters, such as abcdad, where the first two digits can represent the level, the next two digits represent the manufacturer, and the next two digits represent the product model. The engine rules can be used to determine that if the first letter is a, it represents the NFVI layer, and if the first letters of the next two digits are cd, it can represent the A manufacturer.
[0101] Therefore, the present application can convert product configuration parameters into software products through parameter rule types. After the user defines the product configuration parameters, the corresponding present application can convert the product configuration parameters into software products for automatic deployment. The parameter rule type of the present application is used to distinguish the type of rules, which can be understood as a code book for cracking the content of the parameter rules. When the content of the parameter rules is unknown, it is impossible to convert the parameter rule content into a software product. After obtaining the parameter rule class, different tools can be called through the parameter rule type to perform parameter verification and analysis to realize the conversion of the parameter rule content into a software product.
[0102] Among them, the parameter rule content (rules) and parameter rule type (rules type) of the present application can also be used as part of the product configuration parameters of the present application. Based on this, the present application can configure multi-tuple parameters. Multi-tuple parameters can be used to configure large software products, avoiding the use of single parameter configuration, which leads to no support or only limited support for the configuration of multi-layer software products, thereby improving the diversity of parameter configuration and improving deployment efficiency.
[0103] The above introduces the content of the product configuration parameters and parameter definition rules of the present application. Next, the method for obtaining the product configuration parameters and parameter definition rules of multiple products to be deployed in the present application will be described. The present application can obtain the product configuration parameters and parameter definition rules of multiple products to be deployed through the terminal device 110. Among them, the user can directly input the product configuration parameters and parameter definition rules through the terminal device 110. When the input is performed by user customization, the corresponding product configuration parameters may not include product label parameters. The user can implement the mapping from product configuration parameters to software products according to the customized product configuration parameters.
[0104] Of course, the user can also select product configuration parameters through the terminal device 110. At this time, the product configuration parameters can include product label parameters for user reference, so that the user can more quickly select the product configuration parameters corresponding to the software product to be deployed. For example, the user selects the parameter rule content of the parameter definition rule as a simple rule through the terminal device 110, and then enters the product entity parameter in the product configuration parameter as 010190. The corresponding terminal device 110 or server 130 can retrieve the B model software product of manufacturer A in the virtualization software layer in the NFVI layer according to the product entity parameter. Therefore, the user can quickly and accurately find the product to be deployed, thereby improving the efficiency of deployment.
[0105] In step S220: based on the product configuration parameters and the software product types indicated by the parameter definition rules, product information of a plurality of products to be deployed is determined respectively.
[0106] After the product configuration parameters are obtained, product information of multiple products to be deployed can be determined based on the product configuration parameters and corresponding parameter definition rules.
[0107] In one embodiment of the present application, Figure 3 As shown, Figure 3A flowchart of a method for determining product information of multiple products to be deployed is schematically shown in the present application. When the product configuration parameters include product entity parameters, product type parameters, and product numerical parameters of the software product, the method for determining the product information of multiple products to be deployed based on the product configuration parameters and the software product type indicated by the parameter definition rule includes steps S310 to S320.
[0108] Step S310: Establishing a mapping relationship between product entity parameters and software products based on the software product type indicated by the parameter definition rule.
[0109] This application can directly establish a mapping relationship between product entity parameters and software products based on the software product type indicated by the parameter definition rule. For example, product entity parameter 010190 can represent a model B software product of manufacturer A in the virtualized software layer in the NFVI layer. At this time, a mapping relationship between product entity parameter 010190 and model B software product of manufacturer A in the virtualized software layer in the NFVI layer can be established. Each product entity parameter of this application has a software product mapped to it. Therefore, the corresponding software product can be obtained through the product entity parameter.
[0110] Step S320: According to the mapping relationship, multiple products to be deployed are called based on the product entity parameters to obtain product information of the multiple products to be deployed.
[0111] After the mapping relationship is obtained, the software product corresponding to the product entity parameter can be called out according to the mapping relationship, and the product information of multiple products to be deployed can be obtained.
[0112] Steps S310 to S320 directly establish a mapping relationship with the software product through the product entity parameters. When the product configuration parameters of the present application are multiple, for example, the product configuration parameters of the present application have seven tuples, the method for determining the product information of multiple products to be deployed is as follows.
[0113] In one embodiment of the present application, Figure 4 As shown, Figure 4 The method for determining the product information of multiple products to be deployed based on the product configuration parameters and the software product types indicated by the parameter definition rules includes steps S410 to S430.
[0114] Step S410: multiple product configuration parameters are concatenated to form mapping parameters.
[0115] When there are multiple product configuration parameters of the present application, such as including: product entity parameters, product type parameters, product numerical parameters, product level parameters and product component parameters, the present application can directly splice these parameters to form mapping parameters.
[0116] For example, when the product entity parameter is 00, the product type parameter is int, the product value parameter is 20, the product level parameter is 10, and the product component parameter is A / B, the corresponding mapping parameter can be: 00int2010A / B, and continue with step S420.
[0117] Step S420: establishing a mapping relationship between mapping parameters and software products based on the software product type indicated by the parameter definition rule.
[0118] The parameter definition rules define the relationship between each parameter and the product. For example, in step S410, the product entity parameter 00 can represent the product B of manufacturer A, the product type parameter int and the product value parameter 20 represent the storage form of the parameter in the storage device, the product level parameter 10 represents that the product is located in the virtualization management software layer in the NFVI layer, and the product component parameter A / B represents that it needs to be composed of product A and product B. Therefore, based on the above parameter definition rules, the mapping relationship between the mapping parameter 00int2010A / B and the combination of product B and product A of manufacturer A can be established, and the product is set in the virtualization management software layer in the NFVI layer.
[0119] Step S430: According to the mapping relationship, multiple products to be deployed are called based on the mapping parameters to obtain product information of the multiple products to be deployed.
[0120] After the mapping relationship is known, the corresponding software product can be called out from the storage device of the server 130 or the terminal device 110 based on the mapping relationship, and the product information of multiple products to be deployed is obtained.
[0121] Before step S220 of the present application and after step S210, the present application may further include a parameter parsing process. The specific method is as follows.
[0122] like Figure 5 As shown, Figure 5 A flow chart of a method for parsing parameter rules in the present application is schematically shown.
[0123] Before respectively determining the product information of the plurality of products to be deployed based on the product configuration parameters and the software product types indicated by the parameter definition rules, the method further includes steps S510 to S520.
[0124] Step S510: calling a parsing tool corresponding to the parameter rule type according to the parameter rule type.
[0125] For different software products, each manufacturer can obtain the corresponding product of the manufacturer by configuring parameter rules. Therefore, different parameter rule contents will be formed, that is, different manufacturers will use different rules to define parameter configuration, verification, and parsing rules for software products, and different parameter rule types require different parsing tools. However, the existing rule types used by various manufacturers are very different. When users configure software products, they need to obtain and memorize the parameter rule types of each manufacturer, which greatly increases the difficulty of product configuration.
[0126] When configuring the software product, the present application may call the parsing tool corresponding to the parameter rule type according to the parameter rule type. The parameter rule type and the parsing tool corresponding thereto may be stored in the storage device of the server 130 or the terminal device 110 of the present application. After the user's parameter rule type is obtained, the parsing tool corresponding thereto may be called to perform step S520.
[0127] Step S520: parse the parameter rule content using a parsing tool corresponding to the parameter rule type.
[0128] After obtaining the corresponding parsing tool, the parameter rule content can be parsed, and the parameter rule content can be determined through the analysis, so as to continue to step S220 to obtain product information of multiple products to be deployed according to the parameter rule content and product configuration parameters.
[0129] This application utilizes steps S510-S520 to achieve flexible definition of configuration parameters for different software products across levels and vendors, and can automatically call parsing tools at different levels and vendors to parse the parameter rule content to determine the parameter rules. This avoids the need to develop parameter configuration pages and parsing tools for products from different vendors separately in existing solutions, and also avoids the difficulty in adapting a unified parsing template due to differences in configuration parameters due to different versions of the same product. This application can make product configuration simpler and faster, and improve deployment efficiency.
[0130] The above part discloses the parsing process of parameter rules. Before step S220 of the present application and after step S210, the present application may further include the following steps.
[0131] like Figure 6 As shown, Figure 6 A flow chart of a parameter extraction method of the present application is schematically shown.
[0132] In one embodiment of the present application, before determining the product information of multiple products to be deployed respectively based on the product configuration parameters and the software product types indicated by the parameter definition rules, the present application further includes steps S610 to S620.
[0133] Step S610: parse product configuration parameters.
[0134] The method for parsing the product configuration parameters is the same as step S520.
[0135] Step S620: extract product configuration parameters using the product level parameters as indexes.
[0136] After parsing the parameters, the product level parameters can be used as indexes to extract product configuration parameters. For example, after parsing, when the product entity parameter is 00, the product type parameter is int, the product value parameter is 20, the product level parameter is 10, and the product component parameter is A / B, the product level parameters can be used as indexes to extract all product configuration parameters, for example, 1000int20A / B. Since the method uses the product level parameters as indexes, the level at which the product is deployed can be directly located. When the user performs step S230, the objects that need to deploy multiple products to be deployed can be directly displayed through the terminal device 110 for the user to select, thereby effectively shortening the time for the user to locate and click on the corresponding level. Moreover, by using the product level parameters as indexes, when determining the product information of multiple products to be deployed, the server 130 or the terminal device 110 can also directly locate and select from the products under the corresponding level directory, which can effectively reduce the time for the server 130 or the terminal device 110 to determine the product information of multiple products to be deployed, effectively improving the efficiency of product configuration and the deployment efficiency.
[0137] After completing step S210 and step S220, multiple product information to be deployed can be determined, and then the process can proceed to step S230 to step S240.
[0138] In step S230: obtaining an object that needs to deploy multiple products to be deployed;
[0139] The objects that need to deploy multiple products to be deployed can be obtained through the terminal device 110. The user can directly input the objects that need to deploy multiple products to be deployed in the terminal device 110. For example, the virtualization software layer of the NFVI layer is input as a deployment object of a product, and then the deployment objects of other multiple products are input in sequence. The terminal device 110 of the present application can also display the deployed objects on the terminal device 110 according to the hierarchical information in the user's product configuration parameters for the user to select. This can reduce the time for the user to input the deployment object.
[0140] After obtaining an object that needs to deploy multiple products to be deployed, proceed to step S240.
[0141] In step S240: multiple products to be deployed are deployed on the object.
[0142] When the terminal device 110 or the server 130 determines information of multiple products to be deployed and obtains an object on which multiple products to be deployed are to be deployed, the multiple products to be deployed can be deployed on the object. The specific deployment method is as follows.
[0143] like Figure 7 As shown, Figure 7 The flowchart schematically shows the method for deploying multiple products to be deployed in the present application.
[0144] In one embodiment of the present application, a method for deploying a plurality of products to be deployed on an object includes steps S710 to S730.
[0145] Step S710: Determine the deployment order of multiple software products in the product deployment solution through product dependency rules.
[0146] The dependency rules between products refer to the mutual dependency between products. For software products, different software has different versions, and many software products can only adapt to other specific software products or specific versions of software in other specific software products. The following will use a product dependency rule to illustrate the dependency rules between multiple products.
[0147] like Figure 8 As shown, Figure 8 A product dependency rule table of the present application is schematically shown. Among them, product B needs to depend on product A, and the dependency rule is: when the version number of product B is less than product B v 1.0, the corresponding version number of product A needs to be less than product A v 2.5; when the version number of product B is greater than or equal to product Bv 1.0, the corresponding version number of product A needs to be greater than or equal to product Av 2.5; when the version number of product C is greater than product Cv 0.5, the corresponding version number of product A needs to be greater than product Av 1.0. The greater than and less than refer to the version number of the version. For a software, with continuous updates, the version number increases in sequence by default, for example, v 1.0, v 1.1, v2.0, etc. Taking product C as an example, when product C is product Cv0.5 or above, the corresponding product A must be product Av 1.0 or above, and only then can the deployment and compatibility of product C be realized. Therefore, the dependency relationship of the product can be defined according to the dependency rules of product deployment.
[0148] The dependency rules between the products of the present application are stored in the storage device of the server 130 or the terminal device 110, wherein the dependency rules can be predefined and stored through the data disclosed by different manufacturers. Of course, the dependency rules of the products can also be modified according to the user's customization.
[0149] Step S720: construct a workflow template based on the deployment sequence and product information of multiple products to be deployed.
[0150] After determining the deployment order and product information of multiple products to be deployed, you can build a workflow template. The workflow template includes multiple products to be deployed and deploys them to corresponding objects in the deployment order. For example, Fig. 9 As shown, Fig. 9 Schematically shows Figure 8 The workflow template diagram formed by the corresponding dependency rules.
[0151] For example, product A needs to be deployed on the cluster layer of the storage device of the NFVI module, product B needs to be deployed on the host layer of the storage device of the NFVI module, and product C needs to be deployed on the host layer of the switch of the NFVI module. Therefore, the corresponding workflow template is as follows: Figure 8 At this point, in the NFV system, when the three software products are deployed, they will be deployed according to the deployment order and objects of the workflow template.
[0152] Step S730: deploy multiple products to be deployed to corresponding objects respectively according to the workflow template.
[0153] After the workflow template is determined, multiple products to be deployed can be deployed to corresponding objects based on the workflow template. When deploying each product to be deployed, the present application can call different deployment tools according to the manufacturer of each product to be deployed, so as to deploy each product to be deployed to the corresponding object and complete the software product deployment of the NFV system.
[0154] In the technical solution provided in the embodiment of the present application, the present application obtains product configuration parameters and parameter definition rules of multiple products to be deployed, wherein the parameter definition rules are used to indicate the software product type defined by the product configuration parameters; and based on the software product type indicated by the product configuration parameters and the parameter definition rules, the product information of multiple products to be deployed is determined respectively; then the object on which the multiple products to be deployed need to be deployed is obtained; and finally, the multiple products to be deployed are deployed on the object. Through the method of the present application, the product information of multiple products to be deployed can be quickly determined using the obtained product configuration parameters and parameter definition rules. Therefore, users can customize product configuration parameters and quickly obtain product information to be deployed without spending a lot of time selecting products to be deployed in a huge product library, which saves time and greatly improves the deployment efficiency of software products.
[0155] The software product deployment method corresponding to this application can be applied to cloud network construction and to the scenario of unified integrated deployment of cloud network products. In order to realize the automated integrated deployment of full-stack products of NFV architecture, it is necessary to define product configuration parameters and parameter definition rules for products of different components and manufacturers at different levels. The parameter definition rules can be used to define, configure, verify and reorganize the configuration parameters of the full-stack product, thereby achieving a simple and fast product configuration method.
[0156] In order to solve the function of orchestrating the deployment sequence of different products, this application introduces deployment dependency rules, which add system-built-in or user-defined deployment dependency rules based on product characteristics, to achieve automatic recommendation and on-demand orchestration of deployment sequence, and ensure the flexibility and accuracy of integrated deployment. At the same time, this application also uses the deployment tool scheduler to complete the instantiation of the deployment workflow according to the deployment sequence and product configuration parameters, and calls different automated deployment tools in turn to achieve unified integrated deployment capabilities of cloud network products, which can meet the needs of various complex application scenarios for automated integrated deployment of cloud network products.
[0157] It should be noted that although the steps of the method in the present application are described in a specific order in the drawings, this does not require or imply that the steps must be performed in this specific order, or that all the steps shown must be performed to achieve the desired results. Additionally or alternatively, some steps may be omitted, multiple steps may be combined into one step, and / or one step may be decomposed into multiple steps, etc.
[0158] The above part introduces the content of the data software product deployment method of this application. Next, the content of the software product deployment device 1000 of this application will be introduced. The product deployment device 1000 can be used to execute the software product deployment method in the above embodiments of this application.
[0159] According to one aspect of the embodiment of the present application, Fig.10As shown, Fig.10 The present application also provides a software product deployment device 1000, including:
[0160] The acquisition module 1010 is used to acquire product configuration parameters and parameter definition rules of multiple products to be deployed, the parameter definition rules are used to indicate the software product type defined by the product configuration parameters, and to acquire objects that need to deploy multiple products to be deployed;
[0161] A product parsing module 1020, for determining product information of a plurality of products to be deployed respectively based on the product configuration parameters and the software product types indicated by the parameter definition rules;
[0162] The deployment module 1030 is used to deploy multiple products to be deployed on an object.
[0163] In one embodiment of the present application, the product parsing module 1020 includes: a product mapping unit, which is used to establish a mapping relationship between product configuration parameters and software products based on the software product type indicated by the parameter definition rule; and a parsing unit, which is used to call multiple products to be deployed based on the product configuration parameters according to the mapping relationship to obtain product information of multiple products to be deployed.
[0164] In one embodiment of the present application, the parameter definition rule includes parameter rule content and parameter rule type, and the parameter rule type is used to indicate the type of the parameter rule content. The product parsing module 1020 also includes:
[0165] A calling unit, configured to call a parsing tool corresponding to the parameter rule type according to the parameter rule type;
[0166] The rule parsing unit is used to parse the parameter rule content using a parsing tool corresponding to the parameter rule type.
[0167] In one embodiment of the present application, the product configuration parameters include product entity parameters, product type parameters and product value parameters of the software product, the product type parameters are used to indicate the type of the product entity parameters, and the product value parameters are used to indicate the value of the product entity parameters; the product parsing module 1020 includes:
[0168] An entity mapping unit, used to establish a mapping relationship between product entity parameters and software products based on the software product type indicated by the parameter definition rule;
[0169] The entity parsing unit is used to call multiple products to be deployed based on the product entity parameters according to the mapping relationship to obtain product information of the multiple products to be deployed.
[0170] In one embodiment of the present application, the product configuration parameters also include product level parameters, and the product deployment device also includes a parameter parsing module, which is used to parse the product configuration parameters and extract the product configuration parameters using the product level parameters as an index.
[0171] In one embodiment of the present application, the deployment module 1030 includes:
[0172] An orchestration unit, used to determine the deployment order of multiple software products in a product deployment solution through product dependency rules;
[0173] A workflow construction unit, used to construct a workflow template based on a deployment sequence and product information of multiple products to be deployed;
[0174] The deployment unit is used to deploy multiple products to be deployed to corresponding objects according to the workflow template.
[0175] Next, the workflow of each module in the software product deployment device of the present application is specifically introduced.
[0176] like Fig.11 As shown, Fig.11 The flowchart schematically shows the workflow of each module in the software product deployment device of the present application.
[0177] In one embodiment of the present application, the process of deploying the NFV system using the software product deployment device of the present application includes steps S1101 to S1107. Among them, in step S1101, the product configuration parameters and parameter definition rules of multiple products to be deployed are obtained by the acquisition module 1010. Then in step S1102, the product parsing module 1020 determines the product information of multiple products to be deployed respectively by the product configuration parameters and the software product types indicated by the parameter definition rules. In step S1103, the product parsing module 1020 sends the product information of multiple products to be deployed to the orchestration unit of the deployment module 1030. In step S1104, after the orchestration module arranges the deployment sequence, it sends the deployment sequence and the product information of multiple products to be deployed to the workflow construction unit. In step S1105, the workflow construction unit constructs a workflow template based on the deployment sequence and the product information of multiple products to be deployed. In step S1106, the workflow construction unit calls different deployment tools for deployment according to the workflow template. In step S1107, the deployment tool deploys different products to be deployed to corresponding objects according to the workflow template. The objects correspond to the software installation sources in the NFV system, which ultimately point to the hardware and build the NFV framework together. The automatic deployment of the entire NFV system software products is completed.
[0178] The specific details of the software product deployment device provided in each embodiment of the present application have been described in detail in the corresponding method embodiment and will not be repeated here.
[0179] The above section introduces the content of the product deployment device of this application, and the following will continue to introduce other aspects of this application.
[0180] According to one aspect of an embodiment of the present application, the present application provides a computer-readable medium having a computer program stored thereon, and when the computer program is executed by a processor, the software product deployment method in the above technical solution is implemented.
[0181] According to one aspect of an embodiment of the present application, the present application provides an electronic device, which includes: a processor; and a memory for storing executable instructions of the processor; wherein the processor is configured to execute the software product deployment method in the above technical solution by executing the executable instructions.
[0182] According to one aspect of the embodiments of the present application, a computer program product or a computer program is provided, the computer program product or the computer program includes computer instructions, and the computer instructions are stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the software product deployment method in the above technical solution.
[0183] Fig.12 The structure block diagram of a computer system for implementing an electronic device according to an embodiment of the present application is schematically shown.
[0184] It should be noted that Fig.12 The computer system 1200 of the electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.
[0185] like Fig.12As shown, the computer system 1200 includes a central processing unit 1201 (CPU), which can perform various appropriate actions and processes according to the program stored in the read-only memory 1202 (ROM) or the program loaded from the storage part 1208 to the random access memory 1203 (RAM). Various programs and data required for system operation are also stored in the random access memory 1203. The central processing unit 1201, the read-only memory 1202 and the random access memory 1203 are connected to each other through a bus 1204. The input / output interface 1205 (Input / Output interface, i.e., I / O interface) is also connected to the bus 1204.
[0186] The following components are connected to the input / output interface 1205: an input section 1206 including a keyboard, a mouse, etc.; an output section 1207 including a cathode ray tube (CRT), a liquid crystal display (LCD), etc., and a speaker, etc.; a storage section 1208 including a hard disk, etc.; and a communication section 1209 including a network interface card such as a LAN card, a modem, etc. The communication section 1209 performs communication processing via a network such as the Internet. A drive 1210 is also connected to the input / output interface 1205 as needed. A removable medium 1211, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 1210 as needed so that a computer program read therefrom is installed into the storage section 1208 as needed.
[0187] In particular, according to an embodiment of the present application, the process described in each method flow chart can be implemented as a computer software program. For example, an embodiment of the present application includes a computer program product, which includes a computer program carried on a computer readable medium, and the computer program contains a program code for executing the method shown in the flow chart. In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 1209, and / or installed from the removable medium 1211. When the computer program is executed by the central processor 1201, various functions defined in the system of the present application are executed.
[0188] It should be noted that the computer-readable medium shown in the embodiment of the present application may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, a system, device or device of electricity, magnetism, light, electromagnetic, infrared, or semiconductor, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM), a flash memory, an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present application, a computer-readable storage medium may be any tangible medium containing or storing a program, which may be used by an instruction execution system, device or device or used in combination with it. In the present application, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, wherein a computer-readable program code is carried. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. Computer readable signal media may also be any computer readable medium other than computer readable storage media, which may send, propagate, or transmit programs for use by or in conjunction with an instruction execution system, apparatus, or device. The program code contained on the computer readable medium may be transmitted using any suitable medium, including but not limited to: wireless, wired, etc., or any suitable combination of the above.
[0189] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present application. In this regard, each box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the above-mentioned module, program segment or a part of a code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flow chart, and the combination of the boxes in the block diagram or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0190] It should be noted that, although several modules or units of the equipment for action execution are mentioned in the above detailed description, this division is not mandatory. In fact, according to the embodiments of the present application, the features and functions of two or more modules or units described above can be embodied in one module or unit. On the contrary, the features and functions of one module or unit described above can be further divided into being embodied by multiple modules or units.
[0191] Through the description of the above implementation methods, it is easy for those skilled in the art to understand that the example implementation methods described here can be implemented by software or by combining software with necessary hardware. Therefore, the technical solution according to the implementation methods of the present application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, a USB flash drive, a mobile hard disk, etc.) or on a network, and includes several instructions to enable a computing device (which can be a personal computer, a server, a touch terminal, or a network device, etc.) to execute the method according to the implementation methods of the present application.
[0192] Those skilled in the art will readily appreciate other embodiments of the present application after considering the specification and practicing the invention disclosed herein. The present application is intended to cover any modification, use or adaptation of the present application, which follows the general principles of the present application and includes common knowledge or customary technical means in the art that are not disclosed in the present application.
[0193] It should be understood that the present application is not limited to the precise structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present application is limited only by the appended claims.
Claims
1. A software product deployment method, characterized in that: include: Acquire product configuration parameters and parameter definition rules of a plurality of products to be deployed, wherein the parameter definition rules are used to indicate the software product types defined by the product configuration parameters; Determining product information of the plurality of products to be deployed respectively based on the product configuration parameters and the software product types indicated by the parameter definition rules; The product configuration parameters include product entity parameters, product type parameters and product value parameters of the software product, wherein the product type parameters are used to indicate the type of the product entity parameters, and the product value parameters are used to indicate the value of the product entity parameters; Determining the product information of the multiple products to be deployed respectively based on the product configuration parameters and the software product types indicated by the parameter definition rules includes: Establishing a mapping relationship between the product entity parameter and the software product based on the software product type indicated by the parameter definition rule; According to the mapping relationship, calling the multiple products to be deployed based on the product entity parameters to obtain product information of the multiple products to be deployed; The product configuration parameters also include a product level parameter and a product tag parameter, wherein the product level parameter is used to indicate the deployment level of the software product, and the product tag parameter is used to indicate the functions of other parameters in the product configuration parameters except the product tag parameter; Before respectively determining the product information of the plurality of products to be deployed based on the product configuration parameters and the software product types indicated by the parameter definition rules, the method further includes: Parsing the product configuration parameters; Taking the product level parameter as an index, extracting the product configuration parameter, so as to filter out software products at the level where the software product is located based on the product level parameter; Select and obtain objects on which the multiple products to be deployed need to be deployed according to the product level parameters in the product configuration parameters; The multiple products to be deployed are deployed on the object.
2. The software product deployment method according to claim 1, characterized in that: Determining the product information of the multiple products to be deployed respectively based on the product configuration parameters and the software product types indicated by the parameter definition rules includes: Establishing a mapping relationship between the product configuration parameters and the software product based on the software product type indicated by the parameter definition rule; According to the mapping relationship, the multiple products to be deployed are called based on the product configuration parameters to obtain product information of the multiple products to be deployed.
3. The software product deployment method according to claim 1, characterized in that: The parameter definition rule includes parameter rule content and parameter rule type, the parameter rule type is used to indicate the type of the parameter rule content, and before determining the product information of the multiple products to be deployed respectively based on the product configuration parameters and the software product type indicated by the parameter definition rule, the method further includes: Calling a parsing tool corresponding to the parameter rule type according to the parameter rule type; The parameter rule content is parsed using a parsing tool corresponding to the parameter rule type.
4. The software product deployment method according to claim 1, characterized in that: Deploying the multiple products to be deployed on the object includes: Determine the deployment order of multiple software products in a product deployment plan through product dependency rules; Building a workflow template based on the deployment sequence and product information of the multiple products to be deployed; And according to the workflow template, the multiple products to be deployed are deployed to the corresponding objects respectively.
5. A software product deployment device, characterized in that: The software product deployment method according to claim 1 is applied, comprising: An acquisition module, used to acquire product configuration parameters and parameter definition rules of multiple products to be deployed, wherein the parameter definition rules are used to indicate the software product type defined by the product configuration parameters, and to acquire objects on which the multiple products to be deployed need to be deployed; A product parsing module, configured to respectively determine product information of the plurality of products to be deployed based on the product configuration parameters and the software product types indicated by the parameter definition rules; A deployment module is used to deploy the multiple products to be deployed on the object.
6. A computer-readable medium having a computer program stored thereon, wherein the computer program, when executed by a processor, implements the software product deployment method according to any one of claims 1 to 4.
7. An electronic device, characterized in that: include: processor; as well as A memory, configured to store executable instructions of the processor; The processor is configured to execute the software product deployment method according to any one of claims 1 to 4 by executing the executable instructions.
Citation Information
Patent Citations
Delivery method, device and equipment for proprietary cloud product, and storage medium
CN111768129A