KR102639168B1 - 가상 데스크탑 환경에서 서비스 제공 방법 및 장치 - Google Patents

가상 데스크탑 환경에서 서비스 제공 방법 및 장치 Download PDF

Info

Publication number
KR102639168B1
KR102639168B1 KR1020210110458A KR20210110458A KR102639168B1 KR 102639168 B1 KR102639168 B1 KR 102639168B1 KR 1020210110458 A KR1020210110458 A KR 1020210110458A KR 20210110458 A KR20210110458 A KR 20210110458A KR 102639168 B1 KR102639168 B1 KR 102639168B1
Authority
KR
South Korea
Prior art keywords
vdi
service
instance
related information
virtual desktop
Prior art date
Application number
KR1020210110458A
Other languages
English (en)
Other versions
KR20230028024A (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 KR1020210110458A priority Critical patent/KR102639168B1/ko
Publication of KR20230028024A publication Critical patent/KR20230028024A/ko
Application granted granted Critical
Publication of KR102639168B1 publication Critical patent/KR102639168B1/ko

Links

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/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • 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/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • 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/45575Starting, stopping, suspending or resuming 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

Abstract

본 발명은 가상 데스크탑 환경에서 서비스 제공 방법 및 장치에 관한 것이다. 본 발명의 일 실시예에 따른 가상 데스크탑 환경에서 서비스 제공 방법은, (a) VDI(Virtual Desktop Infrastructure) 서비스에 대한 VDI 서비스 요청을 수신하는 단계; (b) 상기 VDI 서비스 요청에 대응하여, 기본 VDI 이미지의 구성 요소 정보를 결정하는 단계; (c) CMS(Content Management System) 서버로부터 상기 기본 VDI 이미지와 연계되는 외부 서비스 관련 정보를 수신하는 단계; 및 (d) 상기 구성 요소 정보와 외부 서비스 관련 정보를 상기 기본 VDI 이미지에 반영하여 상기 VDI 서비스에 대한 최종 VDI 이미지를 생성하는 단계;를 포함할 수 있다.

Description

가상 데스크탑 환경에서 서비스 제공 방법 및 장치{A method and apparatus for providing services in a virtual desktop environment}
본 발명은 가상 데스크탑 환경에서 서비스 제공 방법 및 장치에 관한 것으로, 더욱 상세하게는 가상 데스크탑 환경에서 VDI(Virtual Desktop Infrastructure)와 CMS(Content Management System) 연계를 통한 서비스 제공 방법 및 장치에 관한 것이다.
VDI(Virtual Desktop Infrastructure)는 네트워크로 연결된 서버 상에 가상 데스크탑 환경을 구축하여 놓고, 사용자는 키보드, 마우스 등의 입력 수단 및 디스플레이 등의 필수 장치들로만 구성된 씬 클라이언트(Thin Client) 또는 제로 클라이언트(Zero Client)를 통해 서버에 접속하여 가상 데스크톱 내에서 작업을 수행하는 형태의 기술을 의미한다.
VDI 기술은 사용자가 물리적 장소에 관계 없이 동일한 데스크탑 환경을 이용할 수 있으며, 보안 등에도 장점이 있어 기업 등의 업무 환경을 중심으로 그 사용이 점차 증가하고 있다.
다만, 이러한 VDI 환경과 외부 서비스를 연계한 형태의 서비스 제공에 대한 연구는 미흡한 실정이다.
[특허문헌 1] 한국등록특허 제10-2175317호
본 발명은 전술한 문제점을 해결하기 위하여 창출된 것으로, 가상 데스크탑 환경에서 서비스 제공 방법 및 장치를 제공하는 것을 그 목적으로 한다.
또한, 본 발명은 VDI 이미지 생성시 해당 이미지의 구성 요소들을 메타데이터화 하고, 이를 기반으로 CMS와 연계 시, 특정 추가적인 구성 요구사항을 업데이트하기 위한 방법 및 장치를 제공하는 것을 그 목적으로 한다.
또한, 본 발명은 최대한 라이선스(License)를 효과적으로 활용하기 위해 라이선스가 적용된 VDI 인스턴스(Instance)의 재사용 기능을 수행하기 위한 방법 및 장치를 제공하는 것을 그 목적으로 한다.
본 발명의 목적들은 이상에서 언급한 목적들로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 명확하게 이해될 수 있을 것이다.
상기한 목적들을 달성하기 위하여, 본 발명의 일 실시예에 따른 가상 데스크탑 환경에서 서비스 제공 방법은, (a) VDI(Virtual Desktop Infrastructure) 서비스에 대한 VDI 서비스 요청을 수신하는 단계; (b) 상기 VDI 서비스 요청에 대응하여, 기본 VDI 이미지의 구성 요소 정보를 결정하는 단계; (c) CMS(Content Management System) 서버로부터 상기 기본 VDI 이미지와 연계되는 외부 서비스 관련 정보를 수신하는 단계; 및 (d) 상기 구성 요소 정보와 외부 서비스 관련 정보를 상기 기본 VDI 이미지에 반영하여 상기 VDI 서비스에 대한 최종 VDI 이미지를 생성하는 단계;를 포함할 수 있다.
실시예에서, 상기 가상 데스크탑 환경에서 서비스 제공 방법은, 상기 (a) 단계 이후에, 상기 VDI 서비스 요청에 대응하여, 상기 VDI 서비스를 위한 VDI 플랫폼에 대한 사용자 로그인(login)을 수행하는 단계; 상기 사용자 로그인에 대응하여, 사용자에 의해 미리 결정된 VDI 설정 관련 정보를 로딩(loading)하는 단계; 상기 VDI 설정 관련 정보에 따라 외부 서비스 관련 정보를 로딩하는 단계;를 더 포함할 수 있다.
실시예에서, 상기 가상 데스크탑 환경에서 서비스 제공 방법은, 상기 (a) 단계 이후에, 상기 외부 서비스 관련 정보에 포함된 서비스 접근 관련 정보를 이용하여 외부 서비스에 대한 사용자의 인증을 수행하는 단계;를 더 포함할 수 있다.
실시예에서, 상기 가상 데스크탑 환경에서 서비스 제공 방법은, 상기 (d) 단계 이후에, 상기 최종 VDI 이미지를 이용하여 상기 VDI 서비스에 대한 VDI 인스턴스(instance)를 생성하는 단계;를 더 포함할 수 있다.
실시예에서, 상기 가상 데스크탑 환경에서 서비스 제공 방법은, 상기 (b) 단계 이후에, 외부 서비스에 대한 라이선스(license) 공용 활용이 가능한 경우, 상기 외부 서비스에 대한 공용 활용 인스턴스 플래그(flag)가 설정된 VDI 인스턴스를 생성하는 단계; 및 상기 VDI 인스턴스를 공용 활용 인스턴스 풀(Pool)에 추가하여 사용자 단말의 VDI 서비스 접속을 대기하는 단계;를 더 포함할 수 있다.
실시예에서, 상기 가상 데스크탑 환경에서 서비스 제공 방법은, 상기 대기하는 단계 이후에, 상기 사용자 단말의 상기 VDI 서비스 접속이 종료됨에 따라, 상기 VDI 인스턴스의 인스턴스 플래그가 상기 공용 활용 인스턴스 플래그임을 식별하는 단계; 및 상기 식별에 따라 상기 VDI 인스턴스를 상기 공용 활용 인스턴스 풀에 반환하는 단계;를 더 포함할 수 있다.
실시예에서, 상기 가상 데스크탑 환경에서 서비스 제공 방법은, 상기 반환하는 단계 이후에, 상기 VDI 인스턴스의 라이선스 유효 시간이 임계값보다 작은지 여부를 판단하는 단계; 상기 VDI 인스턴스의 라이선스 유효 시간이 상기 임계값보다 큰 경우, 상기 VDI 인스턴스를 상기 공용 활용 인스턴스 풀에 추가하여 상기 사용자 단말의 VDI 서비스 접속을 대기하는 단계; 및 상기 VDI 인스턴스의 라이선스 유효 시간이 상기 임계값보다 작은 경우, 상기 VDI 인스턴스를 상기 공용 활용 인스턴스 풀에서 제거하여 상기 VDI 인스턴스를 종료하는 단계;를 더 포함할 수 있다.
실시예에서, 가상 데스크탑 환경에서 서비스 제공 장치는, VDI(Virtual Desktop Infrastructure) 서비스에 대한 VDI 서비스 요청을 수신하는 통신부; 및 상기 VDI 서비스 요청에 대응하여, 기본 VDI 이미지의 구성 요소 정보를 결정하는 제어부;를 포함하고, 상기 통신부는, CMS(Content Management System) 서버로부터 상기 기본 VDI 이미지와 연계되는 외부 서비스 관련 정보를 수신하고, 상기 제어부는, 상기 구성 요소 정보와 외부 서비스 관련 정보를 상기 기본 VDI 이미지에 반영하여 상기 VDI 서비스에 대한 최종 VDI 이미지를 생성할 수 있다.
실시예에서, 상기 제어부는, 상기 VDI 서비스 요청에 대응하여, 상기 VDI 서비스를 위한 VDI 플랫폼에 대한 사용자 로그인(login)을 수행하고, 상기 사용자 로그인에 대응하여, 사용자에 의해 미리 결정된 VDI 설정 관련 정보를 로딩(loading)하고, 상기 VDI 설정 관련 정보에 따라 외부 서비스 관련 정보를 로딩할 수 있다.
실시예에서, 상기 제어부는, 상기 외부 서비스 관련 정보에 포함된 서비스 접근 관련 정보를 이용하여 외부 서비스에 대한 사용자의 인증을 수행할 수 있다.
실시예에서, 상기 제어부는, 상기 최종 VDI 이미지를 이용하여 상기 VDI 서비스에 대한 VDI 인스턴스(instance)를 생성할 수 있다.
실시예에서, 상기 제어부는, 외부 서비스에 대한 라이선스(license) 공용 활용이 가능한 경우, 상기 외부 서비스에 대한 공용 활용 인스턴스 플래그(flag)가 설정된 VDI 인스턴스를 생성하고, 상기 VDI 인스턴스를 공용 활용 인스턴스 풀(Pool)에 추가하여 사용자 단말의 VDI 서비스 접속을 대기할 수 있다.
실시예에서, 상기 제어부는, 상기 사용자 단말의 상기 VDI 서비스 접속이 종료됨에 따라, 상기 VDI 인스턴스의 인스턴스 플래그가 상기 공용 활용 인스턴스 플래그임을 식별하고, 상기 식별에 따라 상기 VDI 인스턴스를 상기 공용 활용 인스턴스 풀에 반환할 수 있다.
실시예에서, 상기 제어부는, 상기 VDI 인스턴스의 라이선스 유효 시간이 임계값보다 작은지 여부를 판단하고, 상기 VDI 인스턴스의 라이선스 유효 시간이 상기 임계값보다 큰 경우, 상기 VDI 인스턴스를 상기 공용 활용 인스턴스 풀에 추가하여 상기 사용자 단말의 VDI 서비스 접속을 대기하고, 상기 VDI 인스턴스의 라이선스 유효 시간이 상기 임계값보다 작은 경우, 상기 VDI 인스턴스를 상기 공용 활용 인스턴스 풀에서 제거하여 상기 VDI 인스턴스를 종료할 수 있다.
상기한 목적들을 달성하기 위한 구체적인 사항들은 첨부된 도면과 함께 상세하게 후술될 실시예들을 참조하면 명확해질 것이다.
그러나, 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라, 서로 다른 다양한 형태로 구성될 수 있으며, 본 발명의 개시가 완전하도록 하고 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자(이하, "통상의 기술자")에게 발명의 범주를 완전하게 알려주기 위해서 제공되는 것이다.
본 발명의 일 실시예에 의하면, 개별 커리큘럼, 교수자 등의 특성에 맞춘 시스템 환경을 손쉽게 관리할 수 있다.
또한, 본 발명의 일 실시예에 의하면, 강의 교안 등과 연계된 맞춤 강의 환경을 사전에 정의된 형태로 제공할 수 있으며, 이를 마켓 플레이스(Market place) 등을 통해서 거래할 수 있다.
본 발명의 효과들은 상술된 효과들로 제한되지 않으며, 본 발명의 기술적 특징들에 의하여 기대되는 잠정적인 효과들은 아래의 기재로부터 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 가상 데스크탑 시스템을 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 외부 서비스와 연계한 VDI 이미지 생성 방법을 도시한 도면이다.
도 3은 본 발명의 일 실시예에 따른 외부 서비스와 연계한 사용자 요청 시 처리 방법을 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 라이선스 공용 활용에 대한 공용 활용 인스턴스 관리 방법을 도시한 도면이다.
도 5는 본 발명의 일 실시예에 따른 가상 데스크탑 환경에서 서비스 제공 방법을 도시한 도면이다.
도 6은 본 발명의 일 실시예에 따른 가상 데스크탑 환경에서 서비스 제공 장치의 기능적 구성을 도시한 도면이다.
본 발명은 다양한 변경을 가할 수 있고, 여러 가지 실시예들을 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 이를 상세히 설명하고자 한다.
청구범위에 개시된 발명의 다양한 특징들은 도면 및 상세한 설명을 고려하여 더 잘 이해될 수 있을 것이다. 명세서에 개시된 장치, 방법, 제법 및 다양한 실시예들은 예시를 위해서 제공되는 것이다. 개시된 구조 및 기능상의 특징들은 통상의 기술자로 하여금 다양한 실시예들을 구체적으로 실시할 수 있도록 하기 위한 것이고, 발명의 범위를 제한하기 위한 것이 아니다. 개시된 용어 및 문장들은 개시된 발명의 다양한 특징들을 이해하기 쉽게 설명하기 위한 것이고, 발명의 범위를 제한하기 위한 것이 아니다.
본 발명을 설명함에 있어서, 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우, 그 상세한 설명을 생략한다.
이하, 본 발명의 일 실시예에 따른 가상 데스크탑 환경에서 서비스 제공 방법 및 장치를 설명한다.
도 1은 본 발명의 일 실시예에 따른 가상 데스크탑 시스템(100)을 도시한 도면이다.
도 1을 참고하면, 가상 데스크탑 시스템(100)은 사용자 단말(110), VDI(Virtual Desktop Infrastructure) 플랫폼 서버(120) 및 CMS(Content Management System) 서버(130)를 포함할 수 있다.
가상 데스크탑 시스템(100)에서, VDI와 CMS 간의 연계가 수행될 수 있다. 일 실시예에서, CMS 서버(130)는 LMS(Learning Management System)를 포함할 수 있다.
예를 들어, CMS 서버(120)로부터 전달 받은 강의(Class) 또는 강의 계획(주차 별 등)에 기반한 VDI 이미지(Image)가 사전에 준비 또는 실시간으로 준비되고, 이를 사용자 단말(110)이 씬(Thin)/제로(Zero) 클라이언트 등을 통해 VDI 플랫폼 서버(110)에 접속해서 이용할 수 있다.
VDI 플랫폼 서버(120)는 사용처(예: 학교, 기관, 대학 등)와의 계약을 바탕으로 한 관련된 라이선스(License), 사용자 정보 들을 별도로 관리할 수 있다.
사용자 단말(110)은 접속 환경에 따라 IP 기반 또는 MAC 기반의 인증, 사용자 ID/학번 등의 고유 서비스 이용자의 식별 값으로 사용자를 인증할 수 있다
일 실시예에서, VDI 이미지는 가상 데스크탑 이미지(Virtual Desktop Image), 가상 머신 이미지(Virtual Machine Image) 또는 이와 동등한 기술적 의미를 갖는 용어로 지칭될 수 있다.
일 실시예에서, VDI 이미지는 디스크(disk) 포맷 또는 컨테이너(container) 포맷을 가질 수 있다.
디스크 포맷은 가상 드라이브(virtual drive) 형태의 구성을 띄며, 컨테이너 포맷의 경우 가상의 디스크 정보를 압축해둔 형태 방식을 가질 수 있다.
VDI 이미지의 구성 요소 정보는 메타데이터(metadata) 형태로 구성될 수 있다.
일 실시예에서, VDI 이미지의 구성 요소 정보는 가상머신의 이미지 정보와 관련된 메타데이터를 의미하며, 일반적인 이미지 특성(image properties) 정보를 포함할 수 있다.
일 실시예에서, VDI 이미지의 구성 요소 정보는, 하기 <표 1>과 같이 VDI 이미지의 실행과 관련된 정보를 포함할 수 있다.
종류 내용
운영체체의 구조 (architecture) x86_64(64-bit extension of IA-32), arm71(ARM Cortex-A7 MPCore), mips64(MIPS 64-bit RISC (Big Endian)), pcc64(PowerPC 64-bit) 등
하이퍼바이저 타입 hyperv, ironic, lxc, qemu, uml, vmware, xen 등
Instance의 UUID 고유 주소 값
이미지 구성 드라이브 정보 mandatory, optional 등
Kernel id 커널의 고유 ID 정보
OS Admin User OS의 Admin 사용자 정보 (root 정보)
OS 구성 정보 arch (arch linux), centos (centOS), freebsd (freeBSD), ubuntu (Ubuntu), windows (Microsoft windows)
OS Version OS 관련 버전 정보
OS secure boot secure boot 관련 정보, required or disable/optional
OS Shutdown Timeout OS 종료 대기 시간 정보
RAM Disk ID RAM Disk 사용을 위한 ID 정보
HW firmware type 부트 환경의 장치 펌웨어 정보
Etc. 기타
또한, 일 실시예에서, VDI 이미지와 연계되는 외부 서비스 관련 정보는 메타데이터로 구성될 수 있다.
일 실시예에서, 외부 서비스 관련 정보는 교육 및 실습 등과 같은 콘텐츠 관련 정보와 연계된 추가적인 정보를 포함할 수 있다.
예를 들어, 외부 서비스 관련 정보는 컨텐츠 관련 정보, 사용자 정보, 서비스 참여 역할 정보, 서비스 소프트웨어 구성 정보 및 서비스 접근 관련 정보 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 컨텐츠 관련 정보는 교육 및 실습 등과 관련된 정보를 포함할 수 있다. 예를 들어, 컨텐츠 관련 정보는, 일반적인 LMS 또는 CMS 상에서의 일련의 연속된 행위 또는 섹션/차수 별 자료 등을 구성하고 관리할 수 있는 정보를 포함할 수 있다.
일 실시예에서, 컨텐츠 관련 정보는 해당 기능을 통해 가상 데스크탑 생성 시 초기 구성할 콘텐츠 정보를 편집하거나, 미리 설정하기 위해 이용될 수 있다.
사용자 정보는 LMS 또는 CMS 상에서의 사용자 역할에 따른 정보와 시스템 관리에 필요한 정보를 포함할 수 있다. 예를 들어, 사용자 정보는 학생, 강사, 보조자, 조교 등의 교육 및 컨텐츠 관련 사용자 정보와, 관리자(Admin), 매니저(Manager), 개발자(Developer) 등의 관리용 정보를 포함할 수 있다.
사용자 정보는 사용자의 VDI 서비스 상에서의 설정 정보 (dP: 프로그램 기능 활성화, 사용자 그룹 생성 등)의 역할 기능에 차등을 두기 위해 이용될 수 있다.
또한, 사용자 정보는 사용자 이용 기록 정보를 별도 관리(저장 및 복구(restore))하기 위해 이용될 수 있으며, 과제 제출 등의 서비스를 구현하기 위해 이용될 수 있다.
서비스 참여 역할 정보는 강의 또는 실습과 관련된 등록 정보를 포함할 수 있다. 예를 들어, 서비스 참여 역할 정보는 VDI 서비스 이용 시, 해당 강의 또는 실습 등에서의 사용자의 참여 역할에 대한 정보를 포함할 수 있다. 예를 들어, 서비스 참여 역할 정보는 사용자가 교수자로 참여 또는 학생으로 참여 등의 역할을 판단하기 위해 이용될 수 있다.
서비스 소프트웨어 구성 정보는, 사용자에게 제공될 외부 서비스에 대한 소프트웨어(software, SW) 설치 목록 정보를 포함할 수 있다.
일 실시예에서, 서비스 소프트웨어 구성 정보는, 설치 항목이 다수 지정 시, 종속 정보(dependency information) 또는 패키징(package) 정보를 이용해 설치되는 소프트웨어의 구성 요소별 특성을 관리하기 위해 사용될 수 있다.
종속 정보는 소프트웨어의 종속성을 트리(tree) 형태로 관리하기 위해 사용될 수 있다(예: npm 종속 정보).
일 실시예에서, 패키징 정보는 하기 <표 2>와 같은 정보를 포함할 수 있다.
종류 내용
Name 패키지 고유 이름
Version 패키지 버전
Description 패키지 설명
Keywords 패키지 키워드
Homepage 관련 홈페이지
License 라이선스
Files 패키지에 포함된 파일의 배열
일 실시예에서, Licence는 라이선스 관련 정보로 패키지 사용 시 어떻게 권한을 얻는지 또는 금지된 사항들과 관련한 라이선스 정보를 지정할 수 있다(예: "license": "BSD-3-Clause“, "license" : "SEE LICENSE IN <filename> || <url>“)
일 실시예에서, License는 Site License 등의 별도 형태 또는 key 기반의 중앙 관리 형태는 별도 시스템과 연동하기 위한 정보를 제공할 수 있으며, 이때는 VDI 관리자가 별도 정보 형태로 기록 및 관리할 수 있다.
Files은 패키지에 포함된 파일의 배열이며 JSON 형태 등으로 표현될 수 있다.
일 실시예에서, 서비스 접근 관련 정보는 VDI 서비스와 외부 서비스에 연계하기 위한 정보를 포함할 수 있다. 예를 들어, 서비스 접근 관련 정보는 인증 방법 및 인증 키(Key), 토큰(Token) 등을 포함할 수 있다.
서비스 접근 관련 정보는 사용자 별 가상 데스크탑 요청 시 별도 인증용 정보를 이용해 사전에 인증되거나, 인스턴스 생성 후 해당 정보를 구성 요소 정보에 저장하여 사용될 수 있다.
본 발명에 따르면, VDI 이미지 생성시 해당 이미지의 구성 요소들을 메타데이터화 하고, 이를 기반으로 CMS와 연계 시, 특정 추가적인 구성 요구사항을 업데이트할 수 있다. 이를 통해, 특정 강의 교안 및 클래스(Class)에 적합한 VDI 서비스를 제공할 수 있다.
또한, 본 발명에 따르면, 개별 커리큘럼, 교수자 등의 특성에 맞춘 시스템 환경을 손쉽게 관리할 수 있다.
또한, 본 발명에 따르면, 강의 교안 등과 연계된 맞춤 강의 환경을 사전에 정의된 형태로 제공할 수 있으며, 이를 마켓 플레이스(Market place) 등을 통해서 거래할 수 있다.
일 실시예에서, 특정 출판사에서 프론트-엔드 웹(Front-end Web) 개발 서적을 출시하면서, 관련된 VDI 기반 실습 환경을 제공할 수 있다.
기존에는 개별 학습자가 개발 환경을 설정하고, 테스트를 하여야 하나, 본 발명에 따르면, 도서 구입 시 포함된 또는 별도로 결제한 VDI 서비스 환경을 이용해 손쉽게 해당 교재의 내용을 실습 할 수 있는 환경을 제공 받을 수 있다.
일 실시예에서, 대학 강의의 경우, 컴퓨터 실습 중심의 강의를 진행시, 해당 실습 환경이 매주차별 커리큘럼 및 실라버스에 맞춰 제공됨으로써 교수자 및 학습자의 수업 준비에 대한 부담을 감소시킬 수 있다.
즉, 빠른 실습 환경 구성을 통해 효과적인 학습 방법을 제공할 수 있다.
또한, 본 발명에 따르면, 가상 데스크탑 환경이 교육 등의 환경에서 폭넓게 활용될 경우, 외부 CMS(Content Management System) 등과 연계한 형태의 서비스가 제공될 수 있다.
또한, 본 발명에 따르면, 외부 CMS와의 연계를 통해, 커리큘럼에 기반한 해당 주차 또는 과정의 필수 실습, 과제 등 다양한 내용을 사전에 가상 데스크탑 환경에서 제공받고, 이를 진행함으로써, 사용자의 편의와 콘텐츠 공급의 편의성을 제공할 수 있다.
도 2는 본 발명의 일 실시예에 따른 외부 서비스와 연계한 VDI 이미지 생성 방법을 도시한 도면이다. 일 실시예에서, 도 2의 각 단계는 도 1의 VDI 플랫폼 서버(120)에 의해 수행될 수 있다.
도 2를 참고하면, S201 단계는, VDI 서비스 준비 요청을 수신하는 단계이다. 일 실시예에서, VDI 서비스 준비 요청은 외부 서비스와 연계된 서비스 요구 시 발생될 수 있다. 또한, 일 실시예에서, VDI 서비스 준비 요청은 사전에 등록된 스케줄 정보 등을 통해 특정 시점에 배치(Batch) 형태로 발생될 수 있다.
S203 단계는, VDI 서비스 준비 요청에 포함된 외부 서비스 관련 연계 정보를 확인하는 단계이다. 일 실시예에서, VDI 서비스 준비 요청은 CMS 관련 인증 정보를 포함할 수 있다
S205 단계는, 기본 VDI 이미지의 구성 요소 정보를 로딩하는 단계이다.
S207 단계는, 기본 VDI 이미지와 연계되는 외부 서비스 관련 정보를 결정하는 단계이다. 즉, 기본 VDI 이미지에서 필요한 추가 콘텐츠 또는 소프트웨어 정보를 별도 메타데이터 파일에 기록할 수 있다.
일 실시예에서, 외부 서비스 상에서의 요구 사항을 확인할 수 있다. 예를 들어, 요구 사항은 숏 컷(Short cut), 드라이브(Drive) 연결, 팀(Team) 연결(예: 챗/콜라보 솔루션(Chat/Collaboration solution)) 중 적어도 하나를 포함할 수 있다.
S209 단계는, 구성 요소 정보와 외부 서비스 관련 정보를 기본 VDI 이미지에 반영하여 최종 VDI 이미지를 생성하는 단계이다.
일 실시예에서, 최종 VDI 이미지의 외부 서비스 관련 정보를 이용하여 종속 정보 및 라이선스 정보와 연결되어 확인하는 절차를 수행할 수 있다.
일 실시예에서, 특정 강의를 다수의 사용자가 수행하는 경우, 로딩 시간 단축을 위해, 외부 서비스 관련 정보는 별도의 VDI 이미지로 저장할 수 있다.
S211 단계는, VDI 서비스 제공 준비를 완료하는 단계이다. 즉, 최종적으로 외부 콘텐츠 및 서비스와 연계된 VDI 서비스 준비를 완료할 수 있다.
도 3은 본 발명의 일 실시예에 따른 외부 서비스와 연계한 사용자 요청 시 처리 방법을 도시한 도면이다. 일 실시예에서, 도 3의 각 단계는 도 1의 VDI 플랫폼 서버(120)에 의해 수행될 수 있다.
도 3을 참고하면, S301 단계는, 사용자 접속 요청을 수신하는 단계이다.
S303 단계는, 사용자 로그인을 수행하여 사용자를 확인하는 단계이다.
S305 단계는, 사용자에 의해 미리 결정된 VDI 설정 관련 정보를 로딩하는 단계이다.
S307 단계는, 미리 결정된 VDI 설정 관련 정보에 따라 기본 VDI 이미지의 구성 요소 정보 및 외부 서비스 관련 정보를 결정하는 단계이다.
사용자에 의해 미리 결정된 VDI 설정 관련 정보와 VDI 이미지의 구성 요소 정보를 비교하여, 사용자에 대응하는 구성 요소 정보 및 외부 서비스 관련 정보를 결정할 수 있다.
S309 단계는, 외부 서비스 관련 정보에 포함된 서비스 접근 관련 정보를 이용하여 외부 서비스에 대한 사용자의 인증을 수행하는 단계이다.
일 실시예에서, 외부 서비스 관련 정보 중 사용자 인증이 필요한 경우 서비스 접근 관련 정보에 포함된 인증용 토큰의 생성 등의 절차를 통해 인증 연계를 진행할 수 있다.
일 실시예에서, VDI 서비스 상에서 사용자에 의해 미리 결정된 VDI 설정 관련 정보를 바탕으로 외부 서비스를 자동으로 연계할 수 있어야 한다.
즉, VDI 상에서 사용자에 의해 VDI 서비스 설치 또는 연결 시, VDI 플랫폼 서버(120)는 VDI 설정 관련 정보에 등록할지를 판단할 수 있어야 한다.
이때 사용자 동의를 얻는 절차를 거쳐야 하며, 사용자의 선택에 의해 자동 로딩 또는 선택적 질의 후 로딩 등 로딩 조건에 대해서 사용자 설정 기능을 제공할 수 있다.
이를 위해 VDI 플랫폼 서버(120)는 사용자가 사전 연계 가능한 서비스들을 어플리케이션 형태로 제공할 수 있다.
해당 어플리케이션의 경우 사전 연계를 위한 구성(Configuration) 정보를 VDI 서비스 사업자에게 심사 받은 후 등록할 수 있다.
즉, 사용자의 로그인 시, 사전에 사용자가 설정한 VDI 설정 관련 정보를 기반으로 외부 서비스를 VDI 서비스에 로딩 및 인증을 통한 연결을 제공할 수 있다.
예를 들어, 클라우드 스토리지(Cloud Storage) 서비스 등 외부 스토리지 서비스, SaaS 기반 서비스 구독(Subscription) 정보, S/W 및 어플리케이션 라이선스 정보, 즐겨찾기 사용자 서비스 이용 기록 정보 등이 사용될 수 있다.
일 실시예에서, VDI 플랫폼 서버(120)가 인증한 외부 서비스 이용 시 인증이 수행될 수 있다.
일 실시예에서, 사용자 인증의 경우, 사용자 질의를 통한 사용자 직접 인증이 수행될 수 있다.
또한, 사용자에 의해 VDI 서비스에 부여된 인증 키(Key)를 기반으로 인증이 수행될 수 있다.
일 실시예에서, 서비스 공급자 인증의 경우, 사용자가 소속된 기관 또는 VD 서비스를 제공하는 학교, 기업 등이 VD 서비스 공급자와 사전에 맺은 계약을 바탕으로 외부 서비스에 대한 인증이 수행될 수 있다.
S311 단계는, 구성 요소 정보와 외부 서비스 관련 정보를 기본 VDI 이미지에 반영하여 최종 VDI 이미지를 생성하는 단계이다. 즉, 업데이트된 VDI 이미지를 실행할 수 있다.
일 실시예에서, 외부 서비스의 VDI 플랫폼에 대한 등록이 수행될 수 있다.
외부 서비스 제공자인 CMS 서버(130)는 VDI 플랫폼 상에서 서비스를 제공하기 위해 VDI 플랫폼 서버(120)와 별도의 등록 절차를 수행할 수 있다.
VDI 플랫폼 서버(120)는 CMS 서버(130)의 외부 서비스 심사 요청에 대해 소프트웨어 종속성과 같은 시스템 사항 및 비즈니스 계약 관계를 분석한 후 적용할 서비스 및 사용자 대상을 선정할 수 있다.
일 실시에에서, VDI 상에서 외부 서비스에 대한 라이선스가 활용될 수 있다.
외부 서비스 또는 소프트웨어 등의 라이선스가 존재하는 경우, 해당 라이선스가 영구 또는 일/월(Day/Month) 등의 일정한 기간 기준과 같은 다양한 형태로 설정될 수 있다.
해당 라이선스가 대학의 경우 대학 전체를 대상(Site) 또는 개별 대학(Collage) 등의 수준으로 나누어 공급될 수 있다.
기간 기준으로 라이선스가 제공되는 경우 VDI 서비스 사용 시 라이선스를 효과적으로 사용하기 위해 최대한 라이선스를 효과적으로 활용하기 위해 라이선스가 적용된 VDI 인스턴스의 재사용 기능 제공될 수 있다.
이를 위해, VDI 플랫폼 서버(120)는 최초 라이선스가 사용된 시점을 기준으로 사용자 단말(110)의 접속을 연결하고, 사용 중인 사용자 단말(110)의 접속 종료 시 이를 다시 공용 활용 인스턴스 풀(Pool)에 넣어두고, 새로운 사용자 단말의 접속 요청 시, 만료되지 않은 라이선스를 연결해 줄 수 있다.
이를 효과적으로 하기 위해 대학의 강의실 운영 정보, 강의 개설 정보 등과 연계해 라이선스 기반 VDI 서비스가 제공될 수 있다.
일 실시예에서, VDI 플랫폼 서버(120)는 라이선스 별로 최소 사용 시간을 지정할 수 있다. 예를 들어, 실습 등의 경우 최소 1시간 등의 형태이거나, 또는 강의 시간에 따라 2시간 ,3시간 등 최소 사용 시간을 지정할 수 있다.
도 4는 본 발명의 일 실시예에 따른 라이선스 공용 활용에 대한 공용 활용 인스턴스 관리 방법을 도시한 도면이다. 일 실시예에서, 도 4의 각 단계는 도 1의 VDI 플랫폼 서버(120)에 의해 수행될 수 있다.
도 4를 참고하면, S401 단계는, VDI 인스턴스 생성 요청을 수신하는 단계이다.
S403 단계는, 외부 서비스에 대한 라이선스 공용 활용이 가능한 경우, 외부 서비스에 대한 공용 활용 인스턴스 플래그(flag)가 설정된 VDI 인스턴스를 생성하는 단계이다.
라이선스가 일정 기간을 기반으로 사용되는 경우, 라이선스 약관을 판단하여, 공용 활용 가능한 라이선스가 실행되는 VDI 인스턴스를 공용 활용 인스턴스 풀에 별도로 기록할 수 있다.
S405 단계는, VDI 인스턴스를 공용 활용 인스턴스 풀에 추가하여 사용자 단말(110)의 VDI 서비스 접속을 대기하는 단계이다.
S407 단계는, 사용자 단말(110)의 VDI 서비스 접속을 승인한 후 VDI서비스 접속을 종료함을 결정하는 단계이다.
사용자 단말(110)의 접속 종료 후, VDI 인스턴스의 수명(Lifecycle)에 따라 인스턴스 제거(instance shutdown) 전에 인스턴스 플래그를 확인할 수 있다.
S409 단계는, VDI 인스턴스의 라이선스 유효 시간이 임계값보다 작은지 여부를 판단하는 단계이다. 여기서, 라이선스 유효 시간은 라이선스의 활용 가능 시간을 의미할 수 있다.
일 실시예에서, VDI 인스턴스의 라이선스 유효 시간이 임계값보다 작지 않은 경우, S405 단계로 진행하여, VDI 인스턴스를 공용 활용 인스턴스 풀에 다시 추가하여 사용자 단말의 VDI 서비스 접속을 대기할 수 있다.
일 실시예에서, VDI 인스턴스의 라이선스 유효 시간이 임계값보다 작은 경우, S411 단계로 진행하여 VDI 인스턴스를 종료할 수 있다.
즉, 라이선스의 수명이 다 한 경우 또는 최소 요구 시간을 충족시키지 못하는 경우 라이선스를 폐기할 수 있다.
S411 단계는, VDI 인스턴스를 공용 활용 인스턴스 풀에서 제거하여 VDI 인스턴스를 종료하는 단계이다.
도 5는 본 발명의 일 실시예에 따른 가상 데스크탑 환경에서 서비스 제공 방법을 도시한 도면이다. 일 실시예에서, 도 5의 각 단계는 도 1의 VDI 플랫폼 서버(120)에 의해 수행될 수 있다.
도 5를 참고하면, S501 단계는, VDI(Virtual Desktop Infrastructure) 서비스에 대한 VDI 서비스 요청을 수신하는 단계이다.
일 실시예에서, VDI 서비스 요청은 VDI 서비스 준비 요청, 사용자 접속 요청 및 VDI 인스턴스 생성 요청 중 적어도 하나를 포함할 수 있다.
S503 단계는, VDI 서비스 요청에 대응하여, 기본 VDI 이미지의 구성 요소 정보를 결정하는 단계이다.
일 실시예에서, 기본 VDI 이미지의 구성 요소 정보는, VDI 이미지의 실행과 관련된 이미지 특성 정보를 포함할 수 있다.
S505 단계는, CMS(Content Management System) 서버(130)로부터 상기 기본 VDI 이미지와 연계되는 외부 서비스 관련 정보를 수신하는 단계이다.
일 실시예에서, 외부 서비스 관련 정보는 컨텐츠 관련 정보, 사용자 정보, 서비스 참여 역할 정보, 서비스 소프트웨어 구성 정보 및 서비스 접근 관련 정보 중 적어도 하나를 포함할 수 있다.
일 실시예에서, S501 단계 이후에, VDI 서비스 요청에 대응하여, VDI 서비스를 위한 VDI 플랫폼에 대한 사용자 로그인(login)을 수행하고, 사용자 로그인에 대응하여, 사용자에 의해 미리 결정된 VDI 설정 관련 정보를 로딩(loading)하며, VDI 설정 관련 정보에 따라 외부 서비스 관련 정보를 로딩할 수 있다.
즉, 사용자에 의해 미리 결정된 VDI 설정 관련 정보에 대응하는 사용자 맞춤형 외부 서비스 관련 정보만을 로딩할 수 있다.
일 실시예에서, 사용자에 의해 미리 결정된 VDI 설정 관련 정보의 로딩 조건에 대한 사용자 설정 기능을 사용자 단말(110)에게 제공할 수 있다. 예를 들어, 로딩 조건은, 사용자에 의해 미리 결정된 VDI 설정 관련 정보의 자동 로딩 또는 사용자에 대한 선택적 질의 후 로딩을 포함할 수 있다.
즉, 자동 로딩 또는 선택적 질의 후 로딩 중 하나가 사용자 단말(110)을 통한 사용자에 의한 입력에 의해 선택될 수 있도록 사용자 설정 기능을 사용자 단말(110)에게 제공할 수 있다.
일 실시에에서, S501 단계 이후에, 외부 서비스 관련 정보에 포함된 서비스 접근 관련 정보를 이용하여 외부 서비스에 대한 사용자의 인증을 수행할 수 있다.
일 실시예에서, S503 단계 이후에, 외부 서비스에 대한 라이선스(license) 공용 활용이 가능한 경우, 외부 서비스에 대한 공용 활용 인스턴스 플래그(flag)가 설정된 VDI 인스턴스를 생성하고, VDI 인스턴스를 공용 활용 인스턴스 풀(Pool)에 추가하여 사용자 단말(110)의 VDI 서비스 접속을 대기할 수 있다.
일 실시예에서, 상기 대기하는 단계 이후에, 사용자 단말(110)의 VDI 서비스 접속이 종료됨에 따라, VDI 인스턴스의 인스턴스 플래그가 공용 활용 인스턴스 플래그임을 식별하고, 상기 식별에 따라 VDI 인스턴스를 공용 활용 인스턴스 풀에 반환할 수 있다.
일 실시예에서, 상기 반환하는 단계 이후에, VDI 인스턴스의 라이선스 유효 시간이 임계값보다 작은지 여부를 판단할 수 있다.
일 실시예에서, 라이선스의 활용 가능 시간을 판단 후 활용 가능한 경우 (즉, 여분의 시간이 있는 경우), 해당 VDI 인스턴스를 공용 활용 인스턴스 풀에 다시 반환할 수 있다.
일 실시예에서, 반환된 VDI 인스턴스는 사용자 이용 정보에 대한 삭제 및 개인 정보 처리가 수행될 수 있다.
VDI 인스턴스의 라이선스 유효 시간이 임계값보다 큰 경우, VDI 인스턴스를 공용 활용 인스턴스 풀에 추가하여 사용자 단말(110)의 VDI 서비스 접속을 대기할 수 있다.
VDI 서비스 접속이 대기 중인 경우에 타 사용자에 의한 다른 사용자 단말에 대한 VDI 서비스 요청을 수신할 수 있고, 해당 사용자 단말에게 잔여 라이선스 유효 시간 동안 VDI 서비스를 제공할 수 있다.
이 경우, 각 사용자에 의해 미리 결정된 VDI 설정 관련 정보에 따라, 각 사용자 단말에 대한 잔여 라이선스 유효 시간 동안의 접속 우선순위를 결정하고, 결정된 접속 우선순위에 따라 VDI 서비스를 제공할 수 있다.
VDI 인스턴스의 라이선스 유효 시간이 임계값보다 작은 경우, VDI 인스턴스를 공용 활용 인스턴스 풀에서 제거하여 VDI 인스턴스를 종료할 수 있다.
S507 단계는, 구성 요소 정보와 외부 서비스 관련 정보를 상기 기본 VDI 이미지에 반영하여 상기 VDI 서비스에 대한 최종 VDI 이미지를 생성하는 단계이다.
일 실시예에서, S507 단계 이후에, 최종 VDI 이미지를 이용하여 VDI 서비스에 대한 VDI 인스턴스(instance)를 생성할 수 있다. 일 실시예에서, VDI 인스턴스를 실행하여 사용자 단말(110)에게 VDI 서비스를 제공할 수 있다.
도 6은 본 발명의 일 실시예에 따른 가상 데스크탑 환경에서 서비스 제공 장치(600)의 기능적 구성을 도시한 도면이다. 일 실시예에서, 도 6의 서비스 제공 장치(600)는 도 1의 VDI 플랫폼 서버(120)를 포함할 수 있다.
도 6을 참고하면, 서비스 제공 장치(600)는 통신부(610), 제어부(620) 및 저장부(630)를 포함할 수 있다.
통신부(610)는 VDI(Virtual Desktop Infrastructure) 서비스에 대한 VDI 서비스 요청을 수신할 수 있다.
일 실시예에서, 통신부(610)는 유선 통신 모듈 및 무선 통신 모듈 중 적어도 하나를 포함할 수 있다. 통신부(610)의 전부 또는 일부는 '송신부', '수신부' 또는 '송수신부(transceiver)'로 지칭될 수 있다.
제어부(620)는 VDI 서비스 요청에 대응하여, 기본 VDI 이미지의 구성 요소 정보를 결정할 수 있다.
일 실시예에서, 제어부(620)는 적어도 하나의 프로세서 또는 마이크로(micro) 프로세서를 포함하거나, 또는, 프로세서의 일부일 수 있다. 또한, 제어부(620)는 CP(communication processor)라 지칭될 수 있다. 제어부(620)는 본 발명의 다양한 실시예에 따른 서비스 제공 장치(600)의 동작을 제어할 수 있다.
일 실시예에서, 일 실시예에서, 제어부(620)는 라이선스 비용 절감을 위해 라이선스가 적용된 VDI 인스턴스의 수명을 별도로 관리할 수 있다.
일 실시예에서, 제어부(620)는
라이선스 컨트롤러(License Controller) 모듈, 라이선스 관리(License Manager) 모듈 및 라이선스 수명 관리(License Lifecycle Manager) 모듈을 포함할 수 있다.
라이선스 컨트롤러 모듈은, VDI 서비스에 대한 공급자 및 서비스 이용자, 기관들의 라이선스 정보를 관리할 수 있다.
라이선스 관리 모듈은 개별 라이선스 정보를 관리할 수 있다.
라이선스 수명 관리 모듈은 VDI 인스턴스 실행 시 라이선스 활성화 여부를 판단하고, 특정 라이선스가 활성화되는 경우 이를 등록 및 관리할 수 있다. 이를 위해, 라이선스 수명 관리 모듈은 라이선스 관리 모듈과 상호 연계해 라이선스 적용 및 활성화 상태를 판단할 수 있다.
일 실시예에서, 통신부(610)는, CMS(Content Management System) 서버(130)로부터 기본 VDI 이미지와 연계되는 외부 서비스 관련 정보를 수신할 수 있다.
일 실시예에서, 제어부(620)는, 상기 구성 요소 정보와 외부 서비스 관련 정보를 기본 VDI 이미지에 반영하여 VDI 서비스에 대한 최종 VDI 이미지를 생성할 수 있다.
저장부(630)는 VDI 이미지, 구성 요소 정보 및 외부 서비스 관련 정보를 저장할 수 있다.
일 실시예에서, 저장부(630)는 휘발성 메모리, 비휘발성 메모리 또는 휘발성 메모리와 비휘발성 메모리의 조합으로 구성될 수 있다. 그리고, 저장부(630)는 제어부(620)의 요청에 따라 저장된 데이터를 제공할 수 있다.
도 6을 참고하면, 서비스 제공 장치(600)는 통신부(610), 제어부(620) 및 저장부(630)를 포함할 수 있다. 본 발명의 다양한 실시 예들에서 서비스 제공 장치(600)는 도 6에 설명된 구성들이 필수적인 것은 아니어서, 도 6에 설명된 구성들보다 많은 구성들을 가지거나, 또는 그보다 적은 구성들을 가지는 것으로 구현될 수 있다.
이상의 설명은 본 발명의 기술적 사상을 예시적으로 설명한 것에 불과한 것으로, 통상의 기술자라면 본 발명의 본질적인 특성이 벗어나지 않는 범위에서 다양한 변경 및 수정이 가능할 것이다.
본 명세서에 개시된 다양한 실시예들은 순서에 관계없이 수행될 수 있으며, 동시에 또는 별도로 수행될 수 있다.
일 실시예에서, 본 명세서에서 설명되는 각 도면 및 발명의 상세한 설명에서 적어도 하나의 단계가 생략되거나 추가될 수 있고, 역순으로 수행될 수도 있으며, 동시에 수행될 수도 있다.
본 명세서에 개시된 실시예들은 본 발명의 기술적 사상을 한정하기 위한 것이 아니라, 설명하기 위한 것이고, 이러한 실시예들에 의하여 본 발명의 범위가 한정되는 것은 아니다.
본 발명의 보호범위는 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 이해되어야 한다.
100: 가상 데스크탑 시스템
110: 사용자 단말
120: VDI 플랫폼 서버
130: CMS 서버
600: 서비스 제공 장치
610: 통신부
620: 제어부
630: 저장부

Claims (14)

  1. (a) VDI(Virtual Desktop Infrastructure) 서비스에 대한 VDI 서비스 요청을 수신하는 단계;
    (b) 상기 VDI 서비스 요청에 대응하여, 기본 VDI 이미지의 구성 요소 정보를 결정하는 단계;
    (c) CMS(Content Management System) 서버로부터 상기 기본 VDI 이미지와 연계되는 외부 서비스 관련 정보를 수신하는 단계; 및
    (d) 상기 구성 요소 정보와 외부 서비스 관련 정보를 상기 기본 VDI 이미지에 반영하여 상기 VDI 서비스에 대한 최종 VDI 이미지를 생성하는 단계를 포함하고,
    상기 (b) 단계 이후에,
    외부 서비스에 대한 라이선스(license) 공용 활용이 가능한 경우, 상기 외부 서비스에 대한 공용 활용 인스턴스 플래그(flag)가 설정된 VDI 인스턴스를 생성하는 단계; 및
    상기 VDI 인스턴스를 공용 활용 인스턴스 풀(Pool)에 추가하여 사용자 단말의 VDI 서비스 접속을 대기하는 단계를 포함하는,
    가상 데스크탑 환경에서 서비스 제공 방법.
  2. 제1항에 있어서,
    상기 (a) 단계 이후에,
    상기 VDI 서비스 요청에 대응하여, 상기 VDI 서비스를 위한 VDI 플랫폼에 대한 사용자 로그인(login)을 수행하는 단계;
    상기 사용자 로그인에 대응하여, 사용자에 의해 미리 결정된 VDI 설정 관련 정보를 로딩(loading)하는 단계;
    상기 VDI 설정 관련 정보에 따라 외부 서비스 관련 정보를 로딩하는 단계;
    를 더 포함하는,
    가상 데스크탑 환경에서 서비스 제공 방법.
  3. 제2항에 있어서,
    상기 (a) 단계 이후에,
    상기 외부 서비스 관련 정보에 포함된 서비스 접근 관련 정보를 이용하여 외부 서비스에 대한 사용자의 인증을 수행하는 단계;
    를 더 포함하는,
    가상 데스크탑 환경에서 서비스 제공 방법.
  4. 제1항에 있어서,
    상기 (d) 단계 이후에,
    상기 최종 VDI 이미지를 이용하여 상기 VDI 서비스에 대한 VDI 인스턴스(instance)를 생성하는 단계;
    를 더 포함하는,
    가상 데스크탑 환경에서 서비스 제공 방법.
  5. 삭제
  6. 제1항에 있어서,
    상기 대기하는 단계 이후에,
    상기 사용자 단말의 상기 VDI 서비스 접속이 종료됨에 따라, 상기 VDI 인스턴스의 인스턴스 플래그가 상기 공용 활용 인스턴스 플래그임을 식별하는 단계;
    상기 식별에 따라 상기 VDI 인스턴스를 상기 공용 활용 인스턴스 풀에 반환하는 단계;
    를 더 포함하는,
    가상 데스크탑 환경에서 서비스 제공 방법.
  7. 제6항에 있어서,
    상기 반환하는 단계 이후에,
    상기 VDI 인스턴스의 라이선스 유효 시간이 임계값보다 작은지 여부를 판단하는 단계;
    상기 VDI 인스턴스의 라이선스 유효 시간이 상기 임계값보다 큰 경우, 상기 VDI 인스턴스를 상기 공용 활용 인스턴스 풀에 추가하여 상기 사용자 단말의 VDI 서비스 접속을 대기하는 단계;
    상기 VDI 인스턴스의 라이선스 유효 시간이 상기 임계값보다 작은 경우, 상기 VDI 인스턴스를 상기 공용 활용 인스턴스 풀에서 제거하여 상기 VDI 인스턴스를 종료하는 단계;
    를 더 포함하는,
    가상 데스크탑 환경에서 서비스 제공 방법.
  8. VDI(Virtual Desktop Infrastructure) 서비스에 대한 VDI 서비스 요청을 수신하는 통신부; 및
    상기 VDI 서비스 요청에 대응하여, 기본 VDI 이미지의 구성 요소 정보를 결정하는 제어부를 포함하고,
    상기 통신부는, CMS(Content Management System) 서버로부터 상기 기본 VDI 이미지와 연계되는 외부 서비스 관련 정보를 수신하고,
    상기 제어부는, 상기 구성 요소 정보와 외부 서비스 관련 정보를 상기 기본 VDI 이미지에 반영하여 상기 VDI 서비스에 대한 최종 VDI 이미지를 생성하고,
    상기 제어부는,
    외부 서비스에 대한 라이선스(license) 공용 활용이 가능한 경우, 상기 외부 서비스에 대한 공용 활용 인스턴스 플래그(flag)가 설정된 VDI 인스턴스를 생성하고,
    상기 VDI 인스턴스를 공용 활용 인스턴스 풀(Pool)에 추가하여 사용자 단말의 VDI 서비스 접속을 대기하는,
    가상 데스크탑 환경에서 서비스 제공 장치.
  9. 제8항에 있어서,
    상기 제어부는,
    상기 VDI 서비스 요청에 대응하여, 상기 VDI 서비스를 위한 VDI 플랫폼에 대한 사용자 로그인(login)을 수행하고,
    상기 사용자 로그인에 대응하여, 사용자에 의해 미리 결정된 VDI 설정 관련 정보를 로딩(loading)하고,
    상기 VDI 설정 관련 정보에 따라 외부 서비스 관련 정보를 로딩하는,
    가상 데스크탑 환경에서 서비스 제공 장치.
  10. 제9항에 있어서,
    상기 제어부는,
    상기 외부 서비스 관련 정보에 포함된 서비스 접근 관련 정보를 이용하여 외부 서비스에 대한 사용자의 인증을 수행하는,
    가상 데스크탑 환경에서 서비스 제공 장치.
  11. 제8항에 있어서,
    상기 제어부는,
    상기 최종 VDI 이미지를 이용하여 상기 VDI 서비스에 대한 VDI 인스턴스(instance)를 생성하는,
    가상 데스크탑 환경에서 서비스 제공 장치.
  12. 삭제
  13. 제8항에 있어서,
    상기 제어부는,
    상기 사용자 단말의 상기 VDI 서비스 접속이 종료됨에 따라, 상기 VDI 인스턴스의 인스턴스 플래그가 상기 공용 활용 인스턴스 플래그임을 식별하고,
    상기 식별에 따라 상기 VDI 인스턴스를 상기 공용 활용 인스턴스 풀에 반환하는,
    가상 데스크탑 환경에서 서비스 제공 장치.
  14. 제13항에 있어서,
    상기 제어부는,
    상기 VDI 인스턴스의 라이선스 유효 시간이 임계값보다 작은지 여부를 판단하고,
    상기 VDI 인스턴스의 라이선스 유효 시간이 상기 임계값보다 큰 경우, 상기 VDI 인스턴스를 상기 공용 활용 인스턴스 풀에 추가하여 상기 사용자 단말의 VDI 서비스 접속을 대기하고,
    상기 VDI 인스턴스의 라이선스 유효 시간이 상기 임계값보다 작은 경우, 상기 VDI 인스턴스를 상기 공용 활용 인스턴스 풀에서 제거하여 상기 VDI 인스턴스를 종료하는,
    가상 데스크탑 환경에서 서비스 제공 장치.
KR1020210110458A 2021-08-20 2021-08-20 가상 데스크탑 환경에서 서비스 제공 방법 및 장치 KR102639168B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210110458A KR102639168B1 (ko) 2021-08-20 2021-08-20 가상 데스크탑 환경에서 서비스 제공 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210110458A KR102639168B1 (ko) 2021-08-20 2021-08-20 가상 데스크탑 환경에서 서비스 제공 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20230028024A KR20230028024A (ko) 2023-02-28
KR102639168B1 true KR102639168B1 (ko) 2024-02-20

Family

ID=85326312

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210110458A KR102639168B1 (ko) 2021-08-20 2021-08-20 가상 데스크탑 환경에서 서비스 제공 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102639168B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101081489B1 (ko) * 2009-03-25 2011-11-08 주식회사 케이티 클라우드 컴퓨팅 기반 통합사용자환경 제공방법 및 장치
JP2013054503A (ja) * 2011-09-02 2013-03-21 Nippon Telegr & Teleph Corp <Ntt> ネットワークシステム、プロキシサーバ及び代理方法
KR102102168B1 (ko) * 2013-10-21 2020-04-21 한국전자통신연구원 가상 데스크탑 서비스 장치 및 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150113353A (ko) * 2014-03-28 2015-10-08 전자부품연구원 가상 데스크탑 이미지를 분산 저장 및 블록 레벨로 입출력하는 서버 시스템
KR102175317B1 (ko) 2020-07-02 2020-11-06 굿모닝아이텍(주) 데스크톱 가상화

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101081489B1 (ko) * 2009-03-25 2011-11-08 주식회사 케이티 클라우드 컴퓨팅 기반 통합사용자환경 제공방법 및 장치
JP2013054503A (ja) * 2011-09-02 2013-03-21 Nippon Telegr & Teleph Corp <Ntt> ネットワークシステム、プロキシサーバ及び代理方法
KR102102168B1 (ko) * 2013-10-21 2020-04-21 한국전자통신연구원 가상 데스크탑 서비스 장치 및 방법

Also Published As

Publication number Publication date
KR20230028024A (ko) 2023-02-28

Similar Documents

Publication Publication Date Title
Boettiger et al. An introduction to rocker: Docker containers for R
US7836441B2 (en) Administration automation in application servers
Lunsford Virtualization technologies in information systems education
WO2006113362A2 (en) Enterprise computer management
US20100088740A1 (en) Methods for performing secure on-line testing without pre-installation of a secure browser
Van Gorp et al. Supporting the internet-based evaluation of research software with cloud infrastructure
Cerling et al. Mastering Microsoft Virtualization
Sally Pro Linux embedded systems
KR102639168B1 (ko) 가상 데스크탑 환경에서 서비스 제공 방법 및 장치
Park et al. Clik: Cloud‐based linux kernel practice environment and judgment system
US20230062596A1 (en) Method and apparatus for providing services in virtual desktop environment
Ibrahim Exploring the Feasibility of Adopting Cloud Computing in Computer Center Taiz University
Hardaway et al. Outsourcing the university computer lab
Pereira et al. Assessment of feasibility of running RSNA’s MIRC on a Raspberry Pi: a cost-effective solution for teaching files in radiology
Black et al. Server on a USB Port: A custom environment for teaching systems administration using the Raspberry Pi Zero
Fouda A Complete Guide to Docker for Operations and Development
Liao et al. WIP-iCtrl-A Remote Login Software Application
Cranitch et al. Virtualisation: A case study in database administration laboratory work
Mehwish Smart Search Over Encrypted Cloud Multimedia Data By using Machine Learning
Orchestration et al. Introducing Azure Kubernetes Service
Muschko Certified Kubernetes Administrator (CKA) Study Guide
Davis et al. VCP6-DCV Official Cert Guide (Exam# 2V0-621)
Van Vugt Red Hat RHCSA 8 Cert Guide
Sosinsky et al. Microsoft windows server 2008: Implementation and administration
Cvetanov Getting Started with Citrix XenApp® 7.6

Legal Events

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