CN113515288B - Automatic deployment method and device based on release unit - Google Patents

Automatic deployment method and device based on release unit Download PDF

Info

Publication number
CN113515288B
CN113515288B CN202110451778.4A CN202110451778A CN113515288B CN 113515288 B CN113515288 B CN 113515288B CN 202110451778 A CN202110451778 A CN 202110451778A CN 113515288 B CN113515288 B CN 113515288B
Authority
CN
China
Prior art keywords
unit
deployment
release unit
server
application
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110451778.4A
Other languages
Chinese (zh)
Other versions
CN113515288A (en
Inventor
胡雨林
吴利华
赵培桐
张泳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202110451778.4A priority Critical patent/CN113515288B/en
Publication of CN113515288A publication Critical patent/CN113515288A/en
Application granted granted Critical
Publication of CN113515288B publication Critical patent/CN113515288B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44568Immediately runnable code
    • G06F9/44578Preparing or optimising for loading
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The invention provides an automatic deployment method and device based on a release unit, and belongs to the technical field of cloud computing. The automatic deployment method based on the release unit comprises the following steps: receiving an application deployment instruction, and acquiring the names of all the issuing units according to the application deployment instruction; determining a release unit product and a server corresponding to each release unit name according to a preset release unit corresponding rule; and deploying corresponding release unit products on each server. The invention can reduce the threshold of application deployment, improve the automation degree of deployment, reduce the maintenance cost of the deployment stage and improve the delivery speed of software products and services.

Description

Automatic deployment method and device based on release unit
Technical Field
The invention relates to the technical field of cloud computing, in particular to an automatic deployment method and device based on a release unit.
Background
The VUCA (volatility), uncertainties, completions, and amb igitities) times require that the system have a fast response requirement, building end-to-end delivery capability. By practicing the DevOps concept, the enterprise improves the efficiency of version construction, deployment and delivery to a certain extent, but developers still need to spend a great deal of manpower to maintain the deployment strategy of each module of application; in addition, the difference of the needs of each iteration of the software life cycle, the content of the version to be deployed of each iteration is different, so that a developer needs to customize the deployment flow according to the needs of each delivery; in addition, the deployment process involves production infrastructure information, and the deployment process requires close coordination of operation and maintenance personnel. How to reduce the threshold of application deployment, improve the automation degree of deployment, reduce the maintenance cost of developers and operation and maintenance personnel in the deployment stage, and become a great challenge in the DevOps practice.
Disclosure of Invention
The embodiment of the invention mainly aims to provide an automatic deployment method and device based on a release unit, so as to reduce the threshold of application deployment, improve the automation degree of deployment, reduce the maintenance cost of a deployment stage and improve the delivery speed of software products and services.
In order to achieve the above object, an embodiment of the present invention provides an automated deployment method based on a publishing unit, including:
receiving an application deployment instruction, and acquiring the names of all the issuing units according to the application deployment instruction;
determining a release unit product and a server corresponding to each release unit name according to a preset release unit corresponding rule;
and deploying corresponding release unit products on each server.
The embodiment of the invention also provides an automatic deployment device based on the release unit, which comprises:
the name acquisition module is used for receiving the application deployment instruction and acquiring the names of the issuing units according to the application deployment instruction;
the determining module is used for determining a release unit product and a server corresponding to each release unit name according to a preset release unit corresponding rule;
and the deployment module is used for deploying the corresponding release unit products on each server.
The embodiment of the invention also provides computer equipment, which comprises a memory, a processor and a computer program stored on the memory and running on the processor, wherein the steps of the automatic deployment method based on the release unit are realized when the processor executes the computer program.
The embodiment of the invention also provides a computer readable storage medium, on which a computer program is stored, which when being executed by a processor, realizes the steps of the automatic deployment method based on the release unit.
According to the automatic deployment method and device based on the release units, the release unit names are obtained according to the application deployment instruction, so that release unit products and servers corresponding to the release unit names are determined according to the preset release unit corresponding rules, and then the corresponding release unit products are deployed on the servers, so that the threshold of application deployment can be reduced, the degree of automation of deployment can be improved, the maintenance cost of a deployment stage can be reduced, and the delivery speed of software products and services can be improved.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings that are needed in the description of the embodiments will be briefly described below, it being obvious that the drawings in the following description are only some embodiments of the present invention, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a prior art deployment relationship diagram;
FIG. 2 is a prior art deployment flow diagram;
FIG. 3 is a diagram of publication unit definitions in one embodiment of the present invention;
FIG. 4 is a diagram of deployment associations based on publication units in an embodiment of the present invention;
FIG. 5 is a flow chart of a method of automated deployment based on a publication unit in one embodiment of the present invention;
FIG. 6 is a flow chart of a method of automated deployment based on a publication unit in another embodiment of the present invention;
FIG. 7 is a flow chart of a method of automated deployment based on a publication unit in yet another embodiment of the present invention;
FIG. 8 is a flowchart of S103 in an embodiment of the present invention;
FIG. 9 is a schematic diagram of a script execution flow in an embodiment of the present invention;
FIG. 10 is a block diagram of an automated deployment apparatus based on a publication unit in an embodiment of the present invention;
FIG. 11 is a block diagram of an automated deployment apparatus based on a publication unit in another embodiment of the present invention;
fig. 12 is a block diagram of a computer device in an embodiment of the invention.
Detailed Description
The following description of the embodiments of the present invention will be made clearly and completely with reference to the accompanying drawings, in which it is apparent that the embodiments described are only some embodiments of the present invention, but not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
Those skilled in the art will appreciate that embodiments of the invention may be implemented as a system, apparatus, device, method, or computer program product. Accordingly, the present disclosure may be embodied in the following forms, namely: complete hardware, complete software (including firmware, resident software, micro-code, etc.), or a combination of hardware and software.
In view of the fact that the prior art needs to spend a large amount of manpower to maintain the deployment strategy of each module of the application, the deployment process is customized according to the requirement of each delivery, and the deployment process needs to be closely matched by operation and maintenance personnel, the embodiment of the invention provides the automatic deployment method based on the release unit, which can reduce the threshold of application deployment, improve the automation degree of deployment, reduce the maintenance cost of the deployment stage and improve the delivery speed of software products and services.
For the detailed description of the present disclosure, an automated deployment process for a typical application (including WEB, APP, BATCH and DB) is used throughout the present technical solution to make a comparison of the prior art and the automated deployment method based on the publishing unit according to the embodiments of the present disclosure. The terms referred to herein are as follows:
service node: in the architecture design of an application system, a group of functional combinations consistent with basic operation software and the basic operation software thereof are combined into a logic unit from the aspects of business logic, technical planning and version operation and maintenance.
A release unit: the release units are the smallest units for application deployment, one release unit can only construct one product, and one release unit product can only be deployed on one application service node. For the case of PaaS on an application, a single image of the application corresponds to a publishing unit, i.e. a service node should publish an independent image.
A typical deployment procedure of an Application including WEB (World Wide WEB), APP (Application), BATCH (BATCH processing) and DB (database) includes the following 7 steps:
(1) Stopping the external service.
The user inputs the APP service node name, the shutdown strategy and the task type-shutdown task to the system; the system finds all servers under the APP service node and executes the shutdown strategy provided by the user.
(2) Stopping the batch service: the shutdown policy is executed at the BATCH service node.
The user inputs the BATCH service node name, the shutdown strategy and the task type-shutdown task to the system, and the system finds all servers under the BATCH service node and executes the shutdown strategy provided by the user.
(3) Backup WEB, APP, BATCH and DB runtime environment: the backup policy is executed at WEB, APP, BATCH, DB.
The user inputs the WEB/APP/BATCH/DB service node name, the backup strategy and the task type-backup task to the system, the system finds all servers under the WEB/APP/BATCH/DB service node, and executes the backup strategy provided by the user.
(4) Version installation is performed using deployment policies carried by each article.
The user inputs the product 1/product 2, the WEB/APP/BATCH/DB installation strategy and the task type-installation task to the system, and the system finds all servers under the WEB/APP/BATCH/DB service node and executes the installation strategy provided by the user.
(5) Verifying the installed version: and (3) if the verification fails, backing up each environment by using the backup in the step (3).
The user inputs the service node (WEB/APP/BATCH/DB) with installation failure, the rollback policy and task type-rollback task to the system, and the system finds all servers under the service node (WEB/APP/BATCH/DB) with installation failure and executes the rollback policy.
(6) A batch service is started.
The user inputs BATCH service node name, start strategy and task type-start task to the system, the system finds all servers under the BATCH service node, and executes the start strategy provided by the user.
(7) And starting external service.
The user inputs the name of the APP service node, the starting strategy and the task type-starting task to the system, the system finds all servers under the APP service node, and the starting strategy provided by the user is executed.
Fig. 1 is a deployment association diagram in the prior art. Fig. 2 is a prior art deployment flow diagram. As shown in fig. 1 and 2, in the prior art, an application has a tree relationship with an article, a service node, and a deployment environment, where one application has a plurality of articles, and one article is deployed to a plurality of service nodes correspondingly. The requirements of each iteration to be realized are different, different products are correspondingly required to be released, deployment tasks related to the different products are different, the application needs to customize a deployment flow for each deployment content, and the deployment flow is complex and has low reusability according to the deployment tasks, service nodes and strategies used by the deployment tasks determined by the deployment products.
FIG. 3 is a diagram of publication unit definitions in an embodiment of the present invention. FIG. 4 is a diagram of deployment associations based on publication units in an embodiment of the present invention. As shown in fig. 3-4, the present invention adds a persistent delivery oriented architecture level, the publication unit. The types of the release units forming the basic application comprise WEB, APP, DB, BATCH and the like, one application can comprise a plurality of release units, one release unit corresponds to one service node, and the definition of each release unit needs to define the service node information. The release units, release unit products and deployed service nodes are 1:1, the information of the product to be deployed and the service node to be deployed (namely the deployment environment) can be automatically associated through the release unit.
FIG. 5 is a flow chart of an automated deployment method based on a publication unit in an embodiment of the present invention. FIG. 6 is a flow chart of a method of automated deployment based on a publication unit in another embodiment of the present invention. FIG. 7 is a flow chart of a method of automated deployment based on a publication unit in yet another embodiment of the present invention. As shown in fig. 5-7, the automatic deployment method based on the release unit includes:
s101: and receiving an application deployment instruction, and acquiring the names of all the issuing units according to the application deployment instruction.
When the method is implemented, all applications can be deployed according to the flow of 'tangential flow-release unit deployment-drainage', and the system provides a unified tangential flow strategy and drainage strategy.
S102: and determining a release unit product and a server corresponding to each release unit name according to a preset release unit corresponding rule.
In an embodiment, determining, according to a preset rule for corresponding to a publication unit, a server corresponding to each publication unit name includes: determining service nodes corresponding to names of all the release units according to preset release unit corresponding rules; and determining a server corresponding to each issuing unit name according to the service node corresponding to each issuing unit name. The release units delivered in different development stages are different in products, the system can automatically skip release units without products, a user does not need to reprogram the deployment flow because of the change of requirements, and multiplexing of the deployment flow is realized while the deployment flow is simplified.
S103: and deploying corresponding release unit products on each server.
Before executing S103, further comprising: acquiring external application services according to the application deployment instruction; and executing the packaged preset tangential flow strategy by applying the external service to cut off the external flow access, and stopping the external service.
The external service of the application can be SLB/F5 service.
Fig. 8 is a flowchart of S103 in the embodiment of the present invention. FIG. 9 is a schematic diagram of a script execution flow in an embodiment of the present invention. As shown in fig. 8 to 9, S103 includes:
s201: analyzing each issuing unit product to obtain each execution script.
The system encapsulates the deployment process according to the flow of shutdown-backup-installation-verification-start-up for each release unit, and automatically executes the strategies (executing scripts) of each stage according to the sequence of shutdown-backup-installation-verification-start-up when the release units are deployed. For example, according to the issue unit partition principle, the application includes four issue units of WEB, APP, DB and BATCH. In the construction stage, the application constructs WEB, APP, DB and BATCH four products according to the dimension of the release unit. The system encapsulates the release unit deployment process according to the "shutdown-backup-installation-verification-start" flow. Each type of product carries the shutdown, backup, installation, verification, rollback and starting strategies of the release unit according to the requirements of the system on the naming rules and directory storage rules of various strategies such as shutdown, backup, installation, verification, rollback and starting of the release unit. If the DB class issuing unit only has an installation strategy, a verification strategy and a rollback strategy, the BATCH class issuing unit has a shutdown strategy, a backup strategy, an installation strategy, a verification strategy, a rollback strategy and a starting strategy. Naming rules and directory storage rules for various deployment policies of the publication unit article are as follows:
git code base (root directory)
S202: executing each execution script on each server according to a preset script execution flow so as to deploy the corresponding release unit product.
Taking an applied BATCH release unit as an example, when the BATCH release unit is deployed, the system searches service node information in the definition of the BATCH release unit, and searches a server of the service node in a configuration management database according to the service node. Checking whether the product of the BATCH issuing unit has execution scripts such as start, stop, reply, verify, backup, failback, sh and the like, if so, executing the scripts according to the stop-backup-reply-verify sequence, verifying the successful execution of the start, sh scripts and the verification failure sequence, and completing the deployment of the issuing unit.
After executing S103, further comprising: and executing the packaged preset drainage strategy by applying the external service to introduce external traffic, and starting the external service.
The execution subject of the publication unit-based automated deployment method shown in fig. 5 may be a computer (system). As can be seen from the flow shown in fig. 5, the automatic deployment method based on the release units according to the embodiment of the present invention obtains each release unit name according to the application deployment instruction to determine the release unit product and the server corresponding to each release unit name according to the preset release unit corresponding rule, and deploys the corresponding release unit product on each server, which can reduce the threshold of application deployment, improve the automation degree of deployment, reduce the maintenance cost of the deployment stage, and improve the delivery speed of software products and services.
The specific flow of the embodiment of the invention is as follows:
1. and receiving an application deployment instruction, and acquiring the names of each issuing unit and the external service of the application according to the application deployment instruction.
2. And determining a release unit product and a server corresponding to each release unit name according to a preset release unit corresponding rule.
3. And executing a preset tangential flow strategy by applying the external service to stop the external service.
4. Analyzing each issuing unit product to obtain each execution script, and executing each execution script on each server according to a preset script execution flow so as to deploy the corresponding issuing unit product.
5. And executing a preset drainage strategy by applying the external service to start the external service.
In summary, the invention combines the release unit to standardize the deployment flow, so that the deployment system is established on a certain standard, the threshold of application deployment is reduced, users do not need to pay attention to the deployment strategy and the deployment flow, the reusability of the deployment flow is improved, the maintenance cost of developers and operation and maintenance personnel is reduced, the automatic deployment of different service requirements and different research and development contents is supported, and the delivery speed of software products and services is improved.
FIG. 10 is a block diagram of an automated deployment apparatus based on a publication unit in an embodiment of the present invention. FIG. 11 is a block diagram of an automated deployment apparatus based on a publication unit in another embodiment of the present invention. As shown in fig. 10 to 11, the automated deployment apparatus based on the issue unit includes:
the name acquisition module is used for receiving the application deployment instruction and acquiring the names of the issuing units according to the application deployment instruction;
the determining module is used for determining a release unit product and a server corresponding to each release unit name according to a preset release unit corresponding rule;
and the deployment module is used for deploying the corresponding release unit products on each server.
In one embodiment, the deployment module comprises:
the analysis unit is used for analyzing the products of each release unit to obtain each execution script;
and the script execution unit is used for executing each execution script on each server according to a preset script execution flow so as to deploy the corresponding issuing unit product.
In one embodiment, the determining module includes:
the service node determining unit is used for determining the service node corresponding to each issuing unit name according to the preset issuing unit corresponding rule;
and the server determining unit is used for determining the server corresponding to each issuing unit name according to the service node corresponding to each issuing unit name.
In one embodiment, the method further comprises:
the service acquisition module is used for acquiring external application services according to the application deployment instruction;
the service stopping module is used for stopping the external service by applying a preset tangential strategy to the external service;
and the service starting module is used for executing a preset drainage strategy by applying the external service to start the external service.
As shown in fig. 11, in practical application, the automatic deployment device based on the publishing unit includes a front-end interaction module, a data storage module, a deployment procedure arrangement module, an article library, a configuration management database and a deployment scheduling module.
The user finishes the definition of the release unit, the arrangement flow arrangement, the arrangement result checking and the like through the front-end interaction module, arranges the automatic arrangement flow of the application according to the principle of 'tangential flow-release unit arrangement-drainage', and designates the name of the release unit to be arranged and the service name of tangential flow/drainage.
The data storage module is used for storing information such as a user-defined release unit, a deployment flow and the like.
The deployment flow programming module is used for providing deployment flow programming bottom layer service for the user.
The product warehouse is used for storing various release unit products.
The configuration management database is used for managing server lists of the service nodes.
The deployment scheduling module comprises a name acquisition module, a determination module, a deployment module, a service acquisition module, a service stopping module and a service starting module, and is used for realizing the following functions:
(1) Analyzing a deployment flow arranged by a user, searching a release unit product from a product library according to a release unit name, searching release unit definition according to the release unit in the deployment flow, acquiring service node information corresponding to the release unit name, and searching a corresponding server from a configuration management database according to the service node.
(2) Analyzing the product obtained from the product library, and obtaining the release unit deployment related strategy of the product.
(3) And executing a user-arranged deployment flow, executing uniform tangential/drainage operation at the SLB/F5, executing deployment of the release unit on each server of the release unit according to the flow of shutdown-backup-installation-verification-start, and recording deployment results and logs.
In summary, the automatic deployment device based on the release unit in the embodiment of the invention obtains the names of the release units according to the application deployment instruction to determine the release unit products and the servers corresponding to the release unit names according to the preset release unit corresponding rule, and deploys the corresponding release unit products on the servers, so that the threshold of application deployment can be reduced, the degree of automation of deployment can be improved, the maintenance cost of the deployment stage can be reduced, and the delivery speed of software products and services can be improved.
The embodiment of the invention also provides a concrete implementation mode of the computer equipment capable of realizing all the steps in the automatic deployment method based on the release unit. Fig. 12 is a block diagram of a computer device in an embodiment of the present invention, and referring to fig. 12, the computer device specifically includes:
a processor 1201 and a memory 1202.
The processor 1201 is configured to invoke a computer program in the memory 1202, where the processor executes the computer program to implement all the steps in the automatic deployment method based on the publication unit in the above embodiment, for example, the processor executes the computer program to implement the following steps:
receiving an application deployment instruction, and acquiring the names of all the issuing units according to the application deployment instruction;
determining a release unit product and a server corresponding to each release unit name according to a preset release unit corresponding rule;
and deploying corresponding release unit products on each server.
In summary, the computer device in the embodiment of the invention obtains each issue unit name according to the application deployment instruction to determine the issue unit product and the server corresponding to each issue unit name according to the preset issue unit corresponding rule, and deploys the corresponding issue unit product on each server, so that the threshold of application deployment can be reduced, the automation degree of deployment can be improved, the maintenance cost of the deployment stage can be reduced, and the delivery speed of software products and services can be improved.
The embodiment of the present invention further provides a computer readable storage medium capable of implementing all the steps in the automatic deployment method based on a release unit in the above embodiment, where the computer readable storage medium stores a computer program, and when the computer program is executed by a processor, the computer program implements all the steps in the automatic deployment method based on a release unit in the above embodiment, for example, the processor implements the following steps when executing the computer program:
receiving an application deployment instruction, and acquiring the names of all the issuing units according to the application deployment instruction;
determining a release unit product and a server corresponding to each release unit name according to a preset release unit corresponding rule;
and deploying corresponding release unit products on each server.
In summary, the computer readable storage medium according to the embodiment of the present invention obtains each issue unit name according to the application deployment instruction to determine the issue unit product and the server corresponding to each issue unit name according to the preset issue unit correspondence rule, and deploys the corresponding issue unit product on each server, so as to reduce the threshold of application deployment, improve the automation degree of deployment, reduce the maintenance cost of the deployment stage, and improve the delivery speed of software products and services.
The foregoing description of the embodiments has been provided for the purpose of illustrating the general principles of the invention, and is not meant to limit the scope of the invention, but to limit the invention to the particular embodiments, and any modifications, equivalents, improvements, etc. that fall within the spirit and principles of the invention are intended to be included within the scope of the invention.
Those of skill in the art will further appreciate that the various illustrative logical blocks (illustrative logical block), units, and steps described in connection with the embodiments of the invention may be implemented by electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components (illustrative components), elements, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design requirements of the overall system. Those skilled in the art may implement the described functionality in varying ways for each particular application, but such implementation is not to be understood as beyond the scope of the embodiments of the present invention.
The various illustrative logical blocks, or units, or devices described in the embodiments of the invention may be implemented or performed with a general purpose processor, a digital signal processor, an Application Specific Integrated Circuit (ASIC), a field programmable gate array or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described. A general purpose processor may be a microprocessor, but in the alternative, the general purpose processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a digital signal processor and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a digital signal processor core, or any other similar configuration.
The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may be stored in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. In an example, a storage medium may be coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC, which may reside in a user terminal. In the alternative, the processor and the storage medium may reside as distinct components in a user terminal.
In one or more exemplary designs, the above-described functions of embodiments of the present invention may be implemented in hardware, software, firmware, or any combination of the three. If implemented in software, the functions may be stored on a computer-readable medium or transmitted as one or more instructions or code on the computer-readable medium. Computer readable media includes both computer storage media and communication media that facilitate transfer of computer programs from one place to another. A storage media may be any available media that can be accessed by a general purpose or special purpose computer. For example, such computer-readable media may include, but is not limited to, RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that may be used to carry or store program code in the form of instructions or data structures and other data structures that may be read by a general or special purpose computer, or a general or special purpose processor. Further, any connection is properly termed a computer-readable medium, e.g., if the software is transmitted from a website, server, or other remote source via a coaxial cable, fiber optic cable, twisted pair, digital Subscriber Line (DSL), or wireless such as infrared, radio, and microwave, and is also included in the definition of computer-readable medium. The disks (disks) and disks (disks) include compact disks, laser disks, optical disks, DVDs, floppy disks, and blu-ray discs where disks usually reproduce data magnetically, while disks usually reproduce data optically with lasers. Combinations of the above may also be included within the computer-readable media.

Claims (6)

1. An automated deployment method based on a publication unit, comprising:
receiving an application deployment instruction, and acquiring the names of all issuing units according to the application deployment instruction; the release unit is the minimum unit of application deployment; one issuing unit can only construct one product, and one issuing unit corresponds to one service node;
determining a release unit product and a server corresponding to each release unit name according to a preset release unit corresponding rule;
the determining the server corresponding to each publishing unit name according to the preset publishing unit corresponding rule comprises the following steps: determining service nodes corresponding to names of all the release units according to preset release unit corresponding rules; determining a server corresponding to each issuing unit name according to the service node corresponding to each issuing unit name;
deploying corresponding release unit products on each server;
the deploying the corresponding release unit product on each server comprises the following steps: analyzing each release unit product to obtain each execution script; executing each execution script on each server according to a preset script execution flow so as to deploy the corresponding release unit product.
2. The automated publication unit-based deployment method of claim 1, further comprising:
acquiring external application services according to the application deployment instruction;
before the corresponding release unit products are deployed on each server, executing a preset tangential flow strategy for external service through the application so as to stop the external service;
after the corresponding release unit products are deployed on each server, executing a preset drainage strategy for the external service through the application so as to start the external service.
3. An automated deployment apparatus based on a publication unit, comprising:
the name acquisition module is used for receiving an application deployment instruction and acquiring the names of all the issuing units according to the application deployment instruction; the release unit is the minimum unit of application deployment; one issuing unit can only construct one product, and one issuing unit corresponds to one service node;
the determining module is used for determining a release unit product and a server corresponding to each release unit name according to a preset release unit corresponding rule;
wherein the determining module comprises: the service node determining unit is used for determining the service node corresponding to each issuing unit name according to the preset issuing unit corresponding rule; the server determining unit is used for determining the server corresponding to each issuing unit name according to the service node corresponding to each issuing unit name;
the deployment module is used for deploying corresponding release unit products on each server;
wherein the deployment module comprises: the analysis unit is used for analyzing the products of each release unit to obtain each execution script; and the script execution unit is used for executing each execution script on each server according to a preset script execution flow so as to deploy the corresponding issuing unit product.
4. The automated publication unit-based deployment apparatus of claim 3, further comprising:
the service acquisition module is used for acquiring external application services according to the application deployment instruction;
the service stopping module is used for executing a preset tangential flow strategy to the external service through the application so as to stop the external service;
and the service starting module is used for executing a preset drainage strategy to the external service through the application so as to start the external service.
5. A computer device comprising a memory, a processor and a computer program stored on the memory and running on the processor, characterized in that the processor implements the steps of the publication unit-based automated deployment method of any of claims 1 to 2 when the computer program is executed by the processor.
6. A computer readable storage medium having stored thereon a computer program, characterized in that the computer program when executed by a processor implements the steps of the publication unit based automated deployment method of any of claims 1 to 2.
CN202110451778.4A 2021-04-26 2021-04-26 Automatic deployment method and device based on release unit Active CN113515288B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110451778.4A CN113515288B (en) 2021-04-26 2021-04-26 Automatic deployment method and device based on release unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110451778.4A CN113515288B (en) 2021-04-26 2021-04-26 Automatic deployment method and device based on release unit

Publications (2)

Publication Number Publication Date
CN113515288A CN113515288A (en) 2021-10-19
CN113515288B true CN113515288B (en) 2024-02-23

Family

ID=78063413

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110451778.4A Active CN113515288B (en) 2021-04-26 2021-04-26 Automatic deployment method and device based on release unit

Country Status (1)

Country Link
CN (1) CN113515288B (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103905508A (en) * 2012-12-28 2014-07-02 华为技术有限公司 Cloud platform application deployment method and device
CN105051687A (en) * 2013-05-31 2015-11-11 华为技术有限公司 Application deployment method and device
CN110034963A (en) * 2019-04-18 2019-07-19 南京邮电大学盐城大数据研究院有限公司 A kind of elastic configuration method that application cluster is adaptive
CN111124469A (en) * 2019-11-25 2020-05-08 江苏艾佳家居用品有限公司 Continuous release system based on Docker mirror pixel data management
CN112363731A (en) * 2020-11-11 2021-02-12 杭州飞致云信息科技有限公司 Application automation deployment method and device and computer readable storage medium
CN112613894A (en) * 2020-12-31 2021-04-06 中国农业银行股份有限公司 Method and device for associating source code and product

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103905508A (en) * 2012-12-28 2014-07-02 华为技术有限公司 Cloud platform application deployment method and device
CN105051687A (en) * 2013-05-31 2015-11-11 华为技术有限公司 Application deployment method and device
CN110034963A (en) * 2019-04-18 2019-07-19 南京邮电大学盐城大数据研究院有限公司 A kind of elastic configuration method that application cluster is adaptive
CN111124469A (en) * 2019-11-25 2020-05-08 江苏艾佳家居用品有限公司 Continuous release system based on Docker mirror pixel data management
CN112363731A (en) * 2020-11-11 2021-02-12 杭州飞致云信息科技有限公司 Application automation deployment method and device and computer readable storage medium
CN112613894A (en) * 2020-12-31 2021-04-06 中国农业银行股份有限公司 Method and device for associating source code and product

Also Published As

Publication number Publication date
CN113515288A (en) 2021-10-19

Similar Documents

Publication Publication Date Title
CN109885316B (en) Hdfs-hbase deployment method and device based on kubernetes
US7684964B2 (en) Model and system state synchronization
AU2004200639B2 (en) Integrating design, deployment, and management phases for systems
US8010777B2 (en) Managing a deployment of a computing architecture
US6871223B2 (en) System and method for agent reporting in to server
US20100058331A1 (en) Automated deployment of defined topology in distributed computing environment
US11561784B2 (en) Versioning of pipeline templates for continuous delivery of services on datacenters configured in cloud platforms
CN111324333B (en) Software development method and device based on componentization
US11356508B1 (en) Retry strategies for handling failures during continuous delivery of software artifacts in a cloud platform
CN109144533A (en) A kind of method, system and the computer installation of update and the load of application program
CN102165419A (en) Computer system, method, and computer program for managing batch job
EP4033349A1 (en) Method and apparatus for generating mirror image file, and computer-readable storage medium
CN102541609B (en) Installation program manufacturing method, device and network device
CN103714287A (en) Method and device for obtaining temporary Root authority
US11392366B1 (en) Optimized compilation of pipelines for continuous delivery of services on datacenters configured in cloud platforms
US20230035486A1 (en) Managing execution of continuous delivery pipelines for a cloud platform based data center
US10162619B1 (en) Fleet-wide management of software packages
EP4348417A1 (en) Deploying a cloud service based on component dependencies
CN113515288B (en) Automatic deployment method and device based on release unit
CN106802805B (en) Application service management method and device suitable for server management
CN116578282A (en) Code generation method, device, electronic equipment and medium
CN116302176A (en) Application program starting method and device and electronic equipment
US10474500B2 (en) Running complex workflows in distributed systems while protecting consistency and ensuring progress despite failures
CN115760391A (en) Intelligent contract changing method and device in block chain, electronic equipment and storage medium
CN106778270B (en) Malicious application detection method and system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant