KR101972997B1 - 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법 및 이를 이용한 장치 - Google Patents

이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법 및 이를 이용한 장치 Download PDF

Info

Publication number
KR101972997B1
KR101972997B1 KR1020150087394A KR20150087394A KR101972997B1 KR 101972997 B1 KR101972997 B1 KR 101972997B1 KR 1020150087394 A KR1020150087394 A KR 1020150087394A KR 20150087394 A KR20150087394 A KR 20150087394A KR 101972997 B1 KR101972997 B1 KR 101972997B1
Authority
KR
South Korea
Prior art keywords
virtual desktop
profile
server
user
hardware
Prior art date
Application number
KR1020150087394A
Other languages
English (en)
Other versions
KR20160149774A (ko
Inventor
김대원
김선욱
김성운
문종배
오병택
오수철
조정현
김학영
오명훈
최지혁
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020150087394A priority Critical patent/KR101972997B1/ko
Priority to US15/132,808 priority patent/US20160373523A1/en
Publication of KR20160149774A publication Critical patent/KR20160149774A/ko
Application granted granted Critical
Publication of KR101972997B1 publication Critical patent/KR101972997B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/08Protocols specially adapted for terminal emulation, e.g. Telnet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/303Terminal profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)
  • Human Computer Interaction (AREA)

Abstract

이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법 및 이를 이용한 장치가 개시된다. 본 발명에 따른 프로파일 관리 방법은 복수 개의 운영서버들 중 가상 데스크탑을 구동할 어느 하나의 최적 운영서버를 할당하는 단계; 복수 개의 운영서버들에 상응하는 복수 개의 하드웨어 프로파일들과 최적 운영서버에 상응하는 타겟 하드웨어 프로파일을 비교하는 단계; 복수 개의 하드웨어 프로파일들 중 타겟 하드웨어 프로파일이 존재하지 않는 경우에 타겟 하드웨어 프로파일을 기반으로 가상 데스크탑을 구동하기 위한 가상 데스크탑 구동 프로파일을 생성하는 단계; 및 최적 운영서버가 가상 데스크탑을 구동할 수 있도록, 가상 데스크탑을 구동하는데 필요한 적어도 하나의 프로파일과 함께 가상 데스크탑 구동 프로파일을 최적 운영서버에게 공유하는 단계를 포함한다.

Description

이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법 및 이를 이용한 장치 {METHOD OF MANAGING PROFILE FOR DRIVE OF VIRTUAL DESTTOP IN HETEROGENEOUS SERVER AND APPARATUS USING THE SAME}
본 발명은 이기종 서버 환경에서 가상 데스크탑을 운영하기 위한 프로파일 관리 기술에 관한 것으로, 특히 가상 데스크탑의 구동에 필요한 프로파일들을 가상 데스크탑을 구동하는 운영서버들과 공유하여 이기종 서버에서도 동일한 환경으로 가상 데스크탑을 구동할 수 있는 프로파일 관리 기술에 관한 것이다.
종래의 가상 데스크탑 기술에서는 MS에서 RDP(Remote Desktop Protocol)를 이용하여 RDC(Remote Desktop Connection)라는 터미널 서비스를 제공하고, 리눅스에서는 RFB(Remote Framebuffer) 프로토콜을 이용하여 VNC(Virtual Network Computing)라는 터미널 서비스를 제공하고 있다. 또한, Teradici는 PCoIP(PC-over-IP)라는 프로토콜로 터미널 서비스 솔루션을 제공한다.
이와 같은 방식을 이용하여 가상 데스크탑 서비스를 수행하기 위해서는 사용자 마다 가상 데스크탑 기능을 제공하여야 하며 이를 제공하기 위하여 각 사용자에게 해당되는 디바이스(CPU, Memory, HDD, USB 등)를 사용자에게 할당하고 사용자용 OS 이미지를 할당하여야 한다.
이런 기능을 제공하기 위하여 공개 툴로서는 virt-tool, virt-manager등이 있고 시트릭스 사의 xendesktop이나 VMware Fusion 혹은 workstation등의 프로그램을 이용하여 사용자용 가상 데스크탑 또는 가상 머신을 만들고 생성 할 수 있으나 이는 수동 방식으로 제공되는 툴이기 때문에 실시간 가상서비스를 제공하기 위하여 적합하지 않다. 그리고, 서로 다른 이기종 서버 환경에서 구동 환경을 제공하기 위한 방법이 적합하지 않다.
따라서, 서로 다른 이기종 서버 환경에서도 가상 데스크탑을 동일하게 구동하기 위한 기술이 절실하게 대두된다.
한국 공개 특허 제10-2007-0763781호, 2007년 10월 5일 공개(명칭: 서버 관리 시스템 및 마이그레이션 방법)
본 발명의 목적은 서로 다른 이기종의 서버 환경에서 가상 데스크탑 서비스를 제공할 경우에 사용자가 수동으로 프로파일을 수정하거나 오랜 시간 마이그레이션을 통해 제공하는 방법 대신에 보다 효과적으로 가상 데스크탑 서비스를 제공할 수 있는 프로파일 관리 기술을 제공하는 것이다.
또한, 본 발명의 목적은 가상 데스크탑을 구동하는 서버의 메모리에 가상 데스크탑의 구동을 위한 프로파일을 저장함으로써 가상 데스크탑의 성능을 보다 향상시키는 것이다.
상기한 목적을 달성하기 위한 본 발명에 따른 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법은, 복수 개의 운영서버들 중 가상 데스크탑을 구동할 어느 하나의 최적 운영서버를 할당하는 단계; 상기 복수 개의 운영서버들에 상응하는 복수 개의 하드웨어 프로파일들과 상기 최적 운영서버에 상응하는 타겟 하드웨어 프로파일을 비교하는 단계; 상기 복수 개의 하드웨어 프로파일들 중 상기 타겟 하드웨어 프로파일이 존재하지 않는 경우에 상기 타겟 하드웨어 프로파일을 기반으로 상기 가상 데스크탑을 구동하기 위한 가상 데스크탑 구동 프로파일을 생성하는 단계; 및 상기 최적 운영서버가 상기 가상 데스크탑을 구동할 수 있도록, 상기 가상 데스크탑을 구동하는데 필요한 적어도 하나의 프로파일과 함께 상기 가상 데스크탑 구동 프로파일을 상기 최적 운영서버에게 공유하는 단계를 포함한다.
이 때, 최적 운영서버를 할당하는 단계는 상기 최적 운영서버가 정상적으로 동작하지 않는 경우에 상기 복수 개의 운영서버들과 별도로 관리되는 예비 운영서버를 할당하는 단계를 포함할 수 있다.
이 때, 최적 운영서버를 할당하는 단계는 상기 복수 개의 운영서버들에 상응하는 서버 가용률 및 활용도 중 적어도 하나를 고려하여 상기 최적 운영서버를 할당할 수 있다.
이 때, 가상 데스크탑 구동 프로파일을 생성하는 단계는 상기 타겟 하드웨어 프로파일에 상응하는 가상 데스크탑 템블릿을 생성하는 단계를 포함하고, 상기 가상 데스크탑 템플릿을 이용하여 상기 가상 데스크탑 구동 프로파일을 생성할 수 있다.
이 때, 프로파일 관리 방법은 상기 복수 개의 운영서버들로부터 상기 복수 개의 하드웨어 정보를 수집하는 단계; 및 상기 복수 개의 하드웨어 정보를 기반으로 생성된 상기 복수 개의 하드웨어 프로파일들을 저장하는 단계를 더 포함할 수 있다.
이 때, 적어도 하나의 프로파일은 상기 가상 데스크탑을 요청한 사용자의 정보에 상응하는 사용자 프로파일 및 상기 가상 데스크탑이 구동된 후 사용자에 의해 진행된 현재 상태 정보에 상응하는 가상 데스크탑 상태 프로파일 중 적어도 하나를 포함할 수 있다.
이 때, 공유하는 단계는 상기 복수 개의 운영서버들에게 상기 가상 데스크탑을 부팅하기 위한 가상 데스크탑 이미지를 공유하는 단계를 더 포함할 수 있다.
이 때, 복수 개의 운영서버들은 상기 사용자가 재접속하여 상기 가상 데스크탑을 요청하는 경우에 상기 사용자 프로파일을 기반으로 상기 가상 데스크탑 상태 프로파일을 로드하여 상기 현재 상태 정보에 상응하게 상기 가상 데스크탑을 구동할 수 있다.
이 때, 가상 데스크탑 구동 프로파일은 상기 가상 데스크탑의 구동을 위해 필요한 가상 장치의 종류 및 가상 장치의 개수 중 적어도 하나의 정보를 포함할 수 있다.
이 때, 수집하는 단계는 상기 복수 개의 운영서버들에 상응하는 운영체제 상의 하드웨어 정보 및 상기 복수 개의 운영서버들의 하드웨어 컨트롤러 중 적어도 하나를 이용하여 상기 복수 개의 하드웨어 정보들을 수집할 수 있다.
이 때, 가상 데스크탑 상태 프로파일은 상기 복수 개의 운영서버들 각각에 상응하는 MEM 메모리에 별도로 저장될 수 있다.
또한, 본 발명의 일실시예에 따른 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 장치는, 복수 개의 운영서버들 중 가상 데스크탑을 구동할 어느 하나의 최적 운영서버를 할당하는 서버 할당부; 상기 복수 개의 운영서버들에 상응하는 복수 개의 하드웨어 프로파일들과 상기 최적 운영서버에 상응하는 타겟 하드웨어 프로파일을 비교하는 프로파일 비교부; 상기 복수 개의 하드웨어 프로파일들 중 상기 타겟 하드웨어 프로파일이 존재하지 않는 경우에 상기 타겟 하드웨어 프로파일을 기반으로 상기 가상 데스크탑을 구동하지 위한 가상 데스크탑 구동 프로파일을 생성하는 프로파일 생성부; 및 상기 최적 운영서버가 상기 가상 데스크탑을 구동할 수 있도록, 상기 가상 데스크탑을 구동하는데 필요한 적어도 하나의 프로파일과 함께 상기 가상 데스크탑 구동 프로파일을 상기 최적 운영서버에게 공유하는 공유 스토리지를 포함한다.
이 때, 서버 할당부는 상기 최적 운영서버가 정상적으로 동작하지 않는 경우에 상기 복수 개의 운영서버들과 별도로 관리되는 예비 운영서버를 할당할 수 있다.
이 때, 서버 할당부는 상기 복수 개의 운영서버들에 상응하는 서버 가용률 및 활용도 중 적어도 하나를 고려하여 상기 최적 운영서버를 할당할 수 있다.
이 때, 프로파일 생성부는 상기 타겟 하드웨어 프로파일에 상응하는 가상 데스크탑 템플릿을 생성하고, 상기 가상 데스크탑 템플릿을 이용하여 상기 가상 데스크탑 구동 프로파일을 생성할 수 있다.
이 때, 프로파일 관리 장치는 상기 복수 개의 운영서버들로부터 상기 복수 개의 하드웨어 정보를 수집하는 하드웨어 정보 수집부; 및 상기 복수 개의 하드웨어 정보를 기반으로 생성된 상기 복수 개의 하드웨어 프로파일들을 저장하는 하드웨어 프로파일 데이터베이스를 더 포함할 수 있다.
이 때, 적어도 하나의 프로파일은 상기 가상 데스크탑을 요청한 사용자의 정보에 상응하는 사용자 프로파일 및 상기 가상 데스크탑이 구동된 후 사용자에 의해 진행된 현재 상태 정보에 상응하는 가상 데스크탑 상태 프로파일 중 적어도 하나를 포함할 수 있다.
이 때, 공유 스토리지는 상기 복수 개의 운영서버들에게 상기 가상 데스크탑을 부팅하기 위한 가상 데스크탑 이미지를 공유할 수 있다.
이 때, 복수 개의 운영서버들은 상기 사용자가 재접속하여 상기 가상 데스크탑을 요청하는 경우에 상기 사용자 프로파일을 기반으로 상기 가상 데스크탑 상태 프로파일을 로드하여 상기 현재 상태 정보에 상응하게 상기 가상 데스크탑을 구동할 수 있다.
이 때, 가상 데스크탑 구동 프로파일은 상기 가상 데스크탑의 구동을 위해 필요한 가상 장치의 종류 및 가상 장치의 개수 중 적어도 하나의 정보를 포함할 수 있다.
이 때, 하드웨어 정보 수집부는 상기 복수 개의 운영서버들에 상응하는 운영체제 상의 하드웨어 정보 및 상기 복수 개의 운영서버들의 하드웨어 컨트롤러 중 적어도 하나를 이용하여 상기 복수 개의 하드웨어 정보들을 수집할 수 있다.
이 때, 가상 데스크탑 상태 프로파일은 상기 복수 개의 운영서버들 각각에 상응하는 MEM 메모리에 별도로 저장될 수 있다.
본 발명에 따르면, 서로 다른 이기종의 서버 환경에서 가상 데스크탑 서비스를 제공할 경우에 사용자가 수동으로 프로파일을 수정하거나 오랜 시간 마이그레이션을 통해 제공하는 방법 대신에 보다 효과적으로 가상 데스크탑 서비스를 제공할 수 있는 프로파일 관리 기술을 제공할 수 있다.
또한, 본 발명은 가상 데스크탑을 구동하는 서버의 메모리에 가상 데스크탑의 구동을 위한 프로파일을 저장함으로써 가상 데스크탑의 성능을 보다 향상시킬 수 있다.
도 1은 본 발명의 일실시예에 따른 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법을 나타낸 동작흐름도이다.
도 2는 본 발명의 일실시예에 따른 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법을 상세하게 나타낸 동작흐름도이다.
도 3은 본 발명의 일실시예에 따른 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 장치를 이용한 가상 데스크탑 시스템을 나타낸 블록도이다.
도 4는 도 3에 도시된 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 장치의 일예를 나타낸 블록도이다.
도 5는 본 발명의 일실시예에 따른 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 장치를 이용한 가상 데스크탑 시스템을 상세하게 나타낸 도면이다.
본 발명을 첨부된 도면을 참조하여 상세히 설명하면 다음과 같다. 여기서, 반복되는 설명, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능, 및 구성에 대한 상세한 설명은 생략한다. 본 발명의 실시형태는 당 업계에서 평균적인 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위해서 제공되는 것이다. 따라서, 도면에서의 요소들의 형상 및 크기 등은 보다 명확한 설명을 위해 과장될 수 있다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 본 발명의 일실시예에 따른 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법을 나타낸 동작흐름도이다.
종래의 가상 데스크탑 시스템의 경우에는 이기종의 서로 다른 서버에서 가상 데스크탑을 구동하기 위해서는 사용자가 수동으로 프로파일을 수정하거나 오랜 시간 동안의 마이그레이션을 통하여 가상 데스크탑을 구동할 수 있었다. 그러나 이와 같은 방법은 번거로울 뿐만 아니라 시간도 많이 소비됨으로써 시스템의 운영에 있어서 문제점으로 대두되었다. 따라서, 본 발명에서는 서로 다른 이기종의 서버에서 가상 데스크탑을 구동할 수 있도록 사용자 프로파일, 가상 데스크탑 이미지와 함께 가상 데스크탑 구동 프로파일을 공유된 스토리지에 저장하여 사용할 수 있는 방법을 제시하고자 한다.
도 1을 참조하면, 본 발명의 일실시예에 따른 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법은 복수 개의 운영서버들 중 가상 데스크탑을 구동할 어느 하나의 최적 운영서버를 할당할 수 있다(S110). 예를 들어, 사용자는 가상 데스크탑 시스템에 로그인을 통하여 접속할 수 있고, 이를 통하여 사용자는 자신이 가상 데스크탑의 할당을 요청할 수 있는데, 이와 같은 가상 데스크탑을 구동하기 위해 먼저 가상 데스크탑을 구동할 수 있는 최적 운영서버를 할당할 수 있다.
이 때, 복수 개의 운영서버들 중 어떠한 서버에서도 사용자가 요청하는 가상 데스크탑을 구동할 수 있고, 이를 위해 필요한 프로파일을 생성하여야 할 수 있다.
이 때, 최적 운영서버가 정상적으로 동작하지 않는 경우에 복수 개의 운영서버들과 별도로 관리되는 예비 운영서버를 할당할 수 있다. 예를 들어, 복수 개의 운영서버들을 N+1의 형태로 항상 1대의 예비 운영서버를 서비스 레디 상태로 대기시킬 수 있다. 만약 서비스를 수행하던 다른 운영서버가 다운되면 대기 중이던 예비 운영서버가 실시간으로 인식되어 다운된 운영서버가 서비스 중이던 가상 데스크탑을 구동할 수 있다. 이와 같은 예비 운영서버를 통해 전체 시스템의 고가용성을 향상시킬 수 있다.
이 때, 복수 개의 운영서버들에 상응하는 서버 가용률 및 활용도 중 적어도 하나를 고려하여 최적 운영서버를 할당할 수 있다. 즉, 복수 개의 운영서버들 중에서 로드 밸런싱을 위해 가장 적합한 운영서버를 최적 운영서버로 결정하여 할당할 수 있다.
또한, 본 발명의 일실시예에 따른 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법은 복수 개의 운영서버들에 상응하는 복수 개의 하드웨어 프로파일들과 최적 운영서버에 상응하는 타겟 하드웨어 프로파일을 비교할 수 있다(S120).
즉, 복수 개의 하드웨어 프로파일들 중에 타겟 하드웨어 프로파일이 존재하는지 여부를 판단할 수 있다(S125).
이 때, 하드웨어 프로파일은 사용자가 가상 데스크탑을 생성하기 위해 참조되는 운영서버의 하드웨어 정보를 포함한 프로파일에 상응할 수 있다. 따라서 복수 개의 운영서버들 각각 서로 다른 하드웨어 정보를 포함할 수 있다.
따라서, 하드웨어 프로파일을 비교함으로써 최적 운영서버가 기존에 존재한 서버인지 또는 이기종의 서버인지를 판단할 수 있다.
단계(S125)의 판단결과 복수 개의 하드웨어 프로파일들 중 타겟 하드웨어 프로파일이 존재하지 않는 경우에, 본 발명의 일실시예에 따른 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법은 타겟 하드웨어 프로파일을 기반으로 가상 데스크탑을 구동하기 위한 가상 데스크탑 구동 프로파일을 생성할 수 있다(S130).
또한, 단계(S125)의 판단결과 복수 개의 하드웨어 프로파일들 중 타겟 하드웨어 프로파일이 존재하는 경우에는 공유 스토리지에 가상 데스크탑 프로파일이 존재하기 때문에 가상 데스크탑을 구동할 수 있다.
즉, 타겟 하드웨어 프로파일과 동일한 정보가 복수 개의 하드웨어 프로파일들 중에 존재하지 않는다는 의미는 타겟 하드웨어 프로파일에 상응하는 최적 운영서버가 할당된 적이 없는 이기종의 운영서버라는 의미일 수 있다. 즉, 최적 운영서버는 하드웨어 특성이 다르기 때문에 공유 스토리지를 통해 공유되는 가상 데스크탑 구동 프로파일을 사용할 수 없을 수 있다. 그러므로 최적 운영서버가 가상 데스크탑을 구동하기 위한 가상 데스크탑 구동 파일을 생성할 수 있다.
이 때, 타겟 하드웨어 프로파일에 상응하는 가상 데스크탑 템플릿을 생성하고, 가상 데스크탑 템플릿을 이용하여 가상 데스크탑 구동 프로파일을 생성할 수 있다. 또한, 복수 개의 운영서버들에 대해서도 각각의 해당하는 가상 데스크탑 템플릿이 존재할 수 있으며, 시스템에 존재하는 가상 데스크탑 템플릿에 정보는 타겟 하드웨어 프로파일에 상응하게 생성된 가상 데스크탑 템플릿을 포함하도록 업데이트 될 수 있다.
이 때, 가상 데스크탑 구동 프로파일은 가상 데스크탑의 구동을 위해 필요한 가상 장치의 종류 및 가상 장치의 개수 중 적어도 하나의 정보를 포함할 수 있다. 예를 들어, 가상의 CPU, 메모리, 하드 디스크 및 각종 디바이스에 상응하는 정보를 포함할 수 있다.
또한, 본 발명의 일실시예에 따른 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법은 최적 운영서버가 가상 데스크탑을 구동할 수 있도록, 가상 데스크탑을 구동하는데 필요한 적어도 하나의 프로파일과 함께 가상 데스크탑 구동 프로파일을 최적 운영서버에게 공유할 수 있다(S140).
이 때, 적어도 하나의 프로파일은 가상 데스크탑을 요청한 사용자의 정보에 상응하는 사용자 프로파일 및 가상 데스크탑이 구동된 후 사용자에 의해 진행된 현재 상태 정보에 상응하는 가상 데스크탑 상태 프로파일 중 적어도 하나를 포함할 수 있다. 즉, 최적 운영서버에서는 가상 데스크탑 구동 프로파일과 사용자 프로파일 및 가상 데스크탑 상태 프로파일 등을 이용하여 가상 데스크탑을 구동할 수 있다. 예를 들어, 사용자 프로파일은 사용자의 아이디, 패스워드 및 신상정보 등에 상응하는 개인정보, 사용자의 가상 데스크탑 이름과 같은 정보 및 윈도우 사용자 프로파일과 같은 가상 데스크탑 환경 정보를 포함할 수 있다.
이 때, 복수 개의 운영서버들에게 가상 데스크탑을 부팅하기 위한 가상 데스크탑 이미지를 공유할 수 있다. 가상 데스크탑 이미지는 가상 데스크탑의 가상 디스크에 상응할 수 있다. 즉, 원격에서 부팅을 수행하는 것과 유사하게 가상 디스크를 이용하여 가상 데스크탑을 부팅할 수 있다.
이 때, 복수 개의 운영서버들은 사용자가 재접속하여 가상 데스크탑을 요청하는 경우에 사용자 프로파일을 기반으로 가상 데스크탑 상태 프로파일을 로드하여 현재 상태 정보에 상응하게 가상 데스크탑을 구동할 수 있다. 예를 들어, 가상 데스크탑이 구동되면 가상 데스크탑이 구동된 상태를 프로파일의 형태로 저장하여 업데이트할 수 있는데, 가상 데스크탑 상태 프로파일이 이와 같은 프로파일에 상응할 수 있다. 따라서 가상 데스크탑 상태 프로파일은 사용자의 현재 진행 상황에 대한 메모리 정보를 포함할 수 있으므로, 사용자가 추후에 재접속한 경우에는 운영서버에서 가상 데스크탑 상태 프로파일을 로딩하여 사용자의 환경을 그대로 유지할 수 있다.
이 때, 가상 데스크탑 상태 프로파일은 복수 개의 운영서버들 각각에 상응하는 MEM 메모리에 별도로 저장될 수 있다.
즉, 가상 데스크탑의 성능은 기본적으로 에뮬레이션 된 하드웨어 장치를 이용하여 서비스를 제공하므로 부팅 속도 및 동작 속도가 느리게 되고, 저장장치의 I/O 한계로 인하여 그 성능을 일반 PC와 비교하기 어려울 수 있다. 그러므로 이와 같은 속도의 한계를 극복하기 위해서 가상 데스크탑의 구동에 필요한 사용자 프로파일과 현재 상태 정보가 포함된 가상 머신 상태 프로파일을 운영서버의 MEM 메모리에 저장하여 사용함으로써 가상 데스크탑의 구동속도를 향상시키는데 활용할 수도 있다.
또한, 도 1에는 도시하지 아니하였으나, 본 발명의 일실시예에 따른 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법은 복수 개의 운영서버들로부터 복수 개의 하드웨어 정보를 수집할 수 있다.
이 때, 복수 개의 운영서버들에 상응하는 운영체제 상의 하드웨어 정보 및 복수 개의 운영서버들의 하드웨어 컨트롤러 중 적어도 하나를 이용하여 복수 개의 하드웨어 정보들을 수집할 수 있다. 예를 들어, 운영체제 상의 하드웨어 정보라 함은 윈도우의 경우에는 repository, 리눅스의 경우에는 proc 파일 시스템을 의미할 수 있다. 또한, 프로파일 관리 장치가 복수 개의 운영서버들 각각에 존재하는 out-of-band Management를 위하여 만들어진 BMC(Baseboard Management Contotoller)에 접속하여 하드웨어 정보를 네트워크를 이용하여 수집할 수도 있다.
이 때, 복수 개의 운영서버들에서는 하드웨어 정보의 수집을 위한 에이전트를 둘 수 있고, 이를 이용하여 프로파일 관리 장치로 하드웨어 정보를 송신할 수 있다.
또한, 도 1에는 도시하지 아니하였으나, 본 발명의 일실시예에 따른 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법은 복수 개의 하드웨어 정보를 기반으로 생성된 복수 개의 하드웨어 프로파일들을 저장할 수 있다.
도 2는 본 발명의 일실시예에 따른 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법을 상세하게 나타낸 동작흐름도이다.
도 2를 참조하면, 본 발명의 일실시예에 따른 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법은 먼저 사용자가 가상 데스크탑 시스템에 로그인을 통하여 접속할 수 있고, 이를 통하여 가상 데스크탑의 할당을 요청할 수 있다(S202).
이 후, 최적 운영서버의 할당을 위해 복수 개의 운영서버들의 서버 가용률 및 활용도를 체크할 수 있다(S204).
이 후, 복수 개의 운영서버들 중 가상 데스크탑을 구동할 어느 하나의 최적 운영서버를 할당할 수 있다(S206). 즉, 복수 개의 운영서버들 중에서 로드 밸런싱을 위해 가장 적합한 운영서버를 최적 운영서버로 결정하여 할당할 수 있다.
이 후, 최적 운영서버의 하드웨어 정보를 수집할 수 있다(S208).
이 때, 최적 운영서버에 상응하는 운영체제 상의 하드웨어 정보 및 최적 운영서버의 하드웨어 컨트롤러 중 적어도 하나를 이용하여 최적 운영서버의 하드웨어 정보를 수집할 수 있다.
이 후, 최적 운영서버의 하드웨어 정보를 기반으로 타겟 하드웨어 프로파일을 생성할 수 있다(S210).
이 후, 하드웨어 프로파일 데이터베이스에 타겟 하드웨어 프로파일이 존재하는지 여부를 판단할 수 있다(S512).
이 때, 하드웨어 프로파일 데이터베이스에 포함된 복수 개의 운영서버들에 상응하는 복수 개의 하드웨어 프로파일들과 최적 운영서버에 상응하는 타겟 하드웨어 프로파일을 비교하여 존재여부를 판단할 수 있다.
단계(S212)의 판단결과 타겟 하드웨어 프로파일이 존재하지 않으면, 타겟 하드웨어 프로파일을 기반으로 가상 데스크탑을 구동하기 위한 가상 데스크탑 템플릿을 생성할 수 있다(S214).
이 후, 가상 데스크탑 템플릿을 이용하여 가상 데스크탑 구동 프로파일을 생성할 수 있다(S216).
이 후, 공유 스토리지에 사용자 프로파일과 가상 데스크탑 구동 프로파일을 저장할 수 있다(S218).
이 때, 가상 데스크탑 구동 프로파일은 가상 데스크탑의 구동을 위해 필요한 가상 장치의 종류 및 가상 장치의 개수 중 적어도 하나의 정보를 포함할 수 있다. 예를 들어, 가상의 CPU, 메모리, 하드 디스크 및 각종 디바이스에 상응하는 정보를 포함할 수 있다.
이 때, 사용자 프로파일도 함께 공유 스토리지에 저장할 수 있다. 예를 들어, 사용자 프로파일은 사용자의 아이디, 패스워드 및 신상정보 등에 상응하는 개인정보, 사용자의 가상 데스크탑 이름과 같은 정보 및 윈도우 사용자 프로파일과 같은 가상 데스크탑 환경 정보를 포함할 수 있다.
이 후, 최적 운영서버가 공유 스토리지에서 가상 데스크탑 이미지, 사용자 프로파일 및 가상 데스크탑 구동 프로파일을 공유할 수 있다(S220).
이 때, 가상 데스크탑 이미지는 가상 데스크탑의 가상 디스크에 상응할 수 있다. 즉, 원격에서 부팅을 수행하는 것과 유사하게 가상 디스크를 이용하여 가상 데스크탑을 부팅할 수 있다.
이 후, 최적 운영서버에서 가상 데스크탑을 실행할 수 있다(S222).
도 3은 본 발명의 일실시예에 따른 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 장치를 이용한 가상 데스크탑 시스템을 나타낸 블록도이다.
도 3을 참조하면, 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 장치를 이용한 가상 데스크탑 시스템은 프로파일 관리 장치(310), 운영서버(320-1~ 320-N) 및 사용자(330)를 포함할 수 있다.
프로파일 관리 장치(310)는 복수 개의 운영서버 운영서버(320-1~ 320-N)들 중 가상 데스크탑을 구동할 어느 하나의 최적 운영서버를 할당할 수 있다.
이 때, 최적 운영서버가 정상적으로 동작하지 않는 경우에 복수 개의 운영서버(320-1~ 320-N)들과 별도로 관리되는 예비 운영서버를 할당할 수 있다.
이 때, 복수 개의 운영서버(320-1~ 320-N)들에 상응하는 서버 가용률 및 활용도 중 적어도 하나를 고려하여 최적 운영서버를 할당할 수 있다.
또한, 프로파일 관리 장치(310)는 복수 개의 운영서버(320-1~ 320-N)들로부터 복수 개의 하드웨어 정보를 수집할 수 있다.
이 때, 복수 개의 운영서버(320-1~ 320-N)들에 상응하는 운영체제 상의 하드웨어 정보 및 복수 개의 운영서버(320-1~ 320-N)들의 하드웨어 컨트롤러 중 적어도 하나를 이용하여 복수 개의 하드웨어 정보를 수집할 수 있다.
또한, 프로파일 관리 장치(310)는 복수 개의 하드웨어 정보를 기반으로 생성된 복수 개의 하드웨어 프로파일들을 저장할 수 있다.
또한, 프로파일 관리 장치(310)는 복수 개의 운영서버(320-1~ 320-N)들에 상응하는 복수 개의 하드웨어 프로파일들과 최적 운영서버에 상응하는 타겟 하드웨어 프로파일을 비교할 수 있다.
또한, 프로파일 관리 장치(310)는 복수 개의 하드웨어 프로파일들 중 타겟 하드웨어 프로파일이 존재하지 않는 경우에 타겟 하드웨어 프로파일을 기반으로 가상 데스크탑을 구동하기 위한 가상 데스크탑 구동 프로파일을 생성할 수 있다.
이 때, 타겟 하드웨어 프로파일에 상응하는 가상 데스크탑 템플릿을 생성하고, 가상 데스크탑 템플릿을 이용하여 가상 데스크탑 구동 프로파일을 생성할 수 있다.
이 때, 가상 데스크탑 구동 프로파일은 가상 데스크탑의 구동을 위해 필요한 가상 장치의 종류 및 가상 장치의 개수 중 적어도 하나의 정보를 포함할 수 있다.
또한, 프로파일 관리 장치(310)는 최적 운영서버가 가상 데스크탑을 구동할 수 있도록, 가상 데스크탑을 구동하는데 필요한 적어도 하나의 프로파일과 함께 가상 데스크탑 구동 프로파일을 최적 운영서버에게 공유할 수 있다.
이 때, 적어도 하나의 프로파일은 가상 데스크탑을 요청한 사용자(330)의 정보에 상응하는 사용자 프로파일 및 가상 데스크탑이 구동된 후 사용자(330)에 의해 진행된 현재 상태 정보에 상응하는 가상 데스크탑 상태 프로파일 중 적어도 하나를 포함할 수 있다.
이 때, 복수 개의 운영서버(320-1~ 320-N)들에게 가상 데스크탑을 부팅하기 위한 가상 데스크탑 이미지를 공유할 수 있다.
이 때, 복수 개의 운영서버(320-1~ 320-N)들은 사용자(330)가 재접속하여 가상 데스크탑을 요청하는 경우에 사용자 프로파일을 기반으로 가상 데스크탑 상태 프로파일을 로드하여 현재 상태 정보에 상응하게 가상 데스크탑을 구동할 수 있다.
이 때, 가상 데스크탑 상태 프로파일은 복수 개의 운영서버(320-1~ 320-N)들 각각에 상응하는 MEM 메모리에 별도로 저장될 수 있다.
운영서버(320-1~ 320-N)는 가상 데스크탑을 구동하기 위해 사용자(330)에게 할당되는 서버일 수 있다. 즉, 사용자는 가상 데스크탑 서비스 시스템에 접속하여 가상 데스크탑을 요청할 수 있고, 프로파일 관리 장치(310)가 복수 개의 운영서버(320-1~ 320-N)들 중에서 가상 데스크탑을 구동하기에 가장 적합한 어느 하나의 최적 운영서버를 할당할 수 있다.
사용자(330)는 가상 데스크탑 서비스를 제공받기 위해 가상 데스크탑 서비스 시스템에 접속할 수 있으며, 프로파일 관리 장치(310)를 통해 할당 받은 최적 운영서버에서 구동되는 가상 데스크탑을 할당 받아 사용할 수 있다.
도 4는 도 3에 도시된 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 장치의 일예를 나타낸 블록도이다.
종래의 가상 데스크탑 시스템의 경우에는 이기종의 서로 다른 서버에서 가상 데스크탑을 구동하기 위해서는 사용자가 수동으로 프로파일을 수정하거나 오랜 시간 동안의 마이그레이션을 통하여 가상 데스크탑을 구동할 수 있었다. 그러나 이와 같은 방법은 번거로울 뿐만 아니라 시간도 많이 소비됨으로써 시스템의 운영에 있어서 문제점으로 대두되었다. 따라서, 본 발명에서는 서로 다른 이기종의 서버에서 가상 데스크탑을 구동할 수 있도록 사용자 프로파일, 가상 데스크탑 이미지와 함께 가상 데스크탑 구동 프로파일을 공유된 스토리지에 저장하여 사용할 수 있는 방법을 제시하고자 한다.
도 4를 참조하면, 도 3에 도시된 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 장치(310)는 서버 할당부(410), 하드웨어 정보 수집부(420), 하드웨어 프로파일 데이터베이스(430), 프로파일 비교부(440), 프로파일 생성부(450) 및 공유 스토리지(460)를 포함할 수 있다.
서버 할당부(410)는 복수 개의 운영서버들 중 가상 데스크탑을 구동할 어느 하나의 최적 운영서버를 할당할 수 있다. 예를 들어, 사용자는 가상 데스크탑 시스템에 로그인을 통하여 접속할 수 있고, 이를 통하여 사용자는 자신이 가상 데스크탑의 할당을 요청할 수 있는데, 이와 같은 가상 데스크탑을 구동하기 위해 먼저 가상 데스크탑을 구동할 수 있는 최적 운영서버를 할당할 수 있다.
이 때, 복수 개의 운영서버들 중 어떠한 서버에서도 사용자가 요청하는 가상 데스크탑을 구동할 수 있고, 이를 위해 필요한 프로파일을 생성하여야 할 수 있다.
이 때, 최적 운영서버가 정상적으로 동작하지 않는 경우에 복수 개의 운영서버들과 별도로 관리되는 예비 운영서버를 할당할 수 있다. 예를 들어, 복수 개의 운영서버들을 N+1의 형태로 항상 1대의 예비 운영서버를 서비스 레디 상태로 대기시킬 수 있다. 만약 서비스를 수행하던 다른 운영서버가 다운되면 대기 중이던 예비 운영서버가 실시간으로 인식되어 다운된 운영서버가 서비스 중이던 가상 데스크탑을 구동할 수 있다. 이와 같은 예비 운영서버를 통해 전체 시스템의 고가용성을 향상시킬 수 있다.
이 때, 복수 개의 운영서버들에 상응하는 서버 가용률 및 활용도 중 적어도 하나를 고려하여 최적 운영서버를 할당할 수 있다. 즉, 복수 개의 운영서버들 중에서 로드 밸런싱을 위해 가장 적합한 운영서버를 최적 운영서버로 결정하여 할당할 수 있다.
하드웨어 정보 수집부(420)는 복수 개의 운영서버들로부터 복수 개의 하드웨어 정보를 수집할 수 있다.
이 때, 복수 개의 운영서버들에 상응하는 운영체제 상의 하드웨어 정보 및 복수 개의 운영서버들의 하드웨어 컨트롤러 중 적어도 하나를 이용하여 복수 개의 하드웨어 정보들을 수집할 수 있다. . 예를 들어, 운영체제 상의 하드웨어 정보라 함은 윈도우의 경우에는 repository, 리눅스의 경우에는 proc 파일 시스템을 의미할 수 있다. 또한, 프로파일 관리 장치가 복수 개의 운영서버들 각각에 존재하는 out-of-band Management를 위하여 만들어진 BMC(Baseboard Management Contotoller)에 접속하여 하드웨어 정보를 네트워크를 이용하여 수집할 수도 있다.
이 때, 복수 개의 운영서버들에서는 하드웨어 정보의 수집을 위한 에이전트를 둘 수 있고, 이를 이용하여 프로파일 관리 장치로 하드웨어 정보를 송신할 수 있다.
하드웨어 프로파일 데이터베이스(430)는 복수 개의 하드웨어 정보를 기반으로 생성된 복수 개의 하드웨어 프로파일들을 저장할 수 있다.
프로파일 비교부(440)는 복수 개의 운영서버들에 상응하는 복수 개의 하드웨어 프로파일들과 최적 운영서버에 상응하는 타겟 하드웨어 프로파일을 비교할 수 있다.
즉, 복수 개의 하드웨어 프로파일들 중에 타겟 하드웨어 프로파일이 존재하는지 여부를 판단할 수 있다
이 때, 하드웨어 프로파일은 사용자가 가상 데스크탑을 생성하기 위해 참조되는 운영서버의 하드웨어 정보를 포함한 프로파일에 상응할 수 있다. 따라서 복수 개의 운영서버들 각각 서로 다른 하드웨어 정보를 포함할 수 있다.
따라서, 하드웨어 프로파일을 비교함으로써 최적 운영서버가 기존에 존재한 서버인지 또는 이기종의 서버인지를 판단할 수 있다.
프로파일 생성부(450)는 복수 개의 하드웨어 프로파일들 중 타겟 하드웨어 프로파일이 존재하지 않는 경우에 타겟 하드웨어 프로파일을 기반으로 가상 데스크탑을 구동하기 위한 가상 데스크탑 구동 프로파일을 생성할 수 있다.
또한, 복수 개의 하드웨어 프로파일들 중 타겟 하드웨어 프로파일이 존재하는 경우에는 공유 스토리지에 가상 데스크탑 프로파일이 존재하기 때문에 가상 데스크탑을 구동할 수 있다.
즉, 타겟 하드웨어 프로파일과 동일한 정보가 복수 개의 하드웨어 프로파일들 중에 존재하지 않는다는 의미는 타겟 하드웨어 프로파일에 상응하는 최적 운영서버가 할당된 적이 없는 이기종의 운영서버라는 의미일 수 있다. 즉, 최적 운영서버는 하드웨어 특성이 다르기 때문에 공유 스토리지를 통해 공유되는 가상 데스크탑 구동 프로파일을 사용할 수 없을 수 있다. 그러므로 최적 운영서버가 가상 데스크탑을 구동하기 위한 가상 데스크탑 구동 파일을 생성할 수 있다.
이 때, 타겟 하드웨어 프로파일에 상응하는 가상 데스크탑 템플릿을 생성하고, 가상 데스크탑 템플릿을 이용하여 가상 데스크탑 구동 프로파일을 생성할 수 있다. 또한, 복수 개의 운영서버들에 대해서도 각각의 해당하는 가상 데스크탑 템플릿이 존재할 수 있으며, 시스템에 존재하는 가상 데스크탑 템플릿에 정보는 타겟 하드웨어 프로파일에 상응하게 생성된 가상 데스크탑 템플릿을 포함하도록 업데이트 될 수 있다.
이 때, 가상 데스크탑 구동 프로파일은 가상 데스크탑의 구동을 위해 필요한 가상 장치의 종류 및 가상 장치의 개수 중 적어도 하나의 정보를 포함할 수 있다. 예를 들어, 가상의 CPU, 메모리, 하드 디스크 및 각종 디바이스에 상응하는 정보를 포함할 수 있다.
공유 스토리지(460)는 최적 운영서버가 가상 데스크탑을 구동할 수 있도록, 가상 데스크탑을 구동하는데 필요한 적어도 하나의 프로파일과 함께 가상 데스크탑 구동 프로파일을 최적 운영서버에게 공유할 수 있다.
이 때, 적어도 하나의 프로파일은 가상 데스크탑을 요청한 사용자의 정보에 상응하는 사용자 프로파일 및 가상 데스크탑이 구동된 후 사용자에 의해 진행된 현재 상태 정보에 상응하는 가상 데스크탑 상태 프로파일 중 적어도 하나를 포함할 수 있다. 즉, 최적 운영서버에서는 가상 데스크탑 구동 프로파일과 사용자 프로파일 및 가상 데스크탑 상태 프로파일 등을 이용하여 가상 데스크탑을 구동할 수 있다. 예를 들어, 사용자 프로파일은 사용자의 아이디, 패스워드 및 신상정보 등에 상응하는 개인정보, 사용자의 가상 데스크탑 이름과 같은 정보 및 윈도우 사용자 프로파일과 같은 가상 데스크탑 환경 정보를 포함할 수 있다.
이 때, 복수 개의 운영서버들에게 가상 데스크탑을 부팅하기 위한 가상 데스크탑 이미지를 공유할 수 있다. 가상 데스크탑 이미지는 가상 데스크탑의 가상 디스크에 상응할 수 있다. 즉, 원격에서 부팅을 수행하는 것과 유사하게 가상 디스크를 이용하여 가상 데스크탑을 부팅할 수 있다.
이 때, 복수 개의 운영서버들은 사용자가 재접속하여 가상 데스크탑을 요청하는 경우에 사용자 프로파일을 기반으로 가상 데스크탑 상태 프로파일을 로드하여 현재 상태 정보에 상응하게 가상 데스크탑을 구동할 수 있다. 예를 들어, 가상 데스크탑이 구동되면 가상 데스크탑이 구동된 상태를 프로파일의 형태로 저장하여 업데이트할 수 있는데, 가상 데스크탑 상태 프로파일이 이와 같은 프로파일에 상응할 수 있다. 따라서 가상 데스크탑 상태 프로파일은 사용자의 현재 진행 상황에 대한 메모리 정보를 포함할 수 있으므로, 사용자가 추후에 재접속한 경우에는 운영서버에서 가상 데스크탑 상태 프로파일을 로딩하여 사용자의 환경을 그대로 유지할 수 있다.
이 때, 가상 데스크탑 상태 프로파일은 복수 개의 운영서버들 각각에 상응하는 MEM 메모리에 별도로 저장될 수 있다.
즉, 가상 데스크탑의 성능은 기본적으로 에뮬레이션 된 하드웨어 장치를 이용하여 서비스를 제공하므로 부팅 속도 및 동작 속도가 느리게 되고, 저장장치의 I/O 한계로 인하여 그 성능을 일반 PC와 비교하기 어려울 수 있다. 그러므로 이와 같은 속도의 한계를 극복하기 위해서 가상 데스크탑의 구동에 필요한 사용자 프로파일과 현재 상태 정보가 포함된 가상 머신 상태 프로파일을 운영서버의 MEM 메모리에 저장하여 사용함으로써 가상 데스크탑의 구동속도를 향상시키는데 활용할 수도 있다.
도 5는 본 발명의 일실시예에 따른 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 장치를 이용한 가상 데스크탑 시스템을 상세하게 나타낸 도면이다.
도 5를 참조하면, 본 발명의 일실시예에 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 장치를 이용한 가상 데스크탑 시스템은 사용자(500), 프로파일 관리 장치(510) 및 운영서버 그룹(520)에 포함된 운영서버(530, 540, 550)를 포함할 수 있다.
도 5에 포함된 구성요소들을 이용하여 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 과정을 설명하면, 먼저 사용자(500)로부터 가상 데스크탑의 할당을 요청 받으면, 프로파일 관리 장치(510)의 서버 할당부(511)가 운영서버 그룹(520)에 포함된 복수 개의 운영서버(530, 540, 550)들 중 최적 운영서버를 할당할 수 있다.
이 때, 최적 운영서버는 복수 개의 운영서버(530, 540, 550)들 각각의 서버 가용률 및 활용도를 고려하여 할당될 수 있다.
예를 들어, 운영서버(530)가 최적 운영서버이자 이기종의 운영서버라고 가정한다면, 하드웨어 정보 수집부(512)가 운영서버(530)의 하드웨어 정보를 수집하고, 타겟 하드웨어 프로파일을 생성하여 하드웨어 프로파일 데이터베이스(513)에 저장할 수 있다.
이 후, 프로파일 비교부(514)에서 하드웨어 프로파일 데이터베이스(513)에 저장된 복수 개의 하드웨어 프로파일들과 타겟 하드웨어 프로파일을 비교할 수 있다.
이 때, 이 때, 운영서버(530)가 이기종 서버이기 때문에 복수 개의 하드웨어 프로파일들에는 타겟 하드웨어 프로파일에 상응하는 하드웨어 프로파일이 존재하지 않을 수 있다.
따라서, 프로파일 생성부(515)에서는 운영서버(530)에서 가상 데스크탑을 구동시키기 위해 타겟 하드웨어 프로파일에 상응하는 가상 데스크탑 템플릿을 생성하고, 가상 데스크탑 템플릿을 이용하여 운영서버(530)에 상응하는 가상 데스크탑 구동 프로파일을 생성할 수 있다.
이 후, 생성한 가상 데스크탑 구동 프로파일을 사용자 프로파일과 함께 공유 스토리지(516)에 저장함으로써 최적 운영서버인 운영서버(530)를 비롯한 나머지 복수 개의 운영서버(540, 550)들이 공유할 수 있다.
따라서, 사용자에게 할당된 운영서버(530)는 공유 스토리지(516)를 통해 가상 데스크탑 이미지, 사용자 프로파일 및 가상 데스크탑 구동 프로파일을 공유 받아 가상 데스크탑(531, 533)을 구동할 수 있다.
예를 들어, 사용자(500)가 재접속을 수행하여 다시 동일한 가상 데스크탑의 할당을 요청한다고 가정한다면, 공유 스토리지(516) 또는 복수 개의 운영서버(530, 540, 550)들에 상응하는 MEM 메모리(532, 534, 542, 544, 552, 554) 중 적어도 하나에 저장된 가상 데스크탑 상태 프로파일을 로드하여 사용자(550)가 진행하던 환경 그대로 가상 데스크탑을 구동할 수 있다. 또한, MEM 메모리(532, 534, 542, 544, 552, 554)에 가상 데스크탑 상태 프로파일을 저장하여 사용함으로써 가상 데스크탑을 구동하는 시간을 단축시킬 수 있어 보다 효과적인 서비스를 제공할 수 있다.
이상에서와 같이 본 발명에 따른 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법 및 이를 이용한 장치는 상기한 바와 같이 설명된 실시예들의 구성과 방법이 한정되게 적용될 수 있는 것이 아니라, 상기 실시예들은 다양한 변형이 이루어질 수 있도록 각 실시예들의 전부 또는 일부가 선택적으로 조합되어 구성될 수도 있다.
310, 510: 프로파일 관리 장치
320-1~ 320-N, 530, 540, 550: 운영서버
330, 500: 사용자 410, 511: 서버 할당부
420, 512: 하드웨어 정보 수집부
430, 513: 하드웨어 프로파일 데이터베이스
440, 514: 프로파일 비교부 450, 515: 프로파일 생성부
460, 516: 공유 스토리지 520: 운영서버 그룹
531, 533, 541, 543, 551, 553: 가상 데스크탑
532, 534, 542, 544, 552, 554: MEM 메모리

Claims (20)

  1. 사용자로부터 복수 개의 이기종 운영서버들 중 가상 데스크탑을 구동할 어느 하나의 최적 운영서버에 대한 할당을 요청받는 단계;
    상기 복수 개의 이기종 운영서버들에 대한 하드웨어 정보와 상기 최적 운영서버에 상응하는 타겟 가상 데스크탑 환경정보를 비교하여 상기 사용자에 상응하는 가상 데스크탑 프로파일을 생성하는 단계; 및
    상기 최적 운영서버가 상기 가상 데스크탑 프로파일에 기초하여 상기 사용자에게 가상 데스크탑을 할당하는 단계
    를 포함하고,
    상기 타겟 가상 데스크탑 환경정보는
    상기 복수 개의 이기종 운영서버들이 공유할 수 있도록 저장되고,
    상기 가상 데스크탑 프로파일은
    상기 사용자에 대한 사용자 프로파일과 가상 데스크탑 하드웨어 프로파일을 포함하되, 상기 타겟 가상 데스크탑 환경정보에 상응하게 생성된 가상 데스크탑 템플릿을 이용하여 생성되는 것을 특징으로 하는 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법.
  2. 청구항 1에 있어서,
    상기 가상 데스크탑을 할당하는 단계는
    상기 최적 운영서버가 정상적으로 동작하지 않는 경우에 상기 복수 개의 이기종 운영서버들과 별도로 관리되는 예비 운영서버를 할당하는 단계를 포함하는 것을 특징으로 하는 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법.
  3. 청구항 2에 있어서,
    상기 가상 데스크탑을 할당하는 단계는
    상기 복수 개의 이기종 운영서버들에 상응하는 서버 가용률 및 활용도 중 적어도 하나를 고려하여 상기 최적 운영서버를 할당하는 것을 특징으로 하는 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법.
  4. 삭제
  5. 청구항 1에 있어서,
    상기 프로파일 관리 방법은
    상기 가상 데스크탑의 구동을 위해 할당되는 경우에 상기 복수 개의 이기종 운영서버들에 대한 하드웨어 정보를 수집하는 단계; 및
    상기 복수 개의 이기종 운영서버들에 대한 하드웨어 정보를 기반으로 생성된 상기 복수 개의 하드웨어 프로파일들을 저장하는 단계를 더 포함하는 것을 특징으로 하는 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법.
  6. 삭제
  7. 청구항 1에 있어서,
    상기 타겟 가상 데스크탑 환경정보는
    상기 복수 개의 이기종 운영서버들에게 상기 가상 데스크탑을 부팅하기 위한 가상 데스크탑 이미지를 포함하는 것을 특징으로 하는 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법.
  8. 청구항 1에 있어서,
    상기 복수 개의 이기종 운영서버들은
    상기 사용자가 재접속하여 상기 가상 데스크탑을 요청하는 경우에 상기 사용자 프로파일을 기반으로 가상 데스크탑이 구동된 후 사용자에 의해 진행된 현재 상태 정보에 상응하는 가상 데스크탑 상태 프로파일을 로드하여 상기 현재 상태 정보에 상응하게 상기 가상 데스크탑을 구동하는 것을 특징으로 하는 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법.
  9. 청구항 1에 있어서,
    상기 가상 데스크탑 프로파일은
    상기 가상 데스크탑의 구동을 위해 필요한 가상 장치의 종류 및 가상 장치의 개수 중 적어도 하나의 정보를 포함하는 것을 특징으로 하는 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법.
  10. 삭제
  11. 삭제
  12. 사용자로부터 복수 개의 이기종 운영서버들 중 가상 데스크탑을 구동할 어느 하나의 최적 운영서버에 대한 할당을 요청받고, 상기 최적 운영서버가 생성한 상기 사용자의 가상 데스크탑 프로파일을 이용하여 상기 사용자에게 가상 데스크탑을 할당하는 서버 할당부;
    상기 복수 개의 이기종 운영서버들에 대한 하드웨어 정보와 상기 최적 운영서버에 상응하는 타겟 가상 데스크탑 환경정보를 비교하여 상기 가상 데스크탑 프로파일을 생성하는 프로파일 생성부; 및
    상기 복수개의 이기종 운영서버들이 공유할 수 있도록 상기 타겟 가상 데스크탑 환경정보를 저장하는 공유 스토리지
    를 포함하고,
    상기 가상 데스크탑 프로파일은
    상기 사용자에 대한 사용자 프로파일과 가상 데스크탑 하드웨어 프로파일을 포함하되, 상기 타겟 가상 데스크탑 환경정보에 상응하게 생성된 가상 데스크탑 템플릿을 이용하여 생성되는 것을 특징으로 하는 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 장치.
  13. 청구항 12에 있어서,
    상기 서버 할당부는
    상기 최적 운영서버가 정상적으로 동작하지 않는 경우에 상기 복수 개의 운이기종 영서버들과 별도로 관리되는 예비 운영서버를 할당하는 것을 특징으로 하는 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 장치.
  14. 청구항 13에 있어서,
    상기 서버 할당부는
    상기 복수 개의 이기종 운영서버들에 상응하는 서버 가용률 및 활용도 중 적어도 하나를 고려하여 상기 최적 운영서버를 할당하는 것을 특징으로 하는 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 장치.
  15. 삭제
  16. 청구항 12에 있어서,
    상기 프로파일 관리 장치는
    상기 복수 개의 이기종 운영서버들로부터 상기 복수 개의 이기종 운영서버들에 대한 하드웨어 정보를 수집하는 하드웨어 정보 수집부; 및
    상기 복수 개의 이기종 운영서버들에 대한 하드웨어 정보를 기반으로 생성된 복수 개의 하드웨어 프로파일들을 저장하는 하드웨어 프로파일 데이터베이스를 더 포함하는 것을 특징으로 하는 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 장치.
  17. 삭제
  18. 청구항 12에 있어서,
    상기 공유 스토리지는
    상기 복수 개의 이기종 운영서버들에게 상기 가상 데스크탑을 부팅하기 위한 가상 데스크탑 이미지를 공유하는 것을 특징으로 하는 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 장치.
  19. 청구항 12에 있어서,
    상기 복수 개의 이기종 운영서버들은
    상기 사용자가 재접속하여 상기 가상 데스크탑을 요청하는 경우에 상기 사용자 프로파일을 기반으로 가상 데스크탑이 구동된 후 사용자에 의해 진행된 현재 상태 정보에 상응하는 가상 데스크탑 상태 프로파일을 로드하여 상기 현재 상태 정보에 상응하게 상기 가상 데스크탑을 구동하는 것을 특징으로 하는 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 장치.
  20. 삭제
KR1020150087394A 2015-06-19 2015-06-19 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법 및 이를 이용한 장치 KR101972997B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150087394A KR101972997B1 (ko) 2015-06-19 2015-06-19 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법 및 이를 이용한 장치
US15/132,808 US20160373523A1 (en) 2015-06-19 2016-04-19 Profile management method and apparatus for running of virtual desktop in heterogeneous server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150087394A KR101972997B1 (ko) 2015-06-19 2015-06-19 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법 및 이를 이용한 장치

Publications (2)

Publication Number Publication Date
KR20160149774A KR20160149774A (ko) 2016-12-28
KR101972997B1 true KR101972997B1 (ko) 2019-04-29

Family

ID=57588653

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150087394A KR101972997B1 (ko) 2015-06-19 2015-06-19 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법 및 이를 이용한 장치

Country Status (2)

Country Link
US (1) US20160373523A1 (ko)
KR (1) KR101972997B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10728343B2 (en) * 2018-02-06 2020-07-28 Citrix Systems, Inc. Computing system providing cloud-based user profile management for virtual sessions and related methods
US20210117208A1 (en) * 2019-10-18 2021-04-22 Vmware, Inc. User profile migration to virtual desktop infrastructure
US11748166B2 (en) * 2020-06-26 2023-09-05 EMC IP Holding Company LLC Method and system for pre-allocation of computing resources prior to preparation of physical assets

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110184993A1 (en) 2010-01-27 2011-07-28 Vmware, Inc. Independent Access to Virtual Machine Desktop Content
JP2013105320A (ja) 2011-11-14 2013-05-30 Nippon Telegraph & Telephone West Corp 情報処理システムおよび情報処理方法
JP5757325B2 (ja) 2011-03-29 2015-07-29 日本電気株式会社 仮想デスクトップシステム、ネットワーク処理装置、管理方法、及び管理プログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100763781B1 (ko) 2007-06-19 2007-10-05 (주)아이에스에이테크 서버 관리 시스템 및 마이그레이션 방법
US9164749B2 (en) * 2008-08-29 2015-10-20 Red Hat, Inc. Differential software provisioning on virtual machines having different configurations
US8732749B2 (en) * 2009-04-16 2014-05-20 Guest Tek Interactive Entertainment Ltd. Virtual desktop services
US8413142B2 (en) * 2010-03-30 2013-04-02 Citrix Systems, Inc. Storage optimization selection within a virtualization environment
KR101507919B1 (ko) * 2011-07-01 2015-04-07 한국전자통신연구원 가상 데스크탑 서비스를 위한 방법 및 장치
KR101694297B1 (ko) * 2012-08-30 2017-01-23 한국전자통신연구원 가상화 시스템을 위한 데스크탑 가상화 매니저 장치 및 클라이언트 장치
US9323577B2 (en) * 2012-09-20 2016-04-26 Amazon Technologies, Inc. Automated profiling of resource usage
KR20140098919A (ko) * 2013-01-31 2014-08-11 한국전자통신연구원 실시간 가상 데스크탑 서비스를 위한 가상머신 제공 방법 및 서비스 게이트웨이
US9489227B2 (en) * 2013-06-10 2016-11-08 Electronics And Telecommunications Research Institute Apparatus and method for virtual desktop service
US10761895B2 (en) * 2013-09-26 2020-09-01 Vmware, Inc. Selective allocation of physical computing resources amongst virtual machines based on user attribute values contained in user profiles
KR102102168B1 (ko) * 2013-10-21 2020-04-21 한국전자통신연구원 가상 데스크탑 서비스 장치 및 방법
JP6582445B2 (ja) * 2015-03-05 2019-10-02 日本電気株式会社 シンクライアントシステム、接続管理装置、仮想マシン稼働装置、方法、および、プログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110184993A1 (en) 2010-01-27 2011-07-28 Vmware, Inc. Independent Access to Virtual Machine Desktop Content
JP5757325B2 (ja) 2011-03-29 2015-07-29 日本電気株式会社 仮想デスクトップシステム、ネットワーク処理装置、管理方法、及び管理プログラム
JP2013105320A (ja) 2011-11-14 2013-05-30 Nippon Telegraph & Telephone West Corp 情報処理システムおよび情報処理方法

Also Published As

Publication number Publication date
US20160373523A1 (en) 2016-12-22
KR20160149774A (ko) 2016-12-28

Similar Documents

Publication Publication Date Title
US11775335B2 (en) Platform independent GPU profiles for more efficient utilization of GPU resources
US9531796B2 (en) Methods and systems for load balancing using forecasting and overbooking techniques
US9069438B2 (en) Allocating virtual machines according to user-specific virtual machine metrics
US9396042B2 (en) Methods and systems for evaluating historical metrics in selecting a physical host for execution of a virtual machine
KR101929048B1 (ko) 인메모리 기반 가상 데스크탑 서비스를 위한 장치 및 방법
US8667207B2 (en) Dynamic reallocation of physical memory responsive to virtual machine events
US20140214922A1 (en) Method of providing virtual machine and service gateway for real-time virtual desktop service
US9529642B2 (en) Power budget allocation in a cluster infrastructure
US9712605B2 (en) Method and system for providing server virtual machine for real-time virtual desktop service, and server device supporting the same
US20120311577A1 (en) System and method for monitoring virtual machine
US20130219390A1 (en) Cloud server and method for creating virtual machines
EP3117314B1 (en) Method and system for securely transmitting volumes into cloud
US20130268805A1 (en) Monitoring system and method
US11169846B2 (en) System and method for managing tasks and task workload items between address spaces and logical partitions
US11159367B2 (en) Apparatuses and methods for zero touch computing node initialization
US9052953B2 (en) Autonomous computer session capacity estimation
US20170134339A1 (en) Management of clustered and replicated systems in dynamic computing environments
US9432265B2 (en) Virtual machine sequence system and method
KR101972997B1 (ko) 이기종 서버에서의 가상 데스크탑 구동을 위한 프로파일 관리 방법 및 이를 이용한 장치
US20140189691A1 (en) Installation system and method
US20200272526A1 (en) Methods and systems for automated scaling of computing clusters
US20130151668A1 (en) System and method for managing resource with dynamic distribution
CN108112268B (zh) 管理与自动扩展组相关的负载平衡器
US20140181814A1 (en) Virtual machine scheduling system and method
JP6870390B2 (ja) 仮想基盤にもとづくシステムにおけるリソース割当方法、接続管理サーバおよび接続管理プログラム

Legal Events

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