CN106209450B - Server fault switching method and application automation deployment system - Google Patents

Server fault switching method and application automation deployment system Download PDF

Info

Publication number
CN106209450B
CN106209450B CN201610537356.8A CN201610537356A CN106209450B CN 106209450 B CN106209450 B CN 106209450B CN 201610537356 A CN201610537356 A CN 201610537356A CN 106209450 B CN106209450 B CN 106209450B
Authority
CN
China
Prior art keywords
application
server
configuration information
information
fault
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
CN201610537356.8A
Other languages
Chinese (zh)
Other versions
CN106209450A (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.)
WeBank Co Ltd
Original Assignee
WeBank 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 WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN201610537356.8A priority Critical patent/CN106209450B/en
Publication of CN106209450A publication Critical patent/CN106209450A/en
Application granted granted Critical
Publication of CN106209450B publication Critical patent/CN106209450B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0668Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5054Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Hardware Redundancy (AREA)

Abstract

The invention discloses a server fault switching method, which comprises the following steps: if a fault server needing switching exists, acquiring configuration information of the fault server from a central configuration database, wherein the configuration information comprises hardware and system configuration information of the fault server and a snapshot of an application deployed by the fault server; determining a backup server according to the hardware of the fault server and system configuration information, and acquiring the material of the application from a material server according to the snapshot of the application; and completing the deployment of the application on the backup server according to the obtained materials. The invention also provides an application automation deployment system, which can realize automatic recovery of the application, does not need manual intervention, can effectively save cost, improve recovery efficiency and avoid information omission or misoperation caused by manual operation.

Description

Server fault switching method and application automation deployment system
Technical Field
The invention relates to the field of computer networks, in particular to a server fault switching method and an application automation deployment system.
Background
In a computer network system, there are a plurality of servers, and when a server fails, switching of the server, for example, switching from a primary server to a backup server is necessary in order to ensure that a service is not interrupted.
At present, when a server fails, recovery of an operating system and application recovery need to be performed, wherein, when the application recovers, manual intervention is needed, that is, a recovery process of the application is manually controlled and completed.
However, the manual recovery application method has the problems of high manual operation cost, low manual recovery efficiency, high error tendency, and the like.
The above is only for the purpose of assisting understanding of the technical aspects of the present invention, and does not represent an admission that the above is prior art.
Disclosure of Invention
The invention mainly aims to provide a server fault switching method and an application automation deployment system, and aims to solve the technical problems of high operation cost, low efficiency, high possibility of errors and the like caused by a manual application recovery mode in the prior art.
In order to achieve the above object, a server failover method provided by the present invention includes:
if a fault server needing switching exists, acquiring configuration information of the fault server from a central configuration database, wherein the configuration information comprises hardware and system configuration information of the fault server and a snapshot of an application deployed by the fault server;
determining a backup server according to the hardware of the fault server and system configuration information, and acquiring the applied material from a material server according to the snapshot of the application;
and completing the deployment of the application on the backup server according to the materials.
Preferably, the determining the backup server according to the hardware and system configuration information of the failed server includes:
searching a server matched with the hardware and system configuration information of the fault server in a standby resource pool;
if the matched server is found, one server is arbitrarily selected from the matched servers as the backup server;
if the server is not found, the server matched with the hardware configuration information of the fault server is found, and an operating system is installed on any matched server according to the system configuration information to obtain the backup server.
Preferably, the method further comprises:
if a deployment instruction of a first application is detected, acquiring target server information of the first application to be deployed, configuration information of the first application and material information of the first application;
and storing the target server information, the configuration information of the first application and the material information of the first application into the central configuration database to form a snapshot of the first application.
Preferably, the method further comprises:
acquiring the material of the first application from the material server according to the material information of the first application;
or,
obtaining, from a persistent integration platform, material of the first application generated by the persistent integration platform based on configuration information of the first application.
Preferably, the method further comprises:
deploying the first application on the target server using the first application's feed.
To achieve the above object, the present invention further provides an application automation deployment system, including:
the information acquisition module is used for acquiring configuration information of a fault server from a central configuration database if the fault server needing to be switched exists, wherein the configuration information comprises hardware and system configuration information of the fault server and a snapshot of an application deployed by the fault server;
the server determining module is used for determining a backup server according to the hardware and system configuration information of the fault server;
the material acquisition module is used for acquiring the applied material from a material server according to the snapshot of the application;
and the deployment module is used for completing the deployment of the application on the backup server according to the materials.
Preferably, the server determination module includes:
the searching module is used for searching a server matched with the hardware and system configuration information of the fault server in a standby machine resource pool;
the selection module is used for selecting one server from the matched servers as the backup server if the matched server is found;
and the searching and installing module is used for searching a server matched with the hardware configuration information of the fault server if the server is not searched, and installing an operating system on any matched server according to the system configuration information to obtain the backup server.
Preferably, the system further comprises:
the system comprises an application acquisition module, a first application deployment module and a second application deployment module, wherein the application acquisition module is used for acquiring target server information of a first application to be deployed, configuration information of the first application and material information of the first application if a deployment instruction of the first application is detected;
and the storage module is used for storing the target server information, the configuration information of the first application and the material information of the first application into the central configuration database to form a snapshot of the first application.
Preferably, the system further comprises:
the material module is used for acquiring the material of the first application from the material server according to the material information of the first application; or obtaining the materials of the first application generated by the continuous integration platform based on the configuration information of the first application from the continuous integration platform.
Preferably, the system further comprises:
and the application deployment module is used for deploying the first application on the target server by utilizing the material of the first application.
The invention provides a server failure switching method, in the method, if a failure server needing switching exists, configuration information of the failure server is obtained from a central configuration database, and the configuration information comprises hardware and system configuration information of the failure server and a snapshot of an application deployed by the failure server; determining a backup server according to the hardware of the fault server and system configuration information, and acquiring the material of the application from a material server according to the snapshot of the application; and completing the deployment of the application on the backup server according to the obtained materials. The configuration information of the server is saved by using the central configuration database, and the configuration information comprises hardware and system configuration information and deployed application snapshots, so that when the server fails, the deployed application snapshots of the failed server in the central configuration database can be used for completing the deployment of the application on the backup server, the automatic recovery of the application is realized, the application recovery process does not need to be manually intervened, the cost can be effectively saved, the recovery efficiency is improved, and information omission or misoperation caused by manual operation is avoided.
Drawings
FIG. 1 is an architecture diagram of a server failover system in an embodiment of the invention;
FIG. 2 is a flowchart illustrating an application deployment method according to a first embodiment of the present invention;
FIG. 3 is a flowchart illustrating a server failover method according to a second embodiment of the present invention;
FIG. 4 is a functional block diagram of an application automation deployment system according to a third embodiment of the present invention;
fig. 5 is a functional module diagram of an application automation deployment system according to a fourth embodiment of the present invention.
The implementation, functional features and advantages of the objects of the present invention will be further explained with reference to the accompanying drawings.
Detailed Description
It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
In the prior art, if the application on the failed server needs to be restored on the backup server, manual intervention is needed, so that the problems of high operation cost, low efficiency and easy error are caused.
In order to solve the problems, the invention provides a server failure switching method, which is characterized in that a central configuration database is used for storing configuration information of a server, the configuration information comprises hardware and system configuration information and deployed application snapshots, so that when the server fails, an application automatic deployment system can be automatically butted with the central configuration database, the deployed application on a backup server is completed by using the deployed application snapshots of the failed server in the central configuration database, the automatic recovery of the application is realized, the application recovery process does not need to be manually intervened, the cost can be effectively saved, the recovery efficiency is improved, and information omission or misoperation caused by manual operation is avoided.
To better understand the technical solution in the embodiment of the present invention, please refer to fig. 1, which is an architecture diagram of a server failover system in the embodiment of the present invention, including: the system comprises a server, an application automation deployment system, a standby machine resource pool, a central configuration database and a material server.
The servers (i.e., servers a to C in fig. 1) are deployed applications and can provide service, and it should be noted that the architecture diagram is described in fig. 1 by taking only three servers as an example, and in actual application, the number of servers may be set according to specific needs, which is not limited herein.
The application automation deployment system is used for managing and controlling the server, the standby resource pool, the central configuration database and the material server, and is also used for realizing the server fault switching method claimed by the invention. For each application deployed on the server, the application automation deployment system records the deployment information of the application into the central configuration database to form a snapshot of the application.
It should be noted that all applications installed on the server need to be deployed through the application automation deployment system, and the deployed information is recorded in the central configuration database, so as to implement recording of the applications in a snapshot manner.
The central configuration database is configured to store, in addition to the snapshot of the application, hardware and system configuration information of the server, where the snapshot of the application, the hardware and the system configuration information may be referred to as configuration information of the server. And the snapshot of the application comprises the corresponding relation among the server, the configuration information of the application and the material information of the application.
The material server is used for storing materials of applications deployed by the server, including but not limited to application packages, application data packages, application configuration files, and the like.
The standby machine resource pool comprises a plurality of servers which can be used as backup servers, and is used for realizing quick replacement of faults when the fault servers occur, and the realization of the standby machine resources comprises but is not limited to the following modes:
a) preparing in advance, deploying an operating system in advance, and directly selecting a server from the standby machine resource pool for application recovery when the fault replacement is needed;
b) the server is prepared in advance, but an operating system does not need to be deployed in advance, and when the fault replacement is needed, the operating system which is the same as the fault server is deployed first, and then application recovery is carried out. For the deployment of the operating system, for the physical machine, a technology for automatically installing the operating system may be used for deployment, and for the virtual machine, an operating system cloning technology may be used for deployment, and both the two methods belong to the prior art and are not described herein again.
In the above architecture diagram, the application automation deployment system can realize the automation recovery of the application based on the information of the server stored in the central configuration database, does not need manual intervention, can effectively save the cost, improves the recovery efficiency, and avoids information omission or misoperation caused by manual operation.
In the embodiment of the invention, in order to realize the server failover, when the application is deployed each time, the snapshot of the application is stored in the central configuration database, so that when the server failover is required, the failover can be realized based on the central configuration database.
Referring to fig. 2, a flowchart of an application deployment method according to a first embodiment of the present invention is shown, where the method includes:
step 201, if a deployment instruction for a first application is detected, acquiring target server information of the first application to be deployed, configuration information of the first application, and material information of the first application;
in the embodiment of the present invention, an operation and maintenance person may initiate deployment of an application on an application automation deployment system, taking deploying a first application as an example, after the operation and maintenance person initiates deployment of the first application on the application automation deployment system, the application automation deployment system generates a deployment instruction of the first application, and after detecting the deployment instruction of the first application, obtains target server information of the first application to be deployed, configuration information of the first application, and material information of the first application.
The target server information refers to information of a server that needs to deploy the first application, and includes, but is not limited to, an identity of the server, hardware configuration information of the server, operating system information, and the like.
The configuration information of the first application includes, but is not limited to, a system name of the first application, environment dependency information, and the like.
The material information of the first application includes, but is not limited to, a name of an application package, a name of an application data package, and the like.
Step 202, obtaining materials of the first application from the material server according to the material information of the first application; or acquiring the materials of the first application generated by the continuous integration platform based on the configuration information of the first application from the continuous integration platform;
step 203, deploying the first application on the target server by using the material of the first application;
in the embodiment of the present invention, the material of the first application may be issued to the material server by an operation and maintenance person, so that when the first application is deployed, the application automation deployment system may be docked with the material server, and obtain the material of the first application from the material server according to the material information of the first application, or the operation and maintenance person may configure the configuration information of the first application on the persistent integration platform, and the persistent integration platform generates the material based on the configuration information of the first application, and then the application automation deployment system obtains the generated material from the persistent integration platform. Further, in order to facilitate the recovery of the first application, the application automation deployment system further stores the material of the first application acquired from the persistent integration platform into the material server.
After obtaining the material of the first application, the application automation deployment system deploys the first application on the target server using the material of the first application, for example, the target server is server a and server B, and deploys the first application on server a using the material of the first application and deploys the first application on server B.
When the first application is deployed, the first application can be deployed by using the release script of the first application, specifically, the application automation deployment system calls the release script and executes the release action on the target server, so that the first application can be deployed on the target server based on the material of the first application.
Step 204, storing the target server information, the configuration information of the first application and the material information of the first application into the central configuration database to form a snapshot of the first application.
In the embodiment of the invention, after the target server finishes deploying the first application, the application automation deployment system stores the target server information, the configuration information of the first application and the material information of the first application to the central configuration database to form the snapshot of the first application.
It should be noted that the deployment process of the first application described in the first embodiment shown in fig. 2 may be an installation process of the first application, or an update process of the first application, and the snapshot stored in the central configuration database includes the configuration information of the first application when the first application was deployed last time.
In the embodiment of the invention, each time the application is deployed on the target server by the application automation deployment system, the target server information, the deployed application configuration information and the application material information need to be stored in the central configuration database to form the application snapshot, so that when the server fails, the application recovery can be realized based on the application snapshot in the central configuration database, and a basis is provided for the automatic recovery of the application.
Referring to fig. 3, a flow chart of a method for server failover in a second embodiment of the present invention is shown, where the method includes:
step 301, if a fault server needing to be switched exists, acquiring configuration information of the fault server from a central configuration database, wherein the configuration information comprises hardware and system configuration information of the fault server and a snapshot of an application deployed by the fault server;
step 302, determining a backup server according to the hardware and system configuration information of the fault server, and acquiring the material of the application from a material server according to the snapshot of the application;
and 303, completing the deployment of the application on the backup server according to the materials.
In the embodiment of the invention, when the operation and maintenance personnel determine that the fault server exists, the operation and maintenance personnel can issue the switching instruction of the fault server on the application automation deployment system, or when the application automation deployment system detects the fault server, the operation and maintenance personnel can automatically generate the switching instruction of the fault server. Based on the switching instruction, it may be determined that there is a failed server that needs to be switched, and the application automation deployment system may obtain the configuration information of the failed server from the central configuration database, and specifically, may obtain the configuration information of the failed server from the central configuration database based on the identity of the failed server.
The configuration information includes hardware and system configuration information of the failed server, and a snapshot of an application deployed by the failed server.
The application automation deployment system determines a backup server according to the hardware and system configuration information of the failed server, and since the server in the standby resource pool may or may not have an operating system installed, determining the backup server specifically includes:
the application automation deployment system searches a server matched with hardware and system configuration information of a fault server in a standby machine resource pool, wherein the hardware and system configuration information comprises hardware configuration information and system configuration information, the hardware configuration information comprises but is not limited to the type of a CPU (Central processing Unit), the size of a memory and the like, and the system configuration information is the version of an operating system. And if the server with the hardware and system configuration information matched with the fault server is found, randomly selecting one server from the matched servers as the backup server. If the server is not found, the server matched with the hardware configuration information of the fault server is found in the standby machine resource pool, and in the found server matched with the hardware configuration information, an operating system is installed on any one matched server according to the system configuration information of the fault server, so that a backup server with the hardware configuration information and the system configuration information both matched with the fault server is obtained.
The backup server matched with the fault server means that the operating system of the backup server is the same as the fault server, and the hardware configuration of the backup server is consistent with the fault server or within an allowable difference range.
In the embodiment of the invention, the backup server is determined by the above method, so that the situations of insufficient resources and resource waste can be avoided.
In the embodiment of the present invention, the application automation deployment system further obtains the material of the application from the material server according to the snapshot of the application, where the snapshot of the application includes the configuration information of the application and the material information of the application, the material information may be a storage address of the material in the material server, and the application automation deployment system may obtain the corresponding material based on the storage address.
In the embodiment of the invention, after the application automatic deployment system determines the backup server and acquires the deployed application material of the fault server, the deployment of the application on the backup server is completed according to the material, so that the switching of the fault server is realized.
It can be understood that, if a plurality of applications have been deployed on the failed server, the application automation deployment system will sequentially perform recovery of the corresponding applications on the backup server based on the materials of the plurality of applications until the recovery of the plurality of applications is completed.
In the embodiment of the invention, if a fault server needing to be switched exists, the configuration information of the fault server is obtained from a central configuration database, and the configuration information comprises the hardware and system configuration information of the fault server and a snapshot of an application deployed by the fault server; determining a backup server according to the hardware of the fault server and system configuration information, and acquiring the material of the application from a material server according to the snapshot of the application; and completing the deployment of the application on the backup server according to the obtained materials. The configuration information of the server is saved by using the central configuration database, and the configuration information comprises hardware and system configuration information and deployed application snapshots, so that when the server fails, the deployed application snapshots of the failed server in the central configuration database can be used for completing the deployment of the application on the backup server, the automatic recovery of the application is realized, the application recovery process does not need to be manually intervened, the cost can be effectively saved, the recovery efficiency is improved, and information omission or misoperation caused by manual operation is avoided.
By using the method to recover the application on the backup server, the backup server can quickly replace the failed server to provide service.
Referring to fig. 4, a schematic diagram of a functional module of an application automation deployment system according to a third embodiment of the present invention is shown, where the system includes: an information acquisition module 401, a server determination module 402, a material acquisition module 403, and a deployment module 404.
An information obtaining module 401, configured to obtain, if there is a failed server that needs to be switched, configuration information of the failed server from a central configuration database, where the configuration information includes hardware and system configuration information of the failed server, and a snapshot of an application deployed by the failed server;
a server determining module 402, configured to determine a backup server according to the hardware and system configuration information of the failed server;
a material obtaining module 403, configured to obtain a material of the application from a material server according to the snapshot of the application;
a deployment module 404, configured to complete deployment of the application on the backup server according to the material.
Wherein the server determining module 402 comprises: a search module 4021, a selection module 4022, and a search installation module 4023.
The searching module 4021 is configured to search a server matched with the hardware and system configuration information of the failed server in a standby resource pool;
a selecting module 4022, configured to select one server from the matched servers as the backup server arbitrarily if the matched server is found;
the search and installation module 4023 is configured to search a server that matches the hardware configuration information of the failed server if the server is not found, and install an operating system on any matched server according to the system configuration information to obtain the backup server.
In the embodiment of the invention, when the operation and maintenance personnel determine that the fault server exists, the operation and maintenance personnel can issue the switching instruction of the fault server on the application automation deployment system, or when the application automation deployment system detects the fault server, the operation and maintenance personnel can automatically generate the switching instruction of the fault server. Based on the switching instruction, it may be determined that there is a failed server that needs to be switched, and the information obtaining module 401 obtains the configuration information of the failed server from the central configuration database, and specifically, may obtain the configuration information of the failed server from the central configuration database based on the identity of the failed server.
The configuration information includes hardware and system configuration information of the failed server, and a snapshot of an application deployed by the failed server.
The server determining module 402 determines the backup server according to the hardware and system configuration information of the failed server, and since the servers in the standby resource pool may have installed the operating system or may not have installed the operating system, the server determining module 402 is specifically configured to:
the searching module 4021 in the server determining module 402 searches a server matched with the hardware and system configuration information of the failed server in the standby resource pool, where the hardware and system configuration information includes hardware configuration information and system configuration information, the hardware configuration information includes, but is not limited to, a model of a CPU, a size of a memory, and the like, and the system configuration information is a version of an operating system. If the server whose hardware and system configuration information are both matched with the failed server is found, the selection module 4022 selects any one server from the matched servers as the backup server. If the hardware configuration information of the server is not found, the search and installation module 4023 searches the server matched with the hardware configuration information of the failed server in the standby resource pool, and in the server matched with the found hardware configuration information, an operating system is installed on any one matched server according to the system configuration information of the failed server, so as to obtain a backup server in which the hardware configuration information and the system configuration information are both matched with the failed server.
The backup server matched with the fault server means that the operating system of the backup server is the same as the fault server, and the hardware configuration of the backup server is consistent with the fault server or within an allowable difference range.
In the embodiment of the invention, the backup server is determined by the above method, so that the situations of insufficient resources and resource waste can be avoided.
In this embodiment of the present invention, the material obtaining module 403 obtains the material of the application from the material server according to the snapshot of the application, where the snapshot of the application includes configuration information of the application and material information of the application, the material information may be a storage address of the material in the material server, and the application automation deployment system may obtain the corresponding material based on the storage address.
In the embodiment of the present invention, after determining the backup server and acquiring the material of the application deployed by the failed server, the deployment module 404 completes deployment of the application on the backup server according to the material, so as to implement switching of the failed server.
It can be understood that, if multiple applications have been deployed on the failed server, the deployment module 404 will sequentially perform recovery of the corresponding applications on the backup server based on the materials of the multiple applications until the recovery of the multiple applications is completed.
In the embodiment of the invention, if a fault server needing to be switched exists, the configuration information of the fault server is obtained from a central configuration database, and the configuration information comprises the hardware and system configuration information of the fault server and a snapshot of an application deployed by the fault server; determining a backup server according to the hardware of the fault server and system configuration information, and acquiring the material of the application from a material server according to the snapshot of the application; and completing the deployment of the application on the backup server according to the obtained materials. The configuration information of the server is saved by using the central configuration database, and the configuration information comprises hardware and system configuration information and deployed application snapshots, so that when the server fails, the deployed application snapshots of the failed server in the central configuration database can be used for completing the deployment of the application on the backup server, the automatic recovery of the application is realized, the application recovery process does not need to be manually intervened, the cost can be effectively saved, the recovery efficiency is improved, and information omission or misoperation caused by manual operation is avoided.
By using the method to recover the application on the backup server, the backup server can quickly replace the failed server to provide service.
In the embodiment of the present invention, the central configuration database stores configuration information of the server, where the configuration information includes hardware and system configuration information of the server and a snapshot of an application deployed by the server, and the application automation deployment system based on the snapshot of the application can complete automatic deployment of the application on the backup server, so that the snapshot of the deployed application is stored in the central configuration database each time the application is deployed by the application automation deployment system on the server, and a functional module of the application deployed by the application automation deployment system on the server will be described below.
Referring to fig. 5, a schematic diagram of functional modules of an application automation deployment system according to a fourth embodiment of the present invention is shown, where based on the third embodiment shown in fig. 4, the application automation deployment system further includes:
an application obtaining module 501, configured to obtain target server information of a first application to be deployed, configuration information of the first application, and material information of the first application if a deployment instruction of the first application is detected;
a saving module 502, configured to save the target server information, the configuration information of the first application, and the material information of the first application to the central configuration database to form a snapshot of the first application.
In an embodiment of the present invention, the application automation deployment system further includes:
a material module 503, configured to obtain a material of the first application from the material server according to the material information of the first application; or obtaining the materials of the first application generated by the continuous integration platform based on the configuration information of the first application from the continuous integration platform.
An application deployment module 504 for deploying the first application on the target server using the material of the first application.
In the embodiment of the present invention, an operation and maintenance person may initiate deployment of an application on an application automation deployment system, taking deploying a first application as an example, after the operation and maintenance person initiates deployment of the first application on the application automation deployment system, the application automation deployment system generates a deployment instruction of the first application, and after detecting the deployment instruction of the first application, an application obtaining module 501 obtains target server information of the first application to be deployed, configuration information of the first application, and material information of the first application.
The target server information refers to information of a server that needs to deploy the first application, and includes, but is not limited to, an identity of the server, hardware configuration information of the server, operating system information, and the like.
The configuration information of the first application includes, but is not limited to, a system name of the first application, environment dependency information, and the like.
The material information of the first application includes, but is not limited to, a name of an application package, a name of an application data package, and the like.
In the embodiment of the present invention, the material of the first application may be issued to the material server by an operation and maintenance person, so that when the first application is deployed, the material module 503 may be docked with the material server, and obtain the material of the first application from the material server according to the material information of the first application, or the operation and maintenance person may configure the configuration information of the first application on the persistent integration platform, and the persistent integration platform generates the material based on the configuration information of the first application, and then the material module 503 obtains the generated material from the persistent integration platform. Further, to facilitate the recovery of the first application, the material module 503 also stores the material of the first application acquired from the persistent integration platform into the material server.
After obtaining the material of the first application, the application deployment module 504 deploys the first application on the target server using the material of the first application, for example, if the target server is server a and server B, the first application is deployed on server a using the material of the first application, and the first application is deployed on server B.
When the first application is deployed, the first application can be deployed by using the release script of the first application, specifically, the application automation deployment system calls the release script and executes the release action on the target server, so that the first application can be deployed on the target server based on the material of the first application.
In this embodiment of the present invention, after the target server completes the deployment of the first application, the saving module 502 saves the target server information, the configuration information of the first application, and the material information of the first application to the central configuration database, so as to form a snapshot of the first application.
In the embodiment of the invention, each time the application is deployed on the target server by the application automation deployment system, the target server information, the deployed application configuration information and the application material information need to be stored in the central configuration database to form the application snapshot, so that when the server fails, the application recovery can be realized based on the application snapshot in the central configuration database, and a basis is provided for the automatic recovery of the application.
Through the above description of the embodiments, those skilled in the art will clearly understand that the method of the above embodiments can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware, but in many cases, the former is a better implementation manner. Based on such understanding, the technical solutions of the present invention may be embodied in the form of a software product, which is stored in a storage medium (such as ROM/RAM, magnetic disk, optical disk) and includes instructions for enabling a terminal device (such as a mobile phone, a computer, a server, an air conditioner, or a network device) to execute the method according to the embodiments of the present invention.
The above description is only a preferred embodiment of the present invention, and not intended to limit the scope of the present invention, and all modifications of equivalent structures and equivalent processes, which are made by using the contents of the present specification and the accompanying drawings, or directly or indirectly applied to other related technical fields, are included in the scope of the present invention.

Claims (8)

1. A server failover method, comprising:
if a fault server needing switching exists, acquiring configuration information of the fault server from a central configuration database, wherein the configuration information comprises hardware and system configuration information of the fault server and a snapshot of an application deployed by the fault server, the snapshot of the application comprises the configuration information of the application and material information of the application, the configuration information of the application at least comprises a system name and environment dependence information of the application, and the material information of the application at least comprises a name of an application program package and a name of an application data package;
determining a backup server according to the hardware of the fault server and system configuration information, and acquiring the applied material from a material server according to the snapshot of the application;
completing the deployment of the application on the backup server according to the materials;
wherein the step of determining a backup server according to the hardware and system configuration information of the failed server comprises:
searching a server matched with the hardware and system configuration information of the fault server in a standby resource pool;
if the matched server is found, one server is arbitrarily selected from the matched servers as the backup server;
if the server is not found, the server matched with the hardware configuration information of the fault server is found, and an operating system is installed on any matched server according to the system configuration information to obtain the backup server.
2. The method of claim 1, further comprising:
if a deployment instruction of a first application is detected, acquiring target server information of the first application to be deployed, configuration information of the first application and material information of the first application;
and storing the target server information, the configuration information of the first application and the material information of the first application into the central configuration database to form a snapshot of the first application.
3. The method of claim 2, further comprising:
acquiring the material of the first application from the material server according to the material information of the first application;
or,
obtaining, from a persistent integration platform, material of the first application generated by the persistent integration platform based on configuration information of the first application.
4. The method of claim 3, further comprising:
deploying the first application on the target server using the first application's feed.
5. An application automation deployment system, the system comprising:
an information obtaining module, configured to obtain configuration information of a failed server from a central configuration database if the failed server needs to be switched, where the configuration information includes hardware and system configuration information of the failed server and a snapshot of an application deployed by the failed server, where the snapshot of the application includes configuration information of the application and material information of the application, the configuration information of the application includes at least a system name and environment dependency information of the application, and the material information of the application includes at least a name of an application package and a name of an application data package;
the server determining module is used for determining a backup server according to the hardware and system configuration information of the fault server;
the material acquisition module is used for acquiring the applied material from a material server according to the snapshot of the application;
the deployment module is used for completing deployment of the application on the backup server according to the materials;
wherein the server determination module comprises:
the searching module is used for searching a server matched with the hardware and system configuration information of the fault server in a standby machine resource pool;
the selection module is used for selecting one server from the matched servers as the backup server if the matched server is found;
and the searching and installing module is used for searching a server matched with the hardware configuration information of the fault server if the server is not searched, and installing an operating system on any matched server according to the system configuration information to obtain the backup server.
6. The system of claim 5, further comprising:
the system comprises an application acquisition module, a first application deployment module and a second application deployment module, wherein the application acquisition module is used for acquiring target server information of a first application to be deployed, configuration information of the first application and material information of the first application if a deployment instruction of the first application is detected;
and the storage module is used for storing the target server information, the configuration information of the first application and the material information of the first application into the central configuration database to form a snapshot of the first application.
7. The system of claim 6, further comprising:
the material module is used for acquiring the material of the first application from the material server according to the material information of the first application; or obtaining the materials of the first application generated by the continuous integration platform based on the configuration information of the first application from the continuous integration platform.
8. The system of claim 7, further comprising:
and the application deployment module is used for deploying the first application on the target server by utilizing the material of the first application.
CN201610537356.8A 2016-07-08 2016-07-08 Server fault switching method and application automation deployment system Active CN106209450B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610537356.8A CN106209450B (en) 2016-07-08 2016-07-08 Server fault switching method and application automation deployment system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610537356.8A CN106209450B (en) 2016-07-08 2016-07-08 Server fault switching method and application automation deployment system

Publications (2)

Publication Number Publication Date
CN106209450A CN106209450A (en) 2016-12-07
CN106209450B true CN106209450B (en) 2019-07-02

Family

ID=57472861

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610537356.8A Active CN106209450B (en) 2016-07-08 2016-07-08 Server fault switching method and application automation deployment system

Country Status (1)

Country Link
CN (1) CN106209450B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109445988B (en) * 2018-10-19 2024-05-24 京信网络***股份有限公司 Heterogeneous disaster recovery method, device, system, server and disaster recovery platform
CN111405216B (en) * 2019-10-25 2022-06-28 杭州海康威视***技术有限公司 Configuration method, device and equipment and storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102736946A (en) * 2011-04-11 2012-10-17 阿里巴巴集团控股有限公司 Batch application node deploying method and device
CN103873534A (en) * 2012-12-18 2014-06-18 ***通信集团公司 Method and device for application cluster migration

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6360331B2 (en) * 1998-04-17 2002-03-19 Microsoft Corporation Method and system for transparently failing over application configuration information in a server cluster

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102736946A (en) * 2011-04-11 2012-10-17 阿里巴巴集团控股有限公司 Batch application node deploying method and device
CN103873534A (en) * 2012-12-18 2014-06-18 ***通信集团公司 Method and device for application cluster migration

Also Published As

Publication number Publication date
CN106209450A (en) 2016-12-07

Similar Documents

Publication Publication Date Title
US10831622B2 (en) Method and apparatus for processing gateway device fault
CN109669762B (en) Cloud computing resource management method, device, equipment and computer readable storage medium
CN103200036B (en) A kind of automation collocation method of electric power system cloud computing platform
CN104239548B (en) Database disaster tolerance system and data storage capacity disaster method
WO2018095414A1 (en) Method and apparatus for detecting and recovering fault of virtual machine
WO2016045439A1 (en) Vnfm disaster-tolerant protection method and device, nfvo and storage medium
CN109697078B (en) Repairing method of non-high-availability component, big data cluster and container service platform
CN105204955A (en) Method and device for correcting faults of virtual machines
CN105591778A (en) Method and system for updating configuration file in distributed system
WO2018001046A1 (en) Method, device and system for recovering intelligent network service
CN106209450B (en) Server fault switching method and application automation deployment system
CN105354102B (en) A kind of method and apparatus of file system maintenance and reparation
CN107391303B (en) Data processing method, device, system, server and computer storage medium
CN112214357A (en) HDFS data backup and recovery system and backup and recovery method
CN106789142B (en) The method and apparatus of resource distribution
CN113986450A (en) Virtual machine backup method and device
CN103902401A (en) Virtual machine fault tolerance method and device based on monitoring
CN111352689A (en) Method and device for realizing seamless migration of application containerized deployment
CN110620798A (en) Control method, system, equipment and storage medium for FTP connection
CN110096226B (en) Disk array deployment method and device
CN105025179A (en) Method and system for monitoring service agents of call center
CN111078454A (en) Cloud platform configuration recovery method and device
CN112596750B (en) Application testing method and device, electronic equipment and computer readable storage medium
CN111090458B (en) Gray release system and application release method based on gray release system
CN110618884A (en) Fault monitoring method, virtualized network function module manager and storage medium

Legal Events

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