Dynamic construction system and method for petroleum professional software application environment

By designing dynamic construction systems in the oil industry and using two-way data synchronization and automated deployment engines, the problem of lack of unified standards and automation of professional software deployment is solved, and software standardized deployment and efficient management is realized, breaking the differences in different fields and improving Level of automation and flexibility.

CN119179463APending Publication Date: 2024-12-24PETROCHINA CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310743332.8
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-06-21
Publication Date
2024-12-24

AI Technical Summary

Technical Problem

The application deployment of professional software in the oil industry lacks unified standards, the installation and deployment process is complex and automation is lacking, especially the automated deployment methods of third-party software and databases are insufficient.

Method used

A dynamic construction system for professional petroleum software application environment is designed, including the total server, software release server and software resource node. The software standardization deployment is realized through two-way data synchronization and automated deployment engine, and the data synchronization and RPC technology is used to synchronize and Remote calls, combined with Linux and Windows automation deployment units, use NFS and PowerCli technologies to achieve automatic deployment and virtualized environment deployment.

Benefits of technology

It realizes unified management and centralized release of professional software, breaks the differences in software deployment in different fields, improves the level of automation deployment, simplifies the deployment of third-party dependent software, and provides a flexible and universal application environment construction framework.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119179463A_ABST
    Figure CN119179463A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of petroleum software management, in particular to a dynamic construction system and method for a petroleum professional software application environment, and the method comprises the following steps: a general server defines a software standard template in a unified and centralized manner; the software release server and the total server perform bidirectional data synchronization, create and initiate a software deployment task, trigger a software deployment engine according to a software deployment task instruction, and drive an automatic deployment process through the software deployment engine; the software resource node provides a software application environment. According to the method, the software standard template is intensively defined at the total server side, bidirectional data synchronization is carried out on the software release server side and the total server side, and the consistency of the software release server side and the standard template of the total server side is ensured; an automatic deployment system of a deployment task and a deployment engine is used for replacing a traditional independent script pushing deployment technology to complete automatic deployment of an application environment, and unified management, centralized release and dynamic deployment and installation of professional software are achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of petroleum software management, and is a dynamic construction system and method for a petroleum professional software application environment. Background Art

[0002] As a technology-intensive industry, the oil industry has a long and complex research front in the oil and gas field, from geophysical seismic data acquisition, to seismic data interpretation, structural modeling, geological research, drilling and completion, oil production, numerical simulation, and then to oil and gas production, refining, storage and transportation. The entire business chain from geophysical exploration, geology, reservoir, engineering, production, management, and operation requires a variety of professional software to support scientific research, and the research process requires collaborative research by multiple disciplines. There are differences in the application software environment of different research units, and there are also differences in the installation and deployment processes of different professional software. In the process of using software, researchers are involved in the management and application system of application software, and rely on the operating environment and system. There is a lack of effective means to eliminate the differences in software deployment and form a unified standard deployment process.

[0003] There are three problems with the current application deployment methods of professional software: first, the differences between different professional software lead to differences in software environment deployment methods and a lack of unified installation and deployment standards; second, the installation and deployment of professional software is complex, and the operation and maintenance management process of software resources is difficult, and there is a lack of effective means to improve automated deployment; third, there is a lack of methods for simultaneous automated deployment of professional software, third-party software, and database authorization. Summary of the invention

[0004] The present invention provides a system and method for dynamically constructing a petroleum professional software application environment, which overcomes the deficiencies of the above-mentioned prior art and can effectively solve the problems of lack of unified installation and deployment standards and low degree of automation in the application deployment method of professional software.

[0005] One of the technical solutions of the present invention is achieved by the following measures: a dynamic construction system of a petroleum professional software application environment, including: a general service end, a software publishing end and a software resource node; The general server aggregates professional software resources and centrally defines software standard templates; The software release server performs two-way data synchronization with the main server, creates and initiates software deployment tasks, triggers the software deployment engine according to the software deployment task instructions, and drives the automated deployment process through the software deployment engine; The software resource node provides a software application environment for the target device that the user actually accesses.

[0006] The following are further optimizations and / or improvements to the above technical solutions: The above-mentioned general server includes: Resource aggregation unit, which aggregates professional software resources, including the fields of exploration, development, engineering, and refining of oil and gas businesses; The system construction unit combines professional software resources to centrally define software standard templates and standardize the software operating environment. The software standard templates include software environment standard templates, user environment standard templates, business naming standards, data directory construction, user management standards, network and hardware management standards, visualization application standards, and operation and maintenance management standards.

[0007] The above software publishing server includes: The two-way synchronization unit uses RabbitMQ message queue technology to synchronize data between the general server and the software publishing end, completing the two-way data synchronization between the software publishing server and the general server; The software deployment task creation unit uses RPC remote call technology to pull the software standard template from the main server and create a software deployment task; The Linux automated deployment unit triggers the software deployment engine by the software deployment task, pushes the software standard template in combination with the service script, selects the server node on the software release server to start automatically deploying the installation system and software environment, and shares the output software program directory externally; The windows automated deployment unit triggers the software deployment engine by the software deployment task, and uses PowerCli to manage VMware vSphere virtualization to implement environment deployment, and exports OVF templates from the VMware vSphere virtualization environment as automatic deployment templates.

[0008] The above software resource nodes include: The first deployment unit automatically mounts the software program directory in the form of NFS file sharing storage according to the user directory mounting rule encapsulated in the standard template, and obtains the application environment of the software and dependent software and database, wherein the software program directory includes the installation directory, the user directory and the work area authorization directory; The second deployment unit completes automatic deployment and release according to the OVF template.

[0009] The second technical solution of the present invention is achieved by the following measures: A method for dynamically constructing a petroleum professional software application environment, comprising: Register software on the main server, aggregate professional software resources, and centrally define software standard templates; Perform two-way data synchronization between the software publishing server and the general server; Create and initiate software deployment tasks to determine whether the system version required by the software is Linux or Windows; In response to the required version being the Windows system, the software publishing server uses PowerCli to connect and manage VMware vSphere virtualization to implement environment deployment. The Windows professional software environment package is placed on the main server, and the "OVF template" is exported from the virtualization environment as an automatic deployment template. Automatic deployment and publishing are completed according to the packaged template software resource node; In response to the required version being the Linux system, the software publishing server pushes the software standard template in combination with the service script, selects a server node on the software publishing server to automatically deploy and install the system and software environment, and shares the output software program directory externally; The software resource node automatically mounts the software program directory in the form of NFS file sharing storage according to the user directory mounting rules encapsulated in the standard template, and obtains the application environment of the software and dependent software and database.

[0010] The following are further optimizations and / or improvements to the above technical solutions: The above also includes defining subnet segments and dynamically displaying all subnet information. At the same time, each subnet information will dynamically display the occupancy status. The administrator can select idle subnet information to allocate addresses for different software. After allocation, the corresponding software will randomly select a node IP from the subnet information set for use based on the actual allocated subnet information during deployment.

[0011] The beneficial effects of the present invention include: (1) The present invention establishes a global software standard and a two-way synchronous "master-sub-master" architecture, aggregates software resources at the master server, centrally defines software standard templates, implements software standardization, and performs two-way data synchronization between the software release server and the master server to ensure the consistency of the standard templates of the software release server and the master server. The software release server uses the software standard template and the automated deployment system of the deployment task + deployment engine to replace the traditional single script push deployment technology to complete the automated deployment of the application environment. Finally, the resource node automatically mounts the software program directory through the NFS file sharing storage to provide a software application environment, thereby realizing the unified management, centralized release, and dynamic deployment and installation of professional software.

[0012] (2) Third-party dependent software such as DCV and database clients do not need to be deployed separately and can be directly selected and used by users in the form of services.

[0013] (3) Standardize the installation and deployment process to break down the differences between professional software in various oil and gas fields. At the same time, it provides a standard framework for the dynamic construction of the application environment, which can be nested in other fields, making this method more universal and flexible. BRIEF DESCRIPTION OF THE DRAWINGS

[0014] AttachedFigure 1 It is a schematic diagram of the system structure of the present invention.

[0015] Attached Figure 2 It is a schematic diagram of the method flow of the present invention.

[0016] Attached Figure 3 The figure is a schematic diagram of deploying professional application software in a Windows system environment in the present invention.

[0017] Attached Figure 4 This is a schematic diagram of an automatic deployment in the present invention.

[0018] Attached Figure 5 This is a schematic diagram of professional application software deployment in a Linux system environment in the present invention. DETAILED DESCRIPTION

[0019] The present invention is not limited by the following embodiments, and specific implementation methods can be determined based on the technical solution of the present invention and actual conditions.

[0020] The present invention will be further described below in conjunction with embodiments and drawings: Embodiment 1: As attached Figure 1 As shown, the embodiment of the present invention discloses a dynamic construction system of a petroleum professional software application environment, including: a general service end, a software publishing end and a software resource node; The general server aggregates professional software resources and centrally defines software standard templates; The software release server performs two-way data synchronization with the main server, creates and initiates software deployment tasks, triggers the software deployment engine according to the software deployment task instructions, and drives the automated deployment process through the software deployment engine; The software resource node provides a software application environment for the target device that the user actually accesses.

[0021] The present invention establishes a global software standard and a two-way synchronous "master-sub" architecture, aggregates software resources at the master server, centrally defines software standard templates, realizes software standardization, and performs two-way data synchronization between the software publishing server and the master server to ensure the consistency of the standard templates of the software publishing server and the master server. The software publishing server uses the automatic deployment system of deployment tasks + deployment engines to replace the traditional single script push deployment technology to complete the automatic deployment of the application environment according to the software standard template. Finally, the resource node automatically mounts the software program directory through NFS file sharing storage to provide a software application environment, thereby realizing unified management, centralized release, and dynamic deployment and installation of professional software.

[0022] Embodiment 2: The embodiment of the present invention discloses a dynamic construction system for a petroleum professional software application environment, including: a general service end, multiple software publishing ends and multiple software resource nodes; The general server aggregates professional software resources and centrally defines standard software templates.

[0023] Specifically, it includes: (1) Resource aggregation unit, which aggregates professional software resources. The professional software resources belong to the fields of exploration, development, engineering, and refining of oil and gas. The professional software resources include software user directories, software data directories, environment variables, and software application models; (2) System construction units, combined with professional software resources, centrally define software standard templates and standardize the software operating environment. Software standard templates include software environment standard templates, user environment standard templates, business naming standards, data directory construction, user management standards, network and hardware management standards, visualization application standards, and operation and maintenance management standards.

[0024] The software standard templates specifically include: Software environment standard template: The software environment standard template packages the software installation package, system version requirements, system configuration requirements, software server IP, host name, patch package, etc.

[0025] User environment standard template: The user environment standard template packages and encapsulates user configuration files, user data server IP, data directory, domain server IP, domain name, domain user root directory, etc.

[0026] Business naming standards: Establish business naming standards, set business scope according to the business field of user units, realize automatic recommendation of software services and facilitate archiving and retrieval of data results.

[0027] Data directory construction: standardize user data directories, project results / shared data directories, software media / deployment templates, and general data directories to implement standardized directory management standards to facilitate unified queries, etc.

[0028] User management standards: To implement "real-name management" of users, automatically create system users with the same name according to the organizational unit to which the user belongs, realize unified management of users, and realize flexible control of user directory permissions.

[0029] Network and hardware management standards: Implement the division of network resources in the research environment and the standard definition of host names of hardware computing nodes according to business types, which is convenient for administrators to identify and control.

[0030] Visualization application standards: Define unified visualization application methods according to professional software application requirements to achieve unified resource application.

[0031] Operation and maintenance management standards: By obtaining the construction standards of the research environment, the automated construction of the professional software environment is realized. The research environment is automatically tested to ensure the normal software application of users.

[0032] The software release server performs two-way data synchronization with the main server, creates and initiates software deployment tasks, triggers the software deployment engine according to the software deployment task instructions, and drives the automated deployment process through the software deployment engine.

[0033] Specifically, it includes: (1) The two-way synchronization unit uses RabbitMQ message queue technology to synchronize data between the main server and the software publishing end, completing the two-way data synchronization between the software publishing server and the main server.

[0034] Bidirectional data synchronization is used here to ensure that the software standard is synchronized to the software server in real time after it is modified on the main server, while ensuring the consistency of the standard templates between the software server and the main server. If message synchronization fails due to environmental problems, the failed message will be automatically re-synchronized when the environment is restored to ensure data consistency.

[0035] Based on the two-way data synchronization between the software release server and the general server, the unified operation and maintenance of the general server and the real-time synchronization of the software release server are realized. Due to the adoption and application of rabbit message queue technology, it can play a supporting role in the practical application scenarios of data synchronization across data centers.

[0036] (2) The software deployment task creation unit uses the RPC remote call technology to pull the software standard template from the main server and create a software deployment task.

[0037] (3) Linux automated deployment unit: The software deployment engine is triggered by the software deployment task, and the software standard template is pushed in combination with the service script. The server node is selected on the software release server to automatically deploy the installation system and software environment, and the output software program directory is shared externally.

[0038] (4) Windows automated deployment unit: The software deployment engine is triggered by the software deployment task, and the environment deployment is achieved by connecting with PowerCli to manage VMware vSphere virtualization. The OVF template is exported from the VMware vSphere virtualization environment as an automatic deployment template.

[0039] The above-mentioned software deployment task creation unit, Linux automatic deployment unit and Windows automatic deployment unit cooperate with each other to build an automatic deployment system for the environment, so that different application software will select their own software standards, and then select the associated node resource pool (ie, server node) and node subnet information according to the corresponding software standards for dynamic construction.

[0040] When obtaining the user-initiated software resource usage task instruction, the software deployment task creation unit uses the RPC remote call technology to pull the software standard template from the general server, creates a software deployment task when the software standard template is obtained, initiates the software deployment task during automatic deployment, and triggers the corresponding software deployment engine through the software deployment task, that is, detects the system version required by the software according to the software deployment task, as follows: If the required system version is Windows, the Windows automated deployment unit uses the Windows automated deployment unit to initiate the software deployment task. The Windows system's environmental automated deployment uses PowerCli to connect and manage VMware vSphere virtualization to achieve environmental deployment. The administrator packages the Windows professional software environment on the main server, exports the "OVF template" from the virtualization environment as an automatic deployment template, and completes automatic deployment and release according to the packaged template software resource node.

[0041] If the required system version is Linux, the Linux automated deployment unit recommends automatic deployment in the "physical" environment for Linux professional software environment deployment. For Linux professional software release applications, the software release server selects server nodes that meet the requirements to automatically batch install software packages and third-party dependent software, installs server nodes for the deployed software environment, and shares the output software program directory externally.

[0042] The software resource node provides a software application environment for the target device that the user actually accesses.

[0043] Specifically, it includes: The first deployment unit automatically mounts the software program directory in the form of NFS file sharing storage according to the user directory mounting rules encapsulated in the standard template, and obtains the application environment of the software and dependent software and database, wherein the software program directory includes an installation directory, a user directory, and a work area authorization directory.

[0044] The second deployment unit completes automatic deployment and release according to the OVF template.

[0045] The first deployment unit is applied to a scenario where the system version is a Linux system, and the second deployment unit is applied to a scenario where the system version is a Windows system.

[0046] Embodiment 3: As attached Figure 2 The embodiment of the present invention discloses a method for dynamically constructing a petroleum professional software application environment, which is characterized by comprising: Step S101, register the software on the main server, aggregate professional software resources, and centrally define software standard templates.

[0047] The registration of the above professional software is carried out according to the series of business processes of "basic information registration" → "definition of software standards" → "association of licensing services".

[0048] The application of the above professional software depends on the environment including server: GPU, CPU, storage, virtual machine host, virtual machine, software installation and deployment media, software service directory, work area data directory, database, network, etc. The application of professional software depends on the system: Windows, Linux, and the release method for different types of software is different. In addition, some professional software depends on third-party software, including: DCV, SQLserverClient, etc.

[0049] The specific definition content of the above software standard template has been described in the above embodiment and will not be repeated here.

[0050] Step S102, bidirectional data synchronization between the software publishing server and the general server. Create and initiate software deployment tasks. That is, use RabbitMQ message queue technology to synchronize data between the general server and the software publishing end. If the message synchronization fails due to environmental problems during synchronization, the failed message will be automatically resynchronized when the environment is restored to ensure data consistency.

[0051] Step S103, customize the network planning strategy, that is, define the subnet segments (virtual segments, physical segments) through the system, dynamically display all subnet information, and dynamically display the occupancy status of each subnet information. The administrator can select idle subnet information for address allocation for different software. After allocation, the corresponding software will randomly select a node IP from the subnet information set according to the actual allocated subnet information when deployed.

[0052] Step S104, creating and initiating a software deployment task, and determining whether the system version required by the software is a Linux system or a Windows system.

[0053] Step S105, in response to the required version being the Windows system, the software publishing server uses PowerCli to connect and manage VMware vSphere virtualization to implement environment deployment, the Windows professional software environment package is placed on the main server, and the "OVF template" is exported from the virtualization environment as an automatic deployment template, and automatic deployment and publishing are completed according to the packaged template software resource node.

[0054] Step S106, in response to the required version being the Linux system, the software publishing server pushes the software standard template in combination with the service script, selects a server node at the software publishing server to start automatically deploying the installation system and software environment, and shares the output software program directory externally.

[0055] Step S107, the software resource node automatically mounts the software program directory in the form of NFS file sharing storage according to the user directory mounting rules encapsulated in the standard template, and obtains the application environment of the software and dependent software and database.

[0056] The above steps S105 to S107 implement automated deployment, specifically: (1) The required version is Windows system. Windows professional application software uses VMware vSphere virtualization to achieve environment deployment by docking with PowerCli. The administrator packages the Windows professional software environment and places it on the main server. The software publishing end triggers the deployment task and exports the "OVF template" from the virtualization environment as an automatic deployment template. According to the automatic deployment template, automatic deployment and publishing are completed on the software resource node to form a resource pool. Taking Petrel software as an example, the specific Windows system environment professional application software deployment is as follows: Figure 3 As shown in the figure, after the professional application software is deployed in the Windows system environment, when ordinary scientific research users need to use professional software, they establish an application connection with the software resource node to trigger the software call.

[0057] (2) The required version is the Linux system. The software publishing server pushes the software standard template in combination with the service script. The software publishing server selects the server node to automatically deploy and install the system and software environment, and shares the output software program directory externally. The software resource node automatically mounts the software program directory in the form of NFS file sharing storage according to the user directory mounting rules encapsulated in the standard template, and obtains the application environment of the software and dependent software and database.

[0058] The specific steps for the above automatic deployment and installation system and software environment are as follows: Figure 4 shown.

[0059] When the above-mentioned system and software environment are automatically deployed and installed, third-party dependent software and database environment are also deployed synchronously. Some professional software such as GeoEast and LandMark, in addition to relying on other software such as DCV, GPU display driver, etc., also have their own database. When deploying, this type of professional software will encapsulate the dependent software package in the software environment standard template, and the connection between the database and the software and the user authority configuration are encapsulated in the user environment template. When the software is released, the present invention uniformly deploys the application environment in the "software release server", provides a software program directory for external sharing and output, and the software resource node is used as the target device for actual application access. According to the data directory standard, the software program directory is automatically mounted to obtain the application environment of the software and dependent software and database.

[0060] Taking LandMark software as an example, the specific Linux system environment professional application software deployment is as follows: Figure 5 As shown in the figure, after the professional application software is deployed in the Linux system environment, when ordinary scientific research users need to use professional software, they establish an application connection with the software resource node to trigger the software call.

[0061] The above technical features constitute the best embodiment of the present invention, which has strong adaptability and best implementation effect. Non-essential technical features can be added or reduced according to actual needs to meet the requirements of different situations.

Claims

1. A dynamic construction system for petroleum professional software application environment, characterized in that: include: The main server, software publishing terminal and software resource node; The general server aggregates professional software resources and centrally defines software standard templates; The software release server performs two-way data synchronization with the main server, creates and initiates software deployment tasks, triggers the software deployment engine according to the software deployment task instructions, and drives the automated deployment process through the software deployment engine; The software resource node provides a software application environment for the target device that the user actually accesses.

2. The dynamic construction system of the petroleum professional software application environment according to claim 1 is characterized in that: The general server includes: Resource aggregation unit, which aggregates professional software resources, including the fields of exploration, development, engineering, and refining of oil and gas businesses; The system construction unit combines professional software resources to centrally define software standard templates and standardize the software operating environment. The software standard templates include software environment standard templates, user environment standard templates, business naming standards, data directory construction, user management standards, network and hardware management standards, visualization application standards, and operation and maintenance management standards.

3. The dynamic construction system of the petroleum professional software application environment according to claim 1 or 2, characterized in that: The software publishing server includes: The two-way synchronization unit uses RabbitMQ message queue technology to synchronize data between the main server and the software publishing end, completing the two-way data synchronization between the software publishing server and the main server; The software deployment task creation unit uses RPC remote call technology to pull the software standard template from the main server and create a software deployment task; The Linux automated deployment unit triggers the software deployment engine by the software deployment task, pushes the software standard template in combination with the service script, selects the server node on the software release server to start automatically deploying the installation system and software environment, and shares the output software program directory externally; The windows automated deployment unit triggers the software deployment engine by the software deployment task, and uses PowerCli to manage VMware vSphere virtualization to implement environment deployment, and exports OVF templates from the VMware vSphere virtualization environment as automatic deployment templates.

4. The dynamic construction system of the petroleum professional software application environment according to any one of claims 1 to 3, characterized in that: The software resource node includes: The first deployment unit automatically mounts the software program directory in the form of NFS file sharing storage according to the user directory mounting rule encapsulated in the standard template, and obtains the application environment of the software and dependent software and database, wherein the software program directory includes the installation directory, the user directory and the work area authorization directory; The second deployment unit completes automatic deployment and release according to the OVF template.

5. A method for dynamically constructing a petroleum professional software application environment applied to a system as claimed in any one of claims 1 to 4, characterized in that: include: Register software on the main server, aggregate professional software resources, and centrally define software standard templates; Perform two-way data synchronization between the software publishing server and the general server; Create and initiate software deployment tasks to determine whether the system version required by the software is Linux or Windows; In response to the required version being the Windows system, the software publishing server uses PowerCli to connect and manage VMware vSphere virtualization to achieve environment deployment. The Windows professional software environment package is placed on the main server, and the "OVF template" is exported from the virtualization environment as an automatic deployment template. Automatic deployment and publishing are completed according to the packaged template software resource node; In response to the required version being the Linux system, the software publishing server pushes the software standard template in combination with the service script, selects a server node on the software publishing server to automatically deploy and install the system and software environment, and shares the output software program directory externally; The software resource node automatically mounts the software program directory in the form of NFS file sharing storage according to the user directory mounting rules encapsulated in the standard template, and obtains the application environment of the software and dependent software and database.

6. The method for dynamically constructing a petroleum professional software application environment according to claim 5, characterized in that: It also includes defining subnet segments and dynamically displaying all subnet information. At the same time, each subnet information will dynamically display the occupancy status. Administrators can select idle subnet information to allocate addresses for different software. After allocation, the corresponding software will randomly select a node IP from the subnet information set based on the actual allocated subnet information when deployed.