KR20220079158A - Virtualization server, operating method of server virtualization system, and program using the same - Google Patents

Virtualization server, operating method of server virtualization system, and program using the same Download PDF

Info

Publication number
KR20220079158A
KR20220079158A KR1020200168630A KR20200168630A KR20220079158A KR 20220079158 A KR20220079158 A KR 20220079158A KR 1020200168630 A KR1020200168630 A KR 1020200168630A KR 20200168630 A KR20200168630 A KR 20200168630A KR 20220079158 A KR20220079158 A KR 20220079158A
Authority
KR
South Korea
Prior art keywords
server
virtualization
work
user terminal
virtualization server
Prior art date
Application number
KR1020200168630A
Other languages
Korean (ko)
Other versions
KR102491998B1 (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 KR1020200168630A priority Critical patent/KR102491998B1/en
Publication of KR20220079158A publication Critical patent/KR20220079158A/en
Application granted granted Critical
Publication of KR102491998B1 publication Critical patent/KR102491998B1/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/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3438Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • 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/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • 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/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation
    • 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
    • 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/46Multiprogramming arrangements
    • G06F9/465Distributed object oriented systems
    • 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/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • 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/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명의 실시 예에 따른 서버 가상화 시스템의 동작 방법은 제1가상화 서버가, 사용자 단말로부터 최근 작업 이미지 및 작업 이미지 인증 정보를 수신하는 단계, 상기 제1가상화 서버가, 수신된 상기 작업 이미지 인증 정보를 이용하여 상기 최근 작업 이미지에 대한 작업을 마지막으로 수행하였던 제2가상화 서버와 상기 최근 작업 이미지에 대한 인증을 수행하는 단계 및 상기 제1가상화 서버가, 인증이 완료된 상기 최근 작업 이미지를 이용하여 상기 사용자 단말에 작업 환경을 제공하는 단계를 포함한다.The method of operating a server virtualization system according to an embodiment of the present invention includes the steps of, by the first virtualization server, receiving the latest work image and work image authentication information from the user terminal, the first virtualization server, the received work image authentication information Using the second virtualization server that last performed the work on the recent work image and performing authentication for the recent work image, and the first virtualization server, and providing a work environment to the user terminal.

Description

가상화 서버, 이를 포함하는 서버 가상화 시스템의 동작 방법, 및 프로그램{VIRTUALIZATION SERVER, OPERATING METHOD OF SERVER VIRTUALIZATION SYSTEM, AND PROGRAM USING THE SAME}A virtualization server, an operating method of a server virtualization system including the same, and a program {VIRTUALIZATION SERVER, OPERATING METHOD OF SERVER VIRTUALIZATION SYSTEM, AND PROGRAM USING THE SAME}

본 발명은 가상화 서버, 이를 포함하는 서버 가상화 시스템의 동작 방법, 및 프로그램에 관한 것으로, 보다 상세하게는 최근 작업 이미지를 사용자 단말로부터 수신하여 최근 작업 이미지에 대한 작업을 마지막으로 수행하였던 가상화 서버와 최근 작업 이미지에 대한 인증을 수행하고 인증이 완료된 최근 작업 이미지를 이용하여 사용자 단말에 작업 환경을 제공할 수 있는 가상화 서버, 이를 포함하는 서버 가상화 시스템의 동작 방법, 및 프로그램에 관한 것이다.The present invention relates to a virtualization server, an operating method of a server virtualization system including the same, and a program, and more particularly, to a virtualization server that received a recent work image from a user terminal and last performed a work on a recent work image and a recent It relates to a virtualization server capable of performing authentication on a work image and providing a work environment to a user terminal using a recent work image for which authentication is completed, an operating method of a server virtualization system including the same, and a program.

서버 가상화(server virtualization)란 서버의 리소스(resource)를 분리하여 분리된 여러 개의 가상 서버를 운영하는 기술을 의미한다. 서버 가상화를 통하여 분리된 각각의 가상 서버는 운영 체제와 어플리케이션을 독립적으로 구동시킬 수 있다. 서버 가상화 기술을 사용하면, 서버 리소스의 유동적인 운용을 통하여 서버 리소스의 활용도를 높일 수 있다.Server virtualization refers to a technology for operating multiple virtual servers separated by separating server resources. Each virtual server separated through server virtualization can run an operating system and an application independently. Using server virtualization technology, it is possible to increase the utilization of server resources through flexible operation of server resources.

최근, 기업들은 기업들이 생산, 보유하는 데이터의 보안 유지와 데이터의 효율적인 관리를 위하여 자체 데이터 센터들을 구축하고 있다. 하지만, 사용자는 상황에 따라 서로 다른 데이터 센터에 접속하여 작업을 이어가는 경우가 있으며, 이 때에도 데이터 센터들은 최근 작업에 대한 연속성과 보안성을 함께 제공할 수 있어야 한다.Recently, companies are building their own data centers for the efficient management of data and security of the data they produce and hold. However, users may connect to different data centers and continue their work depending on circumstances, and even in this case, data centers must be able to provide continuity and security for recent work together.

본 발명이 이루고자 하는 기술적 과제는 최근 작업 이미지를 사용자 단말로부터 수신하여 최근 작업 이미지에 대한 작업을 마지막으로 수행하였던 가상화 서버와 최근 작업 이미지에 대한 인증을 수행하고 인증이 완료된 최근 작업 이미지를 이용하여 사용자 단말에 작업 환경을 제공할 수 있는 가상화 서버, 이를 포함하는 서버 가상화 시스템의 동작 방법, 및 프로그램을 제공하는 것이다.The technical problem to be achieved by the present invention is to receive a recent work image from a user terminal, perform authentication on the latest work image and a virtualization server that last performed the work on the recent work image, and use the latest work image for which authentication is completed. To provide a virtualization server capable of providing a working environment to a terminal, an operating method of a server virtualization system including the same, and a program.

본 발명의 실시 예에 따른 서버 가상화 시스템의 동작 방법은 제1가상화 서버가, 사용자 단말로부터 최근 작업 이미지 및 작업 이미지 인증 정보를 수신하는 단계, 상기 제1가상화 서버가, 수신된 상기 작업 이미지 인증 정보를 이용하여 상기 최근 작업 이미지에 대한 작업을 마지막으로 수행하였던 제2가상화 서버와 상기 최근 작업 이미지에 대한 인증을 수행하는 단계 및 상기 제1가상화 서버가, 인증이 완료된 상기 최근 작업 이미지를 이용하여 상기 사용자 단말에 작업 환경을 제공하는 단계를 포함할 수 있다.The method of operating a server virtualization system according to an embodiment of the present invention includes the steps of, by the first virtualization server, receiving the latest work image and work image authentication information from the user terminal, the first virtualization server, the received work image authentication information Using the second virtualization server that last performed the work on the recent work image and performing authentication for the latest work image, and the first virtualization server, It may include providing a work environment to the user terminal.

실시 예에 따라, 상기 서버 가상화 시스템의 동작 방법은, 상기 수신하는 단계 이전에, 상기 제1가상화 서버가, 상기 제2가상화 서버로부터 전송된 사용자 인증 정보를 수신하여 저장하는 단계 및 상기 제1가상화 서버가, 저장된 상기 사용자 인증 정보를 이용하여 상기 사용자 단말에 대한 사용자 인증을 수행하는 단계를 더 포함할 수 있다.According to an embodiment, the operating method of the server virtualization system includes, before the receiving step, the first virtualization server receiving and storing user authentication information transmitted from the second virtualization server and the first virtualization The method may further include, by the server, performing user authentication for the user terminal by using the stored user authentication information.

실시 예에 따라, 상기 서버 가상화 시스템의 동작 방법은, 상기 제1가상화 서버가, 상기 제2가상화 서버로부터 상기 사용자 단말에 대한 사용자 로그 정보를 수신하는 단계 및 상기 제1가상화 서버가, 수신된 상기 사용자 로그 정보를 저장하는 단계를 더 포함할 수 있다.According to an embodiment, the method of operating the server virtualization system includes the steps of, by the first virtualization server, receiving user log information for the user terminal from the second virtualization server, and the first virtualization server, the received The method may further include storing user log information.

실시 예에 따라, 상기 서버 가상화 시스템의 동작 방법은, 상기 제1가상화 서버가, 저장된 상기 사용자 로그 정보에 기초하여 상기 최근 작업 이미지에 대한 작업을 마지막으로 수행하였던 상기 제2가상화 서버를 검색하는 단계를 더 포함할 수 있다.According to an embodiment, the operating method of the server virtualization system, the first virtualization server, based on the stored user log information, searching for the second virtualization server that last performed the work on the recent work image may further include.

실시 예에 따라, 상기 제1가상화 서버와 상기 제2가상화 서버 각각은, 서로 물리적으로 떨어진 위치에 배치되는 데이터 센터일 수 있다.According to an embodiment, each of the first virtualization server and the second virtualization server may be a data center disposed at a location physically separated from each other.

실시 예에 따라, 상기 최근 작업 이미지는, 최근 작업의 작업 종료 시점에 상기 사용자 단말에 저장된 작업 이미지와 동기화되어 상기 제2가상화 서버에 저장된 작업 이미지일 수 있다.According to an embodiment, the recent work image may be a work image stored in the second virtualization server in synchronization with the work image stored in the user terminal at the end of the work of the recent work.

실시 예에 따라, 상기 최근 작업의 작업 종료 시점은, 상기 사용자 단말과 상기 제2가상화 서버의 통신 상태에 장애가 있는 경우에도 상기 사용자 단말에서 작업이 가능하도록 뷰어(viewer) 기능을 제공하는 클라이언트 프로그램(client program)의 종료 시점일 수 있다.According to an embodiment, the job end time of the recent job is a client program that provides a viewer function so that the job can be performed in the user terminal even if there is a failure in the communication state between the user terminal and the second virtualization server ( It may be the end time of the client program).

실시 예에 따라, 상기 최근 작업 이미지는, 상기 제2가상화 서버에서 작업 수행에 사용되는 OS(Operating System) 영역에 대한 스냅샷 이미지일 수 있다.According to an embodiment, the recent work image may be a snapshot image of an operating system (OS) area used for performing work in the second virtualization server.

본 발명의 실시 예에 따른 가상화 서버는 사용자 단말로부터 최근 작업 이미지 및 작업 이미지 인증 정보를 수신하고, 수신된 상기 작업 이미지 인증 정보를 이용하여 상기 최근 작업 이미지에 대한 작업을 마지막으로 수행하였던 타 가상화 서버와 상기 최근 작업 이미지에 대한 인증을 수행하는 보안 모듈 및 인증이 완료된 상기 최근 작업 이미지를 이용하여 상기 사용자 단말에 작업 환경을 제공하는 이미지 관리 모듈을 포함할 수 있다.The virtualization server according to an embodiment of the present invention receives the latest work image and work image authentication information from the user terminal, and uses the received work image authentication information to perform the work on the latest work image last. Another virtualization server and an image management module that provides a work environment to the user terminal by using a security module for authenticating the recent work image and the recent work image for which authentication has been completed.

본 발명의 실시 예에 따른 프로세서(processor)와 결합되어 서버 가상화 시스템의 동작 방법을 수행하기 위한 매체에 저장된 프로그램은 제1가상화 서버가, 사용자 단말로부터 최근 작업 이미지 및 작업 이미지 인증 정보를 수신하는 단계, 상기 제1가상화 서버가, 수신된 상기 작업 이미지 인증 정보를 이용하여 상기 최근 작업 이미지에 대한 작업을 마지막으로 수행하였던 제2가상화 서버와 상기 최근 작업 이미지에 대한 인증을 수행하는 단계 및 상기 제1가상화 서버가, 인증이 완료된 상기 최근 작업 이미지를 이용하여 상기 사용자 단말에 작업 환경을 제공하는 단계를 수행할 수 있다.The program stored in the medium for performing the method of operation of the server virtualization system by being combined with a processor according to an embodiment of the present invention is the step of the first virtualization server receiving the latest work image and work image authentication information from the user terminal , the first virtualization server, using the received work image authentication information to perform authentication for the second virtualization server and the latest work image that last performed the work on the recent work image, and the first The virtualization server may perform the step of providing a work environment to the user terminal by using the latest work image for which authentication has been completed.

본 발명의 실시 예에 따른 방법과 장치들은 최근 작업 이미지를 사용자 단말로부터 수신하여 최근 작업 이미지에 대한 작업을 마지막으로 수행하였던 가상화 서버와 최근 작업 이미지에 대한 인증을 수행하고 인증이 완료된 최근 작업 이미지를 이용하여 사용자 단말에 작업 환경을 제공함으로써, 사용자가 상황에 따라 서로 다른 데이터 센터에 접속하여 작업을 이어가는 경우에도 최근 작업에 대한 연속성과 보안성을 함께 담보할 수 있다.Methods and apparatuses according to an embodiment of the present invention receive a recent work image from a user terminal, perform authentication on the latest work image and the virtualization server that last performed the work on the recent work image, and retrieve the recently completed work image. By providing a work environment to the user terminal by using it, continuity and security for recent work can be guaranteed together even when the user continues to work by connecting to different data centers depending on the situation.

본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 일 실시 예에 따른 서버 가상화 시스템을 나타낼 수 있다.
도 2는 도 1에 도시된 서버 가상화 시스템의 최초 작업 과정에 따른 데이터 플로우이다.
도 3은 도 2의 최근 작업에 대한 정보를 활용하여 사용자 단말에 작업 환경을 제공하는 과정의 데이터 플로우이다.
In order to more fully understand the drawings recited in the Detailed Description, a brief description of each drawing is provided.
1 may show a server virtualization system according to an embodiment of the present invention.
Figure 2 is a data flow according to the initial operation process of the server virtualization system shown in Figure 1.
FIG. 3 is a data flow of a process of providing a work environment to a user terminal by using information on a recent work of FIG. 2 .

본 발명의 기술적 사상은 다양한 변경을 가할 수 있고 여러 가지 실시 예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 이를 상세히 설명하고자 한다. 그러나, 이는 본 발명의 기술적 사상을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 기술적 사상의 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.Since the technical spirit of the present invention can have various changes and can have various embodiments, specific embodiments are illustrated in the drawings and described in detail. However, this is not intended to limit the technical spirit of the present invention to specific embodiments, and it should be understood to include all changes, equivalents or substitutes included in the scope of the technical spirit of the present invention.

본 발명의 기술적 사상을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.In describing the technical idea of the present invention, if it is determined that a detailed description of a related known technology may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted. In addition, numbers (eg, first, second, etc.) used in the description process of the present specification are only identification symbols for distinguishing one component from other components.

또한, 본 명세서에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.In addition, in this specification, when a component is referred to as "connected" or "connected" to another component, the component may be directly connected or directly connected to the other component, but in particular It should be understood that, unless there is a description to the contrary, it may be connected or connected through another element in the middle.

또한, 본 명세서에 기재된 "~부", "~기", "~자", "~모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 프로세서(Processor), 마이크로 프로세서(Micro Processer), 마이크로 컨트롤러(Micro Controller), CPU(Central Processing Unit), GPU(Graphics Processing Unit), APU(Accelerate Processor Unit), DSP(Drive Signal Processor), ASIC(Application Specific Integrated Circuit), FPGA(Field Programmable Gate Array) 등과 같은 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있으며, 적어도 하나의 기능이나 동작의 처리에 필요한 데이터를 저장하는 메모리(memory)와 결합되는 형태로 구현될 수도 있다.In addition, terms such as "~ unit", "~ group", "~ character", and "~ module" described in this specification mean a unit that processes at least one function or operation, which is a processor, a micro Processor (Micro Processor), Micro Controller (Micro Controller), CPU (Central Processing Unit), GPU (Graphics Processing Unit), APU (Accelerate Processor Unit), DSP (Drive Signal Processor), ASIC (Application Specific Integrated Circuit), FPGA (Field Programmable Gate Array), etc. may be implemented as hardware or software or a combination of hardware and software, and may be implemented in a form combined with a memory that stores data necessary for processing at least one function or operation. .

그리고 본 명세서에서의 구성부들에 대한 구분은 각 구성부가 담당하는 주기능 별로 구분한 것에 불과함을 명확히 하고자 한다. 즉, 이하에서 설명할 2개 이상의 구성부가 하나의 구성부로 합쳐지거나 또는 하나의 구성부가 보다 세분화된 기능별로 2개 이상으로 분화되어 구비될 수도 있다. 그리고 이하에서 설명할 구성부 각각은 자신이 담당하는 주기능 이외에도 다른 구성부가 담당하는 기능 중 일부 또는 전부의 기능을 추가적으로 수행할 수도 있으며, 구성부 각각이 담당하는 주기능 중 일부 기능이 다른 구성부에 의해 전담되어 수행될 수도 있음은 물론이다.In addition, it is intended to clarify that the classification of the constituent parts in the present specification is merely a classification for each main function that each constituent unit is responsible for. That is, two or more components to be described below may be combined into one component, or one component may be divided into two or more for each more subdivided function. In addition, each of the constituent units to be described below may additionally perform some or all of the functions of other constituent units in addition to the main function it is responsible for. Of course, it may be carried out by being dedicated to it.

도 1은 본 발명의 일 실시 예에 따른 서버 가상화 시스템을 나타낼 수 있다.1 may show a server virtualization system according to an embodiment of the present invention.

도 1을 참조하면, 서버 가상화 시스템은 사용자 단말(100)과 복수의 가상화 서버들(200-1, 200-2)을 포함할 수 있다.Referring to FIG. 1 , the server virtualization system may include a user terminal 100 and a plurality of virtualization servers 200 - 1 and 200 - 2 .

도 1에서는 설명의 편의를 위하여 2개의 가상화 서버들(200-1, 200-2)을 도시하고 있으나, 가상화 서버들의 개수는 다양한 변경이 가능하다.Although FIG. 1 shows two virtualization servers 200-1 and 200-2 for convenience of explanation, the number of virtualization servers can be variously changed.

실시 예에 따라, 서버 가상화 시스템은 VDI(Virtual Desktop Infrastructure), 서버리스(serverless) 컴퓨팅 플랫폼 등 다양한 용어로 칭해질 수 있다. 또한, 서버 가상화 시스템은 완전 가상화, 반가상화, 또는 OS 수준 가상화 등의 다양한 가상화 수준으로 구현될 수 있다.According to an embodiment, the server virtualization system may be referred to by various terms such as a virtual desktop infrastructure (VDI), a serverless computing platform, and the like. In addition, the server virtualization system may be implemented in various virtualization levels, such as full virtualization, paravirtualization, or OS level virtualization.

사용자 단말(100)은 네트워크를 통하여 복수의 가상화 서버들(200-1, 200-2)에서 생성 및 관리되는 컨테이너를 통하여 API 실행 환경을 제공받을 수 있다.The user terminal 100 may receive an API execution environment through a container created and managed by the plurality of virtualization servers 200-1 and 200-2 through a network.

복수의 가상화 서버들(200-1, 200-2)은 네트워크를 통하여 상호 간에도 통신을 수행할 수 있다.The plurality of virtualization servers 200-1 and 200-2 may communicate with each other through a network.

실시 예에 따라, 복수의 가상화 서버들(200-1, 200-2) 각각은 서로 물리적으로 떨어진 위치에 배치되는 데이터 센터(data center)로 구현될 수 있다.According to an embodiment, each of the plurality of virtualization servers 200 - 1 and 200 - 2 may be implemented as a data center disposed at a location physically separated from each other.

복수의 가상화 서버들(200-1, 200-2) 각각은 가상 머신(Virtual Machine(VM), 210-1, 210-2), 보안 모듈(security module, 220-1, 220-2), 이미지 관리 모듈(image management module, 230-1, 230-2), 로그 관리 모듈(log management module, 240-1, 240-2), 및 스토리지(storage, 250-1, 250-2)를 포함할 수 있다.Each of the plurality of virtualization servers 200-1 and 200-2 is a virtual machine (Virtual Machine (VM), 210-1, 210-2), a security module (security module, 220-1, 220-2), an image may include a management module (image management module, 230-1, 230-2), log management module (log management module, 240-1, 240-2), and storage (storage, 250-1, 250-2) have.

복수의 가상화 서버들(200-1, 200-2) 각각은 가상 머신(210-1, 210-2)을 생성하고 관리할 수 있다. 실시 예에 따라, 복수의 가상화 서버들(200-1, 200-2) 각각은 복수의 가상 머신들을 동시에 운영할 수도 있다.Each of the plurality of virtualization servers 200 - 1 and 200 - 2 may create and manage virtual machines 21 - 1 and 210 - 2 . According to an embodiment, each of the plurality of virtualization servers 200 - 1 and 200 - 2 may simultaneously operate a plurality of virtual machines.

실시 예에 따라, 복수의 가상화 서버들(200-1, 200-2) 각각은 가상 머신(210-1, 210-2)을 생성하고 관리하기 위한 하이퍼바이저(hypervisor)를 포함할 수 있다.According to an embodiment, each of the plurality of virtualization servers 200-1 and 200-2 may include a hypervisor for creating and managing the virtual machines 210-1 and 210-2.

각 가상 머신(210-1, 210-2)은 상응하는 운영 체제(Operating System(OS)), 예컨대, 리눅스, 윈도우 데스크톱/서버, FreeBSD, DOS, 노벨 서버, 또는 맥 OSX 등을 구동시킬 수 있으며, 각 가상 머신(210-1, 210-2)에서 구동시키는 운영 체제 기반의 소프트웨어들을 사용할 수 있다.Each virtual machine (210-1, 210-2) can run a corresponding operating system (Operating System (OS)), for example, Linux, Windows desktop / server, FreeBSD, DOS, Novell server, or Mac OSX, etc. , operating system-based software running in each of the virtual machines 210 - 1 and 210 - 2 may be used.

보안 모듈(220-1, 220-2)은 복수의 가상화 서버들(200-1, 200-2) 각각으로 서비스 요청을 하는 사용자 단말(100)에 대한 사용자 인증을 수행할 수 있다.The security modules 220-1 and 220-2 may perform user authentication for the user terminal 100 making a service request to each of the plurality of virtualization servers 200-1 and 200-2.

실시 예에 따라, 제1가상화 서버(200-1)의 보안 모듈(220-1)은 사용자 단말(100)에 대한 사용자 인증을 위한 사용자 인증 정보(예컨대, 보안 키 등)를 제2가상화 서버(200-2)의 보안 모듈(220-2)과 서로 공유할 수 있다.According to an embodiment, the security module 220-1 of the first virtualization server 200-1 transmits user authentication information (eg, security key, etc.) for user authentication for the user terminal 100 to the second virtualization server ( It can be shared with the security module 220-2 of 200-2).

보안 모듈(220-1, 220-2)은 사용자 단말(100)과 동기화된 작업 이미지에 대한 인증 정보를 생성하고 관리할 수 있다. 보안 모듈(220-1, 220-2)은 사용자 단말(100)로부터 전송된 최근 작업 이미지에 대한 인증을 수행할 수 있다. 실시 예에 따라, 제1가상화 서버(200-1)의 보안 모듈(220-1)은 제2가상화 서버(200-2)의 보안 모듈(220-2)과 최근 작업 이미지에 대한 인증 과정을 수행할 수 있다.The security modules 220 - 1 and 220 - 2 may generate and manage authentication information for a work image synchronized with the user terminal 100 . The security modules 220 - 1 and 220 - 2 may authenticate the recent work image transmitted from the user terminal 100 . According to an embodiment, the security module 220-1 of the first virtualization server 200-1 performs an authentication process for the latest work image with the security module 220-2 of the second virtualization server 200-2. can do.

이미지 관리 모듈(230-1, 230-2)은 사용자 단말(100)이 복수의 가상화 서버들(200-1, 200-2) 각각의 가상 머신(210-1, 210-2)을 통하여 작업을 수행하는 경우에 수행 중인 작업에 대한 작업 이미지와 완료된 작업에 대한 작업 이미지를 생성하고, 생성된 작업 이미지를 통하여 사용자 단말(100)에 작업 환경을 제공할 수 있다.The image management module (230-1, 230-2) is the user terminal 100 is a plurality of virtual servers (200-1, 200-2) through each virtual machine (210-1, 210-2) In the case of performing, a work image for a work being performed and a work image for a completed work may be generated, and a work environment may be provided to the user terminal 100 through the generated work image.

실시 예에 따라, 작업 이미지는 가상화 서버(200-1 또는 200-2)에서 작업 수행에 사용되는 가상 머신(210-1 또는 210-2)의 OS 영역에 대한 스냅샷 이미지일 수 있다.According to an embodiment, the job image may be a snapshot image of the OS area of the virtual machine 210-1 or 210-2 used to perform a job in the virtualization server 200-1 or 200-2.

이미지 관리 모듈(230-1, 230-2)에 의해 생성된 작업 이미지는 사용자 단말(100)과 주기적으로 동기화될 수 있다. 또한, 사용자 단말(100)이 클라이언트 프로그램(client program)을 종료하는 시점에 최종적으로 작업 이미지를 동기화할 수 있다. 예컨대, 상기 클라이언트 프로그램은 사용자 단말과 가상화 서버(200-1 또는 200-2)의 통신 상태에 장애가 있는 경우에도 사용자 단말(100)에서 작업이 가능하도록 뷰어(viewer) 기능을 제공할 수 있다.The work images generated by the image management modules 230 - 1 and 230 - 2 may be periodically synchronized with the user terminal 100 . In addition, the user terminal 100 may finally synchronize the work image at the time when the client program (client program) is terminated. For example, the client program may provide a viewer function to enable work in the user terminal 100 even when there is a failure in the communication state between the user terminal and the virtualization server 200-1 or 200-2.

로그 관리 모듈(240-1, 240-2)은 사용자 단말(100)이 가상화 서버(200-1 또는 200-2)에 접속하여 작업한 이력에 대한 로그 정보를 관리할 수 있다.The log management modules 240 - 1 and 240 - 2 may manage log information about the history of the user terminal 100 connecting to the virtualization server 200 - 1 or 200 - 2 .

실시 예에 따라, 제1가상화 서버(200-1)의 로그 관리 모듈(240-1)은 사용자 단말(100)의 로그 정보를 제2가상화 서버(200-2)의 로그 관리 모듈(240-2)과 서로 공유할 수 있다.According to an embodiment, the log management module 240-1 of the first virtualization server 200-1 stores log information of the user terminal 100 in the log management module 240-2 of the second virtualization server 200-2. ) and can be shared with each other.

스토리지(250-1, 250-2)는 각 가상화 서버(200-1, 200-2)에서 가상 머신(210-1, 210-2)의 생성 및 관리에 필요한 데이터, 이미지 관리 모듈(230-1, 230-2)에 의해 생성 및 관리되는 작업 이미지 데이터, 로그 관리 모듈(240-1, 240-2)에서 생성 및 관리되는 로그 정보 데이터 등을 저장할 수 있다.The storages 250-1 and 250-2 are data and image management module 230-1 required for creation and management of virtual machines 210-1 and 210-2 in each virtualization server 200-1 and 200-2. , 230-2) may store job image data generated and managed, log information data generated and managed by the log management modules 240-1 and 240-2, and the like.

실시 예에 따라, 스토리지(250-1, 250-2)는 각 가상화 서버(200-1, 200-2)와 별도의 장치로 구현될 수 있으며, 이 때 각 가상화 서버(200-1, 200-2)의 내부에는 별도의 메모리가 포함될 수 있다.According to an embodiment, the storage (250-1, 250-2) may be implemented as a device separate from each virtualization server (200-1, 200-2), at this time, each virtualization server (200-1, 200-) 2) may include a separate memory.

사용자 단말(100)과 가상화 서버(200-1, 200-2) 간의 상세한 데이터 플로우에 대해서는 도 2와 도 3을 참조하여 후술하도록 한다.A detailed data flow between the user terminal 100 and the virtualization servers 200-1 and 200-2 will be described later with reference to FIGS. 2 and 3 .

도 2는 도 1에 도시된 서버 가상화 시스템의 최초 작업 과정에 따른 데이터 플로우이다.2 is a data flow according to the initial operation process of the server virtualization system shown in FIG.

도 1과 도 2를 참조하면, 사용자 단말(100)은 제1가상화 서버(200-1)로 서비스 요청 메시지를 전송할 수 있다(S210).1 and 2 , the user terminal 100 may transmit a service request message to the first virtualization server 200 - 1 ( S210 ).

실시 예에 따라, 서비스 요청 메시지는 사용자가 작업을 위하여 제1가상화 서버(200-1)에서 제공되는 작업 환경을 제공받기 위한 요청 메시지이다. 실시 예에 따라, 서비스 요청 메시지에는 사용자 단말(100)의 식별정보 또는 사용자의 식별정보가 포함될 수 있다.According to an embodiment, the service request message is a request message for the user to be provided with the work environment provided by the first virtualization server 200-1 for work. According to an embodiment, the service request message may include identification information of the user terminal 100 or identification information of the user.

제1가상화 서버(200-1)는 사용자 단말(100)로부터 전송된 서비스 요청 메시지에 따라, 사용자 단말(100)과 사용자 인증 절차를 수행하고, 사용자 인증에 따른 사용자 인증 정보를 생성할 수 있다(S212).The first virtualization server 200-1 may perform a user authentication procedure with the user terminal 100 according to the service request message transmitted from the user terminal 100, and may generate user authentication information according to user authentication ( S212).

실시 예에 따라, S212 단계는 보안 모듈(220-1)에서 수행될 수 있다.According to an embodiment, step S212 may be performed in the security module 220-1.

실시 예에 따라, S212 단계에서 생성된 사용자 인증 정보에는 사용자 인증을 위한 보안키가 포함될 수 있다.According to an embodiment, the user authentication information generated in step S212 may include a security key for user authentication.

S212 단계를 통하여 사용자 인증 과정에서 생성된 사용자 인증 정보는 사용자 단말(100)과 제1가상화 서버(200-1) 각각에 저장될 수 있다(S214, S216).The user authentication information generated in the user authentication process through step S212 may be stored in each of the user terminal 100 and the first virtualization server 200-1 (S214 and S216).

제1가상화 서버(200-1)는 저장된 사용자 인증 정보를 제2가상화 서버(200-2)로 전송할 수 있다(S218).The first virtualization server 200-1 may transmit the stored user authentication information to the second virtualization server 200-2 (S218).

실시 예에 따라, 서버 가상화 시스템에 더 많은 가상화 서버들이 포함되는 경우, 제1가상화 서버(200-1)는 제2가상화 서버(200-2) 이외에도 전체 가상화 서버들로 사용자 인증 정보를 전송하여 공유할 수 있다.According to an embodiment, when more virtualization servers are included in the server virtualization system, the first virtualization server 200-1 transmits and shares user authentication information to all virtualization servers in addition to the second virtualization server 200-2. can do.

제2가상화 서버(200-2)는 제1가상화 서버(200-1)로부터 전송된 사용자 인증 정보를 저장할 수 있다(S220).The second virtualization server 200-2 may store the user authentication information transmitted from the first virtualization server 200-1 (S220).

사용자 인증 과정이 완료된 사용자 단말(100)은 제1가상화 서버(200-1)에서 제공되는 작업 환경을 통하여 작업을 진행할 수 있다(S222).The user terminal 100 on which the user authentication process has been completed may proceed with the work through the work environment provided by the first virtualization server 200-1 (S222).

사용자 단말(100)과 제1가상화 서버(200-1) 각각은 S222 단계에서 진행된 작업에 대한 작업 이미지를 저장할 수 있다(S224, S226). Each of the user terminal 100 and the first virtualization server 200-1 may store a work image for the work performed in step S222 (S224, S226).

실시 예에 따라, 사용자 단말(100)과 제1가상화 서버(200-1) 각각은 S222 단계에서 진행된 작업에 대한 작업 이미지를 주기적으로 저장할 수 있다.According to an embodiment, each of the user terminal 100 and the first virtualization server 200-1 may periodically store a work image for the work performed in step S222.

사용자 단말(100)과 제1가상화 서버(200-1)에는 기본적으로 서로 동일한 작업 이미지가 저장되지만, 사용자 단말(100)과 제1가상화 서버(200-1)의 통신 상태에 장애가 있는 경우, 사용자 단말(100)에 저장된 작업 이미지에만 작업 내용이 반영될 수 있다.The user terminal 100 and the first virtualization server 200-1 basically store the same work images, but when there is a failure in the communication state between the user terminal 100 and the first virtualization server 200-1, the user The work content may be reflected only in the work image stored in the terminal 100 .

따라서, 사용자 단말(100)과 제1가상화 서버(200-1)에 저장된 작업 이미지가 불일치하는 것을 방지하기 위하여, 사용자 단말(100)과 제1가상화 서버(200-1)는 작업 종료 시점에 최종 작업 이미지 동기화 과정을 수행할 수 있다(S228).Therefore, in order to prevent the user terminal 100 and the work images stored in the first virtualization server 200-1 from being inconsistent, the user terminal 100 and the first virtualization server 200-1 are finally A work image synchronization process may be performed (S228).

실시 예에 따라, 작업 종료 시점은 사용자 단말(100)과 제1가상화 서버(200-1)의 통신 상태에 장애가 있는 경우에도 사용자 단말(100)에서 작업이 가능하도록 뷰어(viewer) 기능을 제공하는 클라이언트 프로그램이 종료된 시점일 수 있다.According to an embodiment, the end time of the operation is to provide a viewer function so that the operation can be performed in the user terminal 100 even when there is a failure in the communication state between the user terminal 100 and the first virtualization server 200-1. This may be the time when the client program is terminated.

또한, 제1가상화 서버(200-1)는 사용자 단말(100)과 함께, 저장된 작업 이미지가 최종적인 작업 이미지임을 인증하기 위한 작업 이미지 인증 정보를 생성할 수 있다(S230).In addition, the first virtualization server 200-1, together with the user terminal 100, may generate work image authentication information for authenticating that the stored work image is the final work image (S230).

실시 예에 따라, 작업 이미지 인증 정보는 사용자 단말(100) 또는 사용자에 대한 식별정보와 작업 이미지에 대한 해시값(hash value) 중에서 적어도 어느 하나를 포함할 수 있다.According to an embodiment, the work image authentication information may include at least one of identification information for the user terminal 100 or the user and a hash value for the work image.

S230 단계에서 생성된 작업 이미지 인증 정보는 사용자 단말(100)과 제1가상화 서버(200-1) 각각에 저장될 수 있다(S232, S234).The job image authentication information generated in step S230 may be stored in each of the user terminal 100 and the first virtualization server 200-1 (S232, S234).

제1가상화 서버(200-1)는 사용자 단말(100)이 제1가상화 서버(200-1)에 접속한 접속 기록 및 제1가상화 서버(200-1)를 통하여 작업을 진행한 이력 등에 관한 사용자 로그 정보를 제2가상화 서버(200-2)로 전송할 수 있다(S236).The first virtualization server 200-1 is a user related to the history of the user terminal 100 accessing the first virtualization server 200-1 and the history of the work through the first virtualization server 200-1, etc. The log information may be transmitted to the second virtualization server 200-2 (S236).

실시 예에 따라, 서버 가상화 시스템에 더 많은 가상화 서버들이 포함되는 경우, 제1가상화 서버(200-1)는 제2가상화 서버(200-2) 이외에도 전체 가상화 서버들로 사용자 로그 정보를 전송하여 공유할 수 있다.According to an embodiment, when more virtualization servers are included in the server virtualization system, the first virtualization server 200-1 transmits and shares user log information to all virtualization servers in addition to the second virtualization server 200-2. can do.

제2가상화 서버(200-2)는 수신한 사용자 로그 정보를 저장할 수 있다(S238).The second virtualization server 200-2 may store the received user log information (S238).

도 3은 도 2의 최근 작업에 대한 정보를 활용하여 사용자 단말에 작업 환경을 제공하는 과정의 데이터 플로우이다.FIG. 3 is a data flow of a process of providing a work environment to a user terminal by using information on a recent work of FIG. 2 .

도 3은 사용자 단말(100)이 최근에 제1가상화 서버(200-1)를 통하여 작업을 진행하였고, 제2가상화 서버(200-2)를 통하여 작업을 이어가려는 경우의 데이터 플로우를 나타낼 수 있다.FIG. 3 shows a data flow when the user terminal 100 has recently performed an operation through the first virtualization server 200-1 and intends to continue the operation through the second virtualization server 200-2. .

도 1 내지 도 3을 참조하면, 사용자 단말(100)은 제2가상화 서버(200-2)로 서비스 요청 메시지를 전송할 수 있다(S310).1 to 3 , the user terminal 100 may transmit a service request message to the second virtualization server 200 - 2 ( S310 ).

실시 예에 따라, S310 단계의 서비스 요청 메시지는 S210 단계에서의 서비스 요청 메시지와 동일할 수도 있고 다를 수도 있다. S310 단계의 서비스 요청 메시지가 S210 단계에서의 서비스 요청 메시지와 다른 경우, S310 단계의 서비스 요청 메시지에는 최근에 작업을 진행하였던 가상화 서버와 현재 서비스 요청을 하는 가상화 서버가 다르다는 정보가 포함될 수 있다.According to an embodiment, the service request message in step S310 may be the same as or different from the service request message in step S210. When the service request message of step S310 is different from the service request message of step S210, the service request message of step S310 may include information that the virtualization server that has recently been working and the virtualization server currently making a service request are different.

제2가상화 서버(200-2)는 S218 단계와 S220 단계를 통하여 제1가상화 서버(200-1)로부터 사용자 단말(100)에 대한 사용자 인증 정보를 수신하여 저장하고 있었기 때문에, 저장된 사용자 인증 정보를 이용하여 직접 사용자 단말(100)과 사용자 인증 절차를 수행할 수 있다(S312).Since the second virtualization server 200-2 received and stored user authentication information for the user terminal 100 from the first virtualization server 200-1 through steps S218 and S220, the stored user authentication information It is possible to directly perform a user authentication procedure with the user terminal 100 by using (S312).

제2가상화 서버(200-2)는 S312 단계를 통하여 사용자 인증이 완료된 사용자 단말(100)에 대하여, 최근 작업 이력을 포함하는 사용자 로그 정보를 검색할 수 있다(S314).The second virtualization server 200-2 may search for user log information including a recent work history with respect to the user terminal 100 for which user authentication has been completed through step S312 (S314).

제2가상화 서버(200-2)는 S236 단계와 S238 단계를 통하여 제1가상화 서버(200-1)로부터 사용자 단말(100)에 대한 사용자 로그 정보를 수신하여 저장하고 있었기 때문에, 저장된 사용자 로그 정보를 이용하여 최근에 작업을 진행하였던 가상화 서버, 즉 제1가상화 서버(200-1)를 검색할 수 있다(S314).Since the second virtualization server 200-2 received and stored user log information for the user terminal 100 from the first virtualization server 200-1 through steps S236 and S238, the stored user log information It is possible to search for a virtualization server that has recently been working, that is, the first virtualization server 200 - 1 using this ( S314 ).

제2가상화 서버(200-2)는 사용자 인증이 완료된 사용자 단말(100)로 최근 작업 이미지 요청 메시지를 전송할 수 있다(S316).The second virtualization server 200 - 2 may transmit a recent work image request message to the user terminal 100 for which user authentication has been completed ( S316 ).

사용자 단말(100)은 S316 단계의 최근 작업 이미지 요청 메시지에 응답하여, 사용자 단말(100)에 저장되어 있던 최근 작업 이미지와 작업 이미지 인증 정보를 제2가상화 서버(200-2)로 전송할 수 있다(S318).The user terminal 100 may transmit the latest work image and work image authentication information stored in the user terminal 100 to the second virtualization server 200-2 in response to the recent work image request message of step S316 ( S318).

실시 예에 따라, S318 단계에서 전송되는 최근 작업 이미지는 S228 단계에서 제1가상화 서버(200-1)와의 최종 작업 이미지 동기화에 사용되었던 작업 이미지일 수 있다.According to an embodiment, the latest work image transmitted in step S318 may be a work image that was used to synchronize the final work image with the first virtualization server 200-1 in step S228.

실시 예에 따라, S318 단계에서 전송되는 작업 이미지 인증 정보는 S232 단계에서 저장되었던 작업 이미지 인증 정보일 수 있다.According to an embodiment, the job image authentication information transmitted in step S318 may be the job image authentication information stored in step S232.

제2가상화 서버(200-2)는 사용자 단말(100)로부터 전송된 최근 작업 이미지와 작업 이미지 인증 정보를 이용하여, 제1가상화 서버(200-1)와 최근 작업 이미지가 맞는지에 대한 인증 절차를 수행할 수 있다(S320).The second virtualization server 200-2 uses the latest work image and work image authentication information transmitted from the user terminal 100, and performs an authentication procedure for whether the first virtualization server 200-1 and the recent work image match. can be performed (S320).

실시 예에 따라, 제2가상화 서버(200-2)는 S314 단계를 통하여 검색된 사용자 로그 정보에 기초하여 제1가상화 서버(200-1)를 검색하고, 검색된 제1가상화 서버(200-1)와 최근 작업 이미지에 대한 인증 절차를 수행할 수 있다.According to an embodiment, the second virtualization server 200-2 searches for the first virtualization server 200-1 based on the user log information retrieved through step S314, and the searched first virtualization server 200-1 and You can perform the authentication procedure for the latest work image.

S320 단계의 인증 절차가 완료되면, 사용자 단말(100)이 S318 단계에서 제2가상화 서버(200-2) 측으로 전송하였던 최근 작업 이미지를 이용하여 작업이 진행될 수 있다(S322).When the authentication procedure of step S320 is completed, the user terminal 100 may proceed with the work using the latest work image transmitted to the second virtualization server 200-2 side in step S318 (S322).

S322 단계 이후에는 도 2의 S222 단계 이후와 실질적으로 동일한 형태로 데이터 처리가 이루어질 수 있다.After step S322, data processing may be performed in substantially the same form as after step S222 of FIG. 2 .

사용자 단말(100)과 제2가상화 서버(200-2) 각각은 S322 단계에서 진행된 작업에 대한 작업 이미지를 저장할 수 있다(S324, S326). Each of the user terminal 100 and the second virtualization server 200-2 may store a work image for the work performed in step S322 (S324, S326).

사용자 단말(100)과 제2가상화 서버(200-2)에는 기본적으로 서로 동일한 작업 이미지가 저장되지만, 사용자 단말(100)과 제2가상화 서버(200-2)의 통신 상태에 장애가 있는 경우, 사용자 단말(100)에 저장된 작업 이미지에만 작업 내용이 반영될 수 있다.The user terminal 100 and the second virtualization server 200-2 basically store the same work images, but when there is a failure in the communication state between the user terminal 100 and the second virtualization server 200-2, the user The work content may be reflected only in the work image stored in the terminal 100 .

따라서, 사용자 단말(100)과 제2가상화 서버(200-2)에 저장된 작업 이미지가 불일치하는 것을 방지하기 위하여, 사용자 단말(100)과 제2가상화 서버(200-2)는 작업 종료 시점에 최종 작업 이미지 동기화 과정을 수행할 수 있다(S328).Therefore, in order to prevent the user terminal 100 and the work image stored in the second virtualization server 200-2 from being inconsistent, the user terminal 100 and the second virtualization server 200-2 are finally A work image synchronization process may be performed (S328).

사용자 단말(100)과 제2가상화 서버(200-2)는 저장된 작업 이미지가 최종적인 작업 이미지임을 인증하기 위한 작업 이미지 인증 정보를 생성할 수 있다(S330).The user terminal 100 and the second virtualization server 200-2 may generate work image authentication information for authenticating that the stored work image is the final work image (S330).

S330 단계에서 생성된 작업 이미지 인증 정보는 사용자 단말(100)과 제2가상화 서버(200-2) 각각에 저장될 수 있다(S332, S334).The job image authentication information generated in step S330 may be stored in each of the user terminal 100 and the second virtualization server 200-2 (S332, S334).

실시 예에 따라, 제2가상화 서버(200-2)는 사용자 단말(100)이 제2가상화 서버(200-2)에 접속한 접속 기록 및 제2가상화 서버(200-2)를 통하여 작업을 진행한 이력 등에 관한 사용자 로그 정보를 다른 가상화 서버(예컨대, 제1가상화 서버(200-1))와 공유할 수 있다.According to an embodiment, the second virtualization server 200-2 performs the operation through the connection record of the user terminal 100 accessing the second virtualization server 200-2 and the second virtualization server 200-2. User log information related to one history may be shared with another virtualization server (eg, the first virtualization server 200-1).

본 발명의 실시 예에 따른 서버 가상화 시스템의 동작 방법은 프로그램 코드로 구현되어 사용자 단말(100)과 각 가상화 서버(200-1, 200-2)의 메모리에 저장될 수 있으며, 메모리는 프로세서와 결합되어 본 발명의 실시 예에 따른 가상화 시스템의 동작 방법을 수행 시킬 수 있다.The method of operating a server virtualization system according to an embodiment of the present invention may be implemented as a program code and stored in the memory of the user terminal 100 and each virtualization server 200-1, 200-2, and the memory is combined with the processor Thus, it is possible to perform the operation method of the virtualization system according to an embodiment of the present invention.

이상, 본 발명을 바람직한 실시 예를 들어 상세하게 설명하였으나, 본 발명은 상기 실시 예에 한정되지 않고, 본 발명의 기술적 사상 및 범위 내에서 당 분야에서 통상의 지식을 가진 자에 의하여 여러가지 변형 및 변경이 가능하다.Above, the present invention has been described in detail with reference to a preferred embodiment, but the present invention is not limited to the above embodiment, and various modifications and changes by those skilled in the art within the technical spirit and scope of the present invention This is possible.

100 : 사용자 단말
200-1, 200-2 : 가상화 서버
210-1, 210-2 : 가상화 머신
220-1, 220-2 : 보안 모듈
230-1, 230-2 : 이미지 관리 모듈
240-1. 240-2 : 로그 관리 모듈
250-1, 250-2 : 스토리지(storage)
100: user terminal
200-1, 200-2: Virtualization Server
210-1, 210-2: virtual machine
220-1, 220-2: security module
230-1, 230-2: Image management module
240-1. 240-2: log management module
250-1, 250-2: storage

Claims (10)

제1가상화 서버가, 사용자 단말로부터 최근 작업 이미지 및 작업 이미지 인증 정보를 수신하는 단계;
상기 제1가상화 서버가, 수신된 상기 작업 이미지 인증 정보를 이용하여 상기 최근 작업 이미지에 대한 작업을 마지막으로 수행하였던 제2가상화 서버와 상기 최근 작업 이미지에 대한 인증을 수행하는 단계; 및
상기 제1가상화 서버가, 인증이 완료된 상기 최근 작업 이미지를 이용하여 상기 사용자 단말에 작업 환경을 제공하는 단계를 포함하는, 서버 가상화 시스템의 동작 방법.
Receiving, by the first virtualization server, the latest work image and work image authentication information from the user terminal;
performing, by the first virtualization server, authentication on the latest work image with a second virtualization server that last performed the work on the latest work image using the received work image authentication information; and
The method of operation of a server virtualization system, comprising the step of providing, by the first virtualization server, a work environment to the user terminal by using the latest work image for which authentication is completed.
제1항에 있어서,
상기 서버 가상화 시스템의 동작 방법은,
상기 수신하는 단계 이전에,
상기 제1가상화 서버가, 상기 제2가상화 서버로부터 전송된 사용자 인증 정보를 수신하여 저장하는 단계; 및
상기 제1가상화 서버가, 저장된 상기 사용자 인증 정보를 이용하여 상기 사용자 단말에 대한 사용자 인증을 수행하는 단계를 더 포함하는, 서버 가상화 시스템의 동작 방법.
The method of claim 1,
The method of operation of the server virtualization system,
Prior to the receiving step,
storing, by the first virtualization server, receiving user authentication information transmitted from the second virtualization server; and
The method of operation of a server virtualization system, further comprising the step of performing, by the first virtualization server, user authentication for the user terminal using the stored user authentication information.
제1항에 있어서,
상기 서버 가상화 시스템의 동작 방법은,
상기 제1가상화 서버가, 상기 제2가상화 서버로부터 상기 사용자 단말에 대한 사용자 로그 정보를 수신하는 단계; 및
상기 제1가상화 서버가, 수신된 상기 사용자 로그 정보를 저장하는 단계를 더 포함하는, 서버 가상화 시스템의 동작 방법.
The method of claim 1,
The method of operation of the server virtualization system,
receiving, by the first virtualization server, user log information for the user terminal from the second virtualization server; and
The first virtualization server, further comprising the step of storing the received user log information, the operating method of the server virtualization system.
제3항에 있어서,
상기 서버 가상화 시스템의 동작 방법은,
상기 제1가상화 서버가, 저장된 상기 사용자 로그 정보에 기초하여 상기 최근 작업 이미지에 대한 작업을 마지막으로 수행하였던 상기 제2가상화 서버를 검색하는 단계를 더 포함하는, 서버 가상화 시스템의 동작 방법.
4. The method of claim 3,
The method of operation of the server virtualization system,
The first virtualization server, based on the stored user log information, further comprising the step of searching for the second virtualization server that last performed the work on the recent work image, the operating method of the server virtualization system.
제1항에 있어서,
상기 제1가상화 서버와 상기 제2가상화 서버 각각은,
서로 물리적으로 떨어진 위치에 배치되는 데이터 센터인, 서버 가상화 시스템의 동작 방법.
The method of claim 1,
Each of the first virtualization server and the second virtualization server,
How a server virtualization system works, which are data centers that are placed physically apart from each other.
제1항에 있어서,
상기 최근 작업 이미지는,
최근 작업의 작업 종료 시점에 상기 사용자 단말에 저장된 작업 이미지와 동기화되어 상기 제2가상화 서버에 저장된 작업 이미지인, 서버 가상화 시스템의 동작 방법.
According to claim 1,
The recent work image is,
The method of operation of a server virtualization system, which is a work image stored in the second virtualization server in synchronization with the work image stored in the user terminal at the end of the work of the recent work.
제6항에 있어서,
상기 최근 작업의 작업 종료 시점은,
상기 사용자 단말과 상기 제2가상화 서버의 통신 상태에 장애가 있는 경우에도 상기 사용자 단말에서 작업이 가능하도록 뷰어(viewer) 기능을 제공하는 클라이언트 프로그램(client program)의 종료 시점인, 서버 가상화 시스템의 동작 방법.
7. The method of claim 6,
The work end time of the recent work is,
Even if there is a failure in the communication state between the user terminal and the second virtualization server, it is the end point of a client program that provides a viewer function so that the user can work in the user terminal. How to operate a server virtualization system .
제1항에 있어서,
상기 최근 작업 이미지는,
상기 제2가상화 서버에서 작업 수행에 사용되는 OS(Operating System) 영역에 대한 스냅샷 이미지인, 서버 가상화 시스템의 동작 방법.
According to claim 1,
The recent work image is,
A method of operating a server virtualization system, which is a snapshot image of an OS (Operating System) area used to perform tasks in the second virtualization server.
사용자 단말로부터 최근 작업 이미지 및 작업 이미지 인증 정보를 수신하고, 수신된 상기 작업 이미지 인증 정보를 이용하여 상기 최근 작업 이미지에 대한 작업을 마지막으로 수행하였던 타 가상화 서버와 상기 최근 작업 이미지에 대한 인증을 수행하는 보안 모듈; 및
인증이 완료된 상기 최근 작업 이미지를 이용하여 상기 사용자 단말에 작업 환경을 제공하는 이미지 관리 모듈을 포함하는, 가상화 서버.
Receive the latest work image and work image authentication information from the user terminal, and perform authentication on the recent work image with another virtualization server that last performed the work on the recent work image using the received work image authentication information a security module; and
A virtualization server comprising an image management module that provides a work environment to the user terminal using the latest work image for which authentication has been completed.
프로세서(processor)와 결합되어 서버 가상화 시스템의 동작 방법을 수행하기 위한 매체에 저장된 프로그램으로서,
제1가상화 서버가, 사용자 단말로부터 최근 작업 이미지 및 작업 이미지 인증 정보를 수신하는 단계;
상기 제1가상화 서버가, 수신된 상기 작업 이미지 인증 정보를 이용하여 상기 최근 작업 이미지에 대한 작업을 마지막으로 수행하였던 제2가상화 서버와 상기 최근 작업 이미지에 대한 인증을 수행하는 단계; 및
상기 제1가상화 서버가, 인증이 완료된 상기 최근 작업 이미지를 이용하여 상기 사용자 단말에 작업 환경을 제공하는 단계를 수행하는, 프로그램.
A program stored in a medium for performing a method of operation of a server virtualization system in combination with a processor,
Receiving, by the first virtualization server, the latest work image and work image authentication information from the user terminal;
performing, by the first virtualization server, authentication on the latest work image with a second virtualization server that last performed the work on the latest work image using the received work image authentication information; and
The first virtualization server, using the latest work image for which authentication has been completed, performing the step of providing a work environment to the user terminal, the program.
KR1020200168630A 2020-12-04 2020-12-04 Virtualization server, operating method of server virtualization system, and program using the same KR102491998B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200168630A KR102491998B1 (en) 2020-12-04 2020-12-04 Virtualization server, operating method of server virtualization system, and program using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200168630A KR102491998B1 (en) 2020-12-04 2020-12-04 Virtualization server, operating method of server virtualization system, and program using the same

Publications (2)

Publication Number Publication Date
KR20220079158A true KR20220079158A (en) 2022-06-13
KR102491998B1 KR102491998B1 (en) 2023-01-26

Family

ID=81984007

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200168630A KR102491998B1 (en) 2020-12-04 2020-12-04 Virtualization server, operating method of server virtualization system, and program using the same

Country Status (1)

Country Link
KR (1) KR102491998B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006099406A (en) * 2004-09-29 2006-04-13 Nec Corp Switch device, system and backup, and restoration method and program
JP2006099557A (en) * 2004-09-30 2006-04-13 Hitachi Ltd Computer system
JP2010211819A (en) * 2010-04-26 2010-09-24 Hitachi Ltd Failure recovery method
JP2012073985A (en) * 2010-09-30 2012-04-12 Internatl Business Mach Corp <Ibm> Method for managing snapshot of virtual server, and device for embodying the method
KR20200105174A (en) * 2019-02-28 2020-09-07 에스케이브로드밴드주식회사 Virtual desktop system providing an environment at specific time and method thereof

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006099406A (en) * 2004-09-29 2006-04-13 Nec Corp Switch device, system and backup, and restoration method and program
JP2006099557A (en) * 2004-09-30 2006-04-13 Hitachi Ltd Computer system
JP2010211819A (en) * 2010-04-26 2010-09-24 Hitachi Ltd Failure recovery method
JP2012073985A (en) * 2010-09-30 2012-04-12 Internatl Business Mach Corp <Ibm> Method for managing snapshot of virtual server, and device for embodying the method
KR20200105174A (en) * 2019-02-28 2020-09-07 에스케이브로드밴드주식회사 Virtual desktop system providing an environment at specific time and method thereof

Also Published As

Publication number Publication date
KR102491998B1 (en) 2023-01-26

Similar Documents

Publication Publication Date Title
US20230393953A1 (en) Failover and recovery for replicated data instances
EP3338186B1 (en) Optimal storage and workload placement, and high resiliency, in geo-distributed cluster systems
US8495624B2 (en) Provisioning a suitable operating system environment
CN112130965A (en) Method, equipment and storage medium for deploying distributed container arrangement management cluster
EP2863308B1 (en) Decentralized distributed computing system
US7379990B2 (en) Distributed virtual SAN
CA2778723C (en) Monitoring of replicated data instances
JP4544146B2 (en) Disaster recovery method
US9847907B2 (en) Distributed caching cluster management
US9088632B2 (en) Redistribution of operating environments for the redeployment of grid clients
CN110247984B (en) Service processing method, device and storage medium
US20120180070A1 (en) Single point, scalable data synchronization for management of a virtual input/output server cluster
CN113656147B (en) Cluster deployment method, device, equipment and storage medium
CN102355369A (en) Virtual clustered system as well as processing method and processing device thereof
CN113196237A (en) Container migration in a computing system
US9529772B1 (en) Distributed caching cluster configuration
EP3533198B1 (en) Highly available and reliable secret distribution infrastructure
WO2015062217A1 (en) Connection processing method and device for peripheral in virtual desktop system
CN114489690A (en) Distributed system deployment method and device, electronic equipment and storage medium
KR102491998B1 (en) Virtualization server, operating method of server virtualization system, and program using the same
CN106790521B (en) System and method for distributed networking by using node equipment based on FTP
CN111949378B (en) Virtual machine starting mode switching method and device, storage medium and electronic equipment
JP5464449B2 (en) Method for detecting inconsistency between processing units considering reboot due to failure, shared apparatus, and cluster system
CN116339926B (en) Containerized deployment method of ATS software
US11924336B1 (en) Cryptographic artifact generation using virtualized security modules

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant