Block-level disaster recovery automatic rehearsal system, method, electronic device and medium
Patent Information
- Application Number
- CN202210103614.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-01-25
- Publication Date
- 2026-10-13
- Estimated Expiration
- 2042-01-25
AI Technical Summary
[0004]本发明的目的在于提供一种块级灾备的自动演练系统、方法、电子设备及介质,该块级灾备的自动演练方法能够解决现有技术中地级灾备在复制模式下无法自动演练的问题
[0043]本发明中的块级灾备的自动演练方法,实时监测应用端口的情况;当所述应用端口关闭时,执行自愈脚本;当所述应用端口开放时,判断应用服务器是否存在持续异常情况;当自愈失败或所述应用服务器存在持续异常情况时,生成快照创建指令,派生快照创建指令,通过派生的快照创建指令自动在灾备资源池上创建虚拟机,并自动根据原生产环境和预置的资源限制对所述虚拟机进行资源设定。解决了现有技术中地级灾备在复制模式下无法自动演练的问题。
Smart Images

Figure CN114490187B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of Internet technology, and in particular to an automated drill system, method, electronic device, and medium for block-level disaster recovery. Background Technology
[0002] Disaster recovery at the ground level involves copying all applications, operating systems, and related components from a disk to a block replication server at the disk block level. The server then preserves these components as virtualized disk files and uses the snapshot function of the virtualized disk to retain rollback points.
[0003] Currently, in the industry's CDM replication model based on the prefecture level, emergency takeover and simulation sandbox exercises are both in manual mode and the operation is relatively complex, while the actual production has an increasingly strong demand for automation and intelligent switching. Summary of the Invention
[0004] The purpose of this invention is to provide an automatic drill system, method, electronic device and medium for block-level disaster recovery. This automatic drill method for block-level disaster recovery can solve the problem that existing technologies cannot automatically drill for ground-level disaster recovery in replication mode.
[0005] To achieve the above objectives, the present invention provides the following technical solution:
[0006] This invention provides an automated drill method for block-level disaster recovery, the method specifically including:
[0007] Send the application server's backup folder to the disaster recovery computing resource pool;
[0008] The disaster recovery computing resource pool creates virtual machines based on the backup folder;
[0009] The hardware resources of the virtual machine are configured based on the original production environment;
[0010] The working status of the application server's IP address and application port is detected and the detection results are obtained;
[0011] Based on the detection results, determine whether the IP address and application port are open; if so, output a control command.
[0012] The sandbox application module performs automatic drills based on the control commands.
[0013] Based on the above technical solution, the present invention can be further improved as follows:
[0014] Furthermore, sending the application server's backup folder to the disaster recovery computing resource pool includes:
[0015] The control center outputs shared commands;
[0016] After receiving the sharing instruction, the disaster recovery module enables sharing permissions;
[0017] The backup folder of the application server is shared to the disaster recovery computing resource pool through the disaster recovery module.
[0018] Furthermore, the disaster recovery computing resource pool creates virtual machines based on the backup folder, including:
[0019] The control center outputs a creation command;
[0020] The disaster recovery computing resource pool creates a test virtual machine based on the creation command.
[0021] Furthermore, the hardware resources of the virtual machine configured based on the original production environment include:
[0022] The hardware resources of the virtual machine are configured based on the original production environment and the pre-set resource limitations.
[0023] The connection between the sandbox application module and the application testing center is set to be via a VLAN training network segment.
[0024] Furthermore, the step of detecting the working status of the application server's IP address and application port and obtaining the detection results includes:
[0025] The control center outputs a detection command, which includes detection time information;
[0026] The application detection center detects the working status of the application server's IP address and application port based on the detection command;
[0027] The detection results are sent to the control center.
[0028] Furthermore, the step of determining whether the IP address and application port are open based on the detection result, and if so, outputting control commands, including:
[0029] When the IP address and the application port are closed, the control center records the log and outputs a shutdown command;
[0030] The disaster recovery module closes the sharing mode after receiving the shutdown command.
[0031] The virtual machine shuts down after receiving the shutdown command;
[0032] The control center records ROT and RPO information.
[0033] An automated drill system for block-level disaster recovery includes:
[0034] The control center is used to send the application server's backup folder to the disaster recovery computing resource pool.
[0035] The disaster recovery computing resource pool is used to create virtual machines based on the backup folder and set the hardware resources of the virtual machines based on the original production environment.
[0036] The application detection center is used to detect the working status of the application server's IP address and application port and obtain the detection results;
[0037] The control center is also used to determine whether the IP address and application port are open based on the detection results; if so, it outputs control commands.
[0038] The sandbox application module is used to implement automatic drills based on the control commands.
[0039] Furthermore, the system also includes a disaster recovery module, which is used to receive a sharing instruction from the control center, enable sharing permissions, and share the backup folder of the application server to the disaster recovery computing resource pool.
[0040] An electronic device includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to perform the steps of the method described herein.
[0041] A non-transitory computer-readable medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the method.
[0042] The present invention has the following advantages:
[0043] The automatic drill method for block-level disaster recovery in this invention monitors the status of application ports in real time. When the application port is closed, a self-healing script is executed. When the application port is open, it determines whether the application server has persistent abnormalities. When self-healing fails or the application server has persistent abnormalities, a snapshot creation instruction is generated, and a derived snapshot creation instruction is used to automatically create virtual machines on the disaster recovery resource pool. The derived snapshot creation instruction automatically sets the resources of the virtual machines according to the original production environment and preset resource limitations. This solves the problem in existing technologies where ground-level disaster recovery cannot be automatically drilled in replication mode. Attached Figure Description
[0044] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0045] Figure 1 This is a flowchart of the automatic drill method for block-level disaster recovery according to the present invention;
[0046] Figure 2 This is a block diagram of the automatic drill system for block-level disaster recovery according to the present invention;
[0047] Figure 3 This is a schematic diagram of the physical structure of the electronic device provided by the present invention.
[0048] Explanation of reference numerals in the attached figures
[0049] Application server 10, disaster recovery module 20, control center 30, disaster recovery computing resource pool 40, application detection center 50, sandbox application module 60, electronic device 70, processor 701, memory 702, bus 703. Detailed Implementation
[0050] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0051] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate for the embodiments of this application described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0052] In this application, the terms "upper," "lower," "left," "right," "front," "rear," "top," "bottom," "inner," "outer," "middle," "vertical," "horizontal," "lateral," and "longitudinal" indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. These terms are primarily for the purpose of better describing this application and its embodiments, and are not intended to limit the indicated device, element, or component to having a specific orientation, or to be constructed and operated in a specific orientation.
[0053] Furthermore, in addition to indicating location or positional relationship, some of the aforementioned terms may also have other meanings. For example, the term "above" may also be used in some cases to indicate a certain dependency or connection relationship. Those skilled in the art can understand the specific meaning of these terms in this application based on the specific circumstances.
[0054] In addition, the term "multiple" should mean two or more.
[0055] It should be noted that, unless otherwise specified, the embodiments and features described in this application can be combined with each other. This application will now be described in detail with reference to the accompanying drawings and embodiments.
[0056] Figure 1 This is a flowchart of an embodiment of the automatic drill method for block-level disaster recovery of the present invention, as shown below. Figure 1 As shown, an automated drill method for block-level disaster recovery provided by an embodiment of the present invention includes the following steps:
[0057] S101, send the application server's backup folder to the disaster recovery computing resource pool;
[0058] Specifically, the control center 30 outputs a sharing command; after receiving the sharing command, the disaster recovery module 20 enables sharing permissions; and the backup folder of the application server 10 is shared to the disaster recovery computing resource pool 40 through the disaster recovery module 20.
[0059] S102, the disaster recovery computing resource pool creates virtual machines based on the backup folder;
[0060] Specifically, the control center 30 outputs a creation command; the disaster recovery computing resource pool 40 creates a test virtual machine based on the creation command and the backup folder. A virtual machine (VM) is a complete computer system simulated by software, possessing full hardware system functionality and running in a completely isolated environment. Any task that can be performed on a physical computer can also be performed in a virtual machine. When creating a virtual machine on a computer, a portion of the physical machine's hard drive and memory capacity needs to be used as the virtual machine's hard drive and memory capacity. Each virtual machine has its own independent CMOS, hard drive, and operating system, and can be operated just like a physical machine.
[0061] Virtual machine technology is a type of virtualization technology. Virtualization technology transforms things from one form to another. The most common virtualization techniques include memory virtualization in operating systems. In actual operation, the memory space required by users may far exceed the physical machine's memory size. Using memory virtualization technology, users can virtualize a portion of their hard drive as memory, and this is transparent to the user. Another example is Virtual Private Network (VPN) technology, which can be used to virtualize a secure and stable "tunnel" within a public network, making users feel as if they are using a private network.
[0062] S103, sets up the hardware resources of the virtual machine based on the original production environment;
[0063] Specifically, the hardware resources of the virtual machine are configured based on the original production environment and pre-set resource limitations;
[0064] The connection between the sandbox application module 60 and the application testing center 50 is set to be connected via a VLAN training network segment.
[0065] A network segment generally refers to the part of a computer network that can communicate directly using the same physical layer devices (transmission media, repeaters, hubs, etc.).
[0066] The Chinese name for VLAN (Virtual Local Area Network) is "virtual local area network".
[0067] A Virtual Local Area Network (VLAN) is a logical group of devices and users that are not limited by physical location. They can be organized based on factors such as function, department, and application, and their communication is as if they were on the same network segment, hence the name Virtual Local Area Network.
[0068] Communication between VLANs does not necessarily require a routing gateway. VLANs can form VLANs with different access control attributes by mutually allowing VLAN tags. This can also be achieved through a Layer 3 router. However, through the allowing of VLAN IDs and VLAN tags, VLANs can provide logical topology and access control for almost any information integration system architecture within a local area network (LAN), and achieve seamless sharing with other information systems sharing physical network links. VLANs can provide a virtual network topology architecture that conforms to the service structure and implements access control functions for information services and sub-services, as well as between information services. Compared with traditional LAN technologies, VLAN technology is more flexible and has the following advantages: reduced management overhead for moving, adding, and modifying network devices; control of broadcast activities; and improved network security.
[0069] S104, detect the working status of the application server's IP address and application port and obtain the detection results;
[0070] Specifically, the control center 30 outputs a detection command, which includes detection time information; the application detection center 50 detects the working status of the IP address and application port of the application server 10 based on the detection command; and sends the detection result to the control center 30.
[0071] S105 determines whether the IP address and application port are open based on the detection results. If so, it outputs control commands.
[0072] Specifically, when the IP address and the application port are closed, the control center 30 records the log and outputs a shutdown command; the disaster recovery module 20 receives the shutdown command and then shuts down the sharing mode; the virtual machine receives the shutdown command and then shuts down; the control center 30 records the ROT and RPO status.
[0073] S106, the sandbox application module implements automatic drills based on control commands.
[0074] Specifically, a sandbox, a computer science term, is a security mechanism in the field of computer security that provides an isolated environment for running programs. It is typically used to experiment with programs from untrusted sources, those that are destructive, or whose intent is unclear. A sandbox runs software in a restricted system environment, controlling the resources available to the program (such as file descriptors, memory, disk space, etc.).
[0075] The specific implementation of the sandbox:
[0076] Software jails: Restricted network access and limited file system namespaces. Software jails are most commonly used on virtual hosts.
[0077] Rule-based enforcement: Through system security mechanisms, it assigns certain access permissions to users and programs according to a series of preset rules, completely controlling program startup, code injection, and network access. It can also control program access to files and the registry. In such an environment, the chances of viruses and Trojans infecting the system are reduced. Security-enhanced Linux and AppArmor in Linux utilize this strategy.
[0078] Virtual machine: Simulates a complete host system, allowing a virtual operating system (guest system) to run as if it were running on real hardware. The guest system can only access the host's resources through the emulator, thus it can be considered a sandbox.
[0079] Local host sandboxing: Security researchers rely heavily on sandboxing techniques to analyze malware behavior. By creating an environment that simulates a real desktop, researchers can observe how malware infects a host. Several malware analysis services utilize sandboxing techniques.
[0080] Online judging system: used for program testing in programming competitions.
[0081] Secure Compute Mode (seccomp): A sandbox built into the Linux kernel. When enabled, seccomp only allows the write, read, exit, and sigreturn system calls.
[0082] Figure 2 This is a flowchart of an embodiment of the block-level disaster recovery automated drill system of the present invention; as follows: Figure 2 As shown in the figure, an automated drill system for block-level disaster recovery provided by an embodiment of the present invention includes the following steps:
[0083] Control center 30 is used to send the backup folder of application server 10 to disaster recovery computing resource pool 40;
[0084] The disaster recovery computing resource pool 40 is used to create virtual machines based on the backup folder and set the hardware resources of the virtual machines based on the original production environment;
[0085] Application detection center 50 is used to detect the working status of the IP address and application port of the application server 10 and obtain the detection results;
[0086] The control center 30 is also used to determine whether the IP address and application port are open based on the detection results; if so, it outputs control commands.
[0087] The sandbox application module 60 is used to implement automatic drills based on the control commands.
[0088] The system also includes a disaster recovery module 20, which is used to receive a sharing instruction from the control center 30, enable sharing permissions, and share the backup files of the application server 10 to the disaster recovery computing resource pool 40.
[0089] The system consists of a control center 30, a disaster recovery module 20, a disaster recovery client (application server 10), a disaster recovery computing resource pool 40, and an application testing center 50. Sandbox exercises are implemented through automated recovery functionality combined with VLAN (Virtual Local Area Network) isolation technology and the application testing center 50.
[0090] 1. The scripts that need to be tested in the application testing center with 50 preset values include IP address and application port.
[0091] 2. Preset the exercise task in the planned tasks: including the application server 10 to be exercised, the disaster recovery computing resource pool 40 to be mounted, and the exercise VLAN segment, etc.
[0092] 3. The automatic drill process is as follows: Control center 30 controls disaster recovery module 20 to enable sharing permissions, shares the backup folder of application server 10 to disaster recovery computing resource pool 40, schedules disaster recovery computing resource pool 40 to create test virtual machines, specifies the same MAC address and other hardware environment as the production environment, selects the VLAN drill network segment, and automatically powers on the virtual machine; Control center 30 instructs application detection center 50 to perform IP address and application port open detection, sets the duration (greater than the manual test time of 20 seconds), application detection center 50 feeds back the detection results to control center 30, returns success if successful, returns failure if unsuccessful and records the log, automatically shuts down the virtual machine after completion, unloads the sharing, and records the RTO and RPO.
[0093] 4. The application testing center 50 and the control center 30 are interconnected via private networks, and are also interconnected with the VLAN training network segment of the sandbox application module 60, and the application server on this network port is automatically assigned 10 IP+1 or +2.
[0094] Figure 3 This is a schematic diagram of the physical structure of an electronic device provided in an embodiment of the present invention, such as... Figure 3 As shown, the electronic device 70 includes: a processor 701, a memory 702, and a bus 703;
[0095] The processor 701 and the memory 702 communicate with each other via the bus 703.
[0096] The processor 701 is used to call program instructions in the memory 702 to execute the methods provided in the above-described method embodiments, such as: sending the backup folder of the application server 10 to the disaster recovery computing resource pool 40; the disaster recovery computing resource pool 40 creating a virtual machine based on the backup folder; setting the hardware resources of the virtual machine based on the original production environment; detecting the working status of the IP address and application port of the application server 10 and obtaining the detection result; determining whether the IP address and application port are open based on the detection result, and if so, outputting control instructions; and the sandbox application module 60 implementing automatic drills based on the control instructions.
[0097] This embodiment provides a non-transitory computer-readable medium that stores computer instructions. These instructions cause a computer to execute the methods provided in the above-described method embodiments, including, for example: sending the backup folder of application server 10 to disaster recovery computing resource pool 40; the disaster recovery computing resource pool 40 creating a virtual machine based on the backup folder; configuring the hardware resources of the virtual machine based on the original production environment; detecting the working status of the IP address and application port of application server 10 and obtaining the detection results; determining whether the IP address and application port are open based on the detection results, and if so, outputting control instructions; and the sandbox application module 60 performing automatic drills based on the control instructions.
[0098] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned medium includes various media that can store program code, such as ROM, RAM, magnetic disk, or optical disk.
[0099] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.
[0100] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable medium, such as ROM / RAM, magnetic disk, optical disk, etc., including several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods of various embodiments or some parts of embodiments.
[0101] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.
[0102] The above description is merely a preferred embodiment of this application and is not intended to limit this application. Various modifications and variations can be made to this application by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.
Claims
1. An automated drill method for block-level disaster recovery, characterized in that, The method specifically includes: The control center sends the application server's backup folder to the disaster recovery computing resource pool; The disaster recovery computing resource pool creates virtual machines based on the backup folder; The hardware resources of the virtual machine are configured based on the original production environment; The application detection center detects the working status of the application server's IP address and application port and obtains the detection results; Based on the detection results, determine whether the IP address and application port are open; if so, output a control command. The step involves determining whether the IP address and application port are open based on the detection results. If so, a control command is output, including: When the IP address and the application port are closed, the control center records the log and outputs a shutdown command; After receiving the shutdown command, the disaster recovery module shuts down the sharing mode; The virtual machine shuts down after receiving the shutdown command; The control center records the RTO and RPO status; The sandbox application module implements automatic drills based on the control commands; The connection between the sandbox application module and the application testing center is set to be via a VLAN training network segment.
2. The automatic drill method for block-level disaster recovery according to claim 1, characterized in that, Sending the application server's backup folder to the disaster recovery computing resource pool includes: The control center outputs shared commands; After receiving the sharing instruction, the disaster recovery module enables sharing permissions; The backup folder of the application server is shared to the disaster recovery computing resource pool through the disaster recovery module.
3. The automatic drill method for block-level disaster recovery according to claim 1, characterized in that, The disaster recovery computing resource pool creates virtual machines based on the backup folder, including: The control center outputs a creation command; The disaster recovery computing resource pool creates test virtual machines based on the creation instructions.
4. The automatic drill method for block-level disaster recovery according to claim 1, characterized in that, The hardware resources of the virtual machine configured based on the original production environment include: The hardware resources of the virtual machine are configured based on the original production environment and pre-set resource limitations.
5. The automatic drill method for block-level disaster recovery according to claim 1, characterized in that, The process of detecting the IP address and application port status of the application server and obtaining the detection results includes: The control center outputs a detection command, which includes detection time information; The application detection center detects the working status of the application server's IP address and application port based on the detection command; The detection results are sent to the control center.
6. An automated drill system for block-level disaster recovery, characterized in that, include: The control center is used to send the application server's backup folder to the disaster recovery computing resource pool. The disaster recovery computing resource pool is used to create virtual machines based on the backup folder and set the hardware resources of the virtual machines based on the original production environment. The application detection center is used to detect the working status of the application server's IP address and application port and obtain the detection results; The control center is also used to determine whether the IP address and application port are open based on the detection results; if so, it outputs control commands. When the IP address and the application port are closed, the control center records the log and outputs a shutdown command; After receiving the shutdown command, the disaster recovery module shuts down the sharing mode; The virtual machine shuts down after receiving the shutdown command; The control center records the RTO and RPO status; The sandbox application module is used to implement automatic drills based on the control commands; The connection between the sandbox application module and the application testing center is set to be via a VLAN training network segment.
7. The automated drill system for block-level disaster recovery according to claim 6, characterized in that, The system also includes a disaster recovery module, which is used to receive a sharing instruction from the control center, enable sharing permissions, and share the backup folder of the application server to the disaster recovery computing resource pool.
8. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method as described in any one of claims 1 to 5.
9. A non-transitory computer-readable medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method as described in any one of claims 1 to 5.
Citation Information
Patent Citations
Enterprise information technology (IT) business virtualization disaster recovery method based on zettabyte file system (ZFS) and kernel-based virtual machine (KVM) kernel virtual underlying system
CN103164295A
Drilling method and system based on virtual machine backup data
CN110727501A