CN106209450B - Server fault switching method and application automation deployment system - Google Patents
Server fault switching method and application automation deployment system Download PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 239000000463 material Substances 0.000 claims abstract description 146
- 230000010354 integration Effects 0.000 claims description 20
- 230000002085 persistent effect Effects 0.000 claims description 12
- 238000011084 recovery Methods 0.000 abstract description 34
- 238000012423 maintenance Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 8
- 238000009434 installation Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000010367 cloning Methods 0.000 description 1
- 238000011900 installation process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
- H04L41/5054—Automatic 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
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.
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)
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)
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)
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 |
-
2016
- 2016-07-08 CN CN201610537356.8A patent/CN106209450B/en active Active
Patent Citations (2)
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 |