[go: up one dir, main page]

CN110362318B - Application deployment method, device, equipment and storage medium - Google Patents

Application deployment method, device, equipment and storage medium Download PDF

Info

Publication number
CN110362318B
CN110362318B CN201910631256.5A CN201910631256A CN110362318B CN 110362318 B CN110362318 B CN 110362318B CN 201910631256 A CN201910631256 A CN 201910631256A CN 110362318 B CN110362318 B CN 110362318B
Authority
CN
China
Prior art keywords
deployment
deployed
template
service
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
CN201910631256.5A
Other languages
Chinese (zh)
Other versions
CN110362318A (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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201910631256.5A priority Critical patent/CN110362318B/en
Publication of CN110362318A publication Critical patent/CN110362318A/en
Application granted granted Critical
Publication of CN110362318B publication Critical patent/CN110362318B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The embodiment of the invention discloses an application deployment method, an application deployment device, application deployment equipment and a storage medium. The method comprises the steps of responding to the operation of a user acting on an application deployment interface, determining a service deployment template and an application package to be deployed, taking server resources in a target deployment stage in the service deployment template as target server resources, and deploying the application package to be deployed in the target server resources. The embodiment of the invention realizes the phased deployment of the server resources in the medium-and large-scale server through the service deployment template comprising the phased deployment configuration information of the server resources, provides a channel for the unified release of the application for the phased test, meets the requirement of the user for phased deployment according to the service dimension, standardizes the application deployment flow, realizes the unification and reusability of the deployment template, improves the application deployment effect and avoids the larger-scale online faults caused by online deployment.

Description

Application deployment method, device, equipment and storage medium
Technical Field
The embodiment of the invention relates to the technical field of computers, in particular to an application deployment method, an application deployment device and a storage medium.
Background
With the rapid development of computer technology, medium and large scale companies have deployed large scale servers to ensure that there is sufficient underlying capacity to respond to users' requests to provide services to users.
At present, deployment is often performed for a plurality of regions, machine rooms and servers, configuration information such as machine rooms and instances is selected by means of manual experience, and resources on each server supporting applications are manually configured one by means of staff, so that application packages to be online are deployed into server resources through a series of operations such as downloading, decompressing and running.
However, the existing application deployment mode has strong dependence on manpower, complicated operation steps, low deployment operation efficiency and lack of standardized deployment flow, cannot perform fine-granularity staged test deployment on server resources in different regions, machine rooms and other dimensions, cannot guarantee the online deployment effect of an application package, and even causes large-scale online faults.
Disclosure of Invention
The embodiment of the invention provides an application deployment method, an application deployment device and a storage medium, which can improve the deployment efficiency of an application.
In a first aspect, an embodiment of the present invention provides an application deployment method, including:
determining a service deployment template and an application package to be deployed in response to an operation of a user acting on an application deployment interface;
taking the server resource in the target deployment stage in the service deployment template as a target server resource;
and deploying the application package to be deployed in the target server resource.
In a second aspect, an embodiment of the present invention provides an application deployment apparatus, including:
the template calling target is used for responding to the operation of a user acting on the application deployment interface and determining a service deployment template and an application package to be deployed;
The resource determining module is used for taking the server resource in the target deployment stage in the service deployment template as a target server resource;
And the application package deployment module is used for deploying the application package to be deployed in the target server resource.
In a third aspect, an embodiment of the present invention provides an apparatus, including:
one or more processors;
A memory for storing one or more programs;
The one or more programs, when executed by the one or more processors, cause the one or more processors to implement the application deployment method described in any embodiment of the present invention.
In a fourth aspect, an embodiment of the present invention provides a computer readable storage medium, where a computer program is stored, where the program when executed by a processor implements the application deployment method according to any embodiment of the present invention.
According to the embodiment of the invention, the service deployment template is called, the current target deployment stage to be deployed is determined according to the service deployment template, the server resources in the target deployment stage in the service deployment template are determined to be target server resources, and the application package to be deployed is deployed in the target server resources. The embodiment of the invention realizes the phased deployment of the server resources in the medium-and large-scale server through the service deployment template comprising the phased deployment configuration information of the server resources, provides a channel for the unified release of the application for the phased test, meets the requirement of the user for phased deployment according to the service dimension, standardizes the application deployment flow, realizes the unification and reusability of the deployment template, improves the application deployment effect and avoids the larger-scale online faults caused by online deployment.
Drawings
FIG. 1 is a flowchart of an application deployment method according to a first embodiment of the present invention;
FIG. 2 is a flowchart of service deployment template generation according to a second embodiment of the present invention;
FIG. 3 is an exemplary diagram of a template generation interface provided in accordance with a second embodiment of the present invention;
FIG. 4 is another exemplary diagram of a template generation interface provided in accordance with a second embodiment of the present invention;
Fig. 5 is a flowchart of an application deployment method according to a third embodiment of the present invention;
FIG. 6 is a diagram showing an example of an application deployment progress provided in a third embodiment of the present invention;
fig. 7 is a flowchart of an application deployment method according to a fourth embodiment of the present invention;
fig. 8 is a flowchart of an application deployment method provided in a fifth embodiment of the present invention;
Fig. 9 is a schematic structural diagram of an application deployment device according to a sixth embodiment of the present invention;
fig. 10 is a schematic structural diagram of an apparatus according to a seventh embodiment of the present invention.
Detailed Description
Embodiments of the present invention will be described in further detail below with reference to the drawings and examples. It is to be understood that the specific embodiments described herein are merely illustrative of the embodiments of the invention and are not limiting of the invention. It should be further noted that, for convenience of description, only some, but not all of the structures related to the embodiments of the present invention are shown in the drawings.
It should be further noted that, for convenience of description, only some, but not all of the matters related to the present application are shown in the accompanying drawings. Before discussing exemplary embodiments in more detail, it should be mentioned that some exemplary embodiments are described as processes or methods depicted as flowcharts. Although a flowchart depicts operations (or steps) as a sequential process, many of the operations can be performed in parallel, concurrently, or at the same time. Furthermore, the order of the operations may be rearranged. The process may be terminated when its operations are completed, but may have additional steps not included in the figures. The processes may correspond to methods, functions, procedures, subroutines, and the like.
Example 1
Fig. 1 is a flowchart of an application deployment method provided in an embodiment of the present invention, where the embodiment is applicable to a case of application package deployment on a server, the method may be performed by an application deployment device, and the device may be implemented in a software and/or hardware manner, and preferably is configured in an electronic device. The method specifically comprises the following steps:
s110, determining a service deployment template and an application package to be deployed in response to the operation of the user acting on the application deployment interface.
In a specific embodiment of the present invention, an application deployment tool is provided, which may be configured in an electronic device such as a computer in the form of a plug-in. The user refers to an enterprise or a worker using the application deployment tool, and in the private cloud deployed with the enterprise infrastructure, server resources in the private cloud are uniformly deployed through the operation of the application deployment tool display interface, so that the user is convenient for later operation and maintenance of the application service.
In this embodiment, the application package to be deployed refers to an application package to be released online, such as an upgrade package, a patch, and the like of an application. After development and packaging of the application packages to be deployed are completed, the application packages to be deployed can be uniformly stored in a database for managing each application package and used for downloading in the later application package deployment.
In this embodiment, the service deployment template is used to specify the deployment flow of the application-related program, and has global applicability and reusability for one or more applications. The service deployment template at least can be configured with application information of an application to which an application package to be deployed belongs, deployment stages of different server resources under the application, deployment parameters under each deployment stage, global configuration parameters and the like. Wherein before determining the service deployment template and the application package to be deployed in response to a user's operation on the application deployment interface, further comprising generating at least one service deployment template in response to a user's operation on the template generation interface. The flow of generating the service deployment template will be explained in detail in the following embodiments.
Specifically, at least the server resource configuration information and the parameter configuration information to be deployed are configured in the service deployment template. The configuration information of the server resources to be deployed comprises the selected application needing operation and maintenance and the deployment phase sequence of each server resource under the application. The application may be a complete application, such as a certain reading software or game software, and may also be a specific function under the application, such as a book recommendation function in the reading software. Accordingly, a server resource is a specific instance in a server that supports the application. The examples are divided into different service granularities based on service dimension, and the service granularities are configured in a deployment stage, so that the examples under each service granularity are deployed in a stage sequence.
For example, assume that servers of a certain application software are deployed in city a, city B, and city C, respectively, with the application usage flow rate of city a being the largest, city C times, and the application usage flow rate of city B being the smallest. The server resources supporting the application can be divided into 3 service granularities, namely city a, city B and city C, based on the territory and machine room dimensions. Correspondingly, the application for operation and maintenance in the service deployment template is the application software, and is configured with the deployment phase sequence of each server resource under the application, for example, the first phase is city B, the second phase is city C, and the third phase is city a, that is, the deployment effect of the application can be tested step by preferential online through small flow.
The configuration information comprises deployment parameters and global configuration parameters in each deployment stage. The deployment parameters in the deployment stage are used for deploying and using the server resources in the deployment stage, and at least can comprise the concurrency of resource deployment and verification type. The resource deployment concurrency is used for setting the number of server resources capable of executing deployment operation simultaneously in the deployment stage, and the verification type is used for verifying the deployment result of each server resource in the deployment stage and can comprise manual verification and callback verification. The manual verification means that when the deployment of the deployment stage is completed, a worker verifies the deployment result of the server resource in the deployment stage. The callback verification means that a worker configures a verification tool, when each server resource is deployed, a deployment result of each server resource is verified through automatically calling a call interface corresponding to the verification tool, and corresponding call interface URLs (Uniform Resource Locator, uniform resource locators) are configured under the callback verification type correspondingly.
In addition, the global configuration parameters are used for deploying all server resources in the service deployment template, and at least can comprise a single machine downloading speed limit, a global failure tolerance number and a single machine timeout time. The single machine downloading speed limit is used for limiting the downloading speed of the application package to be deployed from the database when the application is deployed. The global failure tolerance number is used for limiting the number of server resources which can be subjected to the deployment failure under the global condition, namely, through real-time verification of the deployment result of each server resource under each deployment stage, when the server resources which are detected to be subjected to the deployment failure exceed the global failure tolerance number, the deployment of the application is terminated no matter which stage is currently deployed. And in order to prevent inconsistency of application deployment in server resources in the whole country, rollback of deployed server resources is needed for redeployment. The single machine timeout is used for limiting the maximum deployment time of the single server resource, and if the deployment time of the single server resource exceeds the single machine timeout, the server resource deployment failure is determined.
In this embodiment, the application deployment interface is used to trigger online application deployment, and a user may configure an application package to be deployed and a service deployment template in the application deployment interface, so as to trigger online deployment of an application, and according to the service deployment template configured by the user in the application deployment interface, the application package to be deployed is deployed online in a unified manner in a server.
Specifically, the user can select a service deployment template from at least one pre-generated service deployment template to be configured in the application deployment interface according to the service requirement of the operated and maintained application, so as to standardize the deployment flow of the application. Meanwhile, the user can configure the information of the application package to be deployed in the application deployment interface. Correspondingly, the application deployment tool responds to clicking, selecting, dragging or filling and other operations of a user on an application deployment interface, and determines a service deployment template and an application package to be deployed of the application deployment task, so that the application deployment task is executed.
S120, taking the server resources in the target deployment stage in the service deployment template as target server resources.
In the embodiment of the invention, since the deployment phase includes at least one, the target deployment phase refers to the phase to be deployed currently. Correspondingly, the server resource in the target deployment stage is used as a target server resource for deployment of the application. Specifically, in the process of executing the application deployment task, determining a target deployment stage to be deployed currently according to the sequence of each deployment stage in the service deployment template and the current deployment progress, and taking the server resource of the target deployment stage in the service deployment template as a target server resource.
Illustratively, in the above example, the deployment order of each stage in the service deployment template is city B in the first stage, city C in the second stage, and city a in the third stage, respectively. And assuming that the current progress is that the deployment completes the first stage, determining the second stage as a target deployment stage, and taking the server resources in the city C associated with the second stage as target server resources.
S130, deploying the application package to be deployed in the target server resource.
In a specific embodiment of the present invention, an application package to be deployed is deployed in a target server according to global configuration parameters in a service deployment template and deployment parameters in a target deployment stage. The method comprises the steps of downloading an application package to be deployed according to a single download speed limit in a service deployment template, and simultaneously deploying the application package to be deployed on line to at least one server resource within a resource deployment concurrency range in a target deployment stage according to the resource deployment concurrency degree in the service deployment template.
In addition, in the process of deploying the application package to be deployed in the target server resource, the deployment progress of each deployment stage in the service deployment template can be displayed, so that a user can timely acquire the online deployment progress of the application package to be deployed. And verifying the deployment result of the target deployment stage according to the verification type of the target deployment stage in the service deployment template, and if the global deployment failure is determined according to the verification result, redeploying the application package to be deployed on the server resource in the deployed stage.
According to the technical scheme of the embodiment, a service deployment template is called, a current target deployment stage to be deployed is determined according to the service deployment template, server resources in the target deployment stage in the service deployment template are determined to be target server resources, and an application package to be deployed is deployed in the target server resources. The embodiment of the invention realizes the phased deployment of the server resources in the medium-and large-scale server through the service deployment template comprising the phased deployment configuration information of the server resources, provides a channel for the unified release of the application for the phased test, meets the requirement of the user for phased deployment according to the service dimension, standardizes the application deployment flow, realizes the unification and reusability of the deployment template, improves the application deployment effect and avoids the larger-scale online faults caused by online deployment.
Example two
The present embodiment provides a preferred implementation manner of the application deployment method based on the first embodiment, where the at least one service deployment template can be generated in response to an operation of a user acting on the template generation interface before application deployment. Fig. 2 is a flowchart of service deployment template generation provided in the second embodiment of the present invention, as shown in fig. 2, where the method specifically includes the following steps:
s210, determining a target application object needing to deploy an application package from a service tree in response to the operation of a user acting on a template generation interface.
In a specific embodiment of the present invention, the service tree refers to a service organization relationship established by using a tree structure for an enterprise to conveniently manage a service cluster, that is, a model in which an instance and a machine are bound and corresponding. In a popular and narrow sense, the service tree maintains resources such as which machines are under which service line. Accordingly, the service tree includes different applications, such as a reading application and a game application, and the different applications may have a tree-shaped hierarchical relationship, such as a book recommendation function sub-application in the reading application.
In this embodiment, the template generation interface is used for a user to perform template configuration to generate a service deployment template for calling and multiplexing. Under the enterprise of the user, the service tree can be displayed in the template generation interface, and the user can select the application needing to perform deployment tasks such as application upgrading and the like from the service tree. Correspondingly, the application deployment tool responds to operations such as clicking and the like of a user on a template generation interface, takes the application selected by the user as a target application object, and provides the target application object for subsequent application deployment according to the association relationship between the target application object and the server resource.
Illustratively, FIG. 3 is an exemplary diagram of a template generation interface. As shown in the left side of fig. 3, below the application selection box, a service tree of the user is displayed, where the service tree includes App1 to App6, where App1 has a hierarchical relationship with App2 and App3, and App4 has a hierarchical relationship with App5 and App 6. From which the user can select an App as the target should object.
S220, determining a deployment stage of at least one server resource associated with the target application object.
In a specific embodiment of the present invention, after the target application object is selected, the server resource under the target application object may be displayed in the template generation interface. The user can set the deployment stage of each server resource for subsequent application deployment of each server resource according to the stage sequence.
Illustratively, FIG. 4 is another exemplary diagram of a template generation interface. As shown in the left side of fig. 4, app2 has been selected in the application selection frame, and a correspondence relationship between App2 and server resources is displayed below the application selection frame. For example, in fig. 4, app2 includes service granularity service1 and service2, and each service granularity specifically includes instance entities such as instance 0 and instance 1. As shown on the right side of fig. 4, in the phase setting box, a new deployment phase may be added by a plus sign on the right side. The user can add or delete the service granularity to each deployment stage through the rightward arrow and the leftward arrow between the stage setting frame and the server resource display area on the service granularity level, so that the corresponding server resource under the service granularity is set in the corresponding deployment stage.
Wherein one or more service granularity entities are allowed in one deployment phase. Generally, according to the design, a machine room or a batch of instances in the ground can be defined as a service granularity service based on regions and machine room service dimensions, and staged operation can be performed according to the service granularity, so that online deployment can be performed in batches, and the availability of online service deployment operation can be verified in batches.
S230, configuring deployment parameters in a deployment stage, wherein the deployment parameters at least comprise resource deployment concurrency and verification type.
In the specific embodiment of the invention, the deployment parameters in the deployment stage can be configured while the deployment stage is set. Specifically, the user can set the concurrency of resource deployment according to the service requirement, so as to limit the number of server resources capable of performing application deployment at the same time in the deployment stage. The user can also set the authentication type according to the service requirement to limit the authentication type for the server resource in the deployment stage. The verification type at least comprises manual verification and callback verification. The manual verification means that when the deployment of the deployment stage is completed, a worker verifies the deployment result of the server resource in the deployment stage. Callback verification refers to configuring a user-defined verification tool by a worker, when each server resource is deployed, verifying a deployment result of each server resource by automatically calling a call interface corresponding to the verification tool, and correspondingly, configuring a corresponding call interface URL under the callback verification type. Such as the type and concurrency of the under-stage deployment boxes in fig. 3 and 4, and the URL associated with the callback type.
S240, configuring global configuration parameters of the service deployment template, wherein the global configuration parameters at least comprise a single machine downloading speed limit, a global failure tolerance number and a single machine overtime.
In a specific embodiment of the present invention, the global configuration parameters may also be configured prior to generating the service deployment template. Specifically, the user can set parameters such as a single machine downloading speed limit, a global failure tolerance number, a single machine overtime time and the like according to service requirements and service deployment capability. The information such as report tube receivers can be set, so that the staff can receive the information such as service deployment templates or deployment results in time. Such as the global configuration parameters of single machine download speed limit, global failure tolerance, single machine timeout time, etc. above the stage deployment frame in fig. 3 and 4.
S250, generating a service deployment template.
In the specific embodiment of the invention, after completing the configuration of the service deployment template, a user can perform operations such as confirmation and the like in the template generation interface to generate the service deployment template. A save template key, such as the one below fig. 3 and 4, is used for the user to trigger the generation of the service deployment template by one key. The generated service deployment template is matched with server resources of the operation and maintenance application, so that the generated service deployment template can be reused in other operation and maintenance deployment operations in the later period of the application, the service deployment template can be directly called, the configuration operation of staff on the template is greatly reduced, the reusability of the service deployment template is improved, and the application deployment efficiency is improved.
In the technical scheme of the embodiment, in the process of generating the service deployment template, a target application object needing to deploy an application package is determined from a service tree, a deployment stage of at least one server resource associated with the target application object is determined, deployment parameters in the deployment stage and global configuration parameters of the service deployment template are configured, and thus the service deployment template comprising server resource staged deployment configuration information is generated. The embodiment of the invention realizes the phased deployment of the server resources in the medium-and large-scale server through the service deployment template comprising the phased deployment configuration information of the server resources, provides a channel for the unified release of the application for the phased test, meets the requirement of the user for phased deployment according to the service dimension, standardizes the application deployment flow, realizes the unification and reusability of the deployment template, improves the application deployment effect and avoids the larger-scale online faults caused by online deployment.
Example III
The embodiment provides a preferred implementation manner of the application deployment method based on the first embodiment, and the deployment of the application and the display of the application deployment progress can be performed according to the parameters in the service deployment template. Fig. 5 is a flowchart of an application deployment method according to a third embodiment of the present invention, as shown in fig. 5, where the method specifically includes the following steps:
s510, determining a service deployment template and an application package to be deployed in response to the operation of the user acting on the application deployment interface.
In a specific embodiment of the present invention, a user may select, according to a service requirement of an operating and maintaining application, a service deployment template from at least one pre-generated service deployment templates to be configured in an application deployment interface, so as to specify a deployment flow of the application. Meanwhile, the user can configure the application package information to be deployed in the application deployment interface, so that the application deployment task of this time is executed.
S520, determining a target deployment stage to be deployed currently according to the sequence of each deployment stage in the service deployment template and the current deployment progress.
In the specific embodiment of the invention, in the process of executing the application deployment task, the current stage to be deployed can be determined to be the target deployment stage according to the current deployment progress and the sequence of each deployment stage in the service deployment template.
S530, taking the server resources in the target deployment stage in the service deployment template as target server resources.
In a specific embodiment of the present invention, at least one service granularity is included in the target deployment phase in the service deployment template, each service granularity includes at least one server resource, and all server resources in the target deployment phase are used as target server resources.
S540, downloading the application package to be deployed according to the single download speed limit in the service deployment template.
In the specific embodiment of the invention, in the process of application deployment on the target server resource, firstly, downloading an application package to be deployed in a database according to the single download speed limit to obtain the application package to be deployed.
S550, according to the resource deployment concurrency in the service deployment template, simultaneously deploying the application package to be deployed on line to at least one server resource within the range of the resource deployment concurrency in the target deployment stage.
In a specific embodiment of the present invention, according to the resource deployment concurrency in the service deployment template, the number of server resources that can be currently deployed in the target deployment stage is determined, and according to the target server resources, the number of server resources is determined, so that an application to be deployed is packaged, and deployment is performed on the number of server resources at the same time.
S560, displaying the deployment progress of each deployment stage in the service deployment template in the process of deploying the application package to be deployed in the target server resource.
In the specific embodiment of the invention, in the process of deploying the application package to be deployed in the target server resource, the deployment progress of each deployment stage in the service deployment template can be displayed in the form of an interface or a prompt box by at least including the application information of the operated and maintained application, the template name, the name of the application package to be deployed, the deployment stage, the execution condition and the verification condition of the current deployment stage and the like.
Exemplary, FIG. 6 is a diagram showing an example of an application deployment progress. As shown in fig. 3, the task information and the online task details are displayed. The application information of the application App2 to be operated and maintained is sequentially displayed as node information from left to right in the task information, the template name of the service deployment template is displayed, the selection result of the shielding on-line alarm is displayed, the application package to be deployed is displayed as a module name, and the version number of the App2 is displayed. In the online task details, displaying all the deployment phases, the current deployment phase, and configuration information, execution conditions and inspection conditions including inspection types and the like of the current deployment phase. So that the user can timely handle the abnormal conditions and the like through the displayed application deployment progress.
According to the technical scheme of the embodiment, the service deployment template is called, the current target deployment stage to be deployed is determined according to the service deployment template, and the server resources of the target deployment stage in the service deployment template are determined to be target server resources, so that the application package to be deployed is deployed in the target server resources according to the configuration parameters in the service deployment template. The embodiment of the invention realizes the phased deployment of the server resources in the medium-and large-scale server through the service deployment template comprising the phased deployment configuration information of the server resources, provides a channel for the unified release of the application for the phased test, meets the requirement of the user for phased deployment according to the service dimension, standardizes the application deployment flow, realizes the unification and reusability of the deployment template, improves the application deployment effect and avoids the larger-scale online faults caused by online deployment.
Example IV
The embodiment provides a preferred implementation manner of the application deployment method based on the first embodiment, which can verify the application deployment result and deploy the application according to the verification result. Fig. 7 is a flowchart of an application deployment method according to a fourth embodiment of the present invention, as shown in fig. 7, where the method specifically includes the following steps:
s710, determining a service deployment template and an application package to be deployed in response to the operation of the user acting on the application deployment interface.
S720, taking the server resource in the target deployment stage in the service deployment template as a target server resource.
And S730, deploying the application package to be deployed in the target server resource.
S740, verifying the deployment result of the target deployment stage according to the verification type of the target deployment stage in the service deployment template.
In a specific embodiment of the present invention, the verification type of the target deployment phase is used for verifying the deployment result of the target server resource in the target deployment phase, and may include manual verification and callback verification. The manual verification means that when the deployment of the target deployment stage is completed, a worker verifies the deployment result of the target server resource in the target deployment stage. Callback verification refers to verifying the deployment result of the target server resource by automatically calling a call interface corresponding to a verification tool configured in the service deployment template.
The method comprises the steps of adopting a verification scheme associated with a verification type of a target deployment stage in a service deployment template to verify the deployment result of each server resource in the target deployment stage, determining that the server resource is failed to deploy if the server resource is detected to not release an application package to be deployed and/or the deployment time of the server resource exceeds a single machine timeout time, and determining that the application package to be deployed is failed to globally deploy if the number of server resources which are failed to deploy in the deployed stage is detected to exceed a global failure tolerance number.
When there are few server resource deployment failures, if the global deployment failure tolerance is not reached, other server resources which are considered to be deployed successfully have the capability of supporting the current service response. When the number of server resources with failed deployment exceeds the global failure tolerance, the server resources which are successfully deployed can be regarded as other server resources which are successfully deployed can not support the current service response, the normal use of the user is affected, and the corresponding determination is that the global deployment fails.
Illustratively, assume a global failure tolerance of1 and assume that the first phase of deployment is fully successful and the first server resource in the second phase fails to deploy. If the server resource deployment failure exists in the second stage or the subsequent deployment stage once, that is, the number of server resources which are in the deployment failure in the deployed stage exceeds the global failure tolerance number, determining that the application package to be deployed fails in global deployment, otherwise, continuing deployment.
S750, if the global deployment failure is determined according to the verification result, redeploying the application package to be deployed on the server resources in the deployed stage.
In the embodiment of the invention, if the global deployment fails according to the verification result, inconsistency occurs in the application deployment in the national server resource, for example, the user of the city C can enjoy the service provided by the new application package, but the user of the city a cannot enjoy the service, which affects the user experience of the city a and the normal interaction between the user of the city a and the user of the city C. Further, in order to prevent inconsistency of application deployment in the national server resources, rollback needs to be performed on the deployed server resources, so as to redeploy applications on the server resources after rollback and server resources not yet subjected to any deployment operation.
Specifically, a service rollback template is called to rollback the server resources under the deployment stage of the deployed application package to restore the resource state before the deployment of the application package to be deployed, and the service deployment template is called to redeploy the application package to be deployed on the server resources under each deployment stage in the service deployment template.
In this embodiment, in addition to the service deployment templates generated and used in the foregoing, the templates provided by the application deployment tool may also include templates of other scene types, such as a service rollback template, according to the service scene requirements. Correspondingly, the generation and use modes of the scene type templates are the same as the application deployment templates. If the global deployment fails according to the verification result, a service rollback template is called, server resources under the deployment stage of the deployed application package to be deployed are rolled back, and the server resources of the deployed application package to be deployed are restored to the state before undeployment, so that larger-scale online faults caused by online deployment are avoided. And then the service deployment template is called again, and the application package to be deployed is redeployed for the server resources in each deployment stage in the service deployment template, so that the globally successful deployment of the application is ensured.
According to the technical scheme of the embodiment, a service deployment template is called, a current target deployment stage to be deployed is determined according to the service deployment template, server resources of the target deployment stage in the service deployment template are determined to be target server resources, an application package to be deployed is deployed in the target server resources according to configuration parameters in the service deployment template, deployment result verification is conducted on the target deployment stage according to verification types of the target deployment stage in the service deployment template, and a subsequent deployment scheme is decided according to the verification results. The embodiment of the invention realizes the phased deployment of the server resources in the medium-and large-scale server through the service deployment template comprising the phased deployment configuration information of the server resources, provides a channel for the unified release of the application for the phased test, meets the requirement of the user for phased deployment according to the service dimension, standardizes the application deployment flow, realizes the unification and reusability of the deployment template, improves the application deployment effect and avoids the larger-scale online faults caused by online deployment.
Example five
The embodiment provides a preferred implementation manner of the application deployment method based on the first embodiment, which can verify the application deployment result and deploy the application according to the verification result. Fig. 8 is a flowchart of an application deployment method provided in a fifth embodiment of the present invention, as shown in fig. 8, where the method specifically includes the following steps:
S810, responding to the operation of the user acting on the application deployment interface, and determining a service deployment template and an application package to be deployed.
S820, server resources in a target deployment stage in the service deployment template are used as target server resources.
And S830, deploying the application package to be deployed in the target server resource.
S840, verifying the deployment result of each server resource in the target deployment stage by adopting a verification scheme associated with the verification type of the target deployment stage in the service deployment template.
S850, if it is detected that the server resource does not issue the application package to be deployed and/or the deployment time of the server resource exceeds the single machine timeout time, determining that the deployment of the server resource fails.
S860, if the number of server resources which are failed to be deployed in the deployed stage is detected to exceed the global failure tolerance number, determining that the application package to be deployed fails to be deployed globally.
S870, calling a service rollback template to rollback the server resources in the deployment stage of the deployed application package to restore the resource state before deployment of the application package to be deployed.
S880, calling a service deployment template, and carrying out deployment of the application package to be deployed on the server resources in each deployment stage in the service deployment template again.
According to the technical scheme of the embodiment, a service deployment template is called, a current target deployment stage to be deployed is determined according to the service deployment template, server resources of the target deployment stage in the service deployment template are determined to be target server resources, an application package to be deployed is deployed in the target server resources according to configuration parameters in the service deployment template, deployment result verification is conducted on the target deployment stage according to verification types of the target deployment stage in the service deployment template, and a subsequent deployment scheme is decided according to the verification results. The embodiment of the invention realizes the phased deployment of the server resources in the medium-and large-scale server through the service deployment template comprising the phased deployment configuration information of the server resources, provides a channel for the unified release of the application for the phased test, meets the requirement of the user for phased deployment according to the service dimension, standardizes the application deployment flow, realizes the unification and reusability of the deployment template, improves the application deployment effect and avoids the larger-scale online faults caused by online deployment.
Example six
Fig. 9 is a schematic structural diagram of an application deployment device provided in a sixth embodiment of the present invention, where the present embodiment is applicable to a case of performing application package deployment on a server, and the device may implement the application deployment method described in any embodiment of the present invention. The device specifically comprises the following steps:
a template invocation target 910, configured to determine a service deployment template and an application package to be deployed in response to an operation of a user acting on an application deployment interface;
The resource determining module 920 is configured to use a server resource in a target deployment stage in the service deployment template as a target server resource;
an application package deployment module 930, configured to deploy the application package to be deployed in the target server resource.
Further, the apparatus further includes a template generation module 940, specifically configured to:
and before determining the service deployment template and the application package to be deployed in response to the operation of the user acting on the application deployment interface, generating at least one service deployment template in response to the operation of the user acting on the template generation interface.
Optionally, the template generating module 940 is specifically configured to:
determining a target application object needing to deploy an application package from a service tree in response to an operation of a user acting on a template generation interface;
Determining a deployment phase of at least one server resource associated with the target application object;
configuring the deployment parameters in the deployment stage to generate a service deployment template, wherein the deployment parameters at least comprise resource deployment concurrency and verification type.
Optionally, the template generating module 940 is specifically configured to:
and configuring global configuration parameters of the service deployment template, wherein the global configuration parameters at least comprise a single machine downloading speed limit, a global failure tolerance number and a single machine overtime.
Optionally, the resource determining module 920 is specifically configured to:
Before the server resource of the target deployment stage in the service deployment template is used as the target server resource, determining the target deployment stage to be deployed currently according to the sequence of each deployment stage in the service deployment template and the current deployment progress.
Optionally, the application package deployment module 930 is specifically configured to:
downloading the application package to be deployed according to the single-machine downloading speed limit in the service deployment template;
And according to the resource deployment concurrency in the service deployment template, simultaneously deploying the application package to be deployed on line to at least one server resource within the resource deployment concurrency range in the target deployment stage.
Further, the apparatus further includes a deployment verification module 950, specifically configured to:
After the application package to be deployed is deployed in the target server resource, verifying a deployment result of the target deployment stage according to the verification type of the target deployment stage in the service deployment template;
And if the global deployment fails according to the verification result, redeploying the application package to be deployed on the server resources in the deployed stage.
Optionally, the deployment verification module 950 is specifically configured to:
Verifying the deployment result of each server resource in the target deployment stage by adopting a verification scheme associated with the verification type of the target deployment stage in the service deployment template;
if the server resource is detected not to release the application package to be deployed and/or the deployment time of the server resource exceeds the single machine timeout time, determining that the server resource fails to be deployed;
And if the number of server resources which are failed to be deployed in the deployed stage exceeds the global failure tolerance number, determining that the application package to be deployed fails to be deployed in the global deployment.
Optionally, the deployment verification module 950 is specifically configured to:
Calling a service rollback template to rollback server resources in a deployment stage of the application package to be deployed so as to recover a resource state before deployment of the application package to be deployed;
And calling the service deployment template, and carrying out deployment of the application package to be deployed on the server resources in each deployment stage in the service deployment template again.
Further, the apparatus further includes a progress display module 960, specifically configured to:
And displaying the deployment progress of each deployment stage in the service deployment template in the process of deploying the application package to be deployed in the target server resource.
According to the technical scheme, through mutual coordination among the functional modules, functions of application selection, configuration of deployment stages, configuration of parameters, generation of templates, calling of the templates, deployment of the application, verification of deployment results, display of deployment progress and the like are achieved. The embodiment of the invention realizes the phased deployment of the server resources in the medium-and large-scale server through the service deployment template comprising the phased deployment configuration information of the server resources, provides a channel for the unified release of the application for the phased test, meets the requirement of the user for phased deployment according to the service dimension, standardizes the application deployment flow, realizes the unification and reusability of the deployment template, improves the application deployment effect and avoids the larger-scale online faults caused by online deployment.
Example seven
Fig. 10 is a schematic structural diagram of an apparatus provided in embodiment seven of the present invention, and fig. 10 shows a block diagram of an exemplary apparatus suitable for implementing the embodiment of the present invention. The apparatus shown in fig. 10 is merely an example, and should not be construed as limiting the functionality and scope of use of the embodiments of the present invention.
The device 12 shown in fig. 10 is merely an example and should not be construed as limiting the functionality and scope of use of embodiments of the present invention. The device 12 is preferably an electronic device that carries an application deployment tool.
As shown in fig. 10, device 12 is in the form of a general purpose computing device. Components of device 12 may include, but are not limited to, one or more processors 16, a system memory 28, and a bus 18 connecting the various system components, including system memory 28 and processor 16.
Bus 18 represents one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processor, and a local bus using any of a variety of bus architectures. By way of example, and not limitation, such architectures include Industry Standard Architecture (ISA) bus, micro channel architecture (MAC) bus, enhanced ISA bus, video Electronics Standards Association (VESA) local bus, and Peripheral Component Interconnect (PCI) bus.
Device 12 typically includes a variety of computer system readable media. Such media can be any available media that is accessible by device 12 and includes both volatile and nonvolatile media, removable and non-removable media.
The system memory 28 may include computer system readable media in the form of volatile memory, such as Random Access Memory (RAM) 30 and/or cache memory 32. Device 12 may further include other removable/non-removable, volatile/nonvolatile computer system storage media. By way of example only, storage system 34 may be used to read from or write to non-removable, nonvolatile magnetic media (not shown in FIG. 10, commonly referred to as a "hard disk drive"). Although not shown in fig. 10, a magnetic disk drive for reading from and writing to a removable non-volatile magnetic disk (e.g., a "floppy disk"), and an optical disk drive for reading from or writing to a removable non-volatile optical disk (e.g., a CD-ROM, DVD-ROM, or other optical media) may be provided. In such cases, each drive may be coupled to bus 18 through one or more data medium interfaces. The system memory 28 may include at least one program product having a set (e.g., at least one) of program modules configured to carry out the functions of embodiments of the invention.
A program/utility 40 having a set (at least one) of program modules 42 may be stored in, for example, system memory 28, such program modules 42 including, but not limited to, an operating system, one or more application programs, other program modules, and program data, each or some combination of which may include an implementation of a network environment. Program modules 42 generally perform the functions and/or methods of the embodiments described herein.
Device 12 may also communicate with one or more external devices 14 (e.g., keyboard, pointing device, display 24, etc.), one or more devices that enable a user to interact with device 12, and/or any devices (e.g., network card, modem, etc.) that enable device 12 to communicate with one or more other computing devices. Such communication may occur through an input/output (I/O) interface 22. Also, device 12 may communicate with one or more networks such as a Local Area Network (LAN), a Wide Area Network (WAN) and/or a public network, such as the Internet, via network adapter 20. As shown, network adapter 20 communicates with other modules of device 12 over bus 18. It should be appreciated that although not shown, other hardware and/or software modules may be used in connection with device 12, including, but not limited to, microcode, device drivers, redundant processors, external disk drive arrays, RAID systems, tape drives, data backup storage systems, and the like.
The processor 16 executes various functional applications and data processing by running programs stored in the system memory 28, for example, implementing the application deployment method provided by the embodiments of the present invention.
Example eight
An eighth embodiment of the present invention also provides a computer-readable storage medium having stored thereon a computer program (or referred to as computer-executable instructions) which, when executed by a processor, is configured to perform an application deployment method, the method comprising:
determining a service deployment template and an application package to be deployed in response to an operation of a user acting on an application deployment interface;
taking the server resource in the target deployment stage in the service deployment template as a target server resource;
and deploying the application package to be deployed in the target server resource.
The computer storage media of embodiments of the invention may take the form of any combination of one or more computer-readable media. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. The computer readable storage medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples (a non-exhaustive list) of the computer-readable storage medium include an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
The computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, either in baseband or as part of a carrier wave. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination of the foregoing. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for embodiments of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, smalltalk, C ++ and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or device. In the case of a remote computer, the remote computer may be connected to the user's computer through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computer (for example, through the Internet using an Internet service provider).
Note that the above is only a preferred embodiment of the present invention and the technical principle applied. It will be understood by those skilled in the art that the present invention is not limited to the particular embodiments described herein, but is capable of various obvious changes, rearrangements and substitutions as will now become apparent to those skilled in the art without departing from the scope of the invention. Therefore, while the embodiments of the present invention have been described in connection with the above embodiments, the embodiments of the present invention are not limited to the above embodiments, but may include many other equivalent embodiments without departing from the spirit of the present invention, and the scope of the present invention is determined by the scope of the appended claims.

Claims (18)

1.一种应用部署方法,其特征在于,包括:1. An application deployment method, comprising: 响应于用户作用在应用部署界面上的操作,确定服务部署模板和待部署应用包;In response to the user's operation on the application deployment interface, determine the service deployment template and the application package to be deployed; 将所述服务部署模板中目标部署阶段的服务器资源,作为目标服务器资源;Using the server resources in the target deployment phase in the service deployment template as target server resources; 在所述目标服务器资源中部署所述待部署应用包;Deploying the to-be-deployed application package in the target server resources; 在所述响应于用户作用在应用部署界面上的操作,确定服务部署模板和待部署应用包之前,还包括:Before determining the service deployment template and the application package to be deployed in response to the user's operation on the application deployment interface, the method further includes: 响应于用户作用在模板生成界面上的操作,从服务树中确定需要部署应用包的目标应用对象;In response to the user's operation on the template generation interface, determining a target application object to which the application package needs to be deployed from the service tree; 确定所述目标应用对象关联的至少一个服务器资源的部署阶段;Determining a deployment phase of at least one server resource associated with the target application object; 配置所述部署阶段下的部署参数,以生成服务部署模板;其中,所述部署参数至少包括资源部署并发度和验证类型。Configure the deployment parameters in the deployment stage to generate a service deployment template; wherein the deployment parameters at least include resource deployment concurrency and verification type. 2.根据权利要求1所述的方法,其特征在于,在所述生成服务部署模板之前,还包括:2. The method according to claim 1, characterized in that before generating the service deployment template, it also includes: 配置所述服务部署模板的全局配置参数;其中,所述全局配置参数至少包括单机下载限速、全局失败容忍数以及单机超时时间。Configure the global configuration parameters of the service deployment template; wherein the global configuration parameters at least include a single-machine download speed limit, a global failure tolerance number, and a single-machine timeout period. 3.根据权利要求1所述的方法,其特征在于,在所述将所述服务部署模板中目标部署阶段的服务器资源,作为目标服务器资源之前,还包括:3. The method according to claim 1, characterized in that before taking the server resources in the target deployment stage in the service deployment template as the target server resources, it also includes: 按照所述服务部署模板中各部署阶段顺序和当前部署进度,确定当前待部署的目标部署阶段。According to the sequence of deployment phases in the service deployment template and the current deployment progress, the target deployment phase to be deployed is determined. 4.根据权利要求1所述的方法,其特征在于,所述在所述目标服务器资源中部署所述待部署应用包,包括:4. The method according to claim 1, characterized in that deploying the to-be-deployed application package in the target server resources comprises: 依据所述服务部署模板中单机下载限速,下载所述待部署应用包;Download the application package to be deployed according to the single-machine download speed limit in the service deployment template; 依据所述服务部署模板中资源部署并发度,向所述目标部署阶段下所述资源部署并发度范围内的至少一个服务器资源同时上线部署所述待部署应用包。According to the resource deployment concurrency in the service deployment template, the to-be-deployed application package is simultaneously deployed online to at least one server resource within the resource deployment concurrency range in the target deployment stage. 5.根据权利要求1所述的方法,其特征在于,在所述目标服务器资源中部署所述待部署应用包之后,还包括:5. The method according to claim 1, characterized in that after deploying the application package to be deployed in the target server resources, it also includes: 依据所述服务部署模板中目标部署阶段的验证类型,对所述目标部署阶段进行部署结果验证;Verifying the deployment result of the target deployment stage according to the verification type of the target deployment stage in the service deployment template; 若根据验证结果确定全局部署失败,则对已部署阶段中的服务器资源重新部署所述待部署应用包。If it is determined according to the verification result that the global deployment fails, the application package to be deployed is redeployed on the server resources in the deployed stage. 6.根据权利要求5所述的方法,其特征在于,所述依据所述服务部署模板中目标部署阶段的验证类型,对所述目标部署阶段进行部署结果验证,包括:6. The method according to claim 5, characterized in that the verification of the deployment result of the target deployment stage according to the verification type of the target deployment stage in the service deployment template comprises: 采用所述服务部署模板中目标部署阶段的验证类型关联的验证方案,对所述目标部署阶段下各服务器资源的部署结果进行验证;Using the verification scheme associated with the verification type of the target deployment stage in the service deployment template, verifying the deployment results of each server resource in the target deployment stage; 若检测到服务器资源未发布所述待部署应用包,和/或该服务器资源的部署时间超过单机超时时间,则确定该服务器资源部署失败;If it is detected that the server resource has not published the application package to be deployed, and/or the deployment time of the server resource exceeds the single machine timeout time, it is determined that the deployment of the server resource has failed; 若检测到已部署阶段下部署失败的服务器资源的数量超过全局失败容忍数,则确定所述待部署应用包全局部署失败。If it is detected that the number of server resources that have failed to be deployed in the deployed stage exceeds the global failure tolerance number, it is determined that the global deployment of the application package to be deployed has failed. 7.根据权利要求5所述的方法,其特征在于,所述对已部署阶段中的服务器资源重新部署所述待部署应用包,包括:7. The method according to claim 5, characterized in that the redeployment of the to-be-deployed application package on the server resources in the deployed stage comprises: 调用服务回滚模板,对已部署所述待部署应用包的部署阶段下的服务器资源进行回滚,以恢复所述待部署应用包部署之前的资源状态;Calling a service rollback template to roll back server resources in the deployment phase where the application package to be deployed has been deployed, so as to restore the resource state before the deployment of the application package to be deployed; 调用所述服务部署模板,重新对所述服务部署模板中各部署阶段下的服务器资源进行所述待部署应用包的部署。The service deployment template is called to redeploy the application package to be deployed on the server resources in each deployment stage in the service deployment template. 8.根据权利要求1所述的方法,其特征在于,在所述目标服务器资源中部署所述待部署应用包的过程中,还包括:8. The method according to claim 1, characterized in that, in the process of deploying the to-be-deployed application package in the target server resources, it further comprises: 显示所述服务部署模板中各部署阶段的部署进度。Displays the deployment progress of each deployment phase in the service deployment template. 9.一种应用部署装置,其特征在于,包括:9. An application deployment device, comprising: 模板调用目标,用于响应于用户作用在应用部署界面上的操作,确定服务部署模板和待部署应用包;The template call target is used to determine the service deployment template and the application package to be deployed in response to the user's operation on the application deployment interface; 资源确定模块,用于将所述服务部署模板中目标部署阶段的服务器资源,作为目标服务器资源;A resource determination module, used to use the server resources in the target deployment phase in the service deployment template as target server resources; 应用包部署模块,用于在所述目标服务器资源中部署所述待部署应用包;An application package deployment module, used to deploy the application package to be deployed in the target server resources; 模板生成模块,用于在所述响应于用户作用在应用部署界面上的操作,确定服务部署模板和待部署应用包之前,响应于用户作用在模板生成界面上的操作,从服务树中确定需要部署应用包的目标应用对象;确定所述目标应用对象关联的至少一个服务器资源的部署阶段;配置所述部署阶段下的部署参数,以生成服务部署模板;其中,所述部署参数至少包括资源部署并发度和验证类型。A template generation module is used to determine a target application object for which an application package needs to be deployed from a service tree in response to a user's operation on the template generation interface before determining a service deployment template and an application package to be deployed in response to a user's operation on the application deployment interface; determine a deployment phase of at least one server resource associated with the target application object; and configure deployment parameters under the deployment phase to generate a service deployment template; wherein the deployment parameters include at least a resource deployment concurrency and a verification type. 10.根据权利要求9所述的装置,其特征在于,所述模板生成模块具体用于:10. The device according to claim 9, characterized in that the template generation module is specifically used for: 配置所述服务部署模板的全局配置参数;其中,所述全局配置参数至少包括单机下载限速、全局失败容忍数以及单机超时时间。Configure the global configuration parameters of the service deployment template; wherein the global configuration parameters at least include a single-machine download speed limit, a global failure tolerance number, and a single-machine timeout period. 11.根据权利要求9所述的装置,其特征在于,所述资源确定模块具体用于:11. The device according to claim 9, wherein the resource determination module is specifically used to: 在所述将所述服务部署模板中目标部署阶段的服务器资源,作为目标服务器资源之前,按照所述服务部署模板中各部署阶段顺序和当前部署进度,确定当前待部署的目标部署阶段。Before using the server resources of the target deployment stage in the service deployment template as the target server resources, the target deployment stage to be deployed is determined according to the sequence of the deployment stages in the service deployment template and the current deployment progress. 12.根据权利要求9所述的装置,其特征在于,所述应用包部署模块具体用于:12. The device according to claim 9, wherein the application package deployment module is specifically used to: 依据所述服务部署模板中单机下载限速,下载所述待部署应用包;Download the application package to be deployed according to the single-machine download speed limit in the service deployment template; 依据所述服务部署模板中资源部署并发度,向所述目标部署阶段下所述资源部署并发度范围内的至少一个服务器资源同时上线部署所述待部署应用包。According to the resource deployment concurrency in the service deployment template, the to-be-deployed application package is simultaneously deployed online to at least one server resource within the resource deployment concurrency range in the target deployment stage. 13.根据权利要求9所述的装置,其特征在于,所述装置还包括部署验证模块,具体用于:13. The device according to claim 9, characterized in that the device further comprises a deployment verification module, specifically configured to: 在所述目标服务器资源中部署所述待部署应用包之后,依据所述服务部署模板中目标部署阶段的验证类型,对所述目标部署阶段进行部署结果验证;After deploying the to-be-deployed application package in the target server resources, verifying the deployment result of the target deployment stage according to the verification type of the target deployment stage in the service deployment template; 若根据验证结果确定全局部署失败,则对已部署阶段中的服务器资源重新部署所述待部署应用包。If it is determined according to the verification result that the global deployment fails, the application package to be deployed is redeployed on the server resources in the deployed stage. 14.根据权利要求13所述的装置,其特征在于,所述部署验证模块具体用于:14. The device according to claim 13, wherein the deployment verification module is specifically used for: 采用所述服务部署模板中目标部署阶段的验证类型关联的验证方案,对所述目标部署阶段下各服务器资源的部署结果进行验证;Using the verification scheme associated with the verification type of the target deployment stage in the service deployment template, verifying the deployment results of each server resource in the target deployment stage; 若检测到服务器资源未发布所述待部署应用包,和/或该服务器资源的部署时间超过单机超时时间,则确定该服务器资源部署失败;If it is detected that the server resource has not published the application package to be deployed, and/or the deployment time of the server resource exceeds the single machine timeout time, it is determined that the deployment of the server resource has failed; 若检测到已部署阶段下部署失败的服务器资源的数量超过全局失败容忍数,则确定所述待部署应用包全局部署失败。If it is detected that the number of server resources that have failed to be deployed in the deployed stage exceeds the global failure tolerance number, it is determined that the global deployment of the application package to be deployed has failed. 15.根据权利要求13所述的装置,其特征在于,所述部署验证模块具体用于:15. The device according to claim 13, wherein the deployment verification module is specifically used for: 调用服务回滚模板,对已部署所述待部署应用包的部署阶段下的服务器资源进行回滚,以恢复所述待部署应用包部署之前的资源状态;Calling a service rollback template to roll back server resources in the deployment phase where the application package to be deployed has been deployed, so as to restore the resource state before the deployment of the application package to be deployed; 调用所述服务部署模板,重新对所述服务部署模板中各部署阶段下的服务器资源进行所述待部署应用包的部署。The service deployment template is called to redeploy the application package to be deployed on the server resources in each deployment stage in the service deployment template. 16.根据权利要求9所述的装置,其特征在于,所述装置还包括进度展示模块,具体用于:16. The device according to claim 9, characterized in that the device further comprises a progress display module, which is specifically used for: 在所述目标服务器资源中部署所述待部署应用包的过程中,显示所述服务部署模板中各部署阶段的部署进度。In the process of deploying the to-be-deployed application package in the target server resources, the deployment progress of each deployment stage in the service deployment template is displayed. 17.一种设备,其特征在于,包括:17. A device, comprising: 一个或多个处理器;one or more processors; 存储器,用于存储一个或多个程序;A memory for storing one or more programs; 当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-8中任一项所述的应用部署方法。When the one or more programs are executed by the one or more processors, the one or more processors implement the application deployment method according to any one of claims 1 to 8. 18.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-8中任一项所述的应用部署方法。18. A computer-readable storage medium having a computer program stored thereon, wherein when the program is executed by a processor, the application deployment method according to any one of claims 1 to 8 is implemented.
CN201910631256.5A 2019-07-12 2019-07-12 Application deployment method, device, equipment and storage medium Active CN110362318B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910631256.5A CN110362318B (en) 2019-07-12 2019-07-12 Application deployment method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910631256.5A CN110362318B (en) 2019-07-12 2019-07-12 Application deployment method, device, equipment and storage medium

Publications (2)

Publication Number Publication Date
CN110362318A CN110362318A (en) 2019-10-22
CN110362318B true CN110362318B (en) 2025-05-27

Family

ID=68219301

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910631256.5A Active CN110362318B (en) 2019-07-12 2019-07-12 Application deployment method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN110362318B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113312083B (en) * 2020-07-14 2024-01-23 阿里巴巴集团控股有限公司 Application generation method, device and equipment
CN112199256A (en) * 2020-10-16 2021-01-08 济南浪潮数据技术有限公司 Deployment event monitoring method, device and equipment
CN113032049B (en) * 2021-04-13 2024-06-11 北京华胜天成科技股份有限公司 Application system deployment method and device based on task starting strategy and electronic equipment
CN113472565B (en) * 2021-06-03 2024-02-20 北京闲徕互娱网络科技有限公司 Method, apparatus, device and computer readable medium for expanding server function
CN113986339A (en) * 2021-10-29 2022-01-28 牙木科技股份有限公司 Method for simplifying standardization of big data OLAP service code structure
CN113986270B (en) * 2021-11-16 2022-09-23 前海飞算云智软件科技(深圳)有限公司 Distributed application deployment method and device, storage medium and electronic equipment

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103401940A (en) * 2013-08-12 2013-11-20 无锡华云数据技术服务有限公司 Automatic deploy method for cloud computing application software
CN109547509A (en) * 2017-09-22 2019-03-29 华为技术有限公司 A method and system for cross-platform deployment

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10031783B2 (en) * 2012-03-02 2018-07-24 Vmware, Inc. Execution of a distributed deployment plan for a multi-tier application in a cloud infrastructure
CN103685568B (en) * 2013-12-31 2018-01-30 曙光云计算集团有限公司 The platform service application dispositions method and system of PAAS platforms under cloud computing environment
US10318265B1 (en) * 2015-10-09 2019-06-11 Amazon Technologies, Inc. Template generation for deployable units
CN108462746B (en) * 2018-03-14 2021-11-16 广州西麦科技股份有限公司 Container deployment method and framework based on openstack

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103401940A (en) * 2013-08-12 2013-11-20 无锡华云数据技术服务有限公司 Automatic deploy method for cloud computing application software
CN109547509A (en) * 2017-09-22 2019-03-29 华为技术有限公司 A method and system for cross-platform deployment

Also Published As

Publication number Publication date
CN110362318A (en) 2019-10-22

Similar Documents

Publication Publication Date Title
CN110362318B (en) Application deployment method, device, equipment and storage medium
US9459856B2 (en) Effective migration and upgrade of virtual machines in cloud environments
US11561889B2 (en) Orchestration for automated performance testing
US9386079B2 (en) Method and system of virtual desktop infrastructure deployment studio
US8627310B2 (en) Capturing multi-disk virtual machine images automatically
US20130318512A1 (en) Hot Pluggable Extensions for Access Management System
US20140081615A1 (en) Virtual systems testing
US9158520B2 (en) Development of platform independent applications
US20150317222A1 (en) Preserving management services with self-contained metadata through the disaster recovery life cycle
CN110727575B (en) Information processing method, system, device and storage medium
CN109901985B (en) Distributed test apparatus and method, storage medium, and electronic device
CN105262608A (en) Monitoring method and monitoring device for network service
CN111782231A (en) Service deployment method and device
CN113485927A (en) Test data generation method, device, equipment and storage medium
US11200049B2 (en) Automated test authorization management
US9934019B1 (en) Application function conversion to a service
CN111782382A (en) Task processing method and device, storage medium and electronic equipment
CN119987798A (en) Component deployment method, device, equipment, storage medium and product
CN111355629B (en) Client test method and device, computer equipment and storage medium
CN114338820A (en) Network access method, device, electronic equipment and storage medium
CN110096543B (en) Application data manipulation method, apparatus, server and medium
WO2023193609A1 (en) Selective privileged container augmentation
CN110019059B (en) Timing synchronization method and device
CN113822015B (en) Serial number generation method, device, electronic device and computer readable medium
CN115484149A (en) Network switching method, network switching device, electronic device and storage medium

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