[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR102695840B1 - Server redundancy system and its operation method - Google Patents

Server redundancy system and its operation method Download PDF

Info

Publication number
KR102695840B1
KR102695840B1 KR1020230117970A KR20230117970A KR102695840B1 KR 102695840 B1 KR102695840 B1 KR 102695840B1 KR 1020230117970 A KR1020230117970 A KR 1020230117970A KR 20230117970 A KR20230117970 A KR 20230117970A KR 102695840 B1 KR102695840 B1 KR 102695840B1
Authority
KR
South Korea
Prior art keywords
unit
server
physical server
virtualization
backup
Prior art date
Application number
KR1020230117970A
Other languages
Korean (ko)
Inventor
심원화
Original Assignee
주식회사 가주정보기술
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 주식회사 가주정보기술 filed Critical 주식회사 가주정보기술
Priority to KR1020230117970A priority Critical patent/KR102695840B1/en
Application granted granted Critical
Publication of KR102695840B1 publication Critical patent/KR102695840B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1461Backup scheduling policy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1471Saving, restoring, recovering or retrying involving logging of persistent data for recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Hardware Redundancy (AREA)

Abstract

복수의 물리 서버를 이용한 실시간 백업 및 스냅샷을 이용하여 데이터의 무결성을 보장하는 서버 이중화 시스템 및 그 동작 방법이 개시된다. 일 실시예에 따른 서버 이중화 시스템은 제 1 물리 서버; 제 2 물리 서버; 및 제 1 물리 서버와 제 2 물리 서버 간 데이터 통신을 위한 핫비트 통신채널을 포함하며, 제 1 물리 서버는 제 1 물리 서버를 가상화하여 하나 이상의 가상 머신에 제공하는 제 1 서버 가상화부, 하나 이상의 메모리를 포함하며 데이터를 저장하는 제 1 서비스용 저장부, 제 1 서비스용 저장부를 가상화하는 제 1 저장장치 가상화부, 및 제 1 서버 가상화부에 의해 제공되는 하나 이상의 가상 머신의 가상 디스크에서 생성된 데이터를 제 1 저장장치 가상화부를 통해 제 1 서비스용 저장부에 저장하는 제 1 실시간 복제부를 포함하며, 제 2 물리 서버는 제 2 물리 서버를 가상화하는 제 2 서버 가상화부, 하나 이상의 메모리를 포함하며 데이터를 저장하는 제 2 서비스용 저장부, 제 2 서비스용 저장부를 가상화하는 제 2 저장장치 가상화부, 및 제 1 실시간 복제부와 핫비트 통신채널을 통해 연결되며, 제 1 실시간 복제부로부터 제 1 서버 가상화부에 의해 제공되는 하나 이상의 가상 머신의 가상 디스크에서 생성된 데이터를 수신하여 제 2 저장장치 가상화부를 통해 제 2 서비스용 저장부에 저장하는 제 2 실시간 복제부를 포함할 수 있다.A server duplication system and its operating method are disclosed, which ensure data integrity by utilizing real-time backup and snapshot using multiple physical servers. According to one embodiment, the server duplication system comprises: a first physical server; a second physical server; And a hot-bit communication channel for data communication between the first physical server and the second physical server, wherein the first physical server includes a first server virtualization unit virtualizing the first physical server and providing it to one or more virtual machines, a first service storage unit including one or more memories and storing data, a first storage virtualization unit virtualizing the first service storage unit, and a first real-time replication unit storing data generated from a virtual disk of one or more virtual machines provided by the first server virtualization unit in the first service storage unit through the first storage virtualization unit, and the second physical server is connected to the second server virtualization unit virtualizing the second physical server, the second service storage unit including one or more memories and storing data, the second storage virtualization unit virtualizing the second service storage unit, and the first real-time replication unit through the hot-bit communication channel, and receives data generated from a virtual disk of one or more virtual machines provided by the first server virtualization unit from the first real-time replication unit and transmits it to the second storage virtualization unit. It may include a second real-time replica that stores the second service storage.

Description

서버 이중화 시스템 및 그 동작 방법{Server redundancy system and its operation method} {Server redundancy system and its operation method}

서버 이중화 시스템에 대한 기술로서 특히, 복수의 물리 서버를 이용한 실시간 백업 및 스냅샷을 이용하여 데이터의 무결성을 보장하는 서버 이중화 시스템 및 그 동작 방법에 관한 것이다.As a technology for a server duplication system, the present invention relates to a server duplication system and its operating method that ensures data integrity by using real-time backup and snapshot using multiple physical servers.

서버 이중화 시스템의 한 종류로서 실시간 복제방식이 있다. 이는 데이터가 저장된 액티브 서버의 볼륨을 실시간(동시에) 복제 방식으로 스탠바이 상태의 서버에 전달하여 액티브 서버에 장애 발생시 복제된 스탠바이 서버의 볼륨을 이용하여 서비스를 재개하여 가용성을 높이는 방식이다.One type of server duplication system is real-time replication. This is a method of increasing availability by transferring the volume of the active server where data is stored to a standby server in real-time (simultaneously) replication, and resuming service by using the replicated volume of the standby server when a failure occurs in the active server.

다른 방식으로 공유 스토리지를 사용하여 서버 이중화를 구현하는 방식이 있다. 공유 스토리지는 모든 구성 요소들이 이중화 되어 있어 어떠한 구성요소에 장애가 발생하여도 스토리지로서의 기능을 온전히 수행하도록 설계되어 있다.Another way to implement server redundancy is to use shared storage. Shared storage is designed so that all components are redundant and can fully perform its function as storage even if a failure occurs in any component.

대한민국 등록특허 10-1713034는 실시간 복제방식을 이용함에 있어 복제된 볼륨의 인덱스를 치환하는 기술을 사용하여 볼륨을 비가시화 하는 방식을 개시하고 있다.Korean Patent No. 10-1713034 discloses a method of making a volume invisible by using a technology of replacing the index of a replicated volume when utilizing a real-time replication method.

복수의 물리 서버를 이용한 실시간 백업 및 스냅샷을 이용하여 데이터의 무결성을 보장하는 서버 이중화 시스템 및 그 동작 방법에 관한 것이다.The present invention relates to a server duplication system and its operating method that ensures data integrity by utilizing real-time backup and snapshot using multiple physical servers.

일 양상에 따르면, 서버 이중화 시스템은 제 1 물리 서버; 제 2 물리 서버; 및 제 1 물리 서버와 제 2 물리 서버 간 데이터 통신을 위한 핫비트 통신채널을 포함하며, 제 1 물리 서버는 제 1 물리 서버를 가상화하여 하나 이상의 가상 머신에 제공하는 제 1 서버 가상화부, 하나 이상의 메모리를 포함하며 데이터를 저장하는 제 1 서비스용 저장부, 제 1 서비스용 저장부를 가상화하는 제 1 저장장치 가상화부, 및 제 1 서버 가상화부에 의해 제공되는 하나 이상의 가상 머신의 가상 디스크에서 생성된 데이터를 제 1 저장장치 가상화부를 통해 제 1 서비스용 저장부에 저장하는 제 1 실시간 복제부를 포함하며, 제 2 물리 서버는 제 2 물리 서버를 가상화하는 제 2 서버 가상화부, 하나 이상의 메모리를 포함하며 데이터를 저장하는 제 2 서비스용 저장부, 제 2 서비스용 저장부를 가상화하는 제 2 저장장치 가상화부, 및 제 1 실시간 복제부와 핫비트 통신채널을 통해 연결되며, 제 1 실시간 복제부로부터 제 1 서버 가상화부에 의해 제공되는 하나 이상의 가상 머신의 가상 디스크에서 생성된 데이터를 수신하여 제 2 저장장치 가상화부를 통해 제 2 서비스용 저장부에 저장하는 제 2 실시간 복제부를 포함할 수 있다. According to one aspect, the server duplication system comprises a first physical server; a second physical server; And a hot-bit communication channel for data communication between the first physical server and the second physical server, wherein the first physical server includes a first server virtualization unit virtualizing the first physical server and providing it to one or more virtual machines, a first service storage unit including one or more memories and storing data, a first storage virtualization unit virtualizing the first service storage unit, and a first real-time replication unit storing data generated from a virtual disk of one or more virtual machines provided by the first server virtualization unit in the first service storage unit through the first storage virtualization unit, and the second physical server is connected to the second server virtualization unit virtualizing the second physical server, the second service storage unit including one or more memories and storing data, the second storage virtualization unit virtualizing the second service storage unit, and the first real-time replication unit through the hot-bit communication channel, and receives data generated from a virtual disk of one or more virtual machines provided by the first server virtualization unit from the first real-time replication unit and transmits it to the second storage virtualization unit. It may include a second real-time replica that stores the second service storage.

제 1 실시간 복제부는 제 1 서비스용 저장부 및 제 1 저장장치 가상화부 중 적어도 하나에 고장이 발생하는 경우, 제 2 서비스용 저장부에 저장된 데이터를 수신하여 하나 이상의 가상 머신에 제공할 수 있다. The first real-time replication unit can receive data stored in the second service storage unit and provide it to one or more virtual machines when at least one of the first service storage unit and the first storage device virtualization unit fails.

제 1 저장장치 가상화부는 제 1 서비스용 저장부에 저장된 하나 이상의 가상 머신의 가상 디스크에서 생성된 데이터의 스냅샷을 생성할 수 있다.The first storage virtualization unit can create a snapshot of data created from a virtual disk of one or more virtual machines stored in the first service storage unit.

제 1 물리 서버는 하나 이상의 메모리를 포함하며 백업 데이터를 저장하는 백업용 저장부; 및 스냅샷을 기초로 하나 이상의 가상 머신의 가상 디스크에서 생성된 데이터 전체 또는 데이터 변동사항에 대한 백업 데이터를 생성하며, 백업 데이터를 백업용 저장부에 저장하며, 백업 리스트를 생성하는 백업부를 더 포함할 수 있다.The first physical server may further include a backup storage unit that includes one or more memories and stores backup data; and a backup unit that creates backup data for all data or data changes generated from virtual disks of one or more virtual machines based on snapshots, stores the backup data in the backup storage unit, and creates a backup list.

제 1 물리 서버 및 제 2 물리 서버는 각각 사용자 단말과 통신을 수행하기 위한 프로덕션 네트워크를 더 포함하며, 프로덕션 네트워크는 하나 이상의 가상 머신, 제 1 서버 가상화부 및 제 2 서버 가상화부 중 적어도 하나와 연결될 수 있다. The first physical server and the second physical server each further include a production network for performing communication with user terminals, and the production network can be connected to at least one of the first server virtualization unit and the second server virtualization unit.

제 1 물리 서버 및 제 2 물리 서버는 각각의 물리 서버를 모니터링하는 제 1 이중화 제어부 및 제 2 이중화 제어부를 더 포함할 수 있다.The first physical server and the second physical server may further include a first redundant control unit and a second redundant control unit that monitor each of the physical servers.

제 1 물리 서버 및 제 2 물리 서버는 각각의 프로덕션 네트워크의 상태를 모니터링하는 제 1 네트워크 감시부 및 제 2 네트워크 감시부를 더 포함하며, 제 1 네트워크 감시부 및 제 2 네트워크 감시부는 프로덕션 네트워크에 장애가 발생한 경우 각각 제 1 이중화 제어부 및 제 2 이중화 제어부에 네트워크 상태를 전송할 수 있다. The first physical server and the second physical server further include a first network monitoring unit and a second network monitoring unit for monitoring the status of each production network, and the first network monitoring unit and the second network monitoring unit can transmit the network status to the first redundant control unit and the second redundant control unit, respectively, when a failure occurs in the production network.

제 1 이중화 제어부는 제 1 물리 서버의 제 1 실시간 복제부에 장애가 발생한 경우 또는 제 1 네트워크 감시부로부터 프로덕션 네트워크에 장애가 발생한 네트워크 상태를 수신한 경우 제 1 서버 가상화부 및 제 2 이중화 제어부로 제 1 서버 가상화부의 가상화를 제 2 서버 가상화부로 이전하도록 제어하는 이전 요청 신호를 전송하며, 제 2 이중화 제어부는 제 1 이중화 제어부로부터 수신한 이전 요청 신호에 기초하여 제 2 실시간 복제부의 장애 여부 및 제 2 네트워크 감시부로부터 프로덕션 네트워크의 장애 여부를 판단하며, 장애 미발생 시 제 2 서버 가상화부는 제 1 서버 가상화부의 하나 이상의 가상 머신을 이전 받아 제 2 물리 서버를 가상화하여 하나 이상의 가상 머신에 제공할 수 있다. When a failure occurs in the first real-time replication unit of the first physical server or when a network status in which a failure occurs in the production network is received from the first network monitoring unit, the first redundancy control unit transmits a transfer request signal to the first server virtualization unit and the second redundancy control unit to control the transfer of virtualization of the first server virtualization unit to the second server virtualization unit, and the second redundancy control unit determines whether there is a failure in the second real-time replication unit and whether there is a failure in the production network from the second network monitoring unit based on the transfer request signal received from the first redundancy control unit, and when no failure occurs, the second server virtualization unit can receive one or more virtual machines of the first server virtualization unit and virtualize the second physical server to provide it to the one or more virtual machines.

제 2 물리 서버는 제 2 이중화 제어부에 연결되어 제 2 이중화 제어부의 상태 정보를 출력하고, 사용자로부터 제 2 이중화 제어부에 대한 제어 입력 신호를 수신하는 사용자 인터페이스부를 더 포함할 수 있다.The second physical server may further include a user interface unit connected to the second redundant control unit to output status information of the second redundant control unit and receive a control input signal for the second redundant control unit from a user.

백업부는 사용자 인터페이스부를 통하여 백업 리스트를 전송하며, 사용자로부터 선택된 백업 리스트에 대한 백업 데이터를 제 1 서버 가상화부 및 제 2 서버 가상화부 중 적어도 하나에 전송하여 가상 머신을 활성화시킬 수 있다.The backup unit transmits a backup list through the user interface unit, and can activate a virtual machine by transmitting backup data for a backup list selected by a user to at least one of the first server virtualization unit and the second server virtualization unit.

제 2 물리 서버는 제 1 실시간 복제부 및 제 2 실시간 복제부 중 적어도 하나를 감시하여 제 1 서비스용 저장부, 제 1 저장장치 가상화부, 제 2 서비스용 저장부, 제 2 저장장치 가상화부 및 핫비트 통신채널 중 적어도 하나에 고장이 발생하여 제 1 서비스용 저장부 및 제 2 서비스용 저장부를 동기화 할 수 없는 경우 사용자 인터페이스부를 통하여 동기화 고장 상태를 출력하는 동기화 감시부를 더 포함할 수 있다.The second physical server may further include a synchronization monitoring unit that monitors at least one of the first real-time replication unit and the second real-time replication unit and outputs a synchronization failure status through the user interface unit when a failure occurs in at least one of the first-service storage unit, the first storage virtualization unit, the second-service storage unit, the second storage virtualization unit, and the hotbit communication channel, making it impossible to synchronize the first-service storage unit and the second-service storage unit.

본 발명의 일 실시예에 따를 경우 두 대의 물리 서버를 이용하여 실시간 복제를 수행하며, 서버 가상화 레이어를 두어서 액티브 서버에 장애가 발생하면 가상 서버를 스탠바이 서버에 이관하여 곧바로 서비스가 다시 재개될 수 있는 효과가 있다.According to one embodiment of the present invention, real-time replication is performed using two physical servers, and a server virtualization layer is provided so that when a failure occurs in the active server, the virtual server is transferred to a standby server, so that the service can be resumed immediately.

또한, 백업 시스템이 서버 이중화 시스템과 통합되어 있으며, 백업이 한 층 아래 물리 레이어에서 이루어지므로 저장된 백업 데이터에 대한 해커의 접근 가능성을 원천적으로 없애 버리는 효과가 있다.Additionally, the backup system is integrated with the server duplication system, and backups are performed at the physical layer one level below, which has the effect of fundamentally eliminating the possibility of hackers accessing stored backup data.

도 1은 일 실시예에 따른 서버 이중화 시스템의 구성도이다.
도 2는 일 실시예에 따른 서버 이중화 시스템의 동작 환경을 설명하기 위한 예시도이다.
도 3은 일 실시예에 따른 제 1 물리 서버의 구성도이다.
도 4는 일 실시예에 따른 제 2 물리 서버의 구성도이다.
도 5는 일 예에 따른 서버 이중화 시스템의 백업 방법을 도시한 흐름도이다.
도 6은 일 예에 따른 서버 이중화 시스템의 복구 방법을 도시한 흐름도이다.
Figure 1 is a configuration diagram of a server duplication system according to one embodiment.
Figure 2 is an exemplary diagram for explaining the operating environment of a server duplication system according to one embodiment.
FIG. 3 is a configuration diagram of a first physical server according to one embodiment.
FIG. 4 is a configuration diagram of a second physical server according to one embodiment.
Figure 5 is a flow chart illustrating a backup method of a server duplication system according to an example.
Figure 6 is a flowchart illustrating a recovery method of a server duplication system according to an example.

이하, 첨부된 도면을 참조하여 본 발명의 일 실시예를 상세하게 설명한다. 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로, 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.Hereinafter, an embodiment of the present invention will be described in detail with reference to the attached drawings. In describing the present invention, if it is judged that a detailed description of a related known function or configuration may unnecessarily obscure the gist of the present invention, the detailed description thereof will be omitted. In addition, the terms described below are terms defined in consideration of the functions in the present invention, and these may vary depending on the intention or custom of the user or operator. Therefore, the definitions should be made based on the contents throughout this specification.

이하, 서버 이중화 시스템 및 그 동작 방법의 실시예들을 도면들을 참고하여 자세히 설명한다.Below, embodiments of a server duplication system and its operation method are described in detail with reference to drawings.

도 1은 일 실시예에 따른 서버 이중화 시스템의 구성도이다. Figure 1 is a configuration diagram of a server duplication system according to one embodiment.

일 실시예에 따르면, 서버 이중화 시스템(10)은 제 1 물리 서버(100), 제 2 물리 서버(200) 및 제 1 물리 서버(100)와 제 2 물리 서버(200)간 데이터 통신을 위한 핫비트 통신채널(300)을 포함할 수 있다. According to one embodiment, the server duplication system (10) may include a first physical server (100), a second physical server (200), and a hotbit communication channel (300) for data communication between the first physical server (100) and the second physical server (200).

일 실시예에 따르면, 제 1 물리 서버(100)는 제 1 물리 서버를 가상화하여 하나 이상의 가상 머신에 제공하는 제 1 서버 가상화부(110), 하나 이상의 메모리를 포함하며 데이터를 저장하는 제 1 서비스용 저장부(140), 제 1 서비스용 저장부(140)를 가상화하는 제 1 저장장치 가상화부(130) 및 제 1 서버 가상화부(110)에 의해 제공되는 하나 이상의 가상 머신의 가상 디스크에서 생성된 데이터를 제 1 저장장치 가상화부(130)를 통해 제 1 서비스용 저장부(140)에 저장하는 제 1 실시간 복제부(120)를 포함할 수 있다. According to one embodiment, the first physical server (100) may include a first server virtualization unit (110) that virtualizes the first physical server and provides it to one or more virtual machines, a first service storage unit (140) that includes one or more memories and stores data, a first storage virtualization unit (130) that virtualizes the first service storage unit (140), and a first real-time replication unit (120) that stores data generated from virtual disks of one or more virtual machines provided by the first server virtualization unit (110) in the first service storage unit (140) through the first storage virtualization unit (130).

일 예로, 가상머신 또는 가상서버는 사용자 단말로부터 서비스 요청을 접수하여 데이터를 처리후 저장하거나 저장된 데이터를 사용자 단말에 제공하는 등의 일련의 서비스를 제공할 수 있다.For example, a virtual machine or virtual server can provide a series of services, such as receiving a service request from a user terminal, processing and storing data, or providing stored data to the user terminal.

일 예로, 물리 서버는 물리적인 컴퓨팅 자원(CPU, 메모리, 랜포트, 저장장치 등)등을 포함할 수 있다. 서버 가상화부는 물리 서버를 가상화하여 가상머신에 제공하며, 가상머신의 동작상태를 모니터링하거나 시작과 정지 등을 명령할 수 있는 접근지점을 제공할 수 있다.For example, a physical server may include physical computing resources (CPU, memory, LAN port, storage device, etc.). The server virtualization unit virtualizes a physical server and provides it to a virtual machine, and may provide an access point for monitoring the operating status of the virtual machine or giving commands for starting and stopping it.

일 예에 따르면, 제 1 서버 가상화부(110)는 물리 서버(100)에 설치된 운영체제의 일부로서 동작하며 랜섬웨어 공격에 대응하여 데이터를 보호할 수 있는 고가용성 서버 이중화 시스템의 구조적 특징을 제공하는 하나의 요소이다. 제 1 서버 가상화부(110)는 제 1 이중화 제어부(160)의 감독하에 동작하는 가상 머신을 가상화라는 기능으로 동작시켜 하나의 물리서버(100)의 컴퓨팅자원들을 여러 가상머신으로 나누어 사용할 수 있도록 함으로써 물리서버의 사용효율을 높일 수 있다.According to one example, the first server virtualization unit (110) operates as a part of the operating system installed on the physical server (100) and is an element that provides structural features of a high-availability server redundancy system capable of protecting data in response to ransomware attacks. The first server virtualization unit (110) operates a virtual machine operating under the supervision of the first redundancy control unit (160) with a function called virtualization, thereby enabling computing resources of one physical server (100) to be divided and used among multiple virtual machines, thereby increasing the utilization efficiency of the physical server.

일 예에 따르면, 제 1 실시간 복제부(120)는 가상머신에서 생성된 데이터를 제 1 저장장치 가상화부(130)를 통하여 제 1 서비스용 저장부(140)에 저장할 수 있다. 또한, 제 1 실시간 복제부(120)는 핫비트 통신채널(300)을 통하여 제 2 실시간 복제부(220)와 상호 간에 데이터를 주고 받을 수 있다. According to an example, the first real-time replication unit (120) can store data generated from a virtual machine in the first service storage unit (140) through the first storage device virtualization unit (130). In addition, the first real-time replication unit (120) can exchange data with the second real-time replication unit (220) through the hot bit communication channel (300).

일 예에 따르면, 실시간으로 복제되는 데이터는 스위칭허브 등의 네트워크 장비가 없이 서버 간에 직접 연결된 핫비트 통신채널(300)을 사용하므로 해커에게 탐지되지 않을 수 있다. 일 예로, 제 1 물리 서버(100)가 서비스를 제공하는 정상 동작상태에서는 제 1 서비스용 저장부(140)가 프라이머리 저장 장치 역할을 하며, 제 2 물리 서버(200)의 제 2 서비스용 저장부(240)는 세컨더리 저장장치 역할을 할 수 있다. 이는 두 실시간 복제부(120, 220)가 이러한 역할을 나누어 수행하기 때문이다. 예를 들어, 제 1 물리 서버(100)에 장애가 발생한 경우, 제 2 물리 서버(200)가 정상적으로 서비스를 제공하기 위해서는 정상 동작상태에서 실시간 복제부(120, 220)가 자신들이 맡은 각각의 서비스용 저장부(140, 240)의 데이터를 서로 동일하게 유지하는 기능, 즉, 동기화 기능을 잘 수행함으로써 가능해진다. For example, data replicated in real time may not be detected by hackers because it uses a hot-bit communication channel (300) that is directly connected between servers without network equipment such as a switching hub. For example, in a normal operating state where the first physical server (100) provides a service, the first service storage unit (140) may act as a primary storage device, and the second service storage unit (240) of the second physical server (200) may act as a secondary storage device. This is because the two real-time replication units (120, 220) perform these roles separately. For example, in the event of a failure in the first physical server (100), in order for the second physical server (200) to provide a service normally, the real-time replication units (120, 220) must perform the function of maintaining the data of their respective service storage units (140, 240) identical to each other, i.e., the synchronization function, during the normal operating state.

일 예에 따르면, 제 1 서비스용 저장부(140)는 서비스 제공에 필요한 데이터 또는 서비스 제공으로 발생된 데이터가 저장될 수 있다. 제 1 물리 서버(100)가 정상 동작상태에서는 제 1 서비스용 저장부(140)가 프라이머리 저장장치 역할을 하며, 제 2 물리 서버(200)에 포함된 제 2 서비스용 저장부(240)는 세컨더리 저장장치 역할을 한다. 제 1 서비스용 저장부(140)는 제 1 서버 가상화부(110)에 의하여 가상머신에게 제공되는 가상디스크가 파일형태로 저장될 수 있다. 일 예로, 물리 서버의 관리를 위하여 일시적으로 제 1 물리 서버(100)와 제 2 물리 서버(200)가 서로 역할을 바꾸는 경우, 제 2 서비스용 저장부(240)가 프라이머리 저장장치 역할을 하며, 반대로 제 1 서비스용 저장부(140)가 세컨더리 저장장치 역할을 수행할 수 있다. According to an example, the first service storage (140) may store data required for service provision or data generated by service provision. When the first physical server (100) is in a normal operating state, the first service storage (140) functions as a primary storage device, and the second service storage (240) included in the second physical server (200) functions as a secondary storage device. The first service storage (140) may store a virtual disk provided to a virtual machine by the first server virtualization unit (110) in the form of a file. For example, when the first physical server (100) and the second physical server (200) temporarily switch roles for management of the physical servers, the second service storage (240) may function as a primary storage device, and conversely, the first service storage (140) may function as a secondary storage device.

일 실시예에 따르면, 제 2 물리 서버(200)는 제 2 물리 서버를 가상화하는 제 2 서버 가상화부(210), 하나 이상의 메모리를 포함하며 데이터를 저장하는 제 2 서비스용 저장부(240), 제 2 서비스용 저장부(240)를 가상화하는 제 2 저장장치 가상화부(230) 및 제 1 실시간 복제부(120)와 핫비트 통신채널(300)을 통해 연결되며, 제 1 실시간 복제부(120)로부터 제 1 서버 가상화부(110)에 의해 제공되는 하나 이상의 가상 머신의 가상 디스크에서 생성된 데이터를 수신하여 제 2 저장장치 가상화부(230)를 통해 제 2 서비스용 저장부(240)에 저장하는 제 2 실시간 복제부(220)를 포함할 수 있다. According to one embodiment, the second physical server (200) may include a second server virtualization unit (210) virtualizing the second physical server, a second service storage unit (240) including one or more memories and storing data, a second storage virtualization unit (230) virtualizing the second service storage unit (240), and a first real-time replication unit (120) connected to the hotbit communication channel (300), and receiving data generated from a virtual disk of one or more virtual machines provided by the first server virtualization unit (110) from the first real-time replication unit (120) and storing the data in the second service storage unit (240) through the second storage virtualization unit (230).

제 2 물리 서버(200)에 포함된 구성 요소에 대한 설명 중 제 1 물리 서버(100)의 내용과 중복되는 내용은 생략하였다. In the description of the components included in the second physical server (200), any content that overlaps with that of the first physical server (100) has been omitted.

일 예에 따르면, 핫비트 통신채널(300)은 가상머신이 운영되고 있는 제 1 물리 서버(100)에서 가상머신이 없는 제 2 물리 서버(200)로 가상머신에 의하여 생성된 데이터가 제 1 서비스용 저장부(140)에 저장됨과 동시에 제 2 물리 서버(200)로 실시간 복제되는 채널로 이용될 수 있다. 또한, 두 서비스용 저장부 (140, 240)간 헬스체크를 위한 통신채널로도 이용될 수 있다. 핫비트 통신채널(300)은 물리 서버(100,200) 간에만 사용되며, 스위칭허브 등을 사용하지 않고 서버 간에 직접 연결됨으로써 해커에게 탐지되지 않을 수 있으며, 가상머신에도 제공되지 않는다. 핫비트 통신채널(300)은 LAN포트 하나 또는 둘 이상을 팀으로 구성하여 동작할 수 있다. 핫비트 통신채널(300)은 실시간 복제부(120, 220)와 연결될 수 있다. 추가적으로, 핫비트 통신채널(300)은 두 물리 서버(100,200)가 동일한 사양으로 설계되어 백업용 저장부(190)가 제 2 물리 서버(200)에도 존재하는 경우(미도시) 이를 백업 데이터 저장 공간 확장용으로 사용하기 위하여 백업부(160)에도 접근할 수 있다.According to one example, the hotbeat communication channel (300) can be used as a channel in which data generated by a virtual machine is stored in the first service storage unit (140) and replicated in real time to the second physical server (200) where the virtual machine is not running on the first physical server (100). In addition, it can also be used as a communication channel for health check between two service storage units (140, 240). The hotbeat communication channel (300) is used only between physical servers (100, 200), and can be directly connected between servers without using a switching hub, etc., so that it can avoid being detected by hackers, and is not provided to virtual machines. The hotbeat communication channel (300) can be operated by configuring one or more LAN ports as a team. The hotbeat communication channel (300) can be connected to a real-time replication unit (120, 220). Additionally, the hot bit communication channel (300) can also access the backup unit (160) in order to use it for expanding the backup data storage space when the two physical servers (100, 200) are designed with the same specifications and the backup storage unit (190) also exists in the second physical server (200) (not shown).

일 실시예에 따르면, 제 1 물리 서버(100) 및 제 2 물리 서버(200)는 각각 사용자 단말과 통신을 수행하기 위한 프로덕션 네트워크(350)를 더 포함할 수 있다.According to one embodiment, the first physical server (100) and the second physical server (200) may each further include a production network (350) for performing communication with user terminals.

일 예에 따르면, 프로덕션 네트워크(350)는 하나 이상의 사용자 단말이 서비스를 요청하고 제공받는 경로가 되며, 이중화 제어부(160, 260)가 상호간의 헬스체크 및 서비스가 제공 가능한지 여부를 모니터링하는 대상이 된다. 프로덕션 네트워크(350)도 LAN포트 하나 또는 둘 이상을 팀으로 구성하여 동작할 수 있다.According to one example, the production network (350) becomes a path through which one or more user terminals request and receive services, and the redundant control unit (160, 260) becomes a target for monitoring whether mutual health checks and services are available. The production network (350) can also be operated by configuring one or more LAN ports into a team.

일 예로, 프로덕션 네트워크(350)는 서버 가상화부(110, 220), 사용자 인터페이스(280), 이중화 제어부(160, 260) 및 가상 머신들 중에 적어도 하나와 연결될 수 있다. 일 실시예에 따르면, 프로덕션 네트워크(350)는 하나 이상의 가상 머신, 제 1 서버 가상화부(110) 및 제 2 서버 가상화부(210) 중 적어도 하나와 연결될 수 있다.For example, the production network (350) may be connected to at least one of the server virtualization unit (110, 220), the user interface (280), the redundant control unit (160, 260), and the virtual machines. According to one embodiment, the production network (350) may be connected to at least one of the virtual machines, the first server virtualization unit (110) and the second server virtualization unit (210).

일 예에 따르면, 저장장치 가상화부(130, 230)는 서비스용 저장부(140, 240) 의 용량이 서비스의 저장공간 수요가 늘어남에 따라 부족해지는 경우 네트워크를 통하여 다른 파일서버 또는 저장장치에서 제공하는 논리디스크를 접근하기 위하여 프로덕션 네트워크(250)를 접속할 수 있다.For example, when the capacity of the storage unit (140, 240) for service becomes insufficient due to an increase in the demand for storage space for the service, the storage virtualization unit (130, 230) can connect to the production network (250) to access a logical disk provided by another file server or storage unit through the network.

일 실시예에 따르면, 제 1 실시간 복제부(120)는 제 1 서비스용 저장부(140) 및 제 1 저장장치 가상화부(130) 중 적어도 하나에 고장이 발생하는 경우, 제 2 서비스용 저장부(240)에 저장된 데이터를 수신하여 하나 이상의 가상 머신에 제공할 수 있다.According to one embodiment, the first real-time replication unit (120) can receive data stored in the second service storage unit (240) and provide it to one or more virtual machines when a failure occurs in at least one of the first service storage unit (140) and the first storage device virtualization unit (130).

일 예에 따르면, 실시간 복제부(120, 220)는 이중화 제어부(160, 260)의 불필요한 역할 전환이 최소화되도록 할 수 있다. 예를 들어, 물리 서버에 포함된 구성 요소 중 적어도 하나에 장애가 발생할 때마다 이중화 제어부가 물리 서버의 역할을 전환하는 경우, 물리 서버의 역할 전환이 많아질 수 있다. 반면, 실시간 제어부가 제어하고 있는 구성 요소 상에 장애가 발생한 경우, 실시간 제어부 간 통신을 통해 데이터 저장의 역할을 수행하는 경우 물리 서버의 역할 전환을 줄일 수 있다. In one example, the real-time replication unit (120, 220) can minimize unnecessary role switching of the redundant control unit (160, 260). For example, if the redundant control unit switches the role of the physical server whenever a failure occurs in at least one of the components included in the physical server, the role switching of the physical server may increase. On the other hand, if a failure occurs in a component controlled by the real-time control unit and the real-time control unit performs the role of data storage through communication, the role switching of the physical server can be reduced.

일 예로, 제 1 실시간 복제부(120) 또는 제 2 실시간 복제부(220)는 자신이 제어하는 제 1 서비스용 저장부(140) 또는 제 2 서비스용 저장부(240)에 장애가 발생하는 경우, 상대측 제 2 실시간 복제부(220) 또는 제 1 실시간 복제부(120)에서 데이터를 수신하여 정상적인 I/O가 일어날 수 있도록 할 수 있다. 다른 예로, 제 1 서비스용 저장부(140) 또는 제 2 서비스용 저장부(240)에 장애가 발생한 경우, 제 1 실시간 복제부(120) 또는 제 2 실시간 복제부(220)는 상호간에 협력하여 정상동작 중인 제 2 서비스용 저장부(240) 또는 제 1 서비스용 저장부(140) 에 대한 I/O기능을 수행하며, 하부 시스템에 문제가 발생하였음을 동기화 감시부(290)를 통하여 사용자 인터페이스(280)에 전달하여 관리자로 하여금 이를 인지하고 대처하게 하는 모니터링 기능을 수행할 수 있다.For example, if a failure occurs in the first service storage (140) or the second service storage (240) that it controls, the first real-time replication unit (120) or the second real-time replication unit (220) can receive data from the second real-time replication unit (220) or the first real-time replication unit (120) on the other side to enable normal I/O to occur. As another example, if a failure occurs in the first service storage (140) or the second service storage (240), the first real-time replication unit (120) or the second real-time replication unit (220) can perform an I/O function for the second service storage (240) or the first service storage (140) that is operating normally through cooperation with each other, and can perform a monitoring function to transmit the occurrence of a problem in the lower system to the user interface (280) through the synchronization monitoring unit (290) so that the administrator can recognize it and take action.

일 예에 따르면, 동기화 감시부(290)는 실시간복제부(120, 220)의 상태를 주기적으로 감시할 수 있다. 예를 들어, 동기화 감시부(290)는 drbdadm 명령을 사용하여 실시간복제부(120, 220)의 상태를 감시할 수 있다. 일 예로, 동기화 감시부(290)는 핫비트 통신채널(300)에 장애가 발생하여 복제가 불가능하다고 판단이 될 경우 또는 서비스용 저장부(140, 240), 저장장치 가상화부(130, 230) 중 적어도 하나에 장애가 발생하여 실시간 복제를 통하여 두 서비스용 저장부(140, 240)를 동기화 할 수 없다고 판단될 경우 동기화 상태를 사용자 인터페이스(280)를 통하여 사용자 또는 관리자에게 알릴 수 있다. In one example, the synchronization monitoring unit (290) can periodically monitor the status of the real-time replication unit (120, 220). For example, the synchronization monitoring unit (290) can monitor the status of the real-time replication unit (120, 220) using the drbdadm command. For example, if the synchronization monitoring unit (290) determines that replication is impossible due to a failure in the hotbit communication channel (300) or if it determines that synchronization of the two service storage units (140, 240) through real-time replication is impossible due to a failure in at least one of the service storage units (140, 240) and the storage device virtualization unit (130, 230), the synchronization monitoring unit (290) can notify the user or administrator of the synchronization status through the user interface (280).

일 예로, 실시간 복제부(120, 220)는 하부의 서비스용 저장부(140, 240)에 장애가 발생하더라도 서비스를 제공하는데 문제가 없도록 동작하므로 서버 가상화부(110)와 가상머신의 동작은 정상적으로 이루어질 수 있다. 이때, 동기화 감시부(290)가 없으면 사용자나 관리자는 사용자 인터페이스(280)를 통하여 아무런 이상을 감지하지 못할 수 있다.For example, the real-time replication unit (120, 220) operates so that there is no problem in providing the service even if a failure occurs in the lower service storage unit (140, 240), so that the server virtualization unit (110) and the virtual machine can operate normally. At this time, if there is no synchronization monitoring unit (290), the user or administrator may not be able to detect any abnormality through the user interface (280).

일 실시예에 따르면, 제 1 저장장치 가상화부(130)는 제 1 서비스용 저장부(140)에 저장된 하나 이상의 가상 머신의 가상 디스크에서 생성된 데이터의 스냅샷을 생성할 수 있다. According to one embodiment, the first storage virtualization unit (130) can create a snapshot of data generated from a virtual disk of one or more virtual machines stored in the first service storage unit (140).

일 예로, 제 1 저장장치 가상화부(130)는 제 1 서비스용 저장부(140)의 용량이 부족할 경우, 서비스에 영향을 주지 않으면서 확장이 가능하도록 하는 역할을 수행하며, 스냅샷을 수행할 수 있습니다. 예를 들어, 스냅샷은 백업부(150)에서 제 1 서비스용 저장부(140)에서 백업용으로 사용되는 백업용 저장부(190)로 데이터를 복사하는 동안 데이터의 무결성을 해치는 것을 방지하는 역할을 한다. 일 예로, 스냅샷의 개수가 많아지면 복구시점을 선택하는데 신중해야 하는 어려움이 있으므로 이러한 위험요소를 없애기 위하여 하나의 스냅샷만을 사용하며, 사용이 완료되면 스냅샷을 삭제함으로써 시스템의 I/O성능을 떨어뜨리는 현상도 방지할 수 있다. For example, the first storage virtualization unit (130) can perform a role of enabling expansion without affecting the service when the capacity of the first service storage unit (140) is insufficient, and can perform a snapshot. For example, the snapshot can prevent data integrity from being damaged while copying data from the first service storage unit (140) to the backup storage unit (190) used for backup purposes in the backup unit (150). For example, since it becomes difficult to be careful in selecting a recovery point when the number of snapshots increases, only one snapshot is used to eliminate this risk factor, and by deleting the snapshot when use is complete, the phenomenon of the system's I/O performance being reduced can also be prevented.

도 2는 일 실시예에 따른 서버 이중화 시스템의 동작 환경을 설명하기 위한 예시도이다.Figure 2 is an exemplary diagram for explaining the operating environment of a server duplication system according to one embodiment.

도 2를 참조하면, 제 1 서버 가상화부(110)를 기준으로 위쪽은 가상 서버 레이어로 구성되며, 아래쪽은 물리 서버 레이어로 구성된다. 가상 서버 레이어 및 물리 서버 레이어 상호간에는 제 1 서버 가상화부(110)의 매핑과 제 1 서버 가상화부(110)에서 제공하는 어플리케이션 프로그래밍 인터페이스(Application Programming Interface API)로만 정보를 교환할 수 있다. 물리 서버 레이어는 컴퓨팅자원을 공급하는 공급자이면서 감시자 역할을 수행한다. 가상 서버 레이어는 제공받은 컴퓨팅자원을 사용하는 수요자이다. 두 레이어 간 정보 교환은 비대칭적이며 가상 서버 레이어에서 일어나는 모든 것들은 물리 서버 레이어의 감시 아래 있으나 반대로 가상 서버 레이어로 제공되는 물리 서버 레이어의 정보는 서버 가상화부(110)를 통하여 제공되는 것들에 한정된다. 다시 말해, 제 1 서버 가상화부(110)가 제공하지 않는 어떠한 정보도 물리 서버 레이어에서 가상 서버 레이어로 전달될 수 없다.Referring to Fig. 2, the upper part based on the first server virtualization unit (110) is configured as a virtual server layer, and the lower part is configured as a physical server layer. Information can be exchanged between the virtual server layer and the physical server layer only through the mapping of the first server virtualization unit (110) and the application programming interface (API) provided by the first server virtualization unit (110). The physical server layer is a supplier that supplies computing resources and also acts as a monitor. The virtual server layer is a user who uses the provided computing resources. Information exchange between the two layers is asymmetric, and everything that occurs in the virtual server layer is under the supervision of the physical server layer, but conversely, the information of the physical server layer provided to the virtual server layer is limited to what is provided through the server virtualization unit (110). In other words, no information that is not provided by the first server virtualization unit (110) can be transmitted from the physical server layer to the virtual server layer.

가상 디스크들은 물리 서버 레이어의 제 1 서비스용 저장부(140)에 파일 형태로 저장되며, 제 1 서버 가상화부(110)에서 매핑된 파일들을 실제 디스크 형태로 가상 서버 레이어에 보여줌으로써 사용이 가능하다. 제 1 가상머신의 운영체제는 제 1 가상머신에 할당된 파일 1, 2에는 접근이 가능하지만 다른 제 2 가상머신에 할당된 파일 3, 4에는 접근이 불가하다. 이는 제 1 서버 가상화부(110)에서 분리하여 제공하기 때문이다. The virtual disks are stored in the form of files in the first service storage unit (140) of the physical server layer, and can be used by showing the files mapped in the first server virtualization unit (110) to the virtual server layer in the form of actual disks. The operating system of the first virtual machine can access files 1 and 2 assigned to the first virtual machine, but cannot access files 3 and 4 assigned to another second virtual machine. This is because they are provided separately from the first server virtualization unit (110).

제 1 가상머신의 운영체제는 제 1 서비스용 저장부(140)의 내용중 파일 1, 2 외에는 어떠한 데이터에도 접근이 불가하다. 다시 말해, 물리 서버 레이어에 속한 물리 서버 운영체제(미도시) 또는 백업부(150)에서 파일1, 파일2에 접근하여도 제 1 서버 가상화부(110)는 가상 서버 운영체제에 아무런 정보도 전달하지 않으므로 가상 서버 운영체제는 자신이 관리하는 가상디스크의 내용이 읽히는 사실을 알지 못한다. 이것은 랜섬웨어 공격을 시도하는 해커가 장시간 체류하며 서비스를 제공하는 가상머신의 운영체제에 대한 모든 권한과 정보를 획득하더라도 백업이 이루어지고 있음을 전혀 인지할 수 없음을 나타낸다. 이에 따라, 해커는 존재 자체를 인지할 수 없는 백업 데이터를 공격할 수 없다.The operating system of the first virtual machine cannot access any data except files 1 and 2 in the storage unit (140) for the first service. In other words, even if the physical server operating system (not shown) or the backup unit (150) belonging to the physical server layer accesses files 1 and 2, the first server virtualization unit (110) does not transmit any information to the virtual server operating system, so the virtual server operating system does not know that the contents of the virtual disk it manages are being read. This indicates that even if a hacker attempting a ransomware attack obtains all authority and information about the operating system of the virtual machine providing the service by staying for a long time, he or she cannot recognize that a backup is being performed. Accordingly, the hacker cannot attack the backup data, the existence of which is not even recognized.

도 3 및 도 4는 일 실시예에 따른 제 1 물리 서버 및 제 1 물리 서버의 구성도이다.FIG. 3 and FIG. 4 are configuration diagrams of a first physical server and a first physical server according to one embodiment.

도 3을 참조하면, 제 1 물리 서버(100)는 하나 이상의 메모리를 포함하며 백업 데이터를 저장하는 백업용 저장부(190) 및 스냅샷을 기초로 하나 이상의 가상 머신의 가상 디스크에서 생성된 데이터 전체 또는 데이터 변동사항에 대한 백업 데이터를 생성하며, 백업 데이터를 백업용 저장부(190)에 저장하며, 백업 리스트를 생성하는 백업부(150)를 더 포함할 수 있다.Referring to FIG. 3, the first physical server (100) may further include a backup storage unit (190) that includes one or more memories and stores backup data, and a backup unit (150) that creates backup data for all data or data changes generated from a virtual disk of one or more virtual machines based on a snapshot, stores the backup data in the backup storage unit (190), and creates a backup list.

일 예에 따르면, 백업부(150)는 제 1 저장장치 가상화부(130)에서 제공하는 스냅샷을 이용하여 서비스용 저장부(140)의 내용중 가상디스크 역할을 하는 파일들을 복사하거나 이를 마운트하여 변동사항에 대한 백업을 수행할 수 있다. 예를 들어, 변동사항에 대한 백업은 증분(Incremental) 및 차등(Differential backup) 백업 중 적어도 하나일 수 있다. 일 예로, 백업부(150)는 제 1 물리 서버(100) 또는 제 2 물리 서버(200) 한쪽에만 포함될 수 있다. According to one example, the backup unit (150) can perform a backup for changes by copying or mounting files that serve as virtual disks among the contents of the service storage unit (140) using the snapshot provided by the first storage device virtualization unit (130). For example, the backup for changes can be at least one of an incremental backup and a differential backup. For one example, the backup unit (150) can be included in only one of the first physical server (100) or the second physical server (200).

일 예로, 백업용 저장부(190)는 외부공격(랜섬웨어)이나 사용자 실수에 의한 데이터 망실/위변조 등의 소프트웨어적인 사고에 대응하기 위한 백업용 저장 장치이다. 서비스용 저장부(140, 240)에 저장된 데이터를 사용자가 지정한 시간 및 주기에 맞추어 백업용 저장부(190)로 백업해 둠으로써 소프트웨어적인 사고가 발생하여 서비스용 저장부(140, 240)에 저장된 데이터에 손상이 가더라도 사고가 발생하기 이전의 온전한 데이터를 보존하게 된다. 이러한 구조로 동작하기 위하여 백업용 저장부(190)는 서비스용 저장부(140, 240)의 용량보다 충분한 배수 이상의 용량을 가져야 한다. For example, the backup storage (190) is a backup storage device for responding to software accidents such as data loss/forgery due to external attacks (ransomware) or user errors. By backing up data stored in the service storage (140, 240) to the backup storage (190) at a time and cycle specified by the user, even if a software accident occurs and the data stored in the service storage (140, 240) is damaged, the complete data before the accident is preserved. In order to operate with this structure, the backup storage (190) must have a capacity that is a sufficient multiple of the capacity of the service storage (140, 240).

일 예에 따르면, 백업부(150)는 가상디스크에 기록된 데이터의 크기가 증가하면서 정해진 시간 안에 복사를 완료할 수 없을 경우 또는 백업용 저장부(190)의 용량이 충분하지 않다고 판단되는 경우 변동사항에 대한 백업을 수행할 수 있다. 다른 예로, 백업부(150)는 사용자 인터페이스(280)을 통해 수신한 사용자의 요청에 따라 전체 복사 및 증분/차등 백업을 선택할 수 있다. For example, the backup unit (150) may perform a backup for changes when the size of data recorded on the virtual disk increases and it is impossible to complete the copy within a set time or when the capacity of the backup storage unit (190) is determined to be insufficient. As another example, the backup unit (150) may select a full copy and an incremental/differential backup according to a user request received through the user interface (280).

일 예에 따르면, 백업부(150)는 데이터 복사 또는 백업을 수행할 수 있다. 백업부(150)에서 수행하는 복사나 증분/차등백업은 네트워크를 사용하지 않고 서버의 내부 시스템 버스를 통하여 수행되며, 에 따라 수행 속도가 빠르고 해커에 의하여 탐지될 수 없다.For example, the backup unit (150) can perform data copying or backup. The copying or incremental/differential backup performed by the backup unit (150) is performed through the internal system bus of the server without using a network, and therefore, the execution speed is fast and cannot be detected by hackers.

일 예로, 제 1 물리 서버(100)에 장애가 발생하여 서비스를 수행할 수 없는 경우, 백업부(150)의 위치는 가상머신들과 함께 제 2 물리 서버(200)로 이동할 수 있다. 서비스가 수행되는 제 2 물리 서버(200)에 백업부가 이전된 경우, 백업부는 제 2 물리 서버에(200)에 백업용 저장부가 존재하는지 여부를 확인하며, 존재시 정상 동작상태와 동일한 과정으로 데이터 보호기능을 수행한다. 반면, 백업용 저장부가 미존재시 백업부의 기능은 정지되고 사용자 인터페이스(280)를 통해 사용자에게 백업기능이 정지되었음을 알릴 수 있다.For example, if a failure occurs in the first physical server (100) and the service cannot be performed, the location of the backup unit (150) can be moved to the second physical server (200) together with the virtual machines. If the backup unit is moved to the second physical server (200) where the service is performed, the backup unit checks whether a backup storage unit exists in the second physical server (200), and if so, performs the data protection function in the same process as in normal operation. On the other hand, if the backup storage unit does not exist, the function of the backup unit is stopped and the user can be notified through the user interface (280) that the backup function has been stopped.

일 예에 따르면, 백업부(150)는 백업 데이터가 생성 날짜를 식별할 수 있도록 백업리스트로 관리하며, 사용자의 실수에 의한 데이터의 손실이나 망실이 발생한 경우에 대비하여 가장 최근에 백업한 백업 데이터는 아카이빙 (Archiving)을 수행하지 않으며, 원본의 형태를 그대로 유지함으로써 파일 단위의 복사만으로 간단히 데이터 복구가 가능하도록 보존된다.For example, the backup unit (150) manages backup data as a backup list so that the creation date can be identified, and in case of data loss or destruction due to user error, the most recently backed up backup data is not archived and is preserved in its original form so that data can be easily recovered by simply copying the file unit.

도 3 및 도 4를 참조하면, 제 1 물리 서버(100) 및 제 2 물리 서버(200)는 각각의 물리 서버를 모니터링하는 제 1 이중화 제어부(160) 및 제 2 이중화 제어부(260)를 더 포함할 수 있다.Referring to FIGS. 3 and 4, the first physical server (100) and the second physical server (200) may further include a first redundant control unit (160) and a second redundant control unit (260) that monitor each physical server.

일 실시예에 따르면, 제 1 이중화 제어부(160)는 제 1 물리 서버(100)의 제 1 실시간 복제부(120)에 장애가 발생한 경우 또는 제 1 네트워크 감시부(170)로부터 프로덕션 네트워크(350)에 장애가 발생한 네트워크 상태를 수신한 경우 제 1 서버 가상화부(110) 및 제 2 이중화 제어부(260)로 제 1 서버 가상화부(110)의 가상화를 제 2 서버 가상화부(210)로 이전하도록 제어하는 이전 요청 신호를 전송할 수 있다. 또한, 제 2 이중화 제어부(260)는 제 1 이중화 제어부(160)로부터 수신한 이전 요청 신호에 기초하여 제 2 실시간 복제부(220)의 장애 여부 및 제 2 네트워크 감시부(270)로부터 프로덕션 네트워크(350)의 장애 여부를 판단하며, 장애 미발생 시 제 2 서버 가상화부(210)는 제 1 서버 가상화부(110)의 하나 이상의 가상 머신을 이전 받아 제 2 물리 서버(200)를 가상화하여 하나 이상의 가상 머신에 제공할 수 있다.According to one embodiment, when a failure occurs in the first real-time replication unit (120) of the first physical server (100) or when a network status that a failure occurs in the production network (350) is received from the first network monitoring unit (170), the first redundancy control unit (160) may transmit a transfer request signal to the first server virtualization unit (110) and the second redundancy control unit (260) to control the transfer of virtualization of the first server virtualization unit (110) to the second server virtualization unit (210). In addition, the second redundancy control unit (260) determines whether there is a failure in the second real-time replication unit (220) based on the previous request signal received from the first redundancy control unit (160) and whether there is a failure in the production network (350) from the second network monitoring unit (270). If no failure occurs, the second server virtualization unit (210) can receive one or more virtual machines of the first server virtualization unit (110) and virtualize the second physical server (200) to provide it to one or more virtual machines.

일 예에 따르면, 이중화 제어부(160, 260)는 서버가 가상화부(110, 120)에서 제공하는 어플리케이션 프로그래밍 인터페이스(Application Programming Interface API)를 통하여 가상머신의 상태를 감시하고 통제할 수 있다. 예를 들어, 제 1 물리 서버(100)에 장애가 발생하거나 프로덕션 네트워크(250)쪽 접속에 문제가 발생하면, 이중화 제어부(160)는 자신의 제어하에 있는 제 1 실시간 복제부(120)나 제 1 네트워크 감시부(170)에서 전달하는 하부 컴퓨팅 자원의 장애상태를 파악한 후 제 2 물리 서버(200) 쪽으로 서비스를 이관할 것을 제 1 서버 가상화부(110)에 지시할 수 있다. 또한, 제 2 이중화 제어부(260)는 자신의 제어하에 있는 제 2 실시간 복제부(220)나 제 2 네트워크 감시부(270)에서 전달하는 하부 컴퓨팅자원의 상태를 파악하여 정상임을 확인 후 제 2 서버 가상화부(210)에 서비스를 시작할 것을 지시할 수 있다. 이는 가상머신이 제 2 물리 서버(200)의 제 2 서버 가상화부(210)의 통제 하에서 작동하게 됨을 의미한다.According to an example, the redundancy control unit (160, 260) can monitor and control the status of the virtual machine through the application programming interface (API) provided by the server in the virtualization unit (110, 120). For example, if a failure occurs in the first physical server (100) or a problem occurs in the connection to the production network (250), the redundancy control unit (160) can identify the failure status of the underlying computing resources transmitted from the first real-time replication unit (120) or the first network monitoring unit (170) under its control and then instruct the first server virtualization unit (110) to transfer the service to the second physical server (200). In addition, the second redundancy control unit (260) can check the status of the lower computing resources transmitted from the second real-time replication unit (220) or the second network monitoring unit (270) under its control, confirm that they are normal, and then instruct the second server virtualization unit (210) to start the service. This means that the virtual machine operates under the control of the second server virtualization unit (210) of the second physical server (200).

일 예에 따르면, 이중화 제어부(160, 260)는 알람 기능을 이용하여 이중화 제어부(160, 260)가 각각 제어하는 하부 구성요소의 동작상태에 변화가 발생하는 경우, 최초 설치시 제공된 이메일(E-mail) 주소로 알람을 발송하여 운영자로 하여금 그 사실에 대하여 대처할 수 있도록 할 수 있다. 이러한 알람 기능은 최초 1회 설정한 이후에는 사용자가 임으로 수정하지 못하게 함으로써 해커가 사용자 인터페이스(280)의 사용권한을 획득하여 백업을 정지시키는 경우 또는 장애가 발생하여 백업이 정상적으로 동작할 수 없는 경우에 사용자로 하여금 이를 대처할 수 있도록 할 수 있다.For example, the dual control unit (160, 260) can use the alarm function to send an alarm to the e-mail address provided during the initial installation when there is a change in the operation status of the lower components controlled by the dual control unit (160, 260) respectively, so that the operator can respond to the fact. This alarm function can prevent the user from modifying it after it is set once, so that the user can respond when a hacker obtains the right to use the user interface (280) and stops the backup, or when a failure occurs and the backup cannot operate normally.

일 실시예에 따르면, 제 1 물리 서버(100) 및 제 2 물리 서버(200)는 각각의 프로덕션 네트워크(350)의 상태를 모니터링하는 제 1 네트워크 감시부(170) 및 제 2 네트워크 감시부(270)를 더 포함할 수 있다. 일 예로, 제 1 네트워크 감시부(170) 및 제 2 네트워크 감시부(270)는 프로덕션 네트워크(350)에 장애가 발생한 경우 각각 제 1 이중화 제어부(160) 및 제 2 이중화 제어부(170)에 네트워크 상태를 전송할 수 있다. According to one embodiment, the first physical server (100) and the second physical server (200) may further include a first network monitoring unit (170) and a second network monitoring unit (270) for monitoring the status of each production network (350). For example, the first network monitoring unit (170) and the second network monitoring unit (270) may transmit the network status to the first redundancy control unit (160) and the second redundancy control unit (170), respectively, when a failure occurs in the production network (350).

일 예에 따르면, 네트워크감시부(170, 270)는 프로덕션 네트워크(350)의 상태를 주기적으로 핑(ping) 명령을 사용하여 감시할 수 있으며, 프로덕션 네트워크(350)에 장애가 발생하여 사용이 불가능하다고 판단이 될 경우 프로덕션 네트워크(350)의 상태를 이중화 제어부(160, 260)에 전달하여 이중화 제어부(160, 260)가 서비스를 제 2 물리 서버(200)로 이전할 것인지를 결정하도록 할 수 있다. For example, the network monitoring unit (170, 270) can periodically monitor the status of the production network (350) using a ping command, and if it is determined that the production network (350) has a problem and cannot be used, the status of the production network (350) can be transmitted to the redundancy control unit (160, 260) so that the redundancy control unit (160, 260) can determine whether to transfer the service to the second physical server (200).

일 예로, 제 1 물리 서버(100) 에서 작동하는 제 1 이중화 제어부(160)는 제 1 네트워크 감시부(170)로부터 프로덕션 네트워크(350) 상태를 전달을 받아 서비스 이전을 결정할 수 있다. 반면, 제 2 이중화 제어부(260)는 제 2 네트워크 감시부(270)로부터 프로덕션 네트워크(350) 상태를 전달받더라도 서비스를 제공하지 않는 상태이므로 사용자 인터페이스(280)를 통하여 사용자에게 프로덕션 네트워크(350)의 상태만을 알릴 수 있다.For example, the first redundant control unit (160) operating on the first physical server (100) can receive the status of the production network (350) from the first network monitoring unit (170) and decide to transfer the service. On the other hand, the second redundant control unit (260) does not provide the service even if it receives the status of the production network (350) from the second network monitoring unit (270), so it can only inform the user of the status of the production network (350) through the user interface (280).

일 예로, 이중화 제어부(160, 260)는 사용자 인터페이스(280), 가상머신, 백업부(150), 네트워크 감시부(170, 270) 및 실시간 복제부(120, 220) 중 적어도 하나를 제어하며, 정상 동작 여부를 감시하는 기능을 수행할 수 있다. 또한, 이중화 제어부(160, 260)는 프로덕션 네트워크(350)와 핫비트 통신채널(300)의 상태를 감시하여 서비스 제공이 가능한지 여부를 판단할 수 있다. For example, the dual control unit (160, 260) can control at least one of the user interface (280), the virtual machine, the backup unit (150), the network monitoring unit (170, 270), and the real-time replication unit (120, 220), and can perform a function of monitoring whether it is operating normally. In addition, the dual control unit (160, 260) can monitor the status of the production network (350) and the hot bit communication channel (300) to determine whether service provision is possible.

일 실시예에 따르면, 제 2 물리 서버(200)는 제 2 이중화 제어부(260)에 연결되어 제 2 이중화 제어부(260)의 상태 정보를 출력하고, 사용자로부터 제 2 이중화 제어부(260)에 대한 제어 입력 신호를 수신하는 사용자 인터페이스부(280)를 더 포함할 수 있다.According to one embodiment, the second physical server (200) may further include a user interface unit (280) that is connected to the second redundancy control unit (260) to output status information of the second redundancy control unit (260) and receive a control input signal for the second redundancy control unit (260) from a user.

일 예에 따르면, 사용자 인터페이스부(280)는 제 1 물리 서버(100) 또는 제 2 물리 서버(200) 한쪽에만 포함될 수 있다. 사용자 인터페이스부(280)는 이중화 제어부(160, 260)를 통하여 전달받은 서버 이중화 시스템의 상태를 웹화면을 통하여 출력하며, 사용자로부터 서버 이중화 시스템의 동작에 대한 데이터를 입력 받을 수 있다. 또한, 사용자 인터페이스부(280)는 서버 이중화 시스템(10)의 동작 상태를 사용자에게 제공하며, 사용자는 이를 토대로 가상서버의 동작을 점검할 수 있다. According to an example, the user interface unit (280) may be included only in one of the first physical server (100) or the second physical server (200). The user interface unit (280) outputs the status of the server duplication system received through the duplication control unit (160, 260) through a web screen, and may receive data on the operation of the server duplication system from the user. In addition, the user interface unit (280) provides the operation status of the server duplication system (10) to the user, and the user may check the operation of the virtual server based on this.

일 실시예에 따르면, 백업부(150)는 사용자 인터페이스부(280)를 통하여 백업 리스트를 전송하며, 사용자로부터 선택된 백업 리스트에 대한 백업 데이터를 제 1 서버 가상화부(110) 및 제 2 서버 가상화부(120) 중 적어도 하나에 전송하여 가상 머신을 활성화시킬 수 있다.According to one embodiment, the backup unit (150) transmits a backup list through the user interface unit (280), and transmits backup data for the backup list selected by the user to at least one of the first server virtualization unit (110) and the second server virtualization unit (120) to activate the virtual machine.

일 예로, 사용자는 사용자 인터페이스부(280)를 통하여 가상서버가 랜섬웨어에 감염된 사실을 파악하고 해당 랜섬웨어가 가지는 파일의 속성(파일의 확장자 등)을 확인할 수 있다. 사용자 인터페이스부(280)는 입력받은 파일속성을 백업부(150)에 전달하고, 검색을 지시하여 백업부(150)로 하여금 백업 리스트에서 현재와 가장 가까운 시점의 감염된 파일속성이 발견되지 않는 백업 데이터를 찾아 임시 가상서버를 활성화는데 사용되도록 할 수 있다. For example, a user can identify that a virtual server is infected with ransomware through the user interface unit (280) and check the file properties (file extension, etc.) of the ransomware. The user interface unit (280) can transmit the input file properties to the backup unit (150) and instruct a search so that the backup unit (150) can find backup data in which the infected file properties are not found at the closest time to the present in the backup list and use it to activate the temporary virtual server.

도 5는 일 예에 따른 서버 이중화 시스템의 백업 방법을 도시한 흐름도이다.Figure 5 is a flow chart illustrating a backup method of a server duplication system according to an example.

도 5를 참조하면, 제 1 저장장치 가상화부는 지정된 시간 및 주기에 따라 백업을 수행할 시간이 된 경우(510) 제 1 서비스용 저장부에 저장된 하나 이상의 가상 머신의 가상 디스크에서 생성된 데이터의 스냅샷을 생성할 수 있다(520). Referring to FIG. 5, the first storage virtualization unit can create a snapshot of data generated from a virtual disk of one or more virtual machines stored in the first service storage unit (520) when it is time to perform a backup according to a specified time and cycle (510).

일 예로, 백업부는 가상디스크에 기록된 데이터의 크기를 판단할 수 있(530)다. 예를 들어, 백업용 저장부의 용량이 충분하다고 판단하는 경우, 백업부(150)는 가상디스크 역할을 하는 파일들을 복사할 수 있다. 반면, 데이터 증가하면서 정해진 시간 안에 복사를 완료할 수 없을 경우 또는 백업용 저장부의 용량이 충분하지 않다고 판단되는 경우, 백업부는 가상 디스크를 마운트하며(550), 변동사항에 대한 백업, 즉, 증분(Incremental) 및 차등(Differential backup) 백업 중 적어도 하나를 수행할 수 있다(560).For example, the backup unit can determine the size of data recorded on the virtual disk (530). For example, if it is determined that the capacity of the backup storage unit is sufficient, the backup unit (150) can copy files that serve as the virtual disk. On the other hand, if the copy cannot be completed within a given time as the data increases or if it is determined that the capacity of the backup storage unit is insufficient, the backup unit can mount the virtual disk (550) and perform at least one of a backup for changes, that is, an incremental backup and a differential backup (560).

일 예로, 백업부는 백업이 완료된 경우 가상 디스크 마운트를 해제(570)하고, 저장된 스냅샷을 제거할 수 있다(580).For example, the backup unit can unmount the virtual disk (570) and remove the saved snapshot (580) when the backup is completed.

도 6은 일 예에 따른 서버 이중화 시스템의 복구 방법을 도시한 흐름도이다.Figure 6 is a flowchart illustrating a recovery method of a server duplication system according to an example.

도 6을 참조하면, 사용자는 사용자 인터페이스부를 통하여 가상서버가 랜섬웨어에 감염된 사실을 파악하고 해당 랜섬웨어가 가지는 파일의 속성(파일의 확장자 등)을 확인할 수 있다. Referring to Figure 6, the user can identify that the virtual server is infected with ransomware through the user interface and check the properties of the files (file extension, etc.) of the ransomware.

일 예로, 백업부는 백업 리스트에서 현재와 가장 가까운 시점의 백업 데이터를 검색하며(610) 가상 디스크를 마운트할 수 있다(620). 이후, 백업부는 검색된 백업 데이터가 감염되었는지 여부를 판단하며(630), 감염된 파일속성이 발견되지 않는 백업 데이터를 찾은 경우 마운트를 해제하고(640), 임시 가상서버를 활성화할 수 있다. 만약, 백업 데이터가 감염된 경우, 백업부는 순차적으로 과거 백업 데이터를 마운트 한 후 감염된 파일이 발견되지 않는 최신 백업 데이터를 검색할 수 있다.For example, the backup unit can search for backup data closest to the present time in the backup list (610) and mount the virtual disk (620). Thereafter, the backup unit determines whether the searched backup data is infected (630), and if backup data is found where an infected file attribute is not found, the backup unit can unmount it (640) and activate the temporary virtual server. If the backup data is infected, the backup unit can sequentially mount past backup data and then search for the latest backup data where an infected file is not found.

본 발명의 일 양상은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있다. 상기의 프로그램을 구현하는 코드들 및 코드 세그먼트들은 당해 분야의 컴퓨터 프로그래머에 의하여 용이하게 추론될 수 있다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함할 수 있다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 디스크 등을 포함할 수 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드로 작성되고 실행될 수 있다.One aspect of the present invention can be implemented as computer-readable codes on a computer-readable recording medium. Codes and code segments implementing the above program can be easily inferred by a computer programmer in the art. The computer-readable recording medium can include all kinds of recording devices that store data that can be read by a computer system. Examples of the computer-readable recording medium can include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical disk, etc. In addition, the computer-readable recording medium can be distributed to computer systems connected to a network, and can be written and executed as computer-readable codes in a distributed manner.

이제까지 본 발명에 대하여 그 바람직한 실시 예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 따라서, 본 발명의 범위는 전술한 실시 예에 한정되지 않고 특허 청구범위에 기재된 내용과 동등한 범위 내에 있는 다양한 실시 형태가 포함되도록 해석되어야 할 것이다.The present invention has been described so far with reference to preferred embodiments thereof. Those skilled in the art will understand that the present invention can be implemented in modified forms without departing from the essential characteristics of the present invention. Accordingly, the scope of the present invention should not be limited to the above-described embodiments, but should be interpreted to include various embodiments within a scope equivalent to the contents described in the claims.

100, 200: 물리서버
110, 210: 서버 가상화부
120, 220: 실시간 복제부
130, 230: 저장장치 가상화부
140, 240: 서비스용 저장부
150: 백업부
160, 260: 이중화 제어부
170,270: 네트워크 감시부
190: 백업용 저장부
280: 사용자 인터페이스
290: 동기화 감시부
300: 핫비트 통신채널
350: 프로덕션 네트워크
100, 200: Physical Server
110, 210: Server Virtualization Department
120, 220: Real-time replication
130, 230: Storage Virtualization Unit
140, 240: Storage for service
150: Backup Department
160, 260: Dual control unit
170,270: Network Monitoring Department
190: Backup storage
280: User Interface
290: Synchronization Monitor
300: Hot Beat Communication Channel
350: Production Network

Claims (11)

제 1 물리 서버; 제 2 물리 서버; 외부 장치와 연결되지 않으며 상기 제 1 물리 서버와 상기 제 2 물리 서버 간 직접 데이터 통신을 위한 핫비트 통신채널 및 상기 제 1 물리 서버 및 상기 제 2 물리 서버가 각각 사용자 단말과 통신을 수행하기 위한 프로덕션 네트워크를 포함하며,
상기 제 1 물리 서버는
상기 제 1 물리 서버를 가상화하여 하나 이상의 가상 머신에 제공하는 제 1 서버 가상화부,
하나 이상의 메모리를 포함하며 데이터를 저장하는 제 1 서비스용 저장부,
상기 제 1 서비스용 저장부를 가상화하는 제 1 저장장치 가상화부,
상기 제 1 서버 가상화부에 의해 제공되는 하나 이상의 가상 머신의 가상 디스크에서 생성된 데이터를 상기 제 1 저장장치 가상화부를 통해 상기 제 1 서비스용 저장부에 저장하는 제 1 실시간 복제부 및 하나 이상의 메모리를 포함하며 백업 데이터를 저장하는 백업용 저장부를 포함하며,
상기 제 2 물리 서버는
상기 제 2 물리 서버를 가상화하는 제 2 서버 가상화부,
하나 이상의 메모리를 포함하며 데이터를 저장하는 제 2 서비스용 저장부,
상기 제 2 서비스용 저장부를 가상화하는 제 2 저장장치 가상화부, 및
상기 제 1 실시간 복제부와 핫비트 통신채널을 통해 연결되며, 상기 제 1 실시간 복제부로부터 제 1 서버 가상화부에 의해 제공되는 하나 이상의 가상 머신의 가상 디스크에서 생성된 데이터를 수신하여 상기 제 2 저장장치 가상화부를 통해 상기 제 2 서비스용 저장부에 저장하는 제 2 실시간 복제부를 포함하며,
상기 제 1 실시간 복제부는
상기 제 1 서비스용 저장부 및 제 1 저장장치 가상화부 중 적어도 하나에 고장이 발생하는 경우, 제 2 서비스용 저장부에 저장된 데이터를 수신하여 상기 하나 이상의 가상 머신에 제공하며,
상기 제 1 저장장치 가상화부는
상기 제 1 서비스용 저장부에 저장된 하나 이상의 가상 머신의 가상 디스크에서 생성된 데이터의 스냅샷을 생성하며,
상기 백업용 저장부에 저장되는 백업 데이터는 상기 스냅샷을 기초로 하나 이상의 가상 머신의 가상 디스크에서 생성된 데이터 전체 또는 데이터 변동사항에 대한 것인, 서버 이중화 시스템.
A first physical server; a second physical server; a hot bit communication channel for direct data communication between the first physical server and the second physical server, which is not connected to an external device, and a production network for the first physical server and the second physical server to perform communication with user terminals, respectively,
The above first physical server
A first server virtualization unit that virtualizes the first physical server and provides it to one or more virtual machines;
A storage unit for a first service that includes one or more memories and stores data;
A first storage virtualization unit virtualizing the storage unit for the first service,
A first real-time replication unit storing data generated from a virtual disk of one or more virtual machines provided by the first server virtualization unit in the first service storage unit through the first storage device virtualization unit, and a backup storage unit including one or more memories for storing backup data,
The above second physical server
A second server virtualization unit virtualizing the second physical server;
A storage unit for a second service that includes one or more memories and stores data,
A second storage virtualization unit virtualizing the storage unit for the second service, and
A second real-time replication unit is connected to the first real-time replication unit through a hot-bit communication channel, and receives data generated from a virtual disk of one or more virtual machines provided by the first server virtualization unit from the first real-time replication unit and stores the data in the second service storage unit through the second storage device virtualization unit.
The above first real-time replication unit
If at least one of the storage unit for the first service and the first storage device virtualization unit fails, data stored in the storage unit for the second service is received and provided to one or more virtual machines.
The above first storage device virtualization unit
Create a snapshot of data generated from a virtual disk of one or more virtual machines stored in the storage for the first service,
A server duplication system in which the backup data stored in the backup storage unit is all data or data changes generated from the virtual disks of one or more virtual machines based on the snapshot.
삭제delete 삭제delete 제 1 항에 있어서,
상기 제 1 물리 서버는
상기 스냅샷을 기초로 하나 이상의 가상 머신의 가상 디스크에서 생성된 데이터 전체 또는 데이터 변동사항에 대한 백업 데이터를 생성하며, 상기 백업 데이터를 상기 백업용 저장부에 저장하며, 백업 리스트를 생성하는 백업부를 더 포함하는, 서버 이중화 시스템.
In the first paragraph,
The above first physical server
A server duplication system further comprising a backup unit that creates backup data for all data or data changes generated from a virtual disk of one or more virtual machines based on the snapshot, stores the backup data in the backup storage unit, and creates a backup list.
제 4 항에 있어서,
상기 프로덕션 네트워크는 하나 이상의 가상 머신, 제 1 서버 가상화부 및 제 2 서버 가상화부 중 적어도 하나와 연결된, 서버 이중화 시스템.
In paragraph 4,
The above production network is a server redundancy system connected to at least one virtual machine, a first server virtualization unit and a second server virtualization unit.
제 5 항에 있어서,
상기 제 1 물리 서버 및 상기 제 2 물리 서버는 각각의 물리 서버를 모니터링하는 제 1 이중화 제어부 및 제 2 이중화 제어부를 더 포함하는, 서버 이중화 시스템.
In paragraph 5,
A server redundancy system, wherein the first physical server and the second physical server further include a first redundancy control unit and a second redundancy control unit that monitor each of the physical servers.
제 6 항에 있어서,
상기 제 1 물리 서버 및 상기 제 2 물리 서버는 각각의 프로덕션 네트워크의 상태를 모니터링하는 제 1 네트워크 감시부 및 제 2 네트워크 감시부를 더 포함하며,
상기 제 1 네트워크 감시부 및 제 2 네트워크 감시부는 프로덕션 네트워크에 장애가 발생한 경우 각각 제 1 이중화 제어부 및 제 2 이중화 제어부에 네트워크 상태를 전송하는, 서버 이중화 시스템.
In paragraph 6,
The first physical server and the second physical server further include a first network monitoring unit and a second network monitoring unit for monitoring the status of each production network,
A server redundancy system, wherein the first network monitoring unit and the second network monitoring unit transmit network status to the first redundancy control unit and the second redundancy control unit, respectively, when a failure occurs in the production network.
제 7 항에 있어서,
상기 제 1 이중화 제어부는
상기 제 1 물리 서버의 제 1 실시간 복제부에 장애가 발생한 경우 또는 상기 제 1 네트워크 감시부로부터 프로덕션 네트워크에 장애가 발생한 네트워크 상태를 수신한 경우 상기 제 1 서버 가상화부 및 상기 제 2 이중화 제어부로 제 1 서버 가상화부의 가상화를 상기 제 2 서버 가상화부로 이전하도록 제어하는 이전 요청 신호를 전송하며,
상기 제 2 이중화 제어부는
상기 제 1 이중화 제어부로부터 수신한 이전 요청 신호에 기초하여 제 2 실시간 복제부의 장애 여부 및 제 2 네트워크 감시부로부터 프로덕션 네트워크의 장애 여부를 판단하며, 장애 미발생 시 제 2 서버 가상화부는 제 1 서버 가상화부의 하나 이상의 가상 머신을 이전 받아 상기 제 2 물리 서버를 가상화하여 상기 하나 이상의 가상 머신에 제공하는, 서버 이중화 시스템.
In paragraph 7,
The above first dual control unit
When a failure occurs in the first real-time replication unit of the first physical server or when a network status indicating a failure in the production network is received from the first network monitoring unit, a transfer request signal is transmitted to the first server virtualization unit and the second redundancy control unit to control the transfer of virtualization of the first server virtualization unit to the second server virtualization unit.
The above second dual control unit
A server redundancy system, wherein the presence of a failure in the second real-time replication unit and the presence of a failure in the production network are determined from the second network monitoring unit based on a previous request signal received from the first redundancy control unit, and when no failure occurs, the second server virtualization unit receives one or more virtual machines from the first server virtualization unit, virtualizes the second physical server, and provides it to the one or more virtual machines.
제 6 항에 있어서,
상기 제 2 물리 서버는
상기 제 2 이중화 제어부에 연결되어 제 2 이중화 제어부의 상태 정보를 출력하고, 사용자로부터 제 2 이중화 제어부에 대한 제어 입력 신호를 수신하는 사용자 인터페이스부를 더 포함하는, 서버 이중화 시스템.
In paragraph 6,
The above second physical server
A server duplication system further comprising a user interface unit connected to the second duplication control unit to output status information of the second duplication control unit and receive a control input signal for the second duplication control unit from a user.
제 9 항에 있어서,
상기 백업부는
상기 사용자 인터페이스부를 통하여 백업 리스트를 전송하며,
사용자로부터 선택된 백업 리스트에 대한 백업 데이터를 제 1 서버 가상화부 및 제 2 서버 가상화부 중 적어도 하나에 전송하여 가상 머신을 활성화시키는, 서버 이중화 시스템.
In Article 9,
The above backup unit
The backup list is transmitted through the above user interface section,
A server redundancy system that activates a virtual machine by transmitting backup data for a backup list selected by a user to at least one of a first server virtualization unit and a second server virtualization unit.
제 9 항에 있어서,
상기 제 2 물리 서버는
상기 제 1 실시간 복제부 및 상기 제 2 실시간 복제부 중 적어도 하나를 감시하여 상기 제 1 서비스용 저장부, 상기 제 1 저장장치 가상화부, 상기 제 2 서비스용 저장부, 상기 제 2 저장장치 가상화부 및 상기 핫비트 통신채널 중 적어도 하나에 고장이 발생하여 상기 제 1 서비스용 저장부 및 상기 제 2 서비스용 저장부를 동기화 할 수 없는 경우 상기 사용자 인터페이스부를 통하여 동기화 고장 상태를 출력하는 동기화 감시부를 더 포함하는, 서버 이중화 시스템.
In Article 9,
The above second physical server
A server duplication system further comprising a synchronization monitoring unit that monitors at least one of the first real-time replication unit and the second real-time replication unit and outputs a synchronization failure status through the user interface unit when a failure occurs in at least one of the first service storage unit, the first storage virtualization unit, the second service storage unit, the second storage virtualization unit and the hotbit communication channel, making it impossible to synchronize the first service storage unit and the second service storage unit.
KR1020230117970A 2023-09-05 2023-09-05 Server redundancy system and its operation method KR102695840B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230117970A KR102695840B1 (en) 2023-09-05 2023-09-05 Server redundancy system and its operation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230117970A KR102695840B1 (en) 2023-09-05 2023-09-05 Server redundancy system and its operation method

Publications (1)

Publication Number Publication Date
KR102695840B1 true KR102695840B1 (en) 2024-08-16

Family

ID=92586776

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230117970A KR102695840B1 (en) 2023-09-05 2023-09-05 Server redundancy system and its operation method

Country Status (1)

Country Link
KR (1) KR102695840B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009187090A (en) * 2008-02-04 2009-08-20 Nec Corp Cluster system and information processing method
KR20140102482A (en) * 2013-02-14 2014-08-22 주식회사 케이티 Backup system and backup method in virtualization environment
KR102210408B1 (en) * 2014-03-26 2021-01-29 에스케이텔레콤 주식회사 Method for duplication of virtualization server and Virtualization control apparatus thereof
JP2021125093A (en) * 2020-02-07 2021-08-30 株式会社日立製作所 Disaster recovery system, virtual computer recovery method, and management server

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009187090A (en) * 2008-02-04 2009-08-20 Nec Corp Cluster system and information processing method
KR20140102482A (en) * 2013-02-14 2014-08-22 주식회사 케이티 Backup system and backup method in virtualization environment
KR102210408B1 (en) * 2014-03-26 2021-01-29 에스케이텔레콤 주식회사 Method for duplication of virtualization server and Virtualization control apparatus thereof
JP2021125093A (en) * 2020-02-07 2021-08-30 株式会社日立製作所 Disaster recovery system, virtual computer recovery method, and management server

Similar Documents

Publication Publication Date Title
CA2868247C (en) Data sending method, data receiving method, and storage device
US8607230B2 (en) Virtual computer system and migration method of virtual computer
US7650446B2 (en) Storage system for back-end communications with other storage system
KR100604242B1 (en) File server storage arrangement
US9189339B1 (en) Replication of a virtual distributed volume with virtual machine granualarity
US8086895B2 (en) Management method and system for managing replication by taking into account cluster storage accessibility a host computer
US20100205479A1 (en) Information system, data transfer method and data protection method
US9823955B2 (en) Storage system which is capable of processing file access requests and block access requests, and which can manage failures in A and storage system failure management method having a cluster configuration
US20120191659A1 (en) Remote copying system with consistency guaranteed between a pair
JP2005326935A (en) Management server for computer system equipped with virtualization storage and failure preventing/restoring method
JP2008065525A (en) Computer system, data management method and management computer
JP2007072571A (en) Computer system, management computer and access path management method
EP2227743B1 (en) Apparatus and method for managing storage copy services systems
CN111158955B (en) High-availability system based on volume replication and multi-server data synchronization method
US20080288671A1 (en) Virtualization by multipath management software for a plurality of storage volumes
US7886186B2 (en) Storage system and management method for the same
JP4818843B2 (en) Storage system for remote copy
EP3616069B1 (en) Methods for improved data replication in cloud environments and devices thereof
KR102695840B1 (en) Server redundancy system and its operation method
US11269539B2 (en) Methods for managing deletion of data objects by utilizing cold storage and devices thereof
JP2004272318A (en) System changeover system, processing method therefor, and processing program therefor
KR101713034B1 (en) Server duplication system using invisible virtualization volume
JP2021033782A (en) Remote copy system
WO2013073022A1 (en) Computer system and fault detection method

Legal Events

Date Code Title Description
A107 Divisional application of patent
GRNT Written decision to grant