KR102210408B1 - Method for duplication of virtualization server and Virtualization control apparatus thereof - Google Patents

Method for duplication of virtualization server and Virtualization control apparatus thereof Download PDF

Info

Publication number
KR102210408B1
KR102210408B1 KR1020140035130A KR20140035130A KR102210408B1 KR 102210408 B1 KR102210408 B1 KR 102210408B1 KR 1020140035130 A KR1020140035130 A KR 1020140035130A KR 20140035130 A KR20140035130 A KR 20140035130A KR 102210408 B1 KR102210408 B1 KR 102210408B1
Authority
KR
South Korea
Prior art keywords
virtualization
server
virtual machine
virtualization server
standby
Prior art date
Application number
KR1020140035130A
Other languages
Korean (ko)
Other versions
KR20150111608A (en
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 KR1020140035130A priority Critical patent/KR102210408B1/en
Publication of KR20150111608A publication Critical patent/KR20150111608A/en
Application granted granted Critical
Publication of KR102210408B1 publication Critical patent/KR102210408B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45529Embedded in an application, e.g. JavaScript in a Web browser
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents

Abstract

본 발명은 액티브 상태의 복수의 가상화 서버를 하나의 스탠바이 상태의 가상화 서버를 통해 효율적으로 대체할 수 있도록 하는 가상화 서버의 이중화 구축 방법 및 이를 위한 가상화 제어 장치에 관한 것으로서, 가상화 제어 장치가, 액티브 상태인 제1 내지 제N(N은 2 이상의 자연수 임) 가상화 서버의 리소스 상태를 주기적으로 조회하여, 상기 제1 내지 제N 가상화 서버 중에서 기 설정된 횟수 이상 연속적으로 리소스 조회에 실패한 가상화 서버를 비정상 리스트에 등록하고, 상기 비정상 리스트에 등록된 가상화 서버에 대하여 장애가 발생한 것으로 판단하여, 스탠바이 상태인 제N+1 가상화 서버가 상기 비정상 리스트에 등록된 가상화 서버를 대신하여 하나 이상의 가상 머신을 구동하도록 구현된다.The present invention relates to a method for constructing redundancy of a virtualization server that enables a plurality of active virtualization servers to be efficiently replaced by a virtualization server in a standby state, and a virtualization control device therefor, wherein the virtualization control device comprises: In the first to Nth (N is a natural number of 2 or more), the resource status of the virtualization server is periodically inquired, and among the first to Nth virtualization servers, the virtualization server that has failed to search for a resource continuously more than a preset number of times is displayed in the abnormal list. After registering and determining that a failure has occurred in the virtualization server registered in the abnormal list, the N+1th virtualization server in the standby state is implemented to run one or more virtual machines in place of the virtualization server registered in the abnormal list.

Description

가상화 서버의 이중화를 위한 제어 방법 및 이를 위한 가상화 제어 장치{Method for duplication of virtualization server and Virtualization control apparatus thereof}A control method for duplication of a virtualization server, and a virtualization control apparatus for the same.

본 발명은 물리적 서버에 하나 이상의 논리적 가상 머신을 구축하여, CPU, 메모리, 네트워크, 스토리지 등의 리소스를 공유하는 가상화 서버를 운용하는데 있어서, 액티브 상태의 복수의 가상화 서버를 하나의 스탠바이 상태의 가상화 서버를 통해 효율적으로 대체할 수 있도록 하는 가상화 서버의 이중화를 위한 제어 방법 및 이를 위한 가상화 제어 장치에 관한 것이다.In the present invention, in operating a virtualization server that shares resources such as CPU, memory, network, and storage by constructing one or more logical virtual machines on a physical server, a plurality of active virtualization servers are provided as a standby virtualization server. The present invention relates to a control method for redundancy of a virtualization server and a virtualization control device for the same.

가상화(Virtualization)는 하나의 물리적 요소를 여러 개의 논리적 요소로 나누어 관리할 수 있게 하거나, 복수 개의 물리적 요소를 하나의 논리적 요소로 통합하여 관리할 수 있게 하는 기술을 말하는 것으로서, 특히 서버 가상화는 하나의 물리적인 서버 내에 여러 개의 논리적 가상 머신(Virtual Machine)을 두어, CPU, 메모리, 네트워크, 스토리지 등의 자원을 공유하는 기술을 의미한다. 이하에서, 가상화 기술이 적용된 서버를 가상화 서버라 통칭하기로 한다.Virtualization refers to a technology that allows one physical element to be managed by dividing it into several logical elements, or to integrate and manage a plurality of physical elements into one logical element. It refers to a technology that shares resources such as CPU, memory, network, and storage by placing multiple logical virtual machines in a physical server. Hereinafter, the server to which the virtualization technology is applied will be collectively referred to as a virtualization server.

가상화 서버는 기존의 물리적 서버와 달리 여러 사용자가 하나의 서버 자원을 논리적인 서버 자원으로 할당 받아 사용할 수 있기 때문에, 서버 자원의 사용량이 상대적으로 많은 기업 또는 조직의 비용 절감, 친환경 IT 정책 차원에서 이용되고 있다.Unlike existing physical servers, virtualized servers allow multiple users to use one server resource as a logical server resource. Therefore, it is used in terms of cost reduction and eco-friendly IT policy for companies or organizations with relatively large server resource usage. Has become.

아울러, 가상화 서버에 장애 및 비정상 발생 시, 시스템의 안정성을 제공하기 위하여 고가용성 이중화 구조가 채택되고 있다.In addition, in order to provide system stability in the event of a failure or abnormality in a virtualization server, a high-availability redundancy structure is adopted.

가상화 서버를 이중화 구조로 구현하는 방법은, 가상 머신 자체를 이중화하는 방안과, 가상 머신들이 구동되는 서버를 이중화하는 방안으로 구분할 수 있으며, 기본적으로, 가상 머신의 이미지 파일 등을 대용량의 공용 스토리지에 저장하고, 공용 스토리지에 저장된 이미지 파일을 기반으로 액티브 상태 또는 스탠바이 상태의 가상화 서버 또는 가상 머신들의 상태를 동기화시킨 후, 액티브 상태의 가상화 서버 또는 가상 머신에 장애 발생 시, 절체 동작을 통해서 스탠바이 상태의 가상화 서버 또는 가상 머신을 액티브 상태로 전환하는 방식으로 이루어진다.The method of implementing a virtualization server in a redundant structure can be divided into a method of dualizing the virtual machine itself and a method of dualizing the server on which the virtual machines are running, and basically, image files of the virtual machine are stored in a large-capacity common storage. After storing and synchronizing the state of the active or standby virtualization server or virtual machines based on the image file stored in the common storage, when a failure occurs in the active virtualization server or virtual machine, the standby mode This is done by switching the virtualization server or virtual machine to the active state.

이와 같이, 기존의 이중화 시스템은 공용 스토리지 내에 저장된 데이터를 기반으로 이중화 동작을 수행하기 때문에, 공용 스토리지 장애에 따른 위험성을 가지고 있다.As described above, since the existing redundancy system performs a redundancy operation based on data stored in a common storage, there is a risk of a common storage failure.

아울러, 가상 머신 자체를 이중화하는 방식의 경우, 가상화 서버에 발생하는 이상에 적절히 대처할 수 없다는 안정성 문제가 발생할 수 있으며, 각 가상화 서버 별로 해당 액티브 가상 머신과 스탠바이 가상 머신을 들을 개별 관리하여야 하는 복잡성이 따른다.In addition, when the virtual machine itself is redundant, there may be a stability problem that it cannot properly cope with an abnormality occurring in the virtualization server, and the complexity of separately managing the active virtual machine and the standby virtual machine for each virtualization server is increased. Follows.

또한, 가상화 서버를 이중화하는 방식의 경우, 고가의 공용 스토리지가 필요하며, 항상 액티브 상태의 가상화 서버를 스탠바이 상태의 가상화 서버가 백업해야 하므로 구축 비용이 증가한다는 문제점이 있다.In addition, in the case of a method of redundant virtualization servers, expensive common storage is required, and there is a problem that the cost of construction increases because the virtualization server in the standby state must always back up the virtualization server in the active state.

예를 들어, 5개의 가상화 서버로 서비스를 제공하는 경우, 5개의 액티브 서버와 5 개의 스탠바이 서버가 필요하므로, 총 10개의 서버가 시스템을 구성하게 된다. 아울러, 10개의 서버가 1개의 공용 스토리지를 사용한다고 하더라도 고가의 공용 스토리지가 반드시 필요하다는 단점이 있다.For example, in the case of providing services with 5 virtualization servers, 5 active servers and 5 standby servers are required, so a total of 10 servers constitute the system. In addition, even if 10 servers use one common storage, there is a disadvantage that expensive common storage is necessarily required.

한국등록특허 제10-1250881호, 2013년 03월 29일 (명칭: 클라우드 컴퓨팅의 블럭 스토리지 서비스의 데이터 이중화 방법)Korean Patent Registration No. 10-1250881, March 29, 2013 (Name: Data duplication method of block storage service of cloud computing)

본 발명은 물리적 서버에 하나 이상의 논리적 가상 머신을 구축하여, CPU, 메모리, 네트워크, 스토리지 등의 리소스를 공유하는 가상화 서버를 운용하는데 있어서, 하나의 스탠바이 서버를 이용하여 복수의 가상화 서버를 효율적으로 대체할 수 있도록 하는 가상화 서버의 이중화를 위한 제어 방법 및 이를 위한 가상화 제어 장치를 제공하고자 한다.In the present invention, in operating a virtualization server that shares resources such as CPU, memory, network, and storage by building one or more logical virtual machines on a physical server, a single standby server is used to efficiently replace a plurality of virtualization servers. An object of the present invention is to provide a control method for redundancy of a virtualization server and a virtualization control device for the same.

상술한 과제의 해결 수단으로서, 본 발명의 일 실시 예에 따른 가상화 서버의 이중화 구축 방법은, 가상화 제어 장치가, 액티브 상태인 복수의 액티브 가상화 서버의 리소스 상태를 주기적으로 조회하는 단계; 상기 복수의 액티브 가상화 서버 중에서 기 설정된 횟수 이상 연속적으로 리소스 조회에 실패한 가상화 서버를 비정상 리스트에 등록하는 단계; 상기 비정상 리스트에 등록된 가상화 서버에 장애가 발생한 것으로 판단하여, 스탠바이 상태인 하나의 스탠바이 가상화 서버에서 상기 비정상 리스트에 등록된 가상화 서버에서 구동되던 하나 이상의 가상 머신을 생성하도록 제어하는 단계; 및 상기 하나 이상의 가상 머신이 구동하는 가상화 서버 정보를 상기 스탠바이 가상화 서버로 변경하는 단계를 포함한다.As a solution to the above-described problem, a method for building redundancy of a virtualization server according to an embodiment of the present invention includes: periodically inquiring, by a virtualization control device, resource states of a plurality of active virtualization servers that are active; Registering a virtualization server that has failed to search a resource continuously for a predetermined number of times or more among the plurality of active virtualization servers in an abnormal list; Determining that a failure has occurred in the virtualization server registered in the abnormal list, and controlling one standby virtualization server in a standby state to generate one or more virtual machines running in the virtualization server registered in the abnormal list; And changing the information on the virtualization server running the one or more virtual machines to the standby virtualization server.

더하여, 본 발명은 상술한 과제의 다른 해결 수단으로서, 가상화 제어 장치가, 액티브 가상화 서버에서 특정 가상 머신을 생성하도록 제어하는 단계; 상기 액티브 가상화 서버에서 특정 가상 머신이 생성되면, 스탠바이 가상화 서버에 상기 특정 가상 머신의 이미지 파일이 존재하는 지를 확인하는 단계; 확인 결과, 이미지 파일이 존재하지 않으면, 상기 스탠바이 가상화 서버에서 상기 특정 가상 머신을 생성하도록 제어하는 단계; 상기 스탠바이 가상화 서버에 생성된 상기 특정 가상 머신의 구동이 감지되면, 상기 스탠바이 가상화 서버에서 상기 특정 가상 머신이 삭제되도록 제어하는 단계를 더 포함하는 것을 특징으로 가상화 서버의 이중화를 위한 제어 방법을 제공한다.In addition, the present invention provides another solution to the above-described problem, comprising: controlling, by a virtualization control device, to create a specific virtual machine in an active virtualization server; If a specific virtual machine is created in the active virtualization server, checking whether an image file of the specific virtual machine exists in the standby virtualization server; If the image file does not exist as a result of checking, controlling the standby virtualization server to create the specific virtual machine; When the driving of the specific virtual machine created in the standby virtualization server is detected, controlling the specific virtual machine to be deleted from the standby virtualization server is provided, characterized in that it provides a control method for redundancy of the virtualization server. .

또한, 본 발명은 상술한 과제의 또 다른 해결 수단으로서, 가상화 서버별 리소스 상태 정보, 비정상 동작하는 가상화 서버를 관리하는 비정상 리스트, 가상화 서버에서 구동되는 가상 머신 정보 중 하나 이상을 저장하는 저장부; 복수의 액티브 가상화 서버의 리소스상태를 주기적으로 조회하여 상기 리소스 상태 정보를 획득하는 모니터링부; 및 상기 모니터링부에서 기 설정된 횟수 이상 연속적으로 리소스 조회에 실패한 가상화 서버를 상기 비정상 리스트에 등록하고, 상기 비정상 리스트에 등록된 액티브 가상화 서버에서 구동되던 하나 이상의 가상 머신을 하나의 스탠바이 가상화 서버에서 생성하도록 제어하는 가상화 제어부를 포함하는 것을 특징으로 하는 가상화 제어 장치를 제공한다.In addition, the present invention is another solution to the above-described problem, the storage unit for storing at least one of resource status information for each virtualization server, an abnormal list for managing a virtualization server that operates abnormally, and virtual machine information running in the virtualization server; A monitoring unit that periodically inquires a resource state of a plurality of active virtualization servers to obtain the resource state information; And registering a virtualization server in the abnormal list, which continuously fails to search for a resource more than a preset number of times in the monitoring unit, and generating one or more virtual machines running in the active virtualization server registered in the abnormal list in one standby virtualization server. It provides a virtualization control device comprising a virtualization control unit to control.

본 발명은 물리적 서버에 하나 이상의 논리적 가상 머신을 구축하여, CPU, 메모리, 네트워크, 스토리지 등의 자원을 공유하는 가상화 서버를 운용하는데 있어서, 하나의 가상화 서버만을 스탠바이 상태로 대기시키면서, 액티브 상태의 복수의 가상화 서버를 효율적으로 대체할 수 있도록 하며, 공유 스토리지를 이용하지 않고 절체되는 서버 간에 가상화 환경 정보(가상 머신, 가상 머신의 이미지 파일 등)를 신속하게 동기화할 수 있도록 하며, 그 결과 고가용성 가상화 시스템의 구축 비용을 줄이면서, 시스템의 효율성 및 안정성을 확보할 수 있게 된다.In the present invention, in operating a virtualization server that shares resources such as CPU, memory, network, and storage by building one or more logical virtual machines on a physical server, only one virtualization server waits in a standby state, while multiple active states It enables efficient replacement of the virtualization server of, and enables rapid synchronization of virtualization environment information (virtual machines, image files of virtual machines, etc.) between servers that are switched without using shared storage, resulting in high availability virtualization While reducing the cost of building the system, it is possible to ensure the efficiency and stability of the system.

도 1은 본 발명에 따른 이중화 구조의 가상화 시스템을 나타낸 블럭도이다.
도 2는 가상화 서버의 플랫폼 구조를 나타낸 블럭도이다.
도 3은 본 발명에 따른 가상화 시스템에 있어서의 가상화 제어 과정을 나타낸 흐름도이다.
도 4는 본 발명에 따른 가상화 시스템에 있어서, 가상 머신의 이미지 파일 등록 과정의 일 예를 나타낸 흐름도이다.
도 5는 본 발명에 따른 가상화 제어 장치의 상세 구성을 나타낸 블럭도이다.
1 is a block diagram showing a virtualization system of a redundant structure according to the present invention.
2 is a block diagram showing a platform structure of a virtualization server.
3 is a flowchart illustrating a virtualization control process in a virtualization system according to the present invention.
4 is a flowchart illustrating an example of a process of registering an image file of a virtual machine in the virtualization system according to the present invention.
5 is a block diagram showing a detailed configuration of a virtualization control apparatus according to the present invention.

이하 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 상세히 설명한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, in the following description and the accompanying drawings, detailed descriptions of known functions or configurations that may obscure the subject matter of the present invention will be omitted. In addition, it should be noted that the same components are indicated by the same reference numerals as possible throughout the drawings.

이하에서 설명되는 본 명세서 및 청구범위에 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.The terms or words used in the present specification and claims described below should not be construed as being limited to a conventional or dictionary meaning, and the inventor is appropriate as a concept of terms for describing his own invention in the best way. It should be interpreted as a meaning and concept consistent with the technical idea of the present invention on the basis of the principle that it can be defined. Therefore, the embodiments described in the present specification and the configurations shown in the drawings are only the most preferred embodiments of the present invention, and do not represent all the technical ideas of the present invention, and thus various alternatives that can be substituted for them at the time of application It should be understood that there may be equivalents and variations.

또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제2 구성요소는 제1 구성요소로 명명될 수 있고, 유사하게 제1 구성요소도 제2 구성요소로 명명될 수 있다.In addition, terms including ordinal numbers such as first and second are used to describe various elements, and are only used for the purpose of distinguishing one element from other elements, and to limit the elements. Not used. For example, without departing from the scope of the present invention, a second component may be referred to as a first component, and similarly, a first component may be referred to as a second component.

더하여, 어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급할 경우, 이는 논리적 또는 물리적으로 연결되거나, 접속될 수 있음을 의미한다. 다시 말해, 구성요소가 다른 구성요소에 직접적으로 연결되거나 접속되어 있을 수 있지만, 중간에 다른 구성요소가 존재할 수도 있으며, 간접적으로 연결되거나 접속될 수도 있다고 이해되어야 할 것이다.In addition, when a component is referred to as being "connected" or "connected" to another component, it means that it is logically or physically connected or can be connected. In other words, it should be understood that a component may be directly connected or connected to another component, but another component may exist in the middle, or may be indirectly connected or connected.

또한, 본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 본 명세서에서 기술되는 "포함 한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In addition, terms used in the present specification are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In addition, terms such as "comprises" or "have" described herein are intended to designate the presence of features, numbers, steps, actions, components, parts, or a combination thereof described in the specification. It is to be understood that the above other features, or the possibility of the presence or addition of numbers, steps, actions, components, parts, or combinations thereof, are not preliminarily excluded.

도 1은 본 발명에 따른 이중화 구조의 가상화 시스템을 나타낸 블럭도이다.1 is a block diagram showing a virtualization system of a redundant structure according to the present invention.

도 1을 참조하면, 본 발명에 따른 가상화 시스템은 복수의 가상화 서버(100_1 ~ 100_N+1)(여기서, N은 2 이상의 자연수 임)와, 가상화 제어 장치(200)로 이루어질 수 있다.Referring to FIG. 1, the virtualization system according to the present invention may include a plurality of virtualization servers 100_1 to 100_N+1 (where N is a natural number of 2 or more) and a virtualization control device 200.

상기 복수의 가상화 서버(100_1 ~ 100_N+1)는 활성화 여부에 따라서 액티브 가상화 서버와 스탠바이 가상화 서버로 구분될 수 있다. 특히, 본 발명에 있어서, 복수의 가상화 서버(100_1~100_N+1) 중 N개는 액티브 가상화 서버로 실제 서비스를 수행중이며, 나머지 1개만이 스탠바이 가상화 서버로 복수의 액티브 가상화 서버 중 어느 하나에서 장애 발생 시 절체를 위해 대기한다. 이하에서, N개의 액티브 가상화 서버를 제1 내지 제N 가상화 서버(100_1 ~ 100_N)로, 하나의 스탠바이 가상화 서버를 제N+1 가상화 서버(100_N+1)로 가정하여 설명한다.The plurality of virtualization servers 100_1 to 100_N+1 may be divided into an active virtualization server and a standby virtualization server depending on whether or not they are activated. In particular, in the present invention, N of the plurality of virtualization servers (100_1 to 100_N+1) are performing actual services as active virtualization servers, and only the remaining one is a standby virtualization server and fails in any one of the plurality of active virtualization servers. When it occurs, it waits for transfer. Hereinafter, it is assumed that N active virtualization servers are the first to Nth virtualization servers 100_1 to 100_N, and one standby virtualization server is the N+1th virtualization server 100_N+1.

상기 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1)는 서버 가상화 기술에 따라 구현된 것으로서, 도 2에 도시된 바와 같이, 단일의 물리 서버위에 구현된 하나 이상의 가상 머신(120)을 포함하며, 상기 하나 이상의 가상 머신(120)을 통해서 소정의 서비스를 수행할 수 있다. 구체적으로, 상기 하나 이상의 가상 머신(120)은, 물리 서버에 구비된 호스트 OS(Operating System)(110) 위에 가상화된 별도의 OS(Operating System)(121)와, 상기 별도의 OS(121)위에서 구동하는 어플리케이션(122)으로 이루어질 수 있다.The first to N+1th virtualization servers 100_1 to 100_N+1 are implemented according to server virtualization technology, and as shown in FIG. 2, at least one virtual machine 120 implemented on a single physical server is provided. It includes, and a predetermined service may be performed through the one or more virtual machines 120. Specifically, the one or more virtual machines 120 include a separate Operating System (OS) 121 virtualized on a host OS (Operating System) 110 provided in a physical server, and on the separate OS 121 It may be made of an application 122 to be driven.

여기서, 가상 머신(120)에 포함된 어플리케이션(122)은 항상 동일한 설정(Configuration)이나 정보나 기능을 갖고 있는 것이 아니며, 액티브 상태인 제1 내지 제N 가상화 서버(100_1 ~ 100_N)의 가상 머신의 수도 서로 동일한 것은 아니다. 즉, 제1 내지 제N 가상화 서버(100_1 ~ 100_N) 내 가상 머신(120)의 수는 다를 수 있다. 또한, 각 가상 머신(120)에서 가상화된 OS(121) 및 어플리케이션(122)도 서로 다를 수 있다.Here, the application 122 included in the virtual machine 120 does not always have the same configuration, information or function, and the virtual machines of the first to Nth virtualization servers 100_1 to 100_N, which are active The numbers are not the same. That is, the number of virtual machines 120 in the first to Nth virtualization servers 100_1 to 100_N may be different. In addition, the OS 121 and the application 122 virtualized in each virtual machine 120 may be different from each other.

따라서, 상기 제1 내지 제N 가상화 서버(100_1 ~ 100_N)는 액티브 상태에서, 각각 하나 이상의 가상 머신(120)을 구동하여, 해당 가상 머신(120)을 통해 각각 소정의 서비스를 수행하며, 제N+1 가상화 서버(100_N+1)은 스탠바이 상태로 있다가, 후술하는 가상화 제어 장치(200)의 제어에 따라서 액티브 상태로 전환되어, 상기 제1 내지 제N 가상화 서버(100_1 ~ 100_N) 중 어느 한 가상화 서버에서 실행되던 하나 이상의 가상 머신을 백업하여, 해당 가상화 서버를 대신하여 동작하게 된다. Accordingly, the first to Nth virtualization servers 100_1 to 100_N each drive one or more virtual machines 120 in an active state to perform predetermined services through the corresponding virtual machines 120, respectively, and The +1 virtualization server 100_N+1 is in a standby state, and then is converted to an active state according to the control of the virtualization control device 200, which will be described later, so that any one of the first to Nth virtualization servers 100_1 to 100_N. One or more virtual machines running on the virtualization server are backed up, and they operate in place of the virtualization server.

상기 가상화 제어 장치(200)는 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1)에 대한 관리 및 제어를 수행하기 위한 구성이다. 구체적으로, 상기 가상화 제어 장치(200)는 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1)의 상태를 모니터링 하면서, 특정 가상화 서버의 장애를 검출하고, 장애가 검출된 가상화 서버와 제N+1 가상화 서버(100_N+1) 간의 동기화 및 절체를 제어한다.The virtualization control device 200 is a component for managing and controlling the first to N+1th virtualization servers 100_1 to 100_N+1. Specifically, the virtualization control device 200 monitors the state of the first to N+1th virtualization servers 100_1 to 100_N+1, detects a failure of a specific virtualization server, and detects a failure of the virtualization server and the Nth +1 Controls synchronization and switching between virtualization servers (100_N+1).

이를 위하여, 상기 가상화 제어 장치(200)는, 모든 액티브 상태의 가상화 서버, 즉, 제1 내지 제N 가상화 서버(100_1 ~ 100_N)의 개수(즉, N), 제1 내지 제N 가상화 서버(100_1 ~ 100_N)에 구비된 가상 머신 정보를 관리한다. 여기서, 가상 머신 정보는, 제1 내지 제N 가상화 서버(100_1 ~ 100_N) 별로 구비된 가상 머신의 개수, 각 가상 머신들의 이미지 파일을 포함할 수 있다. 여기서, 가상 머신의 이미지 파일은, 해당 가상 머신이 할당 받은 가상 스토리지 자원이 기존의 물리적 서버에서의 하드디스크 이미지와 같은 형태의 비트 대 비트(bit-by-bit) 방식으로 생성되는 것으로서, 가상 머신에 탑재되는 OS를 비롯한 데이터베이스 자원, 기타 정보들이 모두 기록된다. 따라서, 가상 머신의 이미지 파일에는 가상화 환경에 대한 많은 정보가 포함되므로, 이러한 이미지 파일을 통해서 가상 머신을 생성할 수 있다.To this end, the virtualization control device 200 includes the number of virtualization servers in all active states, that is, the first to Nth virtualization servers 100_1 to 100_N (ie, N), and the first to Nth virtualization servers 100_1 ~ 100_N) virtual machine information is managed. Here, the virtual machine information may include the number of virtual machines provided for each of the first to Nth virtualization servers 100_1 to 100_N, and image files of each virtual machine. Here, in the image file of the virtual machine, the virtual storage resource allocated by the virtual machine is created in a bit-by-bit method in the same format as the hard disk image in the existing physical server. Database resources and other information including the OS installed in the system are all recorded. Therefore, since the image file of the virtual machine contains a lot of information about the virtualization environment, a virtual machine can be created through the image file.

그리고, 상기 가상화 제어 장치(200)는 액티브 상태의 가상화 서버, 예를 들어, 제1 내지 제N 가상화 서버(100_1 ~ 100_N) 중 어느 하나에서의 장애 발생을 감지하고, 장애가 발생한 가상화 서버에서 스탠바이 상태의 제N+1 가상화 서버(100_N+1)로 서버 절체가 이루어지도록 제어한다.In addition, the virtualization control device 200 detects the occurrence of a failure in an active virtualization server, for example, one of the first to Nth virtualization servers 100_1 to 100_N, and the standby state in the virtualization server in which the failure occurs. The server is controlled to be switched to the N+1th virtualization server 100_N+1.

예를 들어, 제1 가상화 서버(100_1)에서 장애가 발생한 경우, 제1 가상화 서버(100_1) 내에서 구동중인 가상 머신들(가상 머신 #0, 가상 머신#1, 가상 머신#2, 가상 머신#3)이 제공하던 모든 서비스가 중단된다. 이때, 상기 가상화 제어 장치(200)는 제1 가상화 서버(100_1)와 교환한 상태 메시지에 따라서 제1 가상화 서버(100_1)의 장애 발생을 감지하고, 상기 제1 가상화 서버(100_1)에서 구동 중이던 가상 머신들(가상 머신 #0, 가상 머신#1, 가상 머신#2, 가상 머신#3)을 제N+1 가상화 서버(100_N+1)에서 생성하도록 제어하면, 상기 제N+1 가상화 서버(100_N+1)에 생성된 가상 머신들(가상 머신 #0, 가상 머신#1, 가상 머신#2, 가상 머신#3)이 구동을 시작하여 서비스를 다시 제공한다.For example, when a failure occurs in the first virtualization server 100_1, virtual machines running in the first virtualization server 100_1 (virtual machine #0, virtual machine #1, virtual machine #2, virtual machine #3) All services provided by) are stopped. At this time, the virtualization control device 200 detects the occurrence of a failure of the first virtualization server 100_1 according to the status message exchanged with the first virtualization server 100_1, and the virtualization control device 200 is running in the first virtualization server 100_1. When the machines (virtual machine #0, virtual machine #1, virtual machine #2, virtual machine #3) are generated by the N+1th virtualization server (100_N+1), the N+1th virtualization server (100_N) The virtual machines created in +1) (virtual machine #0, virtual machine #1, virtual machine #2, virtual machine #3) start running and provide services again.

상술한 가상화 시스템의 동작을 도 3의 흐름도를 참조하여 더 구체적으로 설명하기로 한다.The operation of the above-described virtualization system will be described in more detail with reference to the flowchart of FIG. 3.

도 3은 본 발명에 따른 가상화 시스템에 있어서의 가상화 제어 과정을 나타낸 흐름도이다.3 is a flowchart illustrating a virtualization control process in a virtualization system according to the present invention.

참고로, 이하의 설명에서 가상화 제어 장치(200)에는 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1)에 대한 정보 및 그 상태 정보(액티브, 스탠바이)가 등록되어 있는 것으로 가정한다.For reference, in the following description, it is assumed that information on the first to N+1th virtualization servers 100_1 to 100_N+1 and state information (active, standby) are registered in the virtualization control device 200.

상기 상태에서, 가상화 제어 장치(200)는, 주기적으로(예를 들어, 5초) 상기 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1)에 대하여 리소스 조회를 수행한다(S105 단계). 상기 리소스 조회는 액티브 상태의 가상화 서버뿐만 아니라 스탠바이 상태의 가상화 서버에 대해서도 함께 이루어진다.In the above state, the virtualization control device 200 periodically (eg, 5 seconds) performs a resource inquiry on the first to N+1th virtualization servers 100_1 to 100_N+1 (step S105). . The resource inquiry is performed not only for the virtual server in the active state but also for the virtual server in the standby state.

여기서, 리소스는 CPU, Memory, Disk, Network 상태 등을 포함한다. 상기 리소스 조회는, 가상화 제어 장치(200)가 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1)로 리소스 조회 메시지를 전송하고, 그의 응답 메시지를 통해 리소스 상태 정보를 수신하는 형태로 이루어질 수 있다. 상기 리소스 조회는 Nagios와 같은 컴퓨터 시스템 및 네트워크의 모니터링 솔루션을 이용하여 이루어질 수 있다.Here, the resource includes CPU, Memory, Disk, Network status, etc. The resource inquiry is performed in a form in which the virtualization control device 200 transmits a resource inquiry message to the first to N+1th virtualization servers 100_1 to 100_N+1, and receives resource status information through the response message. I can. The resource inquiry may be performed using a computer system such as Nagios and a network monitoring solution.

아울러, 상기 리소스 조회는 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1)에 대하여 동시에 시행될 수 도 있고, 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1)가 가상화 제어 장치(200)에 연동된 시간 순서에 의하여 시간차를 가지고 순차적으로 시행될 수 있다.In addition, the resource inquiry may be performed simultaneously for the first to N+1th virtualization servers 100_1 to 100_N+1, and the first to N+1th virtualization servers 100_1 to 100_N+1 control virtualization. It may be implemented sequentially with a time difference according to the time order linked to the device 200.

상술한 바와 같이 주기적으로 리소스 조회(S105 단계)를 수행한 후에, 상기 가상화 제어 장치(200)는 리소스 조회를 실패한 가상화 서버 및 해당 가상화 서버에서의 리소스 조회 연속 실패 횟수를 관리한다.As described above, after periodically performing a resource inquiry (step S105), the virtualization control device 200 manages the virtualization server in which the resource inquiry fails and the number of consecutive resource inquiry failures in the corresponding virtualization server.

그리고, 상기 가상화 제어 장치(200)는, 리소스 조회 연속 실패 횟수가 기 설정된 수(예를 들어, 2회) 이상인 경우(S110 단계), 해당하는 가상화 서버(예를 들어, 제1 가상화 서버(100-1))를 비정상 리스트에 등록한다(S115 단계). 상기 비정상 리스트는 가상화 제어 장치(200)가 관리하는 복수의 가상화 서버 중에서 장애가 발생한 가상화 서버들을 관리하기 위한 리스트로서, 리소스 조회가 기 설정된 횟수 이상 연속적으로 실패한 가상화 서버들의 식별 정보가 등록된다. 아울러, 상기 비정상 리스트는 리소스 조회 완료 시마다 갱신될 수 있다.And, the virtualization control device 200, when the number of consecutive failures in resource inquiry is more than a preset number (for example, two times) (step S110), the corresponding virtualization server (for example, the first virtualization server 100 -1)) is registered in the abnormal list (step S115). The abnormal list is a list for managing failed virtualization servers among a plurality of virtualization servers managed by the virtualization control device 200, and identification information of virtualization servers for which resource inquiries have failed consecutively for a predetermined number of times or more is registered. In addition, the abnormal list may be updated every time resource inquiry is completed.

한편, 상기 S110 단계에서, 특정 가상화 서버에 대하여 리소스 조회가 기 설정된 수 미만으로 실패한 후, 그 다음에는 성공적으로 리소스 조회가 이루어진 경우, 즉, 리소스 조회가 기 설정된 수 이상 연속적으로 실패하지 않은 가상화 서버에 대해서는 정상으로 판단하여, S115 단계를 수행하지 않고, S120 단계로 넘어간다.On the other hand, in the step S110, after a resource inquiry fails for a specific virtualization server less than a preset number, and then a resource inquiry is successfully performed, that is, a virtualization server in which the resource inquiry does not continuously fail more than the preset number. It is determined that it is normal, and the step S115 is not performed and the process proceeds to step S120.

이어서, 상기 가상화 제어 장치(200)는 S110 단계 또는 S115 단계를 수행한 후, 상기 비정상 리스트의 길이가 1 인지를 확인한다(S120 단계). 여기서, 비정상 리스트의 길이가 1 이라는 것은, 비정상 리스트에 하나의 가상화 서버가 등록되어 있는 상태로서, 제1 내지 제N 가상화 서버(100_1 ~ 100_N) 중에서 어느 하나에 장애가 발생한 것을 의미할 수 있다.Subsequently, after performing step S110 or step S115, the virtualization control device 200 checks whether the length of the abnormal list is 1 (step S120). Here, when the length of the abnormal list is 1, as a state in which one virtualization server is registered in the abnormal list, it may mean that a failure occurs in any one of the first to Nth virtualization servers 100_1 to 100_N.

본 발명에 있어서, 상기 가상화 제어 장치(200)는 비정상 리스트의 길이가 1인 경우, 상기 스탠바이 상태인 제N+1 가상화 서버(100_N+1)가 상기 비정상 리스트에 첫 번째로 등록된 가상화 서버, 예를 들어, 장애가 발생한 제1 가상화 서버(100_1)에 구동 중이던 하나 이상의 가상 머신(예를 들어, 가상 머신 #0, 가상 머신#1, 가상 머신#2, 가상 머신#3)을 구동 순서대로 생성하도록 제어한다(S125 단계). 이렇게 생성된 하나 이상의 가상 머신들(가상 머신 #0, 가상 머신#1, 가상 머신#2, 가상 머신#3)은 제N+1 가상화 서버(100_N+1)에서 구동을 시작하여 상기 제1 가상화 서버(100_1)를 통해 제공하던 서비스를 이어서 제공하게 된다.In the present invention, when the length of the abnormal list is 1, the virtualization control apparatus 200 is a virtualization server in which the N+1th virtualization server (100_N+1) in the standby state is first registered in the abnormal list, For example, one or more virtual machines running on the failed first virtualization server 100_1 (for example, virtual machine #0, virtual machine #1, virtual machine #2, virtual machine #3) are created in order of operation Control to be performed (step S125). The one or more virtual machines (virtual machine #0, virtual machine #1, virtual machine #2, virtual machine #3) created in this way start running on the N+1th virtualization server (100_N+1), and the first virtualization The service that was provided through the server 100_1 is subsequently provided.

이상의 과정을 통해서, 장애가 발생한 제1 가상화 서버(100_1)에서 제N+1 가상화 서버(100_N+1)로의 서버 절체가 이루어지게 되며, 제1 가상화 서버(100_1)에서 제공되던 서비스는 중단 없이 제N+1 가상화 서버(100_N+1)를 통해서 안정적으로 제공되게 된다.Through the above process, the server is switched from the failed first virtualization server 100_1 to the N+1th virtualization server 100_N+1, and the service provided by the first virtualization server 100_1 is not interrupted. It is stably provided through the +1 virtualization server (100_N+1).

한편, S120 단계에서, 비정상 리스트의 길이가 0 이거나 2 이상일 수 있다. 여기서, 비정상 리스트의 길이가 0이라는 것은, 모든 가상화 서버가 정상적으로 동작중인 것으로서, 서버 절체를 필요로 하지 않음을 의미한다.Meanwhile, in step S120, the length of the abnormal list may be 0 or 2 or more. Here, when the length of the abnormal list is 0, it means that all virtualization servers are operating normally, and server switching is not required.

그리고, 비정상 리스트의 길이가 2 이상이라는 것은, 네트워크 단절 등으로 복수의 가상화 서버와 정상적으로 통신이 불가능한 상태이거나, 제N+1 가상화 서버(100_N+1)로의 서버 절체를 수행하는 중에, 다른 가상화 서버에서도 장애가 발생하였음을 의미할 수 있다.And, if the length of the abnormal list is 2 or more, it is a state in which communication with a plurality of virtualization servers is impossible due to a network disconnection, or during server switching to the N+1th virtualization server (100_N+1), another virtualization server It can also mean that a failure has occurred.

따라서, 가상화 제어 장치(200)는 비정상 리스트의 길이가 2 이상인 경우, 가상화 서버들의 상태를 보다 정확히 판단하기 위하여, 서버 절체를 수행하지 않고, 다시 S105 단계로 되돌아가 주기적인 리소스 조회를 통해 가상화 서버들의 상태를 다시 확인하도록 한다.Therefore, when the length of the abnormal list is 2 or more, the virtualization control device 200 does not perform a server switchover and returns to step S105 again to determine the state of the virtualization servers more accurately. Make sure to check their status again.

그리고, 비정상 리스트의 길이가 1로 변경될 때, 해당 비정상 리스트에 첫 번째로 등록된 제N 가상화 서버(100_N)에 대한 서버 절체 과정(S125 단계)이 이루어질 수 있다.And, when the length of the abnormal list is changed to 1, a server switching process (step S125) for the Nth virtualization server 100_N first registered in the abnormal list may be performed.

참고로, 가상화 제어 장치(200)에 의하여 제N+1 가상화 서버(100_N+1)가 장애가 발생한 제1 가상화 서버(100_1)를 대신하여 동작하게 되면, 가상화 제어 장치(200)는 서버 절체가 이루어진 하나 이상의 가상 머신(가상 머신#0, 가상 머신#1, 가상 머신#2, 가상 머신#3)이 동작하는 가상화 서버 정보를, 상기 제1 가상화 서버(100_1)에서 제N+1 가상화 서버(100_N+1)로 변경한다(S130 단계). 여기서, 가상화 서버 정보는, 해당 가상화 서버의 MAC 주소, IP 주소 중 하나 이상을 포함할 수 있다.For reference, when the N+1th virtualization server 100_N+1 operates in place of the failed first virtualization server 100_1 by the virtualization control device 200, the virtualization control device 200 performs server switching. The virtualization server information on which one or more virtual machines (virtual machine #0, virtual machine #1, virtual machine #2, virtual machine #3) is operated is stored in the N+1th virtualization server 100_N in the first virtualization server 100_1. Change to +1) (step S130). Here, the virtualization server information may include one or more of a MAC address and an IP address of the corresponding virtualization server.

아울러, 제N+1 가상화 서버(100_N+1)로의 서버 절체 후에, 장애가 발생한 제1 가상화 서버(100_1)에 대해서는 별도의 점검이 이루어지며, 이를 통해 장애가 복구될 수 있다.In addition, after the server is switched to the N+1th virtualization server 100_N+1, a separate check is performed on the failed first virtualization server 100_1, and the failure may be recovered through this.

이렇게 제1 가상화 서버(100_1)의 장애가 복구되면, 상기 제1 가상화 서버(100_1)내에 구비된 동일한 하나 이상의 가상 머신(가상 머신#0, 가상 머신#1, 가상 머신#2, 가상 머신#3)도 다시 구동을 시작할 수 있으며, 이 경우, 동일한 하나 이상의 가상 머신(가상 머신#0, 가상 머신#1, 가상 머신#2, 가상 머신#3)이 서로 다른 두 개의 가상화 서버에서 동작하게 되는 현상이 발생할 수 있다.When the failure of the first virtualization server 100_1 is recovered in this way, the same one or more virtual machines (virtual machine #0, virtual machine #1, virtual machine #2, virtual machine #3) provided in the first virtualization server 100_1 You can also start running again, and in this case, a phenomenon in which one or more identical virtual machines (virtual machine #0, virtual machine #1, virtual machine #2, virtual machine #3) operate on two different virtualization servers. Can occur.

이러한 문제를 해결하기 위하여, 가상화 제어 장치(200)는, 가상 머신 별로 구동되는 가상화 서버 정보를 관리하며, 특정 가상화 서버에서 구동중인 가상 머신이 다른 가상화 서버에서 구동을 시작하는 것을 감지하고, 상기 가상화 서버에서 동일 가상 머신의 구동이 중단되도록 상기 다른 가상화 서버로 가상 머신의 삭제를 지시할 수 있다. 마찬가지로, 장애가 복구된 제1 가상화 서버(100_1)가 정상 동작함에 따라서, 상기 제1 가상화 서버(100_1)에 존재하는 동일한 가상 머신이 구동되기 시작하는 경우, 가상화 제어 장치(200)가 이를 감지하여, 상기 제1 가상화 서버(100_1)로 해당 가상 머신(가상 머신#0, 가상 머신#1, 가상 머신#2, 가상 머신#3)의 삭제를 요청하여 동작을 중지시킬 수 있다.In order to solve this problem, the virtualization control device 200 manages virtualization server information that is driven for each virtual machine, detects that a virtual machine running on a specific virtualization server starts running on another virtualization server, and The deletion of the virtual machine may be instructed to the other virtualization server to stop the operation of the same virtual machine in the server. Likewise, as the first virtualization server 100_1 from which the failure has been recovered operates normally, when the same virtual machine existing in the first virtualization server 100_1 starts to be driven, the virtualization control device 200 detects it, The operation may be stopped by requesting the first virtualization server 100_1 to delete the corresponding virtual machine (virtual machine #0, virtual machine #1, virtual machine #2, virtual machine #3).

이후, 장애가 복구된 제1 가상화 서버(100_1)가 스탠바이 상태로 대기하며, 액티브 상태인 제2 내지 제N+1 가상화 서버(100_2 ~ 100_N+1) 중 어느 하나에 장애가 발생 시, 장애가 발생한 가상화 서버를 대신하여 동작할 수 있도록 준비할 수 있다.Thereafter, the failed first virtualization server 100_1 waits in a standby state, and when a failure occurs in any one of the active second to N+1 virtualization servers 100_2 to 100_N+1, the failed virtualization server It can be prepared to operate on behalf of.

상술한 과정에 의하면, 본 발명은 N 개의 가상화 서버를 구동 시, 공용 스토리지를 사용하지 않고 스탠바이 상태인 하나의 가상화 서버만으로 N 개의 가상화 서버에 대한 이중화를 구현할 수 있으며, 그 결과 고가용성 가상화 시스템의 구축 비용을 절감시킬 수 있다.According to the above-described process, the present invention can implement redundancy for N virtualization servers with only one virtualization server in a standby state without using common storage when driving N virtualization servers. As a result, the high availability virtualization system It can reduce the construction cost.

한편, 상술한 바와 같이 동작하는 본 발명에 따른 가상화 시스템에 있어서, 별도의 공유 스토리지가 존재하지 않으므로, 스탠바이 상태의 여분의 가상화 서버(예를 들어, 제N+1 가상화 서버(100_N+1))는 액티브 상태인 N 개의 가상화 서버(예를 들어, 제1 내지 제N 가상화 서버(100_1 ~ 100_N))에서 구동되는 가상 머신들의 이미지 파일을 가지고 있지 않은 경우, S125 단계를 통해서 서버 절체가 이루어질 때, 해당하는 가상 머신의 이미지 파일이 존재하는 지를 확인하여 존재하지 않는 경우, 가상화 제어 장치(200)를 통해서 해당 가상 머신의 이미지 파일을 전송 받아 상기 이미지 파일을 이용하여 가상 머신을 생성하여야 한다.Meanwhile, in the virtualization system according to the present invention operating as described above, since there is no separate shared storage, an extra virtualization server in a standby state (for example, the N+1th virtualization server 100_N+1) When does not have the image files of virtual machines running in the active N virtualization servers (for example, the first to Nth virtualization servers (100_1 to 100_N)), when the server is switched through step S125, It is checked whether the image file of the corresponding virtual machine exists, and if it does not exist, the virtual machine needs to be generated by receiving the image file of the corresponding virtual machine through the virtualization control device 200 and using the image file.

이때, 제N+1 가상화 서버(100_N+1)가 가상화 제어 장치(200)로부터 가상 머신의 이미지 파일을 다운받는 시간만큼, 해당 가상 머신을 통해 제공되는 서비스의 단절 시간이 길어질 수 있다.In this case, the disconnection time of a service provided through the virtual machine may be longer as long as the time when the N+1th virtualization server 100_N+1 downloads the image file of the virtual machine from the virtualization control device 200.

이러한 서비스 단절 시간을 최소화하기 위하여, 본 발명에 따른 가상화 시스템에 있어서, 스탠바이 상태의 가상화 서버, 예를 들어, 제N+1 가상화 서버(100_N+1)는 서버 절체가 이루어지기 전, 즉, 스탠바이 상태인 동안 액티브 상태의 가상화 서버, 예를 들어, 제1 내지 제N 가상화 서버(100_1 ~ 100_N)에서 구동하는 가상 머신의 이미지 파일을 미리 다운받아 저장할 수 있다.In order to minimize such a service disconnection time, in the virtualization system according to the present invention, the virtualization server in the standby state, for example, the N+1th virtualization server 100_N+1, is before the server switchover, that is, standby While in a state, an image file of a virtual machine running in an active virtualization server, for example, the first to Nth virtualization servers 100_1 to 100_N, may be downloaded and stored in advance.

도 4는 본 발명에 따른 가상화 시스템에 있어서, 서비스 단절 시간을 최소화하기 위한, 가상 머신의 이미지 파일 등록 과정을 나타낸 흐름도이다.4 is a flowchart illustrating a process of registering an image file of a virtual machine in order to minimize a service disconnection time in the virtualization system according to the present invention.

본 발명에 따른 가상화 제어 장치(200)는 도 3과 같은 가상화 제어 과정과는 별도로 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1)에서의 가상 머신 생성을 관리한다.The virtualization control apparatus 200 according to the present invention manages virtual machine creation in the first to N+1th virtualization servers 100_1 to 100_N+1 separately from the virtualization control process as shown in FIG. 3.

구체적으로, 도 4에 도시된 바와 같이, 가상화 제어 장치(200)는 운영자로부터 입력된 명령을 통해서, 특정 가상화 서버로 가상 머신의 생성을 요청할 수 있다(S205). 이하에서, 제1 가상화 서버(100_1)에 가상 머신#1의 생성이 요청된 것으로 가정한다.Specifically, as shown in FIG. 4, the virtualization control device 200 may request creation of a virtual machine from a specific virtualization server through a command input from an operator (S205). Hereinafter, it is assumed that the creation of the virtual machine #1 is requested to the first virtualization server 100_1.

가상화 제어 장치(200)는 상기 명령에 따라서 상기 제1 가상화 서버(100_1)로 가상 머신의 생성을 요청한다(S210 단계). 상기 요청에는 가상 머신의 식별 정보를 포함할 수 있다.The virtualization control device 200 requests the first virtualization server 100_1 to generate a virtual machine according to the command (step S210). The request may include identification information of the virtual machine.

가상 머신의 생성 요청을 수신한 가상화 서버, 즉, 제1 가상화 서버(100_1)는 요청 받은 가상 머신을 생성하기 위하여, 먼저, 해당 가상 머신의 이미지 파일이 가상화 서버 내부에 존재하는지 확인한다(S215 단계).In order to create the requested virtual machine, the virtualization server, that is, the first virtualization server 100_1, which has received the virtual machine creation request, first checks whether the image file of the virtual machine exists inside the virtualization server (step S215 ).

확인 결과, 가상화 서버 내부에 해당 가상 머신의 이미지 파일이 존재하지 않는 경우, 제1 가상화 서버(100_1)는 가상화 제어 장치(200)에 요청하여 해당 가상 머신의 이미지 파일을 수신하여 저장한다(S220).As a result of the verification, if the image file of the virtual machine does not exist inside the virtualization server, the first virtualization server 100_1 requests the virtualization control device 200 to receive and store the image file of the virtual machine (S220). .

그리고, 상기 S215 단계에서 확인 결과, 제1 가상화 서버(100_1)에 생성 요청된 가상 머신의 이미지 파일이 존재하거나 S220 단계를 통해서 가상화 제어 장치(200)로부터 해당 가상 머신의 이미지 파일이 수신되면, 제1 가상화 서버(100_1)는 이를 바탕으로 하여 해당 가상 머신을 생성한다(S225). 이렇게 생성된 가상 머신은 제1 가상화 서버(100_1)에서 구동하여 서비스를 제공하게 된다. 아울러, 가상화 제어 장치(200)는 제1 가상화 서버(100_1)에서의 해당 가상 머신의 구동을 감지하여, 해당 가상 머신이 구동되는 가상화 서버 정보로서, 제1 가상화 서버(100_1)의 정보(MAC 주소, IP 주소 등)를 매핑하여 관리하게 된다.And, as a result of checking in step S215, if the image file of the virtual machine requested to be created exists in the first virtualization server 100_1, or an image file of the virtual machine is received from the virtualization control device 200 through step S220, the first 1 The virtualization server 100_1 creates a corresponding virtual machine based on this (S225). The generated virtual machine is driven in the first virtualization server 100_1 to provide a service. In addition, the virtualization control device 200 detects the driving of the virtual machine in the first virtualization server 100_1, as the virtualization server information on which the virtual machine is driven, the information (MAC address) of the first virtualization server 100_1. , IP address, etc.) are mapped and managed.

한편, 가상화 제어 장치(200)는, 상술한 과정을 통해서 제1 가상화 서버(100_1)에 가상 머신의 생성이 완료되면, 다음으로, 스탠바이 상태인 가상화 서버, 예를 들어, 제N+1 가상화 서버(100_N+1)에 상기 제1 가상화 서버(100_1)에 생성한 가상 머신의 이미지 파일이 존재하는 지를 확인한다(S230). 이를 위해, 가상화 제어 장치(200)는, 모든 가상화 서버, 즉, 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1)에 대한 각 가상 머신의 이미지 파일의 전송 기록을 관리할 수 있으며, 이전의 전송 기록을 참조하여 해당 가상 머신의 이미지 파일이 제N+1 가상화 서버(100_N+1)에 존재하는 지 여부를 판단할 수 있다.On the other hand, the virtualization control device 200, after the creation of the virtual machine on the first virtualization server 100_1 is completed through the above-described process, next, the virtualization server in the standby state, for example, the N+1th virtualization server It is checked whether the image file of the virtual machine created in the first virtualization server 100_1 exists in (100_N+1) (S230). To this end, the virtualization control device 200 may manage the transfer record of the image file of each virtual machine to all virtualization servers, that is, the first to N+1th virtualization servers 100_1 to 100_N+1, It may be determined whether the image file of the corresponding virtual machine exists in the N+1th virtualization server 100_N+1 with reference to the previous transfer record.

여기서, 스탠바이 상태의 제N+1 가상화 서버(100_N+1)에 해당 가상 머신의 이미지 파일을 전송한 적이 있는 경우, 제1 가상화 서버(100_1)에 대한 서버 절체 시, 해당 가상 머신의 이미지 파일 전송이 불필요하므로, 그대로 종료한다.Here, when the image file of the virtual machine has been transferred to the N+1th virtualization server (100_N+1) in the standby state, when the server is switched to the first virtualization server (100_1), the image file of the virtual machine is transferred. Since this is unnecessary, it ends as it is.

반대로, 판단 결과, 제N+1 가상화 서버(100_N+1)에 해당 가상 머신의 이미지 파일이 존재하지 않으면, 상기 가상화 제어 장치(200)는 서버 절체 준비를 위하여, 해당 가상 머신에 대한 생성 요청을 상기 제N+1 가상화 서버(100_N+1)로 요청한다(S235 단계).Conversely, as a result of the determination, if the image file of the virtual machine does not exist in the N+1th virtualization server 100_N+1, the virtualization control device 200 makes a request to create the virtual machine in order to prepare for server switching. A request is made to the N+1th virtualization server 100_N+1 (step S235).

이에 제N+1 가상화 서버(100_N+1)은 제1 가상화 서버(100_1)와 마찬가지로, 가상 머신의 생성을 위해, 해당 가상 머신의 이미지 파일이 자신에게 존재하는 지를 먼저 확인하는 과정을 수행하게 되며(S240), 이때, 해당 가상 머신의 이미지 파일이 자신에게 존재하는 지 않으므로, 가상화 제어 장치(200)에 요청하여 해당 가상 머신의 이미지 파일을 전송 받아 저장한다(S245).Accordingly, the N+1th virtualization server 100_N+1, like the first virtualization server 100_1, performs a process of first checking whether an image file of the corresponding virtual machine exists in the virtual machine for creation. In this case, since the image file of the corresponding virtual machine does not exist in itself, the virtual machine 200 is requested to receive and store the image file of the virtual machine (S245).

그리고, 저장된 가상 머신의 이미지 파일을 이용하여 요청된 가상 머신을 생성한다(S250 단계). 만약, S240 단계에서 확인 결과, 해당 가상 머신의 이미지 파일이 존재하는 경우, 제N+1 가상화 서버(100_N+1)은 S245 단계를 수행하지 않고 바로 S250 단계를 수행할 수 도 있다.Then, the requested virtual machine is created using the stored image file of the virtual machine (step S250). If, as a result of checking in step S240, the image file of the corresponding virtual machine exists, the N+1th virtualization server 100_N+1 may perform step S250 without performing step S245.

이렇게 생성된 가상 머신은 제N+1 가상화 서버(100_N+1)에서 구동을 시작하게 된다.The generated virtual machine starts running on the N+1th virtualization server 100_N+1.

이때, 상기 가상화 제어 장치(200)는 제N+1 가상화 서버(100_N+1)에서의 가상 머신의 구동을 감지하고, 동일한 가상 머신이 제1 가상화 서버(100_1)에서 이미 구동 중이므로, 상기 제N+1 가상화 서버(100_N+1)로 해당 가상 머신의 삭제를 요청하며(S255 단계), 이에 제N+1 가상화 서버(100_N+1)는 해당 가상 머신을 삭제한다(S260 단계).At this time, the virtualization control device 200 detects the driving of the virtual machine in the N+1th virtualization server 100_N+1, and the same virtual machine is already running in the first virtualization server 100_1, so the Nth The +1 virtualization server 100_N+1 requests deletion of the virtual machine (step S255), and the N+1th virtualization server 100_N+1 deletes the virtual machine (step S260).

상기 S260 단계에서 가상 머신은 삭제되나, 이전 S245 단계에서 전송 받아 저장한 해당 가상 머신의 이미지 파일은 그대로 제N+1 가상화 서버(100_N+1)에 존재하게 된다. 그리고, 상기 가상화 제어 장치(200)는 상기 스탠바이 상태인 제N+1 가상화 서버(100_N+1)에서 상기 가상 머신의 생성이 가능함을 기록하여 관리할 수 있다.따라서, 제1 가상화 서버(100_1)에 장애가 발생하여, 제N+1 가상화 서버(100_N+1)로 절체되는 경우, 제N+1 가상화 서버(100_N+1)에는 미리 해당 가상 머신의 이미지 파일을 저장함으로써, 바로 가상 머신을 생성할 수 있으며, 그 만큼 해당 가상 머신을 통해 제공되는 서비스의 단절을 최소화할 수 있게 된다.The virtual machine is deleted in the step S260, but the image file of the virtual machine transmitted and stored in the previous step S245 remains in the N+1th virtualization server 100_N+1 as it is. In addition, the virtualization control device 200 may record and manage that the virtual machine can be created in the N+1th virtualization server 100_N+1 in the standby state. Accordingly, the first virtualization server 100_1 When a failure occurs and the virtual machine is switched to the N+1th virtualization server (100_N+1), the virtual machine can be created immediately by storing the image file of the virtual machine in advance in the N+1th virtualization server (100_N+1). It is possible to minimize the interruption of services provided through the virtual machine.

참고로, 상술한 과정에서, 가상 머신의 생성 및 삭제는 OpenStack과 같이 공지된 기술을 기반으로 이루어질 수 있다.For reference, in the above-described process, creation and deletion of a virtual machine may be performed based on a known technology such as OpenStack.

도 5는 이상에서 설명한 본 발명에 따른 가상화 제어 방법을 수행하는 가상화 제어 장치(200)의 상세 구성을 나타낸 블럭도이다.5 is a block diagram showing a detailed configuration of the virtualization control apparatus 200 for performing the virtualization control method according to the present invention described above.

도 5를 참조하면, 본 발명에 따른 가상화 제어 장치(200)는, 모니터링부(210)와, 가상화 제어부(220)와, 저장부(230)를 포함하여 이루어질 수 있다.Referring to FIG. 5, the virtualization control device 200 according to the present invention may include a monitoring unit 210, a virtualization control unit 220, and a storage unit 230.

상기 모니터링부(210)는 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1)에 대한 상태 관리를 위한 구성이다. 구체적으로 상기 모니터링부(210)는 주기적으로 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1)로 리소스 조회를 요청하고, 그 응답을 수신하여 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1)의 리소스 상태 정보(CPU, Memory, Disk, Network 상태 정보)를 획득하여 관리한다. 아울러, 상기 모니터링부(210)는 리소스 조회가 실패한 가상화 서버에 대한 정보를 가상화 제어부(220)에 제공한다. The monitoring unit 210 is a component for state management of the first to N+1th virtualization servers 100_1 to 100_N+1. Specifically, the monitoring unit 210 periodically requests a resource inquiry from the first to N+1th virtualization servers 100_1 to 100_N+1, receives the response, and receives the first to N+1th virtualization servers 100_1 ~ 100_N+1) resource status information (CPU, Memory, Disk, Network status information) is acquired and managed. In addition, the monitoring unit 210 provides information on the virtualization server for which resource inquiry has failed to the virtualization control unit 220.

가상화 제어부(220)는 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1)의 서버 가상화 및 그 동작을 제어하기 위한 구성이다. 상기 가상화 제어부(200)는 기본적으로, 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1)의 식별 정보 및 상태 정보가 등록되어 있으며, 이를 기반으로 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1)의 서버 가상화를 제어한다. 구체적으로, 가상화 제어부(200)는 운영자의 요청에 따라서, 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1)에 대한 가상 머신의 생성 및 삭제를 제어하고, 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1) 중 어느 하나에서 구동되는 가상 머신에 대한 정보, 예를 들어, 가상 머신의 식별 정보, 가상 머신이 구동되는 가상화 서버 정보, 가상 머신의 이미지 파일 등을 관리할 수 있다.The virtualization control unit 220 is a configuration for controlling server virtualization and operation of the first to N+1th virtualization servers 100_1 to 100_N+1. The virtualization control unit 200 basically registers identification information and status information of the first to N+1th virtualization servers 100_1 to 100_N+1, and based on this, the first to N+1th virtualization servers ( 100_1 ~ 100_N+1) server virtualization control. Specifically, the virtualization control unit 200 controls the creation and deletion of virtual machines for the first to N+1th virtualization servers 100_1 to 100_N+1 according to the operator's request, and the first to N+1th virtual machines You can manage information about virtual machines running on any one of the virtualization servers (100_1 to 100_N+1), for example, identification information of virtual machines, virtualization server information on which virtual machines are running, and image files of virtual machines. have.

아울러, 상기 가상화 제어부(220)는, 가상화 시스템의 안정적인 동작을 위하여, 상기 모니터링부(210)를 통해 확인된 제1 내지 제N+1 가상화 서버(100_1 ~ 100_N+1)별 리소스 조회의 실패 횟수를 카운팅하여, 기 설정된 수 이상이 연속적으로 리소스 조회가 실패한 경우, 해당 가상화 서버를 비정상 리스트에 감지 순서에 따라서 순차적으로 등록한다. 그리고, 상기 가상화 제어부(220)는 비정상 리스트의 길이를 체크하여, 비정상 리스트에 하나의 가상화 서버가 장애로 등록된 경우, 해당 가상화 서버에서 구동되던 가상 머신이 스탠바이 상태인 제N+1 가상화 서버(100_N+1)에서 생성되어 구동되도록 제어한다. 반면에, 비정상 리스트에 등록된 가상화 서버의 수가 기 설정된 수가 아닌 경우, 상기 모니터링부(210)의 주기적인 리소스 조회 결과를 참고하여 비정상 리스트를 갱신하면서, 비정상 리스트에 등록된 가상화 서버의 수가 기 설정된 수가 될 때까지 대기한다. 이에 따르면, 네트워크 단절로 인한 일시적인 리소스 조회 실패 혹은 서버 절체 중 다른 가상화 서버의 장애 발생 상황을 필터링하여, 스탠바이 상태인 하나의 가상화 서버만으로 액티브 상태인 복수의 가상화 서버에 대한 이중화를 효율적으로 수행할 수 있다.In addition, the virtualization control unit 220, for stable operation of the virtualization system, the number of failures of resource inquiry for each of the first to N+1 virtualization servers (100_1 to 100_N+1) checked through the monitoring unit 210 By counting, when resource search fails in succession by more than a preset number, the corresponding virtualization server is sequentially registered in the abnormal list according to the detection order. In addition, the virtualization control unit 220 checks the length of the abnormal list, and when one virtualization server is registered as a failure in the abnormal list, the virtual machine running in the virtualization server is in a standby state. 100_N+1) is generated and driven. On the other hand, when the number of virtualization servers registered in the abnormal list is not a preset number, the number of virtualization servers registered in the abnormal list is preset while updating the abnormal list by referring to the periodic resource inquiry result of the monitoring unit 210. Wait until the number is reached. According to this, it is possible to efficiently perform redundancy for multiple active virtualization servers with only one virtualization server in standby mode by filtering out temporary resource search failure due to network disconnection or failure of other virtualization servers during server switching. have.

또한, 상기 가상화 제어부(220)는, 각 가상 머신 별로 구동되는 가상화 서버 정보를 관리하면서, 특정 가상화 서버에서 구동중인 가상 머신의 구동이 다른 가상화 서버에서 감지되면, 상기 다른 가상화 서버에서 상기 가상 머신을 삭제하도록 제어한다. 아울러, 가상화 제어부(220)는 장애에서 복귀된 가상화 서버를 스탠바이 상태로 등록하여, 다른 액티브 상태의 가상화 서버 중 장애가 발생된 가상화 서버와의 절체를 위해 대기하도록 할 수 있다.In addition, the virtualization control unit 220 manages virtualization server information that is driven for each virtual machine, and when driving of a virtual machine running in a specific virtualization server is detected by another virtualization server, the virtual machine is operated by the other virtualization server. Control to delete. In addition, the virtualization control unit 220 may register a virtualization server returned from a failure as a standby state, and allow the virtualization server in another active state to wait for switching to a failed virtualization server.

저장부(230)는 가상화 제어 장치(200)의 구동을 위해 필요한 정보를 저장하기 위한 구성으로서, 구체적으로, 복수의 가상화 서버에 대한 정보(식별 정보 및 액티브/스탠바이 정보), 복수의 가상화 서버별 리소스 상태 정보, 복수의 가상화 서버에서 구동하는 하나 이상의 가상 머신 정보(가상 머신 식별정보, 구동되는 가상화 서버 정보, 가상 머신의 이미지 파일)를 저장할 수 있다. 이때, 상기 가상 머신의 이미지 파일은 압축을 통해 저장될 수 있다.The storage unit 230 is a configuration for storing information necessary for driving the virtualization control device 200, and specifically, information on a plurality of virtualization servers (identification information and active/standby information), each of a plurality of virtualization servers Resource state information, information about one or more virtual machines running in a plurality of virtualization servers (virtual machine identification information, running virtualization server information, image files of virtual machines) may be stored. In this case, the image file of the virtual machine may be stored through compression.

상기 저장부(230)에 저장되는 정보들은 가상화 제어부(220)에 의해 조회되어 이용되거나, 가상화 제어부(220)의 제어에 따라서 갱신(저장, 삭제, 변경 등)될 수 있다. Information stored in the storage unit 230 may be inquired and used by the virtualization control unit 220 or may be updated (stored, deleted, changed, etc.) under the control of the virtualization control unit 220.

본 발명에 따른 가상화 제어 방법은 다양한 컴퓨터 수단을 통하여 판독 가능한 소프트웨어 형태로 구현되어 컴퓨터로 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media), 및 롬(ROM), 램(RAM, Random Access Memory), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 이러한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The virtualization control method according to the present invention may be implemented in a form of software that can be read through various computer means and recorded in a computer-readable recording medium. Here, the recording medium may include a program command, a data file, a data structure, or the like alone or in combination. The program instructions recorded on the recording medium may be specially designed and configured for the present invention, or may be known and usable to those skilled in computer software. For example, the recording medium is a magnetic medium such as a hard disk, a floppy disk, and a magnetic tape, an optical medium such as a compact disk read only memory (CD-ROM), a digital video disk (DVD), and a floppy disk. Magnetic-Optical Media, such as a floptical disk, and hardware devices specially configured to store and execute program instructions such as ROM, Random Access Memory (RAM), Flash memory, etc. do. Examples of the program instructions may include not only machine language codes such as those produced by a compiler but also high-level language codes that can be executed by a computer using an interpreter or the like. These hardware devices may be configured to operate as one or more software modules to perform the operation of the present invention, and vice versa.

이상과 같이, 본 명세서와 도면에는 본 발명의 바람직한 실시 예에 대하여 개시하였으나, 여기에 개시된 실시 예외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형 예들이 실시 가능하다는 것은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 자명한 것이다. 또한, 본 명세서와 도면에서 특정 용어들이 사용되었으나, 이는 단지 본 발명의 기술 내용을 쉽게 설명하고 발명의 이해를 돕기 위한 일반적인 의미에서 사용된 것이지, 본 발명의 범위를 한정하고자 하는 것은 아니다.As described above, although preferred embodiments of the present invention have been disclosed in the present specification and drawings, it is understood that other modifications based on the technical idea of the present invention can be implemented even with the exceptions disclosed herein. It is self-evident to those of ordinary knowledge. In addition, specific terms have been used in the specification and drawings, but these are merely used in a general meaning to easily describe the technical content of the present invention and to aid understanding of the present invention, and are not intended to limit the scope of the present invention.

본 발명에 따른 가상화 제어 장치(200)는 하나 이상의 프로세서로 하여금 앞서 설명한 기능들과 프로세스를 수행하도록 하는 명령에 의하여 구동될 수 있다. 예를 들어 그러한 명령으로는, 예컨대 JavaScript나 ECMAScript 명령 등의 스크립트 명령과 같은 해석되는 명령이나 실행 가능한 코드 혹은 컴퓨터로 판독 가능한 매체에 저장되는 기타의 명령이 포함될 수 있다. 나아가 본 발명에 따른 장치는 서버 팜(Server Farm)과 같이 네트워크에 걸쳐서 분산형으로 구현될 수 있으며, 혹은 단일의 컴퓨터 장치에서 구현될 수도 있다.The virtualization control apparatus 200 according to the present invention may be driven by a command that causes one or more processors to perform the functions and processes described above. For example, such commands may include interpreted commands such as script commands such as JavaScript or ECMAScript commands, executable code, or other commands stored in a computer-readable medium. Further, the device according to the present invention may be implemented in a distributed manner over a network, such as a server farm, or may be implemented in a single computer device.

비록 본 명세서와 도면에서는 예시적인 장치 구성을 기술하고 있지만, 본 명세서에서 설명하는 기능적인 동작과 주제의 구현물들은 다른 유형의 디지털 전자 회로로 구현되거나, 본 명세서에서 개시하는 구조 및 그 구조적인 등가물들을 포함하는 컴퓨터 소프트웨어, 펌웨어 혹은 하드웨어로 구현되거나, 이들 중 하나 이상의 결합으로 구현 가능하다. 본 명세서에서 설명하는 주제의 구현물들은 하나 이상의 컴퓨터 프로그램 제품, 다시 말해 본 발명에 따른 장치의 동작을 제어하기 위하여 혹은 이것에 의한 실행을 위하여 유형의 프로그램 저장매체 상에 인코딩된 컴퓨터 프로그램 명령에 관한 하나 이상의 모듈로서 구현될 수 있다. 컴퓨터로 판독 가능한 매체는 기계로 판독 가능한 저장 장치, 기계로 판독 가능한 저장 기판, 메모리 장치, 기계로 판독 가능한 전파형 신호에 영향을 미치는 물질의 조성물 혹은 이들 중 하나 이상의 조합일 수 있다.Although the present specification and drawings describe exemplary device configurations, the functional operations and implementations of the subject described in this specification may be implemented with other types of digital electronic circuits, or the structures disclosed herein and structural equivalents thereof. It may be implemented with computer software, firmware, or hardware, or may be implemented by a combination of one or more of them. Implementations of the subject matter described in this specification are one or more computer program products, that is, one relating to computer program instructions encoded on a tangible program storage medium for execution by or for controlling the operation of a device according to the invention It can be implemented as the above module. The computer-readable medium may be a machine-readable storage device, a machine-readable storage substrate, a memory device, a composition of materials that affect a machine-readable radio wave signal, or a combination of one or more of them.

본 명세서에서 "시스템", "제어 장치" 라는 용어는 예컨대 프로그래머블 프로세서, 컴퓨터 혹은 다중 프로세서나 컴퓨터를 포함하여 데이터를 처리하기 위한 모든 기구, 장치 및 기계를 포괄한다. 처리 시스템은, 하드웨어에 부가하여, 예컨대 프로세서 펌웨어를 구성하는 코드, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제 혹은 이들 중 하나 이상의 조합 등 요청 시 컴퓨터 프로그램에 대한 실행 환경을 형성하는 코드를 포함할 수 있다.In this specification, the terms "system" and "control device" encompass all devices, devices and machines for processing data, including, for example, programmable processors, computers, or multiple processors or computers. In addition to hardware, the processing system may include, for example, a code constituting a processor firmware, a protocol stack, a database management system, an operating system, or a combination of one or more of them, and the like, to form an execution environment for a computer program upon request. .

본 발명에 따른 장치에 탑재되고 본 발명에 따른 방법을 실행하는 컴퓨터 프로그램(프로그램, 소프트웨어, 소프트웨어 어플리케이션, 스크립트 혹은 코드로도 알려져 있음)은 컴파일 되거나 해석된 언어나 선험적 혹은 절차적 언어를 포함하는 프로그래밍 언어의 어떠한 형태로도 작성될 수 있으며, 독립형 프로그램이나 모듈, 컴포넌트, 서브루틴 혹은 컴퓨터 환경에서 사용하기에 적합한 다른 유닛을 포함하여 어떠한 형태로도 전개될 수 있다. 컴퓨터 프로그램은 파일 시스템의 파일에 반드시 대응하는 것은 아니다. 프로그램은 요청된 프로그램에 제공되는 단일 파일 내에, 혹은 다중의 상호 작용하는 파일(예컨대, 하나 이상의 모듈, 하위 프로그램 혹은 코드의 일부를 저장하는 파일) 내에, 혹은 다른 프로그램이나 데이터를 보유하는 파일의 일부(예컨대, 마크업 언어 문서 내에 저장되는 하나 이상의 스크립트) 내에 저장될 수 있다. 컴퓨터 프로그램은 하나의 사이트에 위치하거나 복수의 사이트에 걸쳐서 분산되어 통신 네트워크에 의해 상호 접속된 다중 컴퓨터나 하나의 컴퓨터 상에서 실행되도록 전개될 수 있다.A computer program (also known as a program, software, software application, script or code) mounted on the device according to the present invention and executing the method according to the present invention is a compiled or interpreted language or programming including a priori or procedural language. It can be written in any form of language, and can be deployed in any form, including standalone programs, modules, components, subroutines, or other units suitable for use in a computer environment. Computer programs do not necessarily correspond to files in the file system. A program may be in a single file provided to the requested program, or in multiple interactive files (e.g., files that store one or more modules, subprograms, or portions of code), or part of a file that holds other programs or data. (Eg, one or more scripts stored within a markup language document). A computer program may be deployed to run on a single computer or multiple computers located at one site or distributed across a plurality of sites and interconnected by a communication network.

컴퓨터 프로그램 명령어와 데이터를 저장하기에 적합한 컴퓨터로 판독 가능한 매체는, 예컨대 EPROM, EEPROM 및 플래시메모리 장치와 같은 반도체 메모리 장치, 예컨대 내부 하드디스크나 외장형 디스크와 같은 자기 디스크, 자기광학 디스크 및 CD-ROM과 DVD-ROM 디스크를 포함하여 모든 형태의 비휘발성 메모리, 매체 및 메모리 장치를 포함한다. 프로세서와 메모리는 특수 목적의 논리 회로에 의해 보충되거나, 그것에 통합될 수 있다.Computer-readable media suitable for storing computer program instructions and data include, for example, semiconductor memory devices such as EPROM, EEPROM and flash memory devices, such as magnetic disks such as internal hard disks or external disks, magneto-optical disks and CD-ROMs. And all forms of nonvolatile memory, media and memory devices, including DVD-ROM disks. The processor and memory can be supplemented by special purpose logic circuits or incorporated into it.

본 명세서에서 설명한 가상화 시스템의 구현물은 예컨대 데이터 서버와 같은 백엔드 컴포넌트를 포함하거나, 예컨대 어플리케이션 서버와 같은 미들웨어 컴포넌트를 포함하거나, 예컨대 사용자가 본 명세서에서 설명한 주제의 구현물과 상호 작용할 수 있는 웹 브라우저나 그래픽 유저 인터페이스를 갖는 클라이언트 컴퓨터와 같은 프론트엔드 컴포넌트 혹은 그러한 백엔드, 미들웨어 혹은 프론트엔드 컴포넌트의 하나 이상의 모든 조합을 포함하는 연산 시스템에서 구현될 수 있다. 시스템의 컴포넌트는 예컨대 통신 네트워크와 같은 디지털 데이터 통신의 어떠한 형태나 매체에 의해서도 상호 접속 가능하다.Implementations of the virtualization system described herein include a backend component, such as a data server, or a middleware component, such as an application server, or, for example, a web browser or graphic that allows a user to interact with an implementation of the subject matter described herein. It can be implemented in a front-end component, such as a client computer with a user interface, or a computational system that includes any combination of one or more of such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication, for example a communication network.

본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다. 개별적인 실시형태의 문맥에서 본 명세서에 기술된 특정한 특징들은 단일 실시형태에서 조합하여 구현될 수도 있다. 반대로, 단일 실시형태의 문맥에서 기술한 다양한 특징들 역시 개별적으로 혹은 어떠한 적절한 하위 조합으로도 복수의 실시형태에서 구현 가능하다. 나아가, 특징들이 특정한 조합으로 동작하고 초기에 그와 같이 청구된 바와 같이 묘사될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우에 그 조합으로부터 배제될 수 있으며, 그 청구된 조합은 하위 조합이나 하위 조합의 변형물로 변경될 수 있다.While this specification includes details of a number of specific implementations, these should not be construed as limiting to the scope of any invention or claim, but rather as a description of features that may be peculiar to a particular embodiment of a particular invention. It must be understood. Certain features described herein in the context of separate embodiments may be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment can also be implemented in multiple embodiments individually or in any suitable sub-combination. Furthermore, although features operate in a particular combination and may be initially described as so claimed, one or more features from a claimed combination may in some cases be excluded from the combination, and the claimed combination may be a subcombination. Or sub-combination variations.

마찬가지로, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.Likewise, although operations are depicted in the drawings in a specific order, it should not be understood that such operations must be performed in that particular order or sequential order shown, or that all illustrated operations must be performed in order to obtain a desired result. In certain cases, multitasking and parallel processing can be advantageous. In addition, separation of the various system components of the above-described embodiments should not be understood as requiring such separation in all embodiments, and the program components and systems described are generally integrated together into a single software product or packaged in multiple software products. You should understand that you can.

본 명세서에서 설명한 주제의 특정한 실시형태를 설명하였다. 기타의 실시형태들은 이하의 청구항의 범위 내에 속한다. 예컨대, 청구항에서 인용된 동작들은 상이한 순서로 수행되면서도 여전히 바람직한 결과를 성취할 수 있다. 일 예로서, 첨부도면에 도시한 프로세스는 바람직한 결과를 얻기 위하여 반드시 그 특정한 도시된 순서나 순차적인 순서를 요구하지 않는다. 특정한 구현예에서, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다.Specific embodiments of the subject matter described herein have been described. Other embodiments are within the scope of the following claims. For example, the operations recited in the claims may be performed in a different order while still achieving desirable results. As an example, the process depicted in the accompanying drawings does not necessarily require that particular depicted order or sequential order to obtain desirable results. In certain implementations, multitasking and parallel processing can be advantageous.

본 기술한 설명은 본 발명의 최상의 모드를 제시하고 있으며, 본 발명을 설명하기 위하여, 그리고 당업자가 본 발명을 제작 및 이용할 수 있도록 하기 위한 예를 제공하고 있다. 이렇게 작성된 명세서는 그 제시된 구체적인 용어에 본 발명을 제한하는 것이 아니다. 따라서, 상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 당업자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다.The present description presents the best mode of the invention, and provides examples to illustrate the invention and to enable those skilled in the art to make and use the invention. The thus written specification does not limit the present invention to the specific terms presented. Accordingly, although the present invention has been described in detail with reference to the above-described examples, those skilled in the art can make modifications, changes, and modifications to these examples without departing from the scope of the present invention.

따라서 본 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정하여져야 한다.Therefore, the scope of the present invention should not be determined by the described embodiments, but should be determined by the claims.

본 발명은 물리적 서버에 하나 이상의 논리적 가상 머신을 구축하여, CPU, 메모리, 네트워크, 스토리지 등의 자원을 공유하는 가상화 서버를 운용하는데 있어서, 가상화 제어 장치를 통해서 액티브 상태의 복수의 가상화 서버를 하나의 스탠바이 상태의 가상화 서버를 통해 효율적으로 대체할 수 있도록 하며, 공유 스토리지를 이용하지 않고 절체되는 서버 간에 가상화 환경 정보(가상 머신, 가상 머신의 이미지 파일 등)를 신속하게 동기화할 수 있도록 하며, 그 결과 고가용성 가상화 시스템의 구축 비용을 줄이면서, 시스템의 효율성 및 안정성을 확보할 수 있게 된다.In the present invention, in operating a virtualization server that shares resources such as CPU, memory, network, and storage by constructing one or more logical virtual machines on a physical server, a plurality of virtualization servers in an active state through a virtualization control device It enables efficient replacement through the standby virtualization server, and enables quick synchronization of virtualization environment information (virtual machines, image files of virtual machines, etc.) between servers that are transferred without using shared storage. It is possible to secure system efficiency and stability while reducing the cost of building a highly available virtualization system.

100_1 ~ 100_N+1: 제1 내지 제N+1 가상화 서버
200: 가상화 제어 장치
210: 모니터링부
220: 가상화 제어부
230: 저장부
100_1 to 100_N+1: first to N+1th virtualization servers
200: virtualization control unit
210: monitoring unit
220: virtualization control unit
230: storage unit

Claims (11)

가상화 제어 장치가,
액티브 상태인 복수의 액티브 가상화 서버의 리소스 상태를 주기적으로 조회하는 단계;
상기 복수의 액티브 가상화 서버 중에서 기 설정된 횟수 이상 연속적으로 리소스 조회에 실패한 가상화 서버를 비정상 리스트에 등록하는 단계; 및
상기 비정상 리스트에 등록된 액티브 가상화 서버에서 구동되던 하나 이상의 가상 머신을 하나의 스탠바이 가상화 서버에서 생성하도록 제어하는 단계;
를 포함하는 것을 특징으로 하는 가상화 서버의 이중화를 위한 제어 방법.
Virtualization control unit,
Periodically querying the resource states of a plurality of active virtualization servers in an active state;
Registering a virtualization server that has failed to search a resource continuously more than a preset number of times among the plurality of active virtualization servers in an abnormal list; And
Controlling to create one or more virtual machines running in the active virtualization server registered in the abnormal list in one standby virtualization server;
Control method for redundancy of a virtualization server comprising a.
제1항에 있어서,
상기 비정상 리스트에 등록된 가상화 서버의 수를 확인하는 단계를 더 포함하고,
상기 하나 이상의 가상 머신을 생성하도록 제어하는 단계는, 상기 비정상 리스트에 등록된 가상화 서버의 수가 하나인 경우에, 상기 스탠바이 가상화 서버에 상기 비정상 리스트에 등록된 가상화 서버에서 구동 중이던 하나 이상의 가상 머신을 생성하도록 제어하는 것을 특징으로 하는 가상화 서버의 이중화를 위한 제어 방법.
The method of claim 1,
Further comprising the step of checking the number of virtualization servers registered in the abnormal list,
The controlling to generate the one or more virtual machines may include, when the number of virtualization servers registered in the abnormal list is one, generating one or more virtual machines running on the virtualization servers registered in the abnormal list in the standby virtualization server Control method for redundancy of a virtualization server, characterized in that to control to be controlled.
가상화 제어 장치가,
액티브 가상화 서버에서 특정 가상 머신을 생성하도록 제어하는 단계;
상기 액티브 가상화 서버에서 특정 가상 머신이 생성되면, 스탠바이 가상화 서버에 상기 특정 가상 머신의 이미지 파일이 존재하는 지를 확인하는 단계;
확인 결과, 이미지 파일이 존재하지 않으면, 상기 스탠바이 가상화 서버에서 상기 특정 가상 머신을 생성하도록 제어하는 단계; 및
상기 스탠바이 가상화 서버에 생성된 상기 특정 가상 머신의 구동이 감지되면, 상기 스탠바이 가상화 서버에서 상기 특정 가상 머신이 삭제되도록 제어하는 단계;
를 포함하는 것을 특징으로 가상화 서버의 이중화를 위한 제어 방법.
Virtualization control unit,
Controlling the active virtualization server to create a specific virtual machine;
If a specific virtual machine is created in the active virtualization server, checking whether an image file of the specific virtual machine exists in the standby virtualization server;
If the image file does not exist as a result of checking, controlling the standby virtualization server to create the specific virtual machine; And
Controlling the specific virtual machine to be deleted from the standby virtualization server when the driving of the specific virtual machine created in the standby virtualization server is detected;
Control method for redundancy of the virtualization server, characterized in that it comprises a.
제3항에 있어서, 상기 스탠바이 가상화 서버에서 상기 특정 가상 머신을 생성하도록 제어하는 단계는
상기 가상화 제어 장치가 상기 스탠바이 가상화 서버로 가상 머신 생성을 요청하는 단계를 포함하는 것을 특징으로 하는 가상화 서버의 이중화를 위한 제어 방법.
The method of claim 3, wherein controlling the standby virtualization server to create the specific virtual machine
And requesting, by the virtualization control device, to create a virtual machine from the standby virtualization server.
제4항에 있어서, 상기 스탠바이 가상화 서버에서 상기 특정 가상 머신을 생성하도록 제어하는 단계는,
상기 가상화 제어 장치가 상기 스탠바이 가상화 서버로부터 요청에 따라서, 해당 가상 머신의 이미지 파일을 전송하는 단계를 더 포함하는 것을 특징으로 하는 가상화 서버의 이중화를 위한 제어 방법.
The method of claim 4, wherein controlling the standby virtualization server to create the specific virtual machine,
And transmitting, by the virtualization control device, an image file of a corresponding virtual machine according to a request from the standby virtualization server.
삭제delete 가상화 서버별 리소스 상태 정보, 비정상 동작하는 가상화 서버를 관리하는 비정상 리스트, 가상화 서버에서 구동되는 가상 머신 정보 중 하나 이상을 저장하는 저장부;
복수의 액티브 가상화 서버의 리소스상태를 주기적으로 조회하여 상기 리소스 상태 정보를 획득하는 모니터링부; 및
상기 모니터링부에서 기 설정된 횟수 이상 연속적으로 리소스 조회에 실패한 가상화 서버를 상기 비정상 리스트에 등록하고, 상기 비정상 리스트에 등록된 액티브 가상화 서버에서 구동되던 하나 이상의 가상 머신을 하나의 스탠바이 가상화 서버에서 생성하도록 제어하는 가상화 제어부;
를 포함하는 것을 특징으로 하는 가상화 제어 장치.
A storage unit for storing at least one of resource state information for each virtualization server, an abnormal list for managing abnormally operating virtualization servers, and virtual machine information running in the virtualization server;
A monitoring unit that periodically inquires a resource state of a plurality of active virtualization servers to obtain the resource state information; And
Control to register a virtualization server that has failed to search for resources continuously more than a preset number of times in the abnormal list in the abnormal list, and to create one or more virtual machines running on the active virtualization server registered in the abnormal list in one standby virtualization server A virtualization control unit;
Virtualization control device comprising a.
제7항에 있어서,
상기 가상 머신 정보는, 가상 머신 별로 구동하는 가상화 서버 정보, 가상 머신의 이미지 파일 중 하나 이상을 포함하는 것을 특징으로 하는 가상화 제어 장치.
The method of claim 7,
The virtual machine information includes at least one of information on a virtualization server running for each virtual machine and an image file of a virtual machine.
제8항에 있어서, 상기 가상화 제어부는
상기 비정상 리스트에 등록된 가상화 서버의 수를 더 확인하여, 상기 비정상 리스트에 등록된 가상화 서버의 수가 하나인 경우, 상기 상기 비정상 리스트에 등록된 가상화 서버에 구동 중이던 하나 이상의 가상 머신을 상기 스탠바이 가상화 서버에서 생성하도록 제어하는 것을 특징으로 하는 가상화 제어 장치.
The method of claim 8, wherein the virtualization control unit
When the number of virtualization servers registered in the abnormal list is further checked, and the number of virtualization servers registered in the abnormal list is one, one or more virtual machines running on the virtualization servers registered in the abnormal list are transferred to the standby virtualization server. Virtualization control device, characterized in that for controlling to be generated in.
제7항에 있어서, 상기 가상화 제어부는
상기 복수의 액티브 가상화 서버 중 어느 하나에서 가상 머신이 생성되면, 상기 가상 머신을 상기 스탠바이 가상화 서버에서도 생성시킨 후, 삭제하도록 제어함으로써, 상기 스탠바이 가상화 서버에 상기 가상 머신의 이미지 파일을 저장하는 것을 특징으로 하는 가상화 제어 장치.
The method of claim 7, wherein the virtualization control unit
When a virtual machine is created in any one of the plurality of active virtualization servers, the virtual machine is created in the standby virtualization server and then deleted, thereby storing the image file of the virtual machine in the standby virtualization server. Virtualization control device.
제7항에 있어서, 상기 가상화 제어부는
상기 스탠바이 가상화 서버로 상기 하나 이상의 가상 머신의 생성을 요청한 후, 상기 스탠바이 가상화 서버로부터 요청에 따라서, 상기 하나 이상의 가상 머신의 이미지 파일을 전송하는 것을 특징으로 하는 가상화 제어 장치.
The method of claim 7, wherein the virtualization control unit
After requesting to generate the one or more virtual machines to the standby virtualization server, the virtualization control device according to a request from the standby virtualization server transmits an image file of the one or more virtual machines.
KR1020140035130A 2014-03-26 2014-03-26 Method for duplication of virtualization server and Virtualization control apparatus thereof KR102210408B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140035130A KR102210408B1 (en) 2014-03-26 2014-03-26 Method for duplication of virtualization server and Virtualization control apparatus thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140035130A KR102210408B1 (en) 2014-03-26 2014-03-26 Method for duplication of virtualization server and Virtualization control apparatus thereof

Publications (2)

Publication Number Publication Date
KR20150111608A KR20150111608A (en) 2015-10-06
KR102210408B1 true KR102210408B1 (en) 2021-01-29

Family

ID=54344987

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140035130A KR102210408B1 (en) 2014-03-26 2014-03-26 Method for duplication of virtualization server and Virtualization control apparatus thereof

Country Status (1)

Country Link
KR (1) KR102210408B1 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102239177B1 (en) * 2014-09-03 2021-04-09 주식회사 케이티 Method for managing of cloud server, device and system for managing of cloud server performing the same
KR101713034B1 (en) 2016-05-30 2017-03-09 주식회사 씨엠테스 Server duplication system using invisible virtualization volume
KR102323431B1 (en) 2017-05-18 2021-11-09 에스케이텔레콤 주식회사 Method for providing dualization
CN110209468A (en) * 2019-05-24 2019-09-06 北京百度网讯科技有限公司 For starting the method, apparatus, equipment and medium of virtual machine
KR102364275B1 (en) 2020-06-24 2022-02-17 파이브마일 주식회사 Virtualization systems and methods for real-world data
KR102648493B1 (en) * 2021-09-28 2024-03-15 한국수력원자력 주식회사 Mmis virtualization operating system of nuclear power plant and operating method thereof

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100980599B1 (en) 2010-01-19 2010-09-07 코아인텍주식회사 Cloud service system using kvm
US20120030335A1 (en) 2009-04-23 2012-02-02 Nec Corporation Rejuvenation processing device, rejuvenation processing system, computer program, and data processing method
KR101250881B1 (en) 2011-04-07 2013-04-04 주식회사 넥스알 Method for doubly processing data of block storage service

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100385861B1 (en) * 2001-07-09 2003-06-02 주식회사 케이티 Standby Loading Method for Duplex Architecture and a Computer-readable Medium having a Program for Performing the Method embedded thereon
JP4755050B2 (en) * 2006-08-18 2011-08-24 富士通株式会社 Data processing apparatus, mode management apparatus, and mode management method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120030335A1 (en) 2009-04-23 2012-02-02 Nec Corporation Rejuvenation processing device, rejuvenation processing system, computer program, and data processing method
KR100980599B1 (en) 2010-01-19 2010-09-07 코아인텍주식회사 Cloud service system using kvm
KR101250881B1 (en) 2011-04-07 2013-04-04 주식회사 넥스알 Method for doubly processing data of block storage service

Also Published As

Publication number Publication date
KR20150111608A (en) 2015-10-06

Similar Documents

Publication Publication Date Title
KR102210408B1 (en) Method for duplication of virtualization server and Virtualization control apparatus thereof
CN114341792B (en) Data partition switching between storage clusters
US9032248B1 (en) Memory write tracking for virtual machines
JP5961173B2 (en) Stateful applications that run in a stateless cloud computing environment
US10353640B2 (en) Seamless data migration in a clustered environment
US8856592B2 (en) Mechanism to provide assured recovery for distributed application
US11099953B2 (en) Automatic data healing using a storage controller
US9703490B2 (en) Coordinated upgrade of a cluster storage system
CN103618627B (en) A kind of manage the method for virtual machine, Apparatus and system
EP4083786A1 (en) Cloud operating system management method and apparatus, server, management system, and medium
US20140359343A1 (en) Method, Apparatus and System for Switching Over Virtual Application Two-Node Cluster in Cloud Environment
US20120179771A1 (en) Supporting autonomous live partition mobility during a cluster split-brained condition
US20170371568A1 (en) Failure resistent volume creation in a shared storage environment
US8775867B2 (en) Method and system for using a standby server to improve redundancy in a dual-node data storage system
CN103946807A (en) Method, system and device for generating snapshot
JP2007226400A (en) Computer management method, computer management program, stand-by server for managing configuration of execution server, and computer system
CN106528327A (en) Data processing method and backup server
JP5998577B2 (en) Cluster monitoring apparatus, cluster monitoring method, and program
EP3360053B1 (en) Electronic storage system
US9098392B1 (en) Systems and methods for changing fencing modes in clusters
US9195528B1 (en) Systems and methods for managing failover clusters
US11281550B2 (en) Disaster recovery specific configurations, management, and application
US11226746B2 (en) Automatic data healing by I/O
US9400605B2 (en) Efficient management of a virtual tape library cluster
US9710298B2 (en) Information processing system, storage apparatus, and program

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant