KR101499667B1 - System and method for license management in virtual execution environment - Google Patents
System and method for license management in virtual execution environment Download PDFInfo
- Publication number
- KR101499667B1 KR101499667B1 KR1020130012312A KR20130012312A KR101499667B1 KR 101499667 B1 KR101499667 B1 KR 101499667B1 KR 1020130012312 A KR1020130012312 A KR 1020130012312A KR 20130012312 A KR20130012312 A KR 20130012312A KR 101499667 B1 KR101499667 B1 KR 101499667B1
- Authority
- KR
- South Korea
- Prior art keywords
- license
- virtual machine
- information
- license management
- management server
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000007726 management method Methods 0.000 description 80
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000002547 anomalous effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000009683 ultrasonic thickness measurement Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45537—Provision of facilities of other operating environments, e.g. WINE
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
본발명은 가상 실행 환경에서의 라이선스 관리를 위한 시스템 및 방법에 관한 것으로서, 가상 실행 환경을 실행시키는 적어도 하나의 호스트; 상기 가상 실행 환경에서 동작하는 적어도 하나의 가상 머신에 탑재되며, 상기 가상 머신에 대한 라이선스 이미지를 관리하고, 라이선스 관리 정보를 생성하는 라이선스 제어모듈 및 상기 라이선스 제어 모듈로부터 상기 라이선스 관리 정보를 수신하고, 상기 수신된 라이선스 관리 정보에 대한 통계 정보를 생성하고, 상기 통계 정보를 기반으로 라이선스 제어 명령을 생성하여 상기 라이선스 제어 모듈에게 전달하는 라이선스 관리 서버를 포함하여 가상 실행 환경에서의 라이선스 관리가 가능하도록 한다.The present invention relates to a system and method for managing licenses in a virtual execution environment, the system comprising: at least one host executing a virtual execution environment; A license control module that is installed in at least one virtual machine operating in the virtual execution environment, manages a license image for the virtual machine, generates license management information, and receives the license management information from the license control module, A license management server for generating statistical information on the received license management information, generating a license control command based on the statistical information, and transmitting the generated license control command to the license control module, thereby enabling license management in a virtual execution environment .
Description
본발명은 가상 실행 환경에서의 라이선스 관리를 위한 시스템 및 방법에 관한 것으로서, 특히, 가상 머신에 각각 탑재되는 라이선스 제어 모듈이 원격지의 라이선스 관리 서버에 라이선스 관리 정보를 보고함으로써 가상 환경에서도 적합한 라이선스 관리가 가능하도록 한다.The present invention relates to a system and method for managing licenses in a virtual execution environment, and in particular, a license control module mounted in a virtual machine reports license management information to a license management server at a remote location, .
가상화 기술이 IT 시장에 급속히 확산됨에 따라 사용자의 컴퓨팅 환경도 변화하고 있다. 서버 가상화(server virtualization)는 시스템 프로세서(CPU), 메모리, 입력/출력(I/O), 및 네트워킹과 같은 시스템의 물리적 자원들을 다수의 애플리케이션들 사이에서 애플리케이션들을 변경하지 않고 이들 간의 격리(inter-application isolation), 자원 모니터링(resouce monitoring) 및 제어를 이용하여 공유함으로써 컴퓨터 시스템이 그들 자원들을 이용하는 것을 동적으로 최적화할 수 있도록 한다. 이러한 컴퓨터 시스템들의 무리가 함께 작업하는 공간을 가상 실행 환경(virtual execution environment) 또는 클라우드(cloud)로 지칭될 수 있다. As the virtualization technology spreads rapidly in the IT market, the user's computing environment is also changing. Server virtualization is a technique that allows the physical resources of a system such as a system processor (CPU), memory, input / output (I / O), and networking to be inter- application isolation, resouce monitoring, and control so that computer systems can dynamically optimize their use of resources. The space where a multitude of these computer systems work together can be referred to as a virtual execution environment or cloud.
한편, 상용 OS인 Windows의 경우 기존 OS 라이선스 메커니즘을 그대로 가상 머신에 적용하고 있고 Linux OS의 경우 무료 배포이기 때문에 가상 머신에서의 라이선스에 대해서 무료로 사용하고 있다. 그러나, 방화벽, UTM과 같은 네트워크 가상 어플라이언스 장비의 경우 기존의 하드웨어 의존적인 정보에 의해 라이선스를 발급하기 때문에 가상 환경에서는 적합하지 않는 점이 있다. 예컨대, 가상 환경에서 가상 머신의 배포는 VMI(Virtual Machine Image)라는 이미지 파일의 복사를 통해 이루어지고, 최초 설치되는 가상 머신의 경우에는 라이선스를 포함하고 있지 않더라도 라이선스 적용 후에 이미지 파일을 복사하여 설치함으로써 복수의 가상 머신에 대해 무제한적인 라이선스 불법 복제가 용이할 수 있다. On the other hand, in the case of Windows, which is a commercial OS, the existing OS license mechanism is applied to the virtual machine as it is, and since the Linux OS is free distribution, it is used free of charge in the virtual machine. However, network virtual appliance appliances such as firewalls and UTMs are not suitable for virtual environments because they issue licenses based on existing hardware-dependent information. For example, in a virtual environment, distribution of a virtual machine is performed through copying of an image file called VMI (Virtual Machine Image). In the case of a first-installed virtual machine, an image file is copied and installed after license application even if the license is not included Unlimited license piracy for multiple virtual machines can be easy.
즉, 물리적 어플라이언스의 경우에는 이러한 불법적인 라이선스를 막을 수 있는 방안이 있지만 가상환경에서의 경우에는 가상 머신이 복수 개이더라도 이들이 동작하는 하드웨어가 변경되지 않기 때문에 물리적 환경에서의 라이선스 발급 절차를 그대로 가상 머신에 적용할 수는 없다.In other words, there is a way to prevent these illegal licenses in the case of physical appliances. However, in a virtual environment, even if there are a plurality of virtual machines, the hardware in which they operate does not change. It can not be applied to.
본발명은 상술한 문제점을 해결하기 위하여 가상 환경이 실행되는 호스트 상에서 라이선스 관리 기능을 독립적으로 수행하는 라이선스 제어 모듈을 탑재시키고, 외부에 별도의 라이선스 관리 서버를 구비함으로써 가상 환경에서의 라이선스 관리 시스템을 구축하도록 한다.In order to solve the above-described problems, the present invention provides a license management system in a virtual environment, in which a license control module that independently performs a license management function is mounted on a host on which a virtual environment is executed, and a separate license management server is provided on the outside. .
본발명은 가상 머신 상의 라이선스 제어 모듈이 라이선스 서버에게 라이선스 관리 정보를 주기적으로 전송하고, 라이선스 서버는 라이선스 관리 정보에 대한 통계를 모니터링하고, 제어 명령을 전송함으로써 가상 머신 각각에 대해 라이선스를 관리하도록 한다.The license control module on the virtual machine periodically transmits the license management information to the license server, the license server monitors the statistics on the license management information, and transmits a control command to manage licenses for each of the virtual machines .
본발명의 일 실시예에 따른 가상 실행 환경에서의 라이선스 관리를 위한 시스템은, 프로세서 및 메모리를 포함하여 상기 가상 실행 환경을 실행시키는 적어도 하나의 호스트; 상기 가상 실행 환경에서 동작하는 적어도 하나의 가상 머신에 탑재되며, 상기 가상 머신에 대한 라이선스 이미지를 관리하고, 라이선스 관리 정보를 생성하는 라이선스 제어모듈 및 상기 라이선스 제어 모듈로부터 상기 라이선스 관리 정보를 수신하고, 상기 수신된 라이선스 관리 정보에 대한 통계 정보를 생성하고, 상기 통계 정보를 기반으로 라이선스 제어 명령을 생성하여 상기 라이선스 제어 모듈에게 전달하는 라이선스 관리 서버를 포함한다.A system for license management in a virtual execution environment according to an embodiment of the present invention includes at least one host that includes a processor and a memory to execute the virtual execution environment; A license control module that is installed in at least one virtual machine operating in the virtual execution environment, manages a license image for the virtual machine, generates license management information, and receives the license management information from the license control module, And a license management server for generating statistical information on the received license management information, generating a license control command based on the statistical information, and transmitting the generated license control command to the license control module.
본발명의 일 실시예에 따른 호스트 및 라이선스 관리 서버로 구성되는 시스템에서 가상 실행 환경을 위한 라이선스 관리 방법은, 프로세서 및 메모리를 포함하는 호스트 상에서 상기 가상 실행 환경에서 동작하는 적어도 하나의 가상 머신을 구동하는 단계; 상기 가상 머신에 대한 라이선스 이미지를 관리하고 라이선스 관리 정보를 생성하는 라이선스 제어 모듈이, 상기 라이선스 관리 서버로 상기 라이선스 관리 정보를 전송하는 단계; 상기 라이선스 제어 모듈로부터 상기 라이선스 관리 정보를 수신한 상기 라이선스 관리 서버가 상기 수신한 라이선스 관리 정보에 대한 통계 정보를 생성하는 단계; 상기 통계 정보를 기반으로 상기 가상 머신에 대한 라이선스 이미지의 유효성을 판단하는 단계; 및 상기 라이선스 이미지의 유효성을 기반으로 라이선스 제어 명령을 상기 라이선스 관리 명령을 전송한 상기 라이선스 제어 모듈에게 전달하는 단계를 포함한다.A method for managing a license for a virtual execution environment in a system including a host and a license management server according to an embodiment of the present invention includes the steps of operating at least one virtual machine operating in the virtual execution environment on a host including a processor and a memory ; A license control module for managing the license image for the virtual machine and generating license management information, the license control module transmitting the license management information to the license management server; Generating statistical information on the received license management information by the license management server that has received the license management information from the license control module; Determining validity of the license image for the virtual machine based on the statistical information; And delivering a license control command based on the validity of the license image to the license control module that has transmitted the license management command.
본발명에 따르면, 가상화 환경에 적합한 라이선스 관리가 수행될 수 있다.According to the present invention, license management suitable for a virtualized environment can be performed.
본발명에 따르면 복수의 가상 머신 각각에 대한 라이선스의 차별적 관리가 가능하다.According to the present invention, differentiated management of licenses for each of a plurality of virtual machines is possible.
도 1은 본발명의 일 실시예에 따른 가상 환경에서의 라이선스 관리를 위한 시스템을 예시한다.
도 2는 본발명의 일 실시예에 따라 라이선스 관리 방법을 위해 서버 및 가상 머신 간에 데이터 흐름도이다.1 illustrates a system for license management in a virtual environment according to an embodiment of the present invention.
2 is a data flow diagram between a server and a virtual machine for a license management method according to an embodiment of the present invention.
이하 첨부된 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있는 바람직한 실시예를 상세히 설명한다. 다만, 본 발명의 바람직한 실시예에 대한 동작 원리를 상세하게 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. However, the detailed description of known functions and configurations incorporated herein will be omitted when it may unnecessarily obscure the subject matter of the present invention.
도 1은 본발명의 일 실시예에 따른 가상 환경에서의 라이선스 관리를 위한 시스템을 예시한다. 도1을 참조하면, 본발명의 일 실시예에 따른 라이선스 관리 시스템(10)은, 프로세서 및 메모리와 같은 하드웨어(205, 305)를 포함하여 가상 실행 환경을 실행시키는 적어도 하나의 호스트(200, 300, …) 및 라이선스 관리 서버(100)를 포함할 수 있다. 1 illustrates a system for license management in a virtual environment according to an embodiment of the present invention. 1, a
호스트(200)는, 적어도 하나의 가상 머신(220, 230, 240)을 동작시키기 위한 가상 실행 환경을 실행시키기 위해 하이퍼바이저(210)를 제공할 수 있다. 또한, 호스트(100)는 메모리, 네트워크 장치 및 프로세서와 같은 하드웨어(205)를 구비할 수 있다.The
하이퍼바이저(210)는 가상 실행 환경을 위한 호스트(200)에서의 자원 공유, 제어 및 격리와 같은 동작을 위해 가상 머신(220, 230, 240)과 그 아래의 하드웨어(205) 사이에서 동작함으로써 가상 머신(220, 230, 240)이 서로 격리되어 하드웨어(205) 자원을 공유하도록 할 수 있다. 또한, 하이퍼바이저(210)는 하드웨어(205) 및 가상 머신(220, 230, 240) 간에 데이터가 통신할 수 있는 인터페이스 또는 스위치(미도시)를 구비하여 이들 간의 정보의 흐름을 원활하게 할 수 있다.The
가상 머신(220, 230, 240)은 하이퍼바이저(210) 상에서 탑재되어 동작하며 가상 머신에 대한 라이선스 이미지를 관리하기 위한 라이선스 제어 모듈(220, 230, 240)을 포함할 수 있다. 라이선스 제어 모듈(220, 230, 240)은 가상 머신(220, 230, 240)이 하이퍼바이저(210) 상에 설치되면서 탑재되고, 가상 머신(220, 230, 240) 별로 각각 설치되어 이들의 라이선스 정보를 관리할 수 있다. 예컨대, 가상 머신(220) 상에는 라이선스#1이 사용되고, 가상 머신(230)에는 라이선스#2가 사용되며, 가상 머신(240)에는 라이선스#3이 사용될 수 있다. 각 가상 머신들에 탑재된 라이선스 제어 모듈들(221, 231, 241)은 해당 라이선스에 대한 라이선스 관리 정보를 생성할 수 있다. 라이선스 제어 모듈(220, 230, 240)은 라이선스 관리 정보를 생성하여 주기적으로 또는 요청에 의해 라이선스 관리 서버(100)에게 전달할 수 있다. The
라이선스 관리 정보는 라이선스 제어 모듈(220, 230, 240)이 탑재된 가상 머신(220, 230, 240) 상의 라이선스 식별 정보, 가상 머신의 식별 정보 및 호스트의 식별 정보 중 적어도 하나를 포함할 수 있다. 라이선스 식별 정보는 가상 머신(220, 230, 240)에 대한 라이선스 이미지를 식별하기 위한 정보로서 라이선스 ID 를 포함할 수 있다. 가상 머신을 식별하는 정보는 해당 라이선스가 사용되는 가상 머신을 식별하기 위하여, 예컨대, UUID(Universally unique identifier)가 사용될 수 있고, 가상 머신이 탑재될 때 생성될 수 있다. 또한, 가상 머신 식별 정보는 가상 머신의 삭제 또는 변경에 수반하여 삭제 및 변경될 수 있다. 호스트 식별 정보는 해당하는 라이선스 제어 모듈(220, 230, 240)이 탑재된 호스트(200)를 식별하기 위한 정보로서, 예컨대 IP 주소 정보일 수 있다. 호스트의 IP 주소 정보는 실제 사용하는 IP 주소이거나 지역 정보를 포함할 수 있다. 라이선스 관리 정보에 의해 라이선스 관리 서버(100)는 탑재된 라이선스들의 현황, 즉, 라이선스 개수, 각 라이선스가 탑재된 호스트의 정보, 각 라이선스의 유효성 여부를 판단할 수 있다. The license management information may include at least one of license identification information on the
또한, 라이선스 관리 정보는 가상 머신(220, 230, 240) 의 플랫폼 정보를 더 포함할 수 있다. 예컨대, VMware, KVM, Xen 과 같이 특정 가상화 플랫폼에만 사용되는 가상 머신의 라이선스 이미지가 다른 용도로 사용되는 경우에 이를 제한할 필요가 있기 때문이다. 이로 인해, 라이선스 관리 정보를 통하여 가상 머신의 라이선스의 유효성뿐만 아니라 가상 머신 라이선스의 변칙적 사용도 제어할 수 있도록 하다.Also, the license management information may further include platform information of the
라이선스 관리 서버(100)는, 본발명의 일 실시예에 따른 시스템(10) 내의 클라우드 내 호스트들(200, 300, …)로부터 라이선스 관리 정보를 수신, 관리할 수 있다. 서버(100)는, 호스트들(200, 300, …)과 별도의 네트워크에 서버 장치로서 구성될 수도 있지만, 호스트(200, 300,..) 중 하나에 구비되어 클라우드(400) 네트워크 내에 존재하는 가상의 머신으로서도 구현될 수 있다. 즉, 라이선스 관리 서버(100)가 클라우드(400) 내의 호스트(200) 또는 호스트(300)에 가상 머신으로서 탑재될 수도 있다. 또한, 라이선스 관리 서버(100)의 구성 방식에 따라 호스트의 라이선스 제어 모듈들이 라이선스 관리 서버(100)와 통신하는 경로가 달라질 수 있다. The
라이선스 관리 서버(100)는 라이선스 관리 정보를 수신할 때마다 클라우드(400) 내에 배포된 라이선스에 대한 통계 정보를 생성할 수 있다. 그리고, 통계 정보를 기반으로 가상 머신들(220, 230, …)에 대한 라이선스 이미지의 유효성을 판단하고, 라이선스 이미지가 유효하지 아니한 경우 라이선스 관리 정보를 전송한 라이선스 제어 모듈에게 필요한 제어 명령을 전달할 수 있다. The
라이선스에 대한 통계 정보는, 라이선스 사용을 추적하기 위하여, 가상 머신들에 설치된 라이선스 개수, 라이선스의 타임아웃 여부를 라이선스가 설치된 호스트 정보와 함께 포함할 수 있다. 라이선스 관리 서버(100)는 주기적으로 라이선스 통계 정보를 생성하고 이를 기반으로 라이선스 이미지의 유효성을 판단할 수 있다.Statistical information about licenses can include the number of licenses installed in virtual machines, the timeout of licenses, and host information with licenses installed, to track license usage. The
라이선스 이미지의 유효성은 기 설정된 라이선스 개수 또는 라이선스 타임아웃에 따라 판단될 수 있다. 예컨대, 통계 정보에 반영된 라이선스의 개수가 초과된 경우 해당 라이선스의 사용을 제한할 필요가 있다. 또한, 타임아웃을 가진 라이선스의 타임아웃이 경과한 경우에는 해당 라이선스를 삭제할 필요가 있다. 라이선스 관리 서버(100)는 이러한 라이선스 이미지의 유효성을 판단하고 라이선스 제어 명령을 호스트(200, 300, …) 내 라이선스 제어 모듈에게 전달할 수 있다. The validity of the license image can be determined by the number of licenses already set or the license timeout. For example, if the number of licenses reflected in the statistical information is exceeded, it is necessary to restrict the use of the license. In addition, if the timeout of a license with a timeout has elapsed, you need to delete the license. The
또한, 라이선스 관리 서버(100)는, 통계 정보를 이용하여 라이선스 제어 모듈이 탑재된 가상 머신의 유효성을 판단할 수 있다. 예컨대, 라이선스 관리 정보로서 수신된 정보에 가상 머신을 식별하기 위한 UUID 가 포함된 경우, 라이선스 관리 서버(100)는, 실제 사용되는 가상 머신의 UUID 및 서버(100)에서 관리중인 가상 머신 UUID 를 비교함으로써 가상 머신의 유효성을 각각 확인할 수 있다.Also, the
즉, 도 1에서 나타내는 바와 같이, 본발명의 일 실시예에 따라 클라우드 네트워크(400) 내의 복수의 호스트(200, 300,…)는 적어도 하나의 가상 머신을 동작시킬 수 있고, 해당 가상 머신은 해당하는 라이선스 관리 정보를 각각 라이선스 관리 서버(100)에 주기적으로 전송할 수 있다. 라이선스가 벌크(bulk) 라이선스인 경우는 보고된 라이선스 관리 정보를 이용하여 해당하는 라이선스의 사용 개수를 카운트할 수 있다. 또한, 특정 라이선스 및 이에 해당하는 가상 머신의 식별 정보를 매칭시키면서 이상 있는 것으로 판단된 라이선스에 대해서는 해당하는 라이선스의 가상 머신에 탑재된 라이선스 제어 모듈로 직접적으로 라이선스 제어 명령을 전송할 수 있다. 예컨대, 라이선스 제어 모듈들(220, 230, 240,320,330,340,…)로부터 라이선스 관리 정보를 수신하는 도중, 가상 머신(230)으로부터 수신한 라이선스가 사용 초과된 경우, 그 가상 머신(230)에 대해서는 라이선스 사용을 제한할 필요가 있다. 라이선스 관리 서버(100)는 라이선스 제어 모듈(221)에 대해 라이선스 제어 명령, 예컨대, 라이선스 삭제 명령을 전송할 수 있다. 라이선스 제어 모듈(221)은 컨트롤 메시지를 출력할 수 있고, 호스트(200)의 관리자가 이를 확인하여 적절한 조치를 취할 수 있다. 한편, 제어 명령에 따른 컨트롤 메시지, 즉 제어 정보를 출력하기 위해서 디스플레이와 같은 사용자 인터페이스(미도시) 또는 임의의 출력 장치(미도시)가 이용될 수 있다. 즉, 본발명에서는 라이선스 제어 모듈이 각각 라이선스 관리 정보를 서버(100)에 보고함으로써 가상 머신 각각에 대하여 차별적인 라이선스 관리가 가능하도록 한다.
That is, as shown in FIG. 1, according to an embodiment of the present invention, a plurality of
도 2는 본발명의 일 실시예에 따라 라이선스 관리 방법을 위해 서버 및 가상 머신 간에 데이터 흐름도이다. 도 2는 임의의 가상 머신(220, 320)이 라이선스 관리 서버(100)에게 라이선스 관리 정보를 주기적으로 전송하고 라이선스 관리 서버(100)가 통계 정보를 생성하여 라이선스를 관리하는 동작의 일례를 나타낸다. 구체적으로, 도 2의 가상 머신(22, 320)에서 수행하는 동작은 가상 머신 내 탑재된 라이선스 제어 모듈에 의해 수행될 수 있다. 또한, 가상 머신(22, 320) 이외에도 라이선스 관리 서버(100)가 관리하는 클라우드 네트워크 내의 복수의 가상 머신들에 의해 데이터가 송수신될 수 있으나 이들에 대한 도시는 생략한다.2 is a data flow diagram between a server and a virtual machine for a license management method according to an embodiment of the present invention. 2 shows an example of an operation in which any of the
단계 1. 및 단계 1-1. 에서 가상 머신(220, 320)을 구동시킨다. 가상 머신(220, 320) 은 처음 구동할 때 단계 2. 및 2-1.에서 라이선스 관리 정보를 생성, 라이선스 관리 서버(100)로 전송할 수 있다. 또한, 가상 머신들은(220, 320)은 이후에도 주기적으로 또는 요청에 의해 라이선스 관리 정보를 라이선스 관리 서버(100)에 계속 전송할 수 있으며 이에 대해서는 도시를 생략한다. 한편, 라이선스 관리 정보의 전송에 있어서는 공지의 프로토콜이 이용될 수 있다. Step 1. and Step 1-1. The
단계 3. 에서 라이선스 관리 서버(100)는 복수의 가상 머신들로부터 수신한 라이선스 관리 정보를 이용하여 라이선스 통계 정보를 생성한다. In step 3, the
라이선스 관리 정보는 라이선스 식별 정보, 상기 가상 머신의 식별 정보 및 상기 호스트 식별 정보 등을 포함할 수 있다. 통계 정보는 라이선스 별로 라이선스가 탑재된 가상 머신의 식별 정보, 호스트 정보 등을 리스팅할 수 있고, 벌크 라이선스의 경우 사용 라이선스를 카운팅 할 수 있다. The license management information may include license identification information, identification information of the virtual machine, and host identification information. The statistical information can be used to list the identification information of the licensed virtual machine, host information, etc. for each license, and to count usage licenses for bulk licenses.
단계 4. 에서 라이선스 관리 서버(100)는 라이선스 통계 정보를 이용하여 라이선스의 유효성 및 가상 머신의 유효성을 판단할 수 있다. 통계 정보에 따른 라이선스들이 모두 유효하다면 가상 머신들(200, 300)에 대해 별도의 처리를 하지 않고, 라이선스 관리 정보를 지속적으로 수신한다(단계 7. 및 7-1.). In step 4, the
한편, 라이선스가 유효하지 아니한 경우 라이선스 관리 서버(100)는 유효하지 아니한 라이선스에 대한 가상 머신(200)에게 라이선스 제어 정보를 전송할 수 있다(단계 5.). 예컨대, 라이선스의 개수가 초과되어 설치된 경우 초과된 라이선스의 가상 머신에 대해 해당 정보를 제어 정보로서 전송할 수 있다. 가상 머신은 제어 정보를 사용자 인터페이스 등에 의해 출력하는 것과 같이 제어 정보를 실행할 수 있다(단계 6.). 다른 예로, 라이선스가 불법 라이선스인 경우에는 서버(100)는, 해당 가상 머신에 대해 라이선스 삭제 명령을 전달할 수 있다. 또 다른 예로, 라이선스의 유효기간이 지난 경우에는 서버(100)는, 해당 가상 머신에 대해 라이선스의 사용을 제한하는 제어 정보를 전송할 수 있다. 라이선스 제어 정보를 수신한 가상 머신 내 라이선스 제어 모듈은 제어 정보를 출력하거나 실행하도록 할 수 있다. 한편, 제어 명령에 따른 가상 머신 내 동작은 상술한 예로 한정되지 않으며 이외에도 다양한 방법이 이용될 수 있다.On the other hand, if the license is not valid, the
라이선스 제어 정보를 전송한 서버(100)는 이후에도 주기적으로 라이선스 관리 정보를 수신할 수 있고(단계 7, 7-1), 이를 토대로 통계 정보를 생성하는 등 클라우드 네트워크 내의 호스트 상에 적어도 하나의 가상 머신이 동작하는 동안 본발명의 라이선스 관리 방법은 지속적으로 수행될 수 있다.
The
이상, 본발명에 따른 라이선스 관리 시스템 및 방법에 대해 설명하였다. The license management system and method according to the present invention have been described above.
본 발명에 따른 라이선스 관리 시스템 및 방법은, 하나 이상의 프로세서들, 메모리 및/또는 컴퓨터 판독가능한 저장 매체를 포함하는 하나 이상의 종래의 범용 또는 전용 디지털 컴퓨터, 컴퓨팅 디바이스, 머신, 또는 마이크로프로세서를 사용하여 편리하게 구현될 수 있으며 그 라이선스 관리 방법이 구현되는 임의의 장치에 대해서도 본발명의 범위가 적용될 수 있다. 또한, 소프트웨어 기술분야의 통상의 기술자들에게 명백할 것인 바와 같이, 본 개시의 가르침을 토대로 통상의 프로그래머들에 의해 적절한 소프트웨어 코드가 쉽게 마련될 수 있다.A license management system and method in accordance with the present invention may be conveniently implemented using one or more conventional general purpose or special purpose digital computers, computing devices, machines, or microprocessors including one or more processors, memory and / or computer readable storage medium And the scope of the present invention may be applied to any device in which the license management method is implemented. Also, as will be apparent to those of ordinary skill in the software arts, appropriate software code can be easily prepared by ordinary programmers based on the teaching of this disclosure.
일부 실시예들에서, 본 발명은 컴퓨터 프로그램 제품을 포함할 수 있고, 이 제품은 본 발명의 절차들을 수행하도록 컴퓨터를 프로그램하기 위해 사용될 수 있는 명령어들이 저장된 저장 매체 또는 컴퓨터 판독가능한 매체(들)일 수 있고, 본발명의 범위는 해당 저장 매체에 대해서도 적용된다.In some embodiments, the present invention may include a computer program product, which may be stored on a storage medium or computer readable medium (s) on which instructions that can be used to program the computer to perform the procedures of the present invention are stored And the scope of the present invention is also applied to the storage medium.
또한, 저장 매체는 플로피 디스크(floppy disk), 광학 디스크, DVD, CD-ROM, 마이크로드라이브, 광자기 디스크(magneto-optical disk)를 포함하는 임의의 유형의 디스크, ROM, RAM, EPROM, EEPROM, DRAM, VRAM, 플래쉬 메모리 디바이스, 자기적 또는 광학적 카드, 나노시스템(nanosystem)(분자 메모리 IC를 포함), 또는 명령어 및/또는 데이터를 저장하는 데 적합한 임의의 유형의 매체 또는 디바이스를 포함할 수 있는데, 다만 이들로만 제한되는 것은 아니다.The storage medium may also be any type of disk including floppy disk, optical disk, DVD, CD-ROM, micro drive, magneto-optical disk, ROM, RAM, EPROM, EEPROM, A magnetic or optical card, a nanosystem (including a molecular memory IC), or any type of media or device suitable for storing instructions and / or data , But are not limited to these.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 설명하였다. 그러나, 본 발명의 실시예는 당업계에서 통상의 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위하여 제공되어지는 것으로, 본 발명의 범위가 상기의 실시예에 한정되는 것은 아니며, 여러 가지 다른 형태로 변형이 가능함은 물론이다.The preferred embodiments of the present invention have been described above. It is to be understood, however, that the invention is not limited to the disclosed embodiments, but, on the contrary, is intended to cover various modifications and alternative arrangements included within the spirit and scope of the appended claims. Of course.
Claims (16)
상기 라이선스 제어 모듈로부터 상기 라이선스 관리 정보를 수신하고, 상기 수신된 라이선스 관리 정보에 대한 통계 정보를 생성하며, 상기 통계 정보를 기반으로 상기 가상 머신에 대한 라이선스 이미지의 유효성 및 상기 가상 머신의 유효성을 판단하는 라이선스 관리 서버를 포함하고,
상기 라이선스 관리 서버는 상기 라이선스 이미지가 유효한 경우 상기 라이선스 관리 정보를 상기 라이선스 제어 모듈로부터 지속적으로 수신하고, 상기 라이선스 이미지가 유효하지 아니한 경우 라이선스 제어 명령을 생성하여 상기 라이선스 제어 모듈에게 전달하는, 가상 실행 환경에서의 라이선스 관리를 위한 시스템.A license control module that is installed in at least one virtual machine operating in a virtual execution environment, manages a license image for the virtual machine and generates license management information; And
Receiving the license management information from the license control module, generating statistical information on the received license management information, determining the validity of the license image for the virtual machine and the validity of the virtual machine based on the statistical information, A license management server,
Wherein the license management server continuously receives the license management information from the license control module when the license image is valid and generates a license control command when the license image is not valid and transmits the license control command to the license control module. A system for managing licenses in an environment.
상기 라이선스 관리 정보는,
상기 가상 머신에 대한 라이선스 이미지를 식별하기 위한 라이선스 식별 정보, 라이선스가 사용되는 상기 가상 머신을 식별하기 위한 가상 머신 식별 정보 및 상기 라이선스 제어 모듈이 탑재된 호스트를 식별하기 위한 호스트 식별 정보 중에서 적어도 어느 하나의 정보를 포함하는, 가상 실행 환경에서의 라이선스 관리를 위한 시스템.The method according to claim 1,
The license management information includes:
At least one of license identification information for identifying the license image for the virtual machine, virtual machine identification information for identifying the virtual machine in which the license is used, and host identification information for identifying the host on which the license control module is mounted And a license management server for managing the license in the virtual execution environment.
상기 라이선스 식별 정보는 라이선스 ID를 포함하고, 상기 가상 머신 식별 정보는 UUID(Universally unique identifier)를 포함하며, 상기 호스트 식별 정보는 실제 사용하는 IP주소 또는 지역 정보를 포함하는 호스트 IP 주소를 포함하는, 가상 실행 환경에서의 라이선스 관리를 위한 시스템. 3. The method of claim 2,
Wherein the license identification information includes a license ID, the virtual machine identification information includes a universally unique identifier (UUID), and the host identification information includes a host IP address including an actual IP address or area information, A system for managing licenses in a virtual execution environment.
상기 라이선스 관리 서버는,
라이선스 별로 상기 가상 머신 식별 정보와 상기 호스트 식별 정보를 리스팅하고, 벌크 라이선스의 경우 사용 라이선스를 카운팅하여 상기 통계 정보를 생성하는, 가상 실행 환경에서의 라이선스 관리를 위한 시스템.3. The method of claim 2,
The license management server,
Wherein the virtual machine identification information and the host identification information are listed for each license and the statistical information is generated by counting usage licenses in the case of a bulk license.
상기 통계 정보는,
상기 가상 머신에 설치된 라이선스 개수, 라이선스의 타임 아웃 여부 및 라이선스가 설치된 호스트에 관한 정보를 포함하는, 가상 실행 환경에서의 라이선스 관리를 위한 시스템.5. The method of claim 4,
The statistical information,
A number of licenses installed in the virtual machine, a time-out of a license, and a host on which a license is installed, for managing licenses in a virtual execution environment.
상기 라이선스 관리 서버는,
상기 수신된 라이선스 관리 정보에 상기 가상 머신을 식별하기 위한 UUID(Universally unique identifier)가 포함된 경우, 상기 UUID와 관리 중인 가상 머신 UUID를 비교하여 상기 가상 머신의 유효성을 판단하는, 가상 실행 환경에서의 라이선스 관리를 위한 시스템.The method according to claim 1,
The license management server,
Wherein when the received license management information includes a universally unique identifier (UUID) for identifying the virtual machine, the validity of the virtual machine is determined by comparing the UUID with a managed virtual machine UUID System for license management.
상기 라이선스 제어 모듈은,
상기 라이선스 제어 명령을 수신한 경우, 상기 라이선스 제어 명령을 기반으로 하는 제어 정보를 출력하는 사용자 인터페이스를 더 포함하는, 가상 실행 환경에서의 라이선스 관리를 위한 시스템.The method according to claim 1,
The license control module,
Further comprising a user interface for outputting control information based on the license control command when the license control command is received.
상기 라이선스 관리 서버는,
상기 가상 머신에 설치된 라이선스의 개수가 초과된 경우, 라이선스 사용을 제한하는 상기 라이선스 제어 명령을 생성하고,
라이선스가 불법 라이선스인 경우, 라이선스를 삭제하는 상기 라이선스 제어명령을 생성하며,
라이선스의 유효 기간이 지난 경우, 라이선스의 사용을 제한하는 상기 라이선스 제어 명령을 생성하는, 가상 실행 환경에서의 라이선스 관리를 위한 시스템.6. The method of claim 5,
The license management server,
Generating the license control command limiting the use of the license when the number of licenses installed in the virtual machine is exceeded,
If the license is an illegal license, generate the license control command to delete the license,
And generates the license control command that restricts the use of the license when the license is past its expiration date.
상기 가상 머신에 탑재되어 상기 가상 머신에 대한 라이선스 이미지를 관리하고 라이선스 관리 정보를 생성하는 라이선스 제어 모듈이, 라이선스 관리 서버로 상기 라이선스 관리 정보를 전송하는 단계;
상기 라이선스 관리 서버가 상기 수신한 라이선스 관리 정보에 대한 통계 정보를 생성하는 단계;
상기 라이선스 관리 서버가 상기 통계 정보를 기반으로 상기 가상 머신에 대한 라이선스 이미지의 유효성 및 상기 가상 머신의 유효성을 판단하는 단계; 및
상기 가상 머신에 대한 라이선스 이미지의 유효성 판단 결과, 상기 라이선스 이미지가 유효한 경우 상기 라이선스 관리 서버는 상기 라이선스 관리 정보를 상기 라이선스 제어 모듈로부터 지속적으로 수신하고, 상기 라이선스 이미지가 유효하지 아니한 경우 상기 라이선스 관리 서버는 라이선스 제어 명령을 생성하여 상기 라이선스 제어 모듈에게 전달하는 단계를 포함하는, 가상 실행 환경에서의 라이선스 관리를 위한 방법.Operating at least one virtual machine operating in a virtual execution environment on a host including a processor and a memory;
A license control module that is installed in the virtual machine and manages a license image for the virtual machine and generates license management information, the license control module transmitting the license management information to the license management server;
Generating statistical information on the received license management information by the license management server;
Determining, by the license management server, the validity of the license image for the virtual machine and the validity of the virtual machine based on the statistical information; And
If the license image is valid, the license management server continuously receives the license management information from the license control module. If the license image is not valid, the license management server transmits the license management information to the license management server Generating a license control command and communicating the license control command to the license control module.
상기 라이선스 관리 정보는,
상기 가상 머신에 대한 라이선스 이미지를 식별하기 위한 라이선스 식별 정보, 라이선스가 사용되는 상기 가상 머신을 식별하기 위한 가상 머신 식별 정보 및 상기 라이선스 제어 모듈이 탑재된 호스트를 식별하기 위한 호스트 식별 정보 중에서 적어도 어느 하나의 정보를 포함하는, 가상 실행 환경에서의 라이선스 관리를 위한 방법.10. The method of claim 9,
The license management information includes:
At least one of license identification information for identifying the license image for the virtual machine, virtual machine identification information for identifying the virtual machine in which the license is used, and host identification information for identifying the host on which the license control module is mounted Wherein the license management information includes at least one of the following: < RTI ID = 0.0 > a < / RTI >
상기 라이선스 식별 정보는 라이선스 ID를 포함하고, 상기 가상 머신 식별 정보는 UUID(Universally unique identifier)를 포함하며, 상기 호스트 식별 정보는 실제 사용하는 IP주소 또는 지역 정보를 포함하는 호스트 IP 주소를 포함하는, 가상 실행 환경에서의 라이선스 관리를 위한 방법.11. The method of claim 10,
Wherein the license identification information includes a license ID, the virtual machine identification information includes a universally unique identifier (UUID), and the host identification information includes a host IP address including an actual IP address or area information, A method for managing licenses in a virtual execution environment.
상기 통계 정보를 생성하는 단계는,
상기 라이선스 관리 서버가 라이선스 별로 상기 가상 머신 식별 정보와 상기 호스트 식별 정보를 리스팅하고, 벌크 라이선스의 경우 사용 라이선스를 카운팅하여 상기 통계 정보를 생성하는 단계를 포함하는, 가상 실행 환경에서의 라이선스 관리를 위한 방법.10. The method of claim 9,
Wherein the step of generating the statistical information comprises:
Wherein the license management server registers the virtual machine identification information and the host identification information for each license and generates the statistical information by counting usage licenses in case of a bulk license. Way.
상기 통계 정보는,
상기 가상 머신에 설치된 라이선스 개수, 라이선스의 타임 아웃 여부 및 라이선스가 설치된 호스트에 관한 정보를 포함하는, 가상 실행 환경에서의 라이선스 관리를 위한 방법.13. The method of claim 12,
The statistical information,
The number of licenses installed in the virtual machine, the timeout of the license, and the host on which the license is installed.
상기 가상 머신의 유효성 판단은,
상기 라이선스 관리 서버에 수신된 라이선스 관리 정보에 상기 가상 머신을 식별하기 위한 UUID(Universally unique identifier)가 포함된 경우, 상기 UUID와 상기 라이선스 관리 서버가 관리 중인 가상 머신 UUID를 비교하여 판단하는, 가상 실행 환경에서의 라이선스 관리를 위한 방법. 10. The method of claim 9,
The validity determination of the virtual machine may include:
Wherein when the license management information received by the license management server includes a universally unique identifier (UUID) for identifying the virtual machine, the UUID is compared with a virtual machine UUID managed by the license management server, A method for managing licenses in an environment.
상기 라이선스 관리 서버가 상기 라이선스 제어 명령을 생성하여 상기 라이선스 제어 모듈에게 전달하는 단계 이후에,
상기 라이선스 제어 모듈이 상기 수신된 라이선스 제어 명령을 기반으로 하는 제어 정보를 사용자 인터페이스를 통해 출력하는 단계를 더 포함하는, 가상 실행 환경에서의 라이선스 관리를 위한 방법. 10. The method of claim 9,
After the license management server generates the license control command and transmits the license control command to the license control module,
Further comprising: the license control module outputting control information based on the received license control command through a user interface.
상기 라이선스 관리 서버가 상기 라이선스 제어 명령을 생성하여 상기 라이선스 제어 모듈에게 전달하는 단계는,
상기 가상 머신에 설치된 라이선스의 개수가 초과된 경우, 라이선스 사용을 제한하는 상기 라이선스 제어 명령을 생성하고,
라이선스가 불법 라이선스인 경우, 라이선스를 삭제하는 상기 라이선스 제어명령을 생성하며,
라이선스의 유효 기간이 지난 경우, 라이선스의 사용을 제한하는 상기 라이선스 제어 명령을 생성하는 단계를 포함하는, 가상 실행 환경에서의 라이선스 관리를 위한 방법.14. The method of claim 13,
Wherein the generating of the license control command by the license management server and transferring the license control command to the license control module comprises:
Generating the license control command limiting the use of the license when the number of licenses installed in the virtual machine is exceeded,
If the license is an illegal license, generate the license control command to delete the license,
And generating the license control command that restricts the use of the license if the license has expired.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130012312A KR101499667B1 (en) | 2013-02-04 | 2013-02-04 | System and method for license management in virtual execution environment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130012312A KR101499667B1 (en) | 2013-02-04 | 2013-02-04 | System and method for license management in virtual execution environment |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140099647A KR20140099647A (en) | 2014-08-13 |
KR101499667B1 true KR101499667B1 (en) | 2015-03-06 |
Family
ID=51745836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130012312A KR101499667B1 (en) | 2013-02-04 | 2013-02-04 | System and method for license management in virtual execution environment |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101499667B1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102539560B1 (en) * | 2022-12-15 | 2023-06-02 | 주식회사 클라우다이크 | Method for managing license of third-party application and cloud server for executing the same |
CN117290822B (en) * | 2023-11-23 | 2024-03-08 | 深圳华杰共创科技有限公司 | License control method of cloud database software system and related equipment |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012208752A (en) * | 2011-03-30 | 2012-10-25 | Nec Corp | License management device, license management method, and program |
-
2013
- 2013-02-04 KR KR1020130012312A patent/KR101499667B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012208752A (en) * | 2011-03-30 | 2012-10-25 | Nec Corp | License management device, license management method, and program |
Also Published As
Publication number | Publication date |
---|---|
KR20140099647A (en) | 2014-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101842784B (en) | Hardware device interface supporting transaction authentication | |
TWI526931B (en) | Inherited product activation for virtual machines | |
US8671405B2 (en) | Virtual machine crash file generation techniques | |
US10540499B2 (en) | Method for monitoring the security of a virtual machine in a cloud computing architecture | |
TWI620126B (en) | Method and computer-readable storage medium for expansion of services for a virtual data center guest computer system | |
US9298484B2 (en) | Encapsulation of an application for virtualization | |
US20100306763A1 (en) | Virtual Serial Concentrator for Virtual Machine Out-of-Band Management | |
EP3070604B1 (en) | Method and apparatus for accessing physical resources | |
Kuperman et al. | Paravirtual remote i/o | |
US8793688B1 (en) | Systems and methods for double hulled virtualization operations | |
TWI734379B (en) | Computer implement method, computer system and computer program product starting a secure guest using an initial program load mechanism | |
CN105069383A (en) | Virtual desktop USB (Universal Serial Bus) storage peripheral management and control method and system | |
US10353727B2 (en) | Extending trusted hypervisor functions with existing device drivers | |
US20100100892A1 (en) | Managing hosted virtualized operating system environments | |
US20150052081A1 (en) | Capacity Upgrade on Demand Automation | |
US20080155092A1 (en) | Method, apparatus and system for securely metering resource usage on a computing platform | |
CN112306650A (en) | Virtual machine live migration method and communication equipment | |
KR101498965B1 (en) | A system and method for isolating the internet and the intranet by using the virtual machines | |
WO2013145434A1 (en) | Network system and method for controlling same | |
Chang et al. | On construction and performance evaluation of a virtual desktop infrastructure with GPU accelerated | |
KR101499667B1 (en) | System and method for license management in virtual execution environment | |
US8024797B2 (en) | Method, apparatus and system for performing access control and intrusion detection on encrypted data | |
US9088569B2 (en) | Managing access to a shared resource using client access credentials | |
US9411980B2 (en) | Preventing modifications to code or data based on the states of a master latch and one or more hardware latches in a hosting architecture | |
Mvondo et al. | Closer: A new design principle for the privileged virtual machine os |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20200302 Year of fee payment: 6 |