Enterprise-level application operation and maintenance methods and systems
By parsing and caching the module installation package information of enterprise-level applications, the automated installation and lifecycle management of applications and their dependent modules are realized, solving the problems of large workload and complex dependencies in existing technologies and improving operational efficiency.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-28
- Publication Date
- 2026-03-13
AI Technical Summary
Existing enterprise application operation and maintenance solutions suffer from poor performance in unified script management and deployment failures due to lack of dependency relationships. The lack of unified lifecycle management tools results in a large workload, high complexity, and reliance on manual experience in operation and maintenance.
This paper provides an enterprise-level application operation and maintenance method. By obtaining the module installation package, parsing the application information step by step, classifying and caching it, and configuring it based on the cached information, the paper realizes the automated installation and lifecycle management of the application and its dependent modules.
It enables one-click installation of application modules and their dependent modules, reducing manual input and operational risks, improving operation and maintenance efficiency, and standardizing operation and maintenance workflows.
Smart Images

Figure CN115658099B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of server operation and maintenance technology, specifically to an enterprise-level application operation and maintenance method and an enterprise-level application operation and maintenance system. Background Technology
[0002] With the rapid development of business, the types and volume of business processes are becoming increasingly complex. To adapt to this explosive growth, the corresponding enterprise-level application deployment architecture is also becoming increasingly complex and large-scale, with a higher frequency of application releases and changes. Currently, there are two main approaches to enterprise-level application operations and maintenance: manual management and tool management. Tool management typically uses multiple tools to manage the operations and maintenance of enterprise-level applications. For example, there are dedicated deployment tools for application deployment and dedicated application operations and maintenance tools for application lifecycle management. This approach addresses the issue of manual workload to some extent and reduces the complexity and risk of manual operations. However, it still has significant shortcomings. First, there is currently a lack of a single tool that can cover the complete lifecycle management process of application deployment, configuration, and daily operations and maintenance. Often, multiple tools are used in combination, or a mix of tools and manual intervention is employed, increasing the workload and complexity of tool management. Second, deployment tools are generally only applicable to the deployment of a single application module. When the target application module depends on other modules, operations and maintenance personnel still need to clarify the dependencies between modules and then build deployment tasks one by one. Furthermore, application operations and maintenance tools require scripts to provide daily operations and maintenance functions, and there is often a lack of standardized management for these scripts. To address the issues of poor performance in unified script management and deployment failures caused by the lack of dependency relationships in existing enterprise application operation and maintenance solutions, a new enterprise application operation and maintenance method needs to be created. Summary of the Invention
[0003] The purpose of this application is to provide an enterprise-level application operation and maintenance method and system to solve the problems of poor performance in unified script management and deployment failure caused by the inability to maintain dependencies in existing enterprise-level application operation and maintenance solutions.
[0004] To achieve the above objectives, the first aspect of this application provides an enterprise-level application operation and maintenance method, the method comprising: obtaining a module installation package; the module installation package being obtained by packaging and processing application information of the application to be deployed; parsing the module installation package step by step to restore the application information; classifying and managing the parsed and restored application information and caching it; configuring the corresponding application to be deployed based on the cached application information and feeding back the configuration results.
[0005] In this embodiment of the application, the application information includes: the application ontology to be deployed, the corresponding configuration file, the execution script required to configure the application to be deployed, and the description specification file.
[0006] In this embodiment, the description specification file includes: basic information, used to describe the identification information of the application to be deployed; installation information, used to describe the installation process information of the application to be deployed; executable instructions, used to describe each executable instruction in the configuration process of the application to be deployed, as well as the operation and maintenance script path; runtime environment configuration information, used to describe the runtime resources required to configure the application to be deployed; installation dependency information, used to describe the modules that need to be configured first for the application to be deployed; nginx proxy configuration information, used to describe the nginx proxy information; database configuration information, used to describe the database configuration information of the application to be deployed; and other configuration information, used to describe user-defined configurations.
[0007] In this embodiment, the step-by-step parsing of the module installation package includes: parsing the module installation package to obtain the corresponding parsed file; determining whether the parsed file includes the following application information: the application body to be deployed, the corresponding configuration file, the execution script required to configure the application to be deployed, and the description specification file; if the parsed file is missing any application information, the current module installation package is determined to be non-compliant, and the module installation package is downloaded again; if the module installation package is still determined to be non-compliant after downloading a preset number of times, the download is stopped, and the corresponding alarm information is output; if the parsed file is not missing any application information, the description specification file is parsed one by one according to a preset order.
[0008] In this embodiment of the application, the step of parsing the description specification file one by one according to a preset order includes: parsing the description specification file one by one according to the order of parsing basic information, parsing dependency information, parsing database configuration information, parsing nginx proxy configuration information, parsing executable instructions, parsing installation information, parsing runtime environment configuration information, and parsing other configuration information, so as to obtain the corresponding parsing information.
[0009] In this embodiment, the classification and management of the parsed and restored application information includes two categories: necessary information and unnecessary information. Necessary information is information that must be included in the parsing results, while unnecessary information is information that may or may not be included in the parsing results. The necessary information includes: the application entity to be deployed; the corresponding configuration file; the execution script required to configure the application to be deployed; and the basic information, executable instructions, and installation information in the description specification file. The unnecessary information includes: dependency information, database configuration information, nginx configuration information, runtime environment information, and other configuration information in the description specification file.
[0010] In this embodiment of the application, the method further includes: determining whether all necessary information exists in the parsed and restored application information; if necessary information is missing, terminating the application configuration process to be deployed and outputting alarm information.
[0011] In this embodiment, configuring the application to be deployed based on cached application information includes: collecting the remaining resources of the target application to be deployed; determining whether the remaining resources meet the configuration requirements based on the runtime environment configuration information; if the remaining resources meet the configuration requirements, determining whether there is installation dependency information, and configuring the dependent modules in advance based on the installation dependency information if installation dependency information exists; configuring the application itself based on the installation environment created by the pre-configured modules and the installation information, and feeding back a configuration completion signal; and triggering the operation and maintenance management process execution instruction in response to the configuration completion signal.
[0012] In this embodiment, the operation and maintenance management process includes: based on the configured application, distributing a preset operation and maintenance script to a predetermined directory and enabling the corresponding operation and maintenance operations; querying a preset database to check if there is application data for the configured application; if so, configuring the corresponding application data and modifying the application data based on pre-written SQL statements; querying a preset database to check if there is nginx information for the configured application; if so, configuring the reverse proxy and load balancing functions of the configured application based on the nginx information; configuring other configuration information, configuring the remaining content based on user-defined configuration content, and completing the deployment of the application to be deployed.
[0013] A second aspect of this application provides an enterprise-level application operation and maintenance system, the system comprising: a collection unit for acquiring a module installation package; the module installation package is obtained by packaging and processing application information of an application to be deployed; a parsing unit for parsing the module installation package step by step to restore the application information; a processing unit for classifying, managing and caching the parsed and restored application information; and an execution unit for configuring the corresponding application to be deployed based on the cached application information and feeding back the configuration results.
[0014] A third aspect of this application provides a processor, characterized in that the processor is configured to execute the above-described enterprise application operation and maintenance method.
[0015] A fourth aspect of this application provides a machine-readable storage medium storing instructions that, when executed by a processor, configure the processor to perform the aforementioned enterprise application operation and maintenance method.
[0016] The fifth aspect of this application provides a computer program product, including a computer program that, when executed by a processor, implements the above-described enterprise application operation and maintenance method.
[0017] Through the above technical solution, this invention provides a description specification for enterprise-level applications, used to describe various information and configurations of the application, and on this basis, realizes the parsing and implementation of the description specification. It enables automatic installation of the application and its dependent modules with a single operation, and supports lifecycle management of the application after installation, thereby reducing manual input and operational risks, while standardizing the operation and maintenance of enterprise-level applications and improving operational efficiency.
[0018] Other features and advantages of the embodiments of this application will be described in detail in the following detailed description section. Attached Figure Description
[0019] The accompanying drawings are provided to further illustrate the embodiments of this application and form part of the specification. They are used together with the following detailed description to explain the embodiments of this application, but do not constitute a limitation on the embodiments of this application. In the drawings:
[0020] Figure 1 This illustration schematically shows a flowchart of the steps of an enterprise application operation and maintenance method according to an embodiment of this application;
[0021] Figure 2 The diagram illustrates the implementation process of an enterprise application operation and maintenance method according to an embodiment of this application.
[0022] Figure 3 This illustration schematically shows a system architecture diagram of an enterprise-level application operation and maintenance system according to an embodiment of this application;
[0023] Figure 4 The diagram illustrates the internal structure of a computer device according to an embodiment of this application. Detailed Implementation
[0024] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. It should be understood that the specific embodiments described herein are only for illustration and explanation of the embodiments of this application and are not intended to limit the embodiments of this application. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort are within the scope of protection of this application.
[0025] It should be noted that if the embodiments of this application involve directional indicators (such as up, down, left, right, front, back, etc.), the directional indicators are only used to explain the relative positional relationship and movement of the components in a certain specific posture (as shown in the figure). If the specific posture changes, the directional indicators will also change accordingly.
[0026] Furthermore, if the embodiments of this application involve descriptions such as "first" or "second," these descriptions are for descriptive purposes only and should not be construed as indicating or implying their relative importance or implicitly specifying the number of technical features indicated. Therefore, features defined with "first" or "second" may explicitly or implicitly include at least one of those features. Additionally, the technical solutions of various embodiments can be combined with each other, but this must be based on the ability of those skilled in the art to implement them. If the combination of technical solutions is contradictory or impossible to implement, it should be considered that such a combination of technical solutions does not exist and is not within the scope of protection claimed in this application.
[0027] With the rapid development of business, the types and volume of business processes are becoming increasingly complex. To adapt to this explosive growth, the corresponding enterprise-level application deployment architecture is also becoming increasingly complex and large-scale, with a higher frequency of application releases and changes. Traditional solutions face two main problems when deploying applications:
[0028] 1) Currently, most application deployment tools can only publish and deploy enterprise-level applications themselves. They cannot analyze the installation dependencies of enterprises (some applications need to be deployed in advance to create the corresponding deployment environment). Therefore, when deploying applications directly, the deployment often fails because there are no applications deployed in advance to support it, and one-click installation from scratch cannot be achieved.
[0029] 2) Currently, deployment tools lack a unified standard for application lifecycle management, resulting in a lack of standardized handling methods for deployment and operation and maintenance, leading to a chaotic deployment process. Subsequent processes such as startup, shutdown, uninstallation, upgrade, and status query cannot be scheduled in a unified manner.
[0030] For enterprise application operations and maintenance (O&M), there are currently two main approaches: manual management and tool-based management. Manual management requires application developers to prepare deployment media (including middleware, application version files, deployment scripts, etc.) and related O&M scripts (such as startup scripts, stop scripts, uninstall scripts, upgrade scripts, status query scripts, etc.) in advance. O&M personnel then obtain the relevant files online or offline, transfer them to the target machine, and manually install and deploy the application version files and dependent databases and middleware using commands, configuring parameters manually. After application deployment, subsequent O&M-related operations are also performed manually by O&M personnel using scripts. For example, all relevant parameters might be compiled onto a USB drive, which O&M personnel then connect to the corresponding device at the equipment site for application installation or upgrades. This method heavily relies on the experience of O&M personnel. When deploying applications, they often depend on multiple modules to function correctly. This requires O&M personnel to understand the dependencies between modules and install them sequentially. Incorrect installation order or omission of sub-modules will prevent the target module from providing normal business capabilities. When applications need to be started, stopped, uninstalled, or upgraded, operations and maintenance personnel need to log in to the target machine and manually execute the operation and maintenance scripts. Moreover, the workload and complexity of these tasks increase dramatically in application cluster scenarios.
[0031] Tool management typically utilizes multiple tools to manage the operation and maintenance of enterprise applications. For example, there are dedicated deployment tools for application deployment and dedicated application operation and maintenance tools for application lifecycle management. Application deployment tools generally install and deploy the application by calling deployment scripts; application operation and maintenance tools manage the application lifecycle by calling relevant operation and maintenance scripts. This approach alleviates the workload of manual operations to some extent and reduces the complexity and risk of manual operations. However, significant shortcomings remain. First, there is currently a lack of a single tool that can cover the complete lifecycle management process of application deployment, configuration, and daily operation and maintenance. Often, multiple tools are used in combination, or a mix of tools and manual intervention is employed, increasing the workload and complexity of the management tools. Second, deployment tools are generally only suitable for deploying a single application module. When the target application module depends on other modules, operation and maintenance personnel still need to clarify the dependencies between modules and then build deployment tasks one by one. Furthermore, application operation and maintenance tools require scripts to provide daily operation and maintenance functions, and there is often a lack of standardized management for these scripts. Without standardized management, the usability and ease of use of these tools are significantly reduced.
[0032] To address the issues of poor performance in unified script management and deployment failures due to lack of dependency relationships in existing enterprise application operation and maintenance solutions, a novel enterprise application operation and maintenance method has been developed. This invention provides a description specification for enterprise applications, used to describe various application information and configurations, and implements the parsing and deployment of this description specification. It enables automatic installation of the application and its dependent modules in a single operation, and supports lifecycle management of the application after installation, thereby reducing manual input and operational risks. Simultaneously, it standardizes enterprise application operation and maintenance work, improving efficiency.
[0033] Figure 1 The illustration schematically shows a flowchart of an enterprise application operation and maintenance method according to an embodiment of this application. For example... Figure 1 As shown in one embodiment of this application, an enterprise-level application operation and maintenance method is provided, including the following steps:
[0034] Step S10: Obtain the module installation package.
[0035] Specifically, the main challenges in deploying and maintaining enterprise-level applications are: for the former, when dependent modules are involved, the complexity of installing modules according to their dependencies is high; and for the latter, numerous scripts are involved, with each application potentially having multiple scripts. Without unified management, maintenance personnel not only find it difficult to perform daily application maintenance but also need to expend significant effort maintaining and managing numerous scripts. This invention addresses these challenges by proposing a solution: a descriptive standard to standardize the description of various information related to enterprise-level applications, thereby standardizing the entire deployment process.
[0036] Specifically, these description specification documents include: basic information, used to describe the identification information of the application to be deployed; installation information, used to describe the installation process information of the application to be deployed; executable instructions, used to describe the executable instructions in the configuration process of the application to be deployed, as well as the operation and maintenance script paths; runtime environment configuration information, used to describe the runtime resources required to configure the application to be deployed; installation dependency information, used to describe the modules that need to be configured first for the application to be deployed; nginx proxy configuration information, used to describe nginx proxy information; database configuration information, used to describe the database configuration information of the application to be deployed; and other configuration information, used to describe user-defined configurations.
[0037] In one possible implementation, this information is deployed in detail as follows:
[0038] Basic information, including application name, version, description, type, etc., is used by application operation and maintenance tools to obtain basic information about enterprise-level applications by parsing this information.
[0039] Installation information describes how to install the current application, including the installation script name and installation parameters. Application operation and maintenance tools parse this information to call the corresponding installation script, thereby realizing the installation and deployment of enterprise-level applications.
[0040] Executable instructions describe various executable commands for application startup, shutdown, restart, status query, uninstallation, etc., as well as the actual path to the running operation and maintenance scripts. After parsing this information, application operation and maintenance tools can provide operation and maintenance functions; clicking on these commands triggers the corresponding executable instructions.
[0041] The runtime environment configuration includes the resources required for runtime, such as memory and CPU. When deploying an application, application operation and maintenance tools need to compare the runtime environment configuration with the target host configuration. If the target host configuration cannot meet the resource requirements for deploying the application, the application cannot be deployed.
[0042] Installation dependency information includes other modules that the current module depends on, including module names and versions. Proxy configuration describes the application's front-end proxy information. Application operation and maintenance tools parse this information to obtain the application module dependencies, and then install the dependent modules one by one in the installation order, thus achieving one-click installation of all application-related modules.
[0043] This section describes the Nginx proxy configuration. If an application uses Nginx for reverse proxying or load balancing, application management tools can use this information to configure the proxy settings.
[0044] Database configuration information describes the application's database configuration. After being parsed by application operation and maintenance tools, it reveals the application's database configuration, such as the database type, database name, username, and password.
[0045] Other configuration information describes other configuration details for the application, such as log file paths and firewall ports that need to be closed. Customizable extended configurations can also be added here.
[0046] Alongside the design of corresponding description specification files, a supporting tool system is also provided. This tool system can parse the description specifications and install applications with a single click according to the specifications. Based on the designed description specification files and corresponding tools, different applications provide description specification files according to the specifications. After the application operation and maintenance tool parses the description specification files, it obtains the application's installation script and dependent module information, thereby achieving automatic installation of the application module and its dependent modules. At the same time, the application operation and maintenance tool can trigger executable commands of the application to call the actual operation and maintenance scripts, thereby realizing the daily operation and maintenance work of the application.
[0047] Therefore, when packaging the installation package, the execution scripts and description specification files required for configuring the application to be deployed need to be compressed and integrated together with the application itself. Then, when the configuration of the corresponding application to be deployed needs to be executed, a configuration command is sent to the corresponding host, which then downloads the module installation package. This module installation package is obtained by packaging the application information of the application to be deployed. The application information includes: the application itself, the corresponding configuration file, and the execution scripts and description specification files required for configuring the application.
[0048] Step S20: Parse the module installation package step by step to restore the application information.
[0049] Specifically, the module installation package is parsed to obtain the corresponding parsed file; it is determined whether the parsed file includes the application to be deployed, the corresponding configuration file, the execution script required to configure the application to be deployed, and the description specification file; if the parsed file is missing any application information, the current module installation package is determined to be non-compliant, and the module installation package is downloaded again; if the module installation package is still determined to be non-compliant after retrying the download a preset number of times, the retrying download is stopped, and the corresponding alarm information is output; if the parsed file is not missing any application information, the description specification files are parsed one by one according to a preset order.
[0050] In this embodiment of the invention, data loss may occur during transmission due to network failures or other reasons. If such data loss occurs during the transmission of the module installation package, it will inevitably lead to subsequent deployment failures. Furthermore, the core of the solution to this technical problem lies in the introduction of a description specification file. Therefore, when parsing the module installation package, it is necessary to ensure that the corresponding description specification file exists in the parsed file, and subsequent deployments must be based on this description specification file. Thus, if it is determined that the application to be deployed, the corresponding configuration file, the execution script required for configuring the application to be deployed, and the description specification file are not present in the parsed file, it indicates that the subsequent deployment plan will not be executed as expected, and the subsequent deployment plan will be stopped. Furthermore, since data loss may be due to occasional reasons, or it may be due to problems with the module installation package itself, to rule out occasional reasons, multiple attempts to download and parse are made. If, after a preset number of retries, the module installation package is still determined to have problems, corresponding alarm information is output to inform the user to troubleshoot the problem.
[0051] Furthermore, the description specification file is parsed one by one in the following order: parsing basic information, parsing dependency information, parsing database configuration information, parsing nginx proxy configuration information, parsing executable instructions, parsing installation information, parsing runtime environment configuration information, and parsing other configuration information, to obtain the corresponding parsing information.
[0052] Step S30: Classify and manage the application information and cache it.
[0053] Specifically, because different applications to be configured have different description specification files, not all applications to be configured have dependent applications or requirements for the runtime environment. To address the differences between different applications to be deployed, this invention proposes an application information classification method. This method pre-defines two classification results: necessary information and unnecessary information. Necessary information is information that must be included in the parsing result, while unnecessary information is information that may not be included in the parsing result. The necessary information includes: the application itself to be deployed, the corresponding configuration file, the execution script required to configure the application, and the following from the description specification file: basic information, executable instructions, and installation information. The unnecessary information includes: dependency information, database configuration information, nginx configuration information, runtime environment information, and other configuration information from the description specification file.
[0054] In one possible implementation, the basic information of the application module is parsed, mainly including the module's name, type, version, author, and description. The name, version, and type are required fields; the others are optional. If a required field is missing, the parsing process terminates. Next, the application module's dependency information is parsed, mainly including the names and versions of dependent modules. For example, if four dependent modules exist, they will be installed sequentially during application module installation. Dependencies can be passed down; that is, if a current dependent module also has its required dependencies, those dependencies will be installed first. Dependency information is optional; if left blank, the application module will be installed directly. Further, database configuration information is parsed, configuring the application module's database connection type, name, username, and password. Database-related configurations are optional. Finally, nginx configuration information is parsed; nginx-related configurations are optional and only required when nginx is selected for reverse proxy or load balancing. Nginx configuration is not discussed here. Further, the executable instructions are parsed. Executable instructions are mandatory; developers need to configure the scripts and parameters actually invoked by these instructions. If not configured, parsing fails and the process exits. Executable instructions typically include start, stop, restart, status query, and uninstall. Next, installation information is parsed. Installation information is mandatory; if not configured, parsing fails and the process exits. Installation information includes whether root privileges are used, the number of cluster nodes to be installed, the installation command, and parameters. Next, runtime environment information is parsed. Optional runtime environment information specifies the number of CPU cores and memory resources required to install this module. Finally, other configuration information is parsed. Optional configuration information includes the path to log files and firewall ports to be closed; this part of the configuration can be customized. If the above parsing steps are successful, the parsed information is stored in the database to prepare for subsequent installation and configuration processes.
[0055] Step S40: Based on the cached application information, configure the corresponding application to be deployed and provide feedback on the configuration results.
[0056] Specifically, the remaining resources of the target application to be deployed are collected, and it is determined whether the remaining resources meet the configuration requirements based on the runtime environment configuration information. If the remaining resources meet the configuration requirements, it is determined whether there is installation dependency information, and if there is installation dependency information, the dependent modules are configured in advance based on the installation dependency information. Based on the installation environment created by the pre-configured modules, the application to be deployed is configured based on the installation information, and a configuration completion signal is fed back. In response to the configuration completion signal, the operation and maintenance management process execution instructions are triggered.
[0057] Preferably, the operation and maintenance management process includes: based on the configured application, distributing a preset operation and maintenance script to a predetermined directory and enabling the corresponding operation and maintenance operations; querying the preset database to see if there is application data for the configured application, and if so, configuring the corresponding application data and modifying the application data based on pre-written SQL statements; querying the preset database to see if there is nginx information for the configured application, and if the nginx information exists, configuring the reverse proxy and load balancing functions of the configured application based on the nginx information; configuring other configuration information, configuring the remaining content based on user-defined configuration content, and completing the deployment of the application to be deployed.
[0058] In one possible implementation, the application to be deployed is configured through the following steps:
[0059] 1) First, check the application module's runtime environment information and the remaining resources of the host where the module needs to be installed. Generally, check the number of CPU cores and memory. If the remaining resources on the host are greater than the resources required to install the application module, it can be installed; otherwise, it cannot be installed, and a new host needs to be selected. If there is no backup host, clear the currently unused cached data step by step, expand the remaining resources, and ensure the configuration of the application module to be deployed.
[0060] 2) Locate the application module's dependencies in the database. If the application module has dependencies, proceed to step 3) Install the dependencies. If no dependencies exist, proceed to step 4) Install the application module.
[0061] 3) This step actually involves invoking the installation and configuration process of dependent modules. That is, dependent modules also need to prepare installation packages and description specification files according to the requirements of the application module. Because dependent modules, like the application to be deployed, are pre-defined applications deployed on the host, deploying dependent modules based on the deployment scheme proposed in this invention can also achieve one-click deployment of dependent modules. After installing the dependent modules, return to step 2) to continue checking if there are any other dependent modules. If other dependent modules are found, repeat this step until all dependent modules are configured.
[0062] 4) Search the database for the installation information of the application module, and then use the corresponding user to call the installation command to install the application module.
[0063] 5) After installation, distribute the application's operation and maintenance scripts to the specified directory. Subsequent operation and maintenance tasks can then be triggered on the page, enabling application lifecycle management.
[0064] 6) If the application's database information can be found in the database, then the application's database will be configured, and pre-written SQL statements can be executed to perform database change operations.
[0065] 7) If nginx information can be found in the database, then you can configure the application's reverse proxy and load balancing functions.
[0066] 8) Configure other application information, including log paths, firewall ports to be closed, etc.
[0067] Figure 2 This is a flowchart illustrating an enterprise application operation and maintenance method in one embodiment. It should be understood that, although... Figure 2 The steps in the flowchart are shown sequentially as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order in which these steps are executed, and they can be performed in other orders. Figure 2 At least some of the steps in the process may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be executed in turn or alternately with other steps or at least some of the sub-steps or stages of other steps.
[0068] In one embodiment, such as Figure 3 As shown, an enterprise-level application operation and maintenance system is provided. The system includes: a collection unit for acquiring module installation packages; the module installation packages are obtained by packaging and processing application information of the application to be deployed; a parsing unit for parsing the module installation packages step by step to restore the application information; a processing unit for classifying, managing and caching the parsed and restored application information; and an execution unit for configuring the corresponding application to be deployed based on the cached application information and feeding back the configuration results.
[0069] The memory may include non-permanent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM, and the memory includes at least one memory chip.
[0070] This application provides a storage medium on which a program is stored, which, when executed by a processor, implements the above-described enterprise application operation and maintenance method.
[0071] This application also provides a processor, characterized in that the processor is configured to execute the enterprise application operation and maintenance method described above.
[0072] In one embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 4As shown, the computer device includes a processor A01, a network interface A02, memory (not shown), and a database (not shown) connected via a system bus. The processor A01 provides computing and control capabilities. The memory includes internal memory A03 and a non-volatile storage medium A04. The non-volatile storage medium A04 stores an operating system B01, a computer program B02, and a database (not shown). The internal memory A03 provides an environment for the operation of the operating system B01 and the computer program B02 stored in the non-volatile storage medium A04. The network interface A02 is used for communication with external terminals via a network connection. When the computer program B02 is executed by the processor A01, it implements an enterprise-level application operation and maintenance method.
[0073] Those skilled in the art will understand that Figure 4 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0074] In one embodiment, the enterprise-level application operation and maintenance system provided in this application can be implemented as a computer program, and the computer program can be implemented in the form of, for example, Figure 4 The computer device shown operates on the system. The computer device's memory can store various program modules that make up the enterprise application operation and maintenance method. The computer program, composed of these program modules, causes the processor to execute the steps in the enterprise application operation and maintenance methods described in the various embodiments of this application.
[0075] This application also provides a computer program product that, when executed on a data processing device, is suitable for performing the above-described enterprise-level application operation and maintenance method.
[0076] Those skilled in the art will understand that embodiments of this application can be provided as methods, systems, or computer program products. Therefore, this application can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, this application 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.
[0077] This application is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. 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... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0078] 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.
[0079] 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.
[0080] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.
[0081] Memory may include non-persistent memory in computer-readable media, such as random access memory (RAM) and / or non-volatile memory, such as read-only memory (ROM) or flash RAM. Memory is an example of computer-readable media.
[0082] Computer-readable media include both permanent and non-permanent, removable and non-removable media, which can store information using any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase-change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technologies, CD-ROM, digital versatile optical disc (DVD) or other optical storage, magnetic tape, magnetic magnetic disk storage or other magnetic storage devices, or any other non-transferable medium that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transient computer-readable media, such as modulated data signals and carrier waves.
[0083] It should also be noted that the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.
[0084] The above are merely embodiments of this application and are not intended to limit the scope of this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the scope of the claims of this application.
Claims
1. An enterprise application operation and maintenance method, characterized in that, The method comprises: an acquisition module installation package; the module installation package is obtained by packaging application information of an application to be deployed; wherein, the application information at least comprises a description specification file, which is used to describe specification information required for configuring the application to be deployed; the application information further comprises: an application ontology to be deployed, a corresponding configuration file, and an execution script required for configuring the application to be deployed; the description specification file comprises: basic information, which is used to describe identification information of the application to be deployed; installation information, which is used to describe installation flow information of the application to be deployed; executable instructions, which are used to describe each executable instruction in the configuration process of the application to be deployed, and an operation and maintenance script path; running environment configuration information, which is used to describe running resources required for configuring the application to be deployed; installation dependency information, which is used to describe modules required to be configured in advance for configuring the application to be deployed; nginx proxy configuration information, which is used to describe nginx proxy information; database configuration information, which is used to describe database configuration information of the application to be deployed; and other configuration information, which is used to describe user-defined configurations; the module installation package is parsed level by level, and the application information is restored; the parsed and restored application information is classified and managed and cached; based on the cached application information, the corresponding application to be deployed is configured, and a configuration result is fed back; wherein, based on the cached application information, the corresponding application to be deployed is configured, which comprises: collecting residual resources of a target of the application to be deployed, judging whether the residual resources meet configuration requirements based on the running environment configuration information; if the residual resources meet the configuration requirements, judging whether there is installation dependency information, and configuring a dependent module in advance based on the installation dependency information in the case that there is installation dependency information; based on an installation environment created by the in-advance configured module, configuring the application ontology to be deployed based on the installation information, and feeding back a configuration completion signal; in response to the configuration completion signal, triggering an operation and maintenance management process execution instruction; judging whether the residual resources meet the configuration requirements based on the running environment configuration information comprises: checking CPU core number and memory, and if the residual resources on the host are greater than resources required for installing the application module, the application module can be installed, otherwise the application module cannot be installed, and a host needs to be selected again, if there is no standby host on the current host, corresponding level-by-level useless cache data is cleared, and residual resources are expanded; the operation and maintenance management process comprises: based on the configured application, a preset operation and maintenance script is downloaded to a predetermined directory, and corresponding operation and maintenance operations are opened; querying whether application data of the configured application exists in a preset database, if the application data exists, corresponding application data is configured, and the application data is changed based on a pre-written sql statement; querying whether nginx information of the configured application exists in the preset database, if the nginx information exists, reverse proxy and load balancing function configuration of the configured application is performed based on the nginx information; other configuration information is configured, residual content configuration is performed based on user-defined configuration content, and deployment of the application to be deployed is completed.
2. The method of claim 1, wherein, the module installation package is parsed level by level, which comprises: The module installation package is parsed to obtain a parsed file; It is judged whether the parsed file includes the following application information: a to-be-deployed application body, a corresponding configuration file, an execution script required for configuring the to-be-deployed application, and a description specification file; If any kind of application information is missing from the parsed file, it is determined that the current module installation package is not compliant, and the module installation package is re-downloaded; If it is still determined that the module installation package is not compliant after re-downloading for a preset number of times, the re-downloading is stopped, and corresponding alarm information is output; If any kind of application information is not missing from the parsed file, the description specification file is parsed one by one based on a preset order.
3. The method of claim 2, wherein, The description specification file is parsed one by one based on a preset order, including: The description specification file is parsed one by one based on the order of parsing basic information, parsing dependency information, parsing database configuration information, parsing nginx proxy configuration information, parsing executable instructions, parsing installation information, parsing runtime environment configuration information, and parsing other configuration information to obtain corresponding parsed information.
4. The method of claim 1, wherein, The parsed and restored application information is classified and managed, including: There are two classification results of necessary information and non-essential information; wherein the necessary information is information that must be included in the parsing result, and the non-essential information is information that can not be included in the parsing result; The necessary information includes: a to-be-deployed application body, a corresponding configuration file, an execution script required for configuring the to-be-deployed application, and basic information, executable instructions, and installation information in the description specification file; The non-essential information includes dependency information, database configuration information, nginx configuration information, runtime environment information, and other configuration information in the description specification file.
5. The method of claim 4, wherein, The method further includes: It is judged whether all necessary information exists in the parsed and restored application information; If the necessary information is missing, the to-be-deployed application configuration process is terminated, and alarm information is output.
6. An enterprise application operation and maintenance system, characterized in that, The system is applied to the enterprise-level application operation and maintenance method of any one of claims 1-5, and the system includes: A collection unit is configured to obtain a module installation package; the module installation package is obtained by packaging application information of a to-be-deployed application; wherein The application information at least includes a description specification file, which is used to describe specification information required for configuring the to-be-deployed application; An analysis unit is configured to parse the module installation package step by step and restore the application information; A processing unit is configured to classify and manage the parsed and restored application information and cache it; An execution unit is configured to configure a corresponding to-be-deployed application based on the cached application information and feed back a configuration result.
7. A processor, comprising: The processor is configured to perform the enterprise-level application operation and maintenance method according to any one of claims 1-5.
8. A machine-readable storage medium having stored thereon instructions, the instructions being executable by a machine to cause the machine to: The instructions, when executed by the processor, cause the processor to be configured to perform the enterprise-level application operation and maintenance method according to any one of claims 1-5.
9. A computer program product comprising a computer program, characterized in that, The computer program, when executed by the processor, implements the enterprise-level application operation and maintenance method according to any one of claims 1-5.
Citation Information
Patent Citations
Software deployment method and device and computer readable storage medium
CN112860277A