KR101849708B1 - 사용자 단말의 저장 장치를 대체하는 서비스를 제공하는 서버 장치 및 그 방법 - Google Patents

사용자 단말의 저장 장치를 대체하는 서비스를 제공하는 서버 장치 및 그 방법 Download PDF

Info

Publication number
KR101849708B1
KR101849708B1 KR1020140025173A KR20140025173A KR101849708B1 KR 101849708 B1 KR101849708 B1 KR 101849708B1 KR 1020140025173 A KR1020140025173 A KR 1020140025173A KR 20140025173 A KR20140025173 A KR 20140025173A KR 101849708 B1 KR101849708 B1 KR 101849708B1
Authority
KR
South Korea
Prior art keywords
image
user terminal
boot
master
derived
Prior art date
Application number
KR1020140025173A
Other languages
English (en)
Other versions
KR20140051191A (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 KR1020140025173A priority Critical patent/KR101849708B1/ko
Publication of KR20140051191A publication Critical patent/KR20140051191A/ko
Application granted granted Critical
Publication of KR101849708B1 publication Critical patent/KR101849708B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4416Network booting; Remote initial program loading [RIPL]
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

물리적 저장 장치는 제거되고 연산 장치와 주변기기만이 설치되는 사용자 단말의 상기 물리적 저장 장치를 가상으로 대체하여 주면서 고속의 데이터 입출력을 가능하게 하는 서버 장치 및 그 서버 장치에서의 저장 장치의 대체 서비스 방법에 관한 것으로, 본 발명에 따른 서버 장치는 운영체제 및 응용 프로그램이 설치된 파티션에 대한 마스터 이미지와 그 마스터 이미지로부터 생성된 파생 이미지 및 부팅 이미지를 저장하는 저장 수단; 네트워크를 통해 접속하는 상기 사용자 단말에 IP 주소를 할당하고 상기 부팅 이미지를 상기 사용자 단말에 전송하는 원격 부팅 모듈; 상기 마스터 이미지로부터 상기 사용자 단말에 대응하는 상기 파생 이미지를 생성하는 이미지 생성 모듈; 상기 마스터 이미지 또는 상기 파생 이미지를 상기 네트워크를 통해 상기 사용자 단말로 전송하는 이미지 전송 모듈; 및 상기 마스터 이미지 또는 상기 파생 이미지의 상기 사용자 단말에서의 작업 결과를 상기 사용자 단말로부터 수신하여 상기 저장 수단에 저장된 상기 마스터 이미지 또는 상기 파생 이미지에 반영하여 저장하는 이미지 관리 모듈;을 포함한다.

Description

사용자 단말의 저장 장치를 대체하는 서비스를 제공하는 서버 장치 및 그 방법{SERVER APPARATUS AND METHOD FOR PROVIDING STORAGE REPLACEMENT SERVICE OF USER EQUIPMENT}
본 발명은 원격 저장 장치 기술에 관한 것으로, 보다 구체적으로 연산 장치는 구비하되 하드 디스크와 같은 저장 장치는 제거된 복수의 컴퓨터 환경에서 상기 복수의 컴퓨터들에 대해 원격 저장 장치 서비스를 제공하는 서버 장치 및 그 방법에 관한 것이다.
컴퓨터 기술의 발전에 따라 컴퓨터의 성능은 우수해지는 반면 가격은 저렴해져 컴퓨터의 보급이 급속도로 증가하고 있다. 대부분의 가정에는 적어도 한 대 이상의 컴퓨터를 구비하고 있고 기업이나 관공서에서는 대부분의 업무를 컴퓨터를 이용하여 처리하고 있다. 여기에 더해 컴퓨터 게임의 인기로 지역 곳곳에는 컴퓨터 게임방이 성업하고 있다.
그런데, 컴퓨터 기술이 발전하였지만, 노트북 컴퓨터가 아닌 데스크-탑 컴퓨터는 아직 소형화되지 못하고 있고 오히려 모니터 등은 그 크기가 대형화되고 있어, 데스크-탑 컴퓨터를 이용하는 기업이나 학교 또는 관공서 등에서는 사무 공간이나 학습 공간이 상기 데스트-탑 컴퓨터로 인하여 매우 협소해지고 있다. 아울러, 다수의 컴퓨터 본체에서 발생하는 열, 소음, 전자파 등은 사무 공간이나 학습 공간을 더욱 열악하게 하게 있고, 또한 다수의 컴퓨터를 보유함에 따라 그 유지 보수에 많은 어려움을 겪고 있는 실정이다.
이에 따라 컴퓨터의 물리적 디스크를 중앙에 집중하고 사용자의 개인 공간에는 물리적 디스크는 없고 연산 장치만이 구비되며 모니터, 키보드와 같은 컴퓨터 주변기기만을 두어 다수의 컴퓨터의 유지 보수를 용이하게 하고 고속의 데이터 입출력을 가능하게 하는 시스템이 요구된다. 특히, 이러한 시스템은 다수의 컴퓨터를 운영 및 관리하는 PC방에서 요구되고 있다. 즉, PC방에서 일반적으로 사용자 컴퓨터에 사용되는 하드 디스크(HDD)는 액세스 타임(Access Time)이 길어 다른 컴퓨터 구성요소에 비해 성능 저하의 큰 부분을 차지하고 있고, 각 사용자 컴퓨터의 하드 디스크, 즉 저장 장치에서 인위적인 변화가 생겼을 경우 파악이 매우 어렵고 대처가 쉽지 않다. 또한 사용자 컴퓨터에서 운영체제를 저장하는 시스템 파티션의 경우 상용화된 백업 및 복구 솔루션으로 어느 정도 보호가 가능하지만, 루트킷 바이러스와 같이 저장 장치의 부팅 영역(MBR)을 훼손하는 경우 기존의 복구 솔루션은 무력화된다. 그리고 게임 프로그램을 저장하는 파티션의 경우 백업 및 복구 복수 솔루션으로 보호하기가 현실적으로 어렵고, 통상 PC방에서 제공하는 게임은 60~70여 종류인데, 이러한 다수의 게임 프로그램을 업데이트하고 전체 사용자 컴퓨터에 적용시키는 것은 많은 노동력을 필요로 하며 외부 인터넷 회선 용량의 한계로 많은 시간이 소요되는 문제점이 있다.
국내 공개특허 2001-0083492호(2001.09.01)
본 발명은 상기와 같은 문제점을 해결하기 위해 제안된 것으로, 물리적 저장 장치는 제거되고 연산 장치와 주변기기만이 설치되는 사용자 단말의 상기 물리적 저장 장치를 가상으로 대체하여 주면서 고속의 데이터 입출력을 가능하게 하는 서버 장치 및 그 서버 장치에서의 저장 장치의 대체 서비스 방법을 제공하는데 그 목적이 있다.
본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.
상기 목적을 달성하기 위한 본 발명의 일 측면에 따른, 저장 장치는 없고 연산 장치를 구비하는 사용자 단말에 대해 상기 저장 장치의 대체 서비스를 제공하는 서버 장치는, 운영체제 및 응용 프로그램이 설치된 파티션에 대한 마스터 이미지와 그 마스터 이미지로부터 생성된 파생 이미지 및 부팅 이미지를 저장하는 저장 수단; 네트워크를 통해 접속하는 상기 사용자 단말에 IP 주소를 할당하고 상기 부팅 이미지를 상기 사용자 단말에 전송하는 원격 부팅 모듈; 상기 마스터 이미지로부터 상기 사용자 단말에 대응하는 상기 파생 이미지를 생성하는 이미지 생성 모듈; 상기 마스터 이미지 또는 상기 파생 이미지를 상기 네트워크를 통해 상기 사용자 단말로 전송하는 이미지 전송 모듈; 및 상기 마스터 이미지 또는 상기 파생 이미지의 상기 사용자 단말에서의 작업 결과를 상기 사용자 단말로부터 수신하여 상기 저장 수단에 저장된 상기 마스터 이미지 또는 상기 파생 이미지에 반영하여 저장하는 이미지 관리 모듈;을 포함한다.
상기 이미지 생성 모듈은, 상기 마스터 이미지로부터 임시 이미지를 생성하고 그 임시 이미지로부터 상기 파생 이미지를 생성할 수 있다.
상기 이미지 생성 모듈은, 상기 마스터 이미지를 전송받은 상기 사용자 단말로부터 상기 마스터 이미지를 이용한 작업 완료 신호가 수신되면, 기존의 임시 이미지를 삭제하고 작업 완료된 마스터 이미지로부터 임시 이미지를 새로 생성할 수 있다.
상기 서버 장치는, 특정 조건에서 상기 파생 이미지를 삭제하고 신규 파생 이미지를 생성하도록 상기 이미지 생성 모듈을 제어하는 파생 이미지 갱신 모듈;을 더 포함할 수 있다.
상기 특정 조건은, 사용자 단말이 재부팅하는 경우, 또는 특정 기간 내 사용자 단말이 재부팅하는 경우 중 어느 하나일 수 있다. ,
상기 마스터 이미지는, 운영체제 파티션 이미지와 게임 프로그램 파티션 이미지로 구분될 수 있다.
상기 마스터 이미지는, 사용자 단말이 서버에 등록된 단말인지 여부를 검출하여 미등록 사용자 단말의 정보를 서버에 등록하는 단말 등록 모듈을 포함할 수 있다.
상기 서버 장치는, 해당 서버 장치의 동작 상태를 모니터링하여 상기 서버 장치의 장애 발생시, 데이터를 실시간 동기화하는 백업 서버 장치로 상기 사용자 단말을 연결 전환시키는 서버 관리 모듈;을 더 포함할 수 있다.
상기 목적을 달성하기 위한 본 발명의 다른 측면에 따른, 저장 장치는 없고 연산 장치를 구비하는 사용자 단말과 네트워크로 연결된 서버에 의한 상기 저장 장치의 대체 서비스 방법은 운영체제 및 응용 프로그램이 설치된 파티션에 대한 마스터 이미지와 부팅 이미지를 그리고 상기 마스터 이미지로부터 파생 이미지를 생성하여 상기 저장 수단에 저장하는 단계; 네트워크를 통해 접속하는 상기 사용자 단말에 IP 주소를 할당하고 상기 부팅 이미지를 상기 사용자 단말에 전송하는 단계; 상기 사용자 단말로부터 수신되는 모드 선택 정보에 따라 상기 마스터 이미지 또는 상기 파생 이미지를 상기 네트워크를 통해 상기 사용자 단말로 전송하는 단계; 및 상기 마스터 이미지 또는 상기 파생 이미지의 상기 사용자 단말에서의 작업 결과를 상기 사용자 단말로부터 수신하여 상기 저장 수단에 저장된 상기 마스터 이미지 또는 상기 파생 이미지에 반영하여 저장하는 단계;를 포함한다.
본 발명은 복수의 사용자 단말 환경에서 복수의 사용자 단말 각각의 파편화를 방지하고 사용자 단말을 인위적인 변조로부터 보호할 수 있다.
또한, 본 발명은 복수의 사용자 단말 환경에서 운영체제나 프로그램의 업데이트 발생시 한 번의 수정으로 모든 사용자 단말에 업데이트를 모두 반영할 수 있어 관리의 편의성을 제공한다.
또한 본 발명은 사용자 단말에 물리적 하드 디스크를 직접 설치하여 운영할 때보다 더 빠른 액세스 타임을 제공한다.
도 1은 본 발명의 일 실시예에 따른 저장 장치 대체 시스템을 나타낸 도면이다.
도 2는 도 1의 시스템에서 관리자 모드의 동작 과정을 설명하는 신호 흐름도이다.
도 3은 도 1의 시스템에서 일반 사용자 모드의 동작 과정을 설명하는 신호 흐름도이다.
도 4는 본 발명의 다른 실시예에 따른 저장 장치 대체 시스템을 나타낸 도면이다.
도 5는 도 4의 시스템에서 일반 사용자 모드의 동작 과정을 설명하는 신호 흐름도이다.
도 6은 도 1의 시스템에서 미등록 사용자 단말을 등록 처리하는 과정을 설명하는 신호 흐름도이다.
도 7은 본 발명의 또 다른 실시예에 따른 저장 장치 대체 시스템을 나타낸 도면이다.
도 8은 본 발명의 또 다른 실시예에 따른 저장 장치 대체 시스템을 나타낸 도면이다.
도 9는 본 발명의 또 다른 실시예에 따른 저장 장치 대체 시스템의 대용량 저장 장치의 구성을 나타낸 도면이다.
상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일 실시예를 상세히 설명하기로 한다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "…부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
도 1은 본 발명의 일 실시예에 따른 저장 장치 대체 시스템을 나타낸 도면으로, 도 1을 참조하면, 본 실시예에 따른 시스템은 서버(110), 복수의 사용자 단말(130) 및 상기 서버(110)와 상기 복수의 사용자 단말(130)을 연결하는 네트워크(150)를 포함한다.
사용자 단말(130)은 물리적 하드 디스크가 없는 연산 장치로서, 중앙처리장치(CPU), 그래픽 컨트롤러 및 입력/출력(I/O) 장치를 포함하며, 입력/출력(I/O) 장치는 시리얼 포트 컨트롤러, 패러럴 포트 컨트롤러, USB 컨트롤러, 키보드 및 마우스를 포함할 수 있으나 이에 한정되는 것은 아니다. CPU는 DRAM(dynamic random access memory)을 포함하는 시스템 메모리에 연결되며, PROM(programmable read only memory) 또는 플래시 메모리와 같은 비휘발성 메모리를 포함할 수 있다.
서버(110)는 하나 이상의 하드 디스크와 같은 대용량 저장 장치를 포함하고, 물리적 하드 디스크가 없는 복수의 사용자 단말(130)에 대해 가상 디스크 드라이브를 제공하여 컴퓨팅 환경을 제공하는 장치이다. 서버(110)는 NIC, 대용량 저장 장치, CPU, 광 드라이브, 입력/출력(I/O) 장치를 포함한다. NIC는 네트워크(150)로의 인터페이스를 제공한다. 대용량 저장 장치는 하나 이상의 RAID 어레이로 구성되거나 독립적으로 동작하는 하나 이상의 하드 디스크 드라이브를 포함할 수 있다. 대안적으로, 대용량 저장 장치는 SAN(storage area network) 또는 NAS(network attached storage) 서브시스템을 사용하여 구현될 수 있다.
도 1을 참조하면, 서버(110)는 이미지 관리 모듈(111), 파생 이미지 생성 모듈(113), 이미지 전송 모듈(115) 및 원격 부팅 모듈(119)을 포함한다.
이미지 관리 모듈(111)은 관리자 단말로부터 물리적 하드 디스크에 대한 이미지, 즉 마스터 이미지를 수신하여 저장 장치에 저장하고, 저장된 마스터 이미지 그리고 파생 이미지 생성 모듈(113)에 의해 생성되어 저장 장치에 저장된 임시 이미지 및 파생 이미지를 관리한다. 여기서 상기 관리는 이미지들의 업데이트, 이미지의 변경 데이터 저장, 마스터 이미지와 파생 이미지의 연계를 통한 사용자의 입출력 관리 등을 포괄하는 의미이다.
마스터 이미지와 임시 이미지 및 파생 이미지들은 상술한 대용량 저장 장치에 저장된다. 여기서 관리자 단말은 관리자 ID/패스워드로 접속한 사용자 단말(130)일 수 있고, 또는 전용의 관리자 단말일 수 있으나, 본 실시예에서는 관리자 ID/패스워드로 접속한 사용자 단말(130)로 설명한다. 또한 상기 이미지는 스냅샷(snapshots) 또는 클론(clones) 또는 플래시 복사본(flash-copies)으로 지칭된다.
상기 마스터 이미지는 운영체제와 게임 프로그램과 같은 운영체제에서 동작하는 프로그램을 포함하는 하나의 디스크 드라이브의 이미지일 수 있고, 또는 사용자 단말(130)의 구동에 필요한 운영체제를 포함하는 시스템 파티션인 운영체제 이미지, 그리고 게임 프로그램과 같은 운영체제에 독립적인 프로그램들만을 포함하는 프로그램 파티션 이미지로 구분될 수 있다.
상기 마스터 이미지에는 미등록 사용자 단말(130)을 서버에 등록할 수 있도록 하는 단말 등록 모듈이 포함될 수 있다. 단말 등록 모듈은 사용자 단말(130)이 마스터 이미지 또는 임시 이미지로 부팅되는 경우 실행되고, 관리자로부터 사용자 단말의 번호, 이름 등의 단말 정보를 입력받아 서버의 설정 파일에 기록하는 기능을 수행한다.
운영체제 이미지와 프로그램 이미지를 구분하는 경우 사용자 단말(130)들의 사양(spec)에 따른 효율적인 운영 관리가 가능하다. 대표적으로, 본 실시예의 시스템을 PC방에 적용할 경우 PC방을 효율적으로 운영 관리할 수 있다. PC방 운영 중 필요에 의해 서로 다른 사양의 컴퓨터 그룹을 운영할 필요가 있고, 이때 사양이 다른 컴퓨터 그룹 각각에는 각 그룹의 컴퓨터 사양에 맞는 운영체제 이미지를 전송하고, 프로그램 이미지는 컴퓨터 사양에 특별히 종속되지 않으므로 하나의 프로그램 이미지를 모든 컴퓨터 그룹에 전송할 수 있다. 이때 프로그램 이미지는 하나만 구비되고 운영체제 이미지는 사양에 따라 구분된 컴퓨터 그룹의 수만큼 구비된다.
파생 이미지 생성 모듈(113)은 상기 마스터 이미지로부터 사용자 단말(130)들로 제공할 파생 이미지들을 생성한다. 구체적으로, 파생 이미지 생성 모듈(113)은 사용자 단말(130)들이 접속해 올 때 상기 마스터 이미지로부터 사용자 단말에 대응하는 파생 이미지를 생성한다. 예를 들어, 하나의 사용자 단말(130)이 접속해 오면 하나의 파생 이미지를 생성하고, N 개의 사용자 단말(130)이 접속해 오면 N 개의 파생 이미지를 생성한다. 마스터 이미지는 저장 용량을 차지하지만 그 마스터 이미지로부터 만들어지는 파생 이미지는 마스터 이미지를 참조하고 있다는 정보만 가지고 있을 뿐 서버 내에서 저장 용량을 차지하지 않고, 사용자의 작업에 의해 변경된 부분이 있을 때만 그 변경 부분의 데이터만이 서버 내에 기록된다. 따라서 용량 증대를 효율적으로 방지할 수 있다.
사용자 단말(130)들에 제공되는 파생 이미지가 마스터 이미지로부터 직접 파생되어 생성될 경우, 마스터 이미지에 대한 관리자의 작업(예컨대, 파일 삭제/저장/수정, 프로그램 설치/삭제 등)이 완료되지 않은 상태에서 사용자 단말(130)이 접속하는 경우 작업이 완료되지 않은 마스터 이미지로부터 파생 이미지가 생성되어 해당 사용자 단말(130)로 전송된다. 따라서 파생 이미지는 불완전한 상태가 될 수 있으므로, 다른 실시 형태로서, 파생 이미지 생성 모듈(113)은 마스터 이미지로부터 임시 이미지를 생성한 후 그 임시 이미지로부터 파생 이미지를 생성하는 것이 바람직하다.
이때, 파생 이미지 생성 모듈(113)은 마스터 이미지에 대한 관리자의 작업이 완료되면, 즉 관리자로부터 업데이트 완료 입력이 수신되면, 기존 임시 이미지는 삭제하고, 업데이트 완료된 마스터 이미지로부터 임시 이미지를 새로 만들어 사용자 단말(130)에 제공할 파생 이미지를 생성하는 것이 바람직하다. 이와 같은 동작에 의해, 예를 들어, 마스터 이미지의 업데이트 전에 만들어진 파생 이미지를 이용하는 사용자 단말(130)이 마스터 이미지의 업데이트 후에 재부팅하는 경우, 해당 사용자 단말(130)에는 새로 만들어진 임시 이미지로부터 파생된 파생 이미지가 제공되도록 하여, 사용자는 업데이트된 환경에서 컴퓨팅 기능을 이용할 수 있다.
이미지 전송 모듈(115)은 마스터 이미지, 임시 이미지 및 파생 이미지를 대응하는 사용자 단말(130)로 전송한다.
원격 부팅 모듈(119)은 DHCP(Dynamic Host Configuration Protocol) 기능과 TFTP(Trivial File Transfer Protocol) 기능을 구비하여 사용자 단말(130)이 부팅을 시도하는 경우 DHCP 기능을 통해 설정 파일 및 사용자 단말(130)의 MAC 주소를 이용하여 사용자 단말(130)로 IP 주소를 할당하고 TFTP 기능을 통해 부팅 이미지를 사용자 단말(130)로 전송한다.
설정 파일은 예컨대 dhcpd.conf 파일일 수 있고, 설정 파일에 기록된 PC 8번에 관한 예는 다음과 같다.
host PC8 {
hardware ethernet 10:BF:48:7B:6A:A4;
fixed-address 115.92.49.8;
option host-name "PC8";
site-option-space "pxelinux";
option pxelinux.configfile "/PC8/default";
option pxelinux.pathprefix "/pxelinux/";
if substring(option vendor-class-identifier, 0, 9) = "PXEClient"{
filename "gpxelinux.0";
}
}
여기서, 상기 host PC8 는 PC8번에 대한 설정을 시작한다는 의미이고, hardware ethernet 10:BF:48:7B:6A:A4는 PC8번의 Mac 주소이며, fixed-address 115.92.49.8는 PC8에 할당할 IP 주소이고, option host-name "PC8"은 PC8에 할당할 컴퓨터 이름이며, site-option-space "pxelinux"은 부팅 모듈에 대한 옵션에 관한 부분을 의미하고, option pxelinux.configfile "/PC8/default"은 부팅 모듈이 불러올 PC8번에 관한 부팅 이미지의 위치를 의미하며, option pxelinux.pathprefix "/pxelinux/"는 부팅 이미지가 들어있는 폴더의 위치이고, if substring(option vendor-class-identifier, 0, 9) = "PXEClient" {filename "gpxelinux.0"은 PXE 부팅으로 IP가 할당될시에 부팅 이미지의 전송을 의미한다.
원격 부팅 모듈(119)은 사용자 단말(130)이 부팅을 시도할 때 설정 파일에 사용자 단말(130)의 MAC 주소가 등록되어 있지 않은 경우, 즉 사용자 단말(130)이 미등록 상태의 단말인 경우 임시 IP 주소를 할당한다. 또한 원격 부팅 모듈(119)은 미등록 상태의 사용자 단말(130)로 사용자 단말의 등록을 위한 입력창을 팝업시켜 사용자 단말의 정보를 등록하도록 하고 이로써 입력되는 사용자 단말의 PC 번호, 컴퓨터 이름 등을 입력받아 상기 설정 파일에 저장하고, 등록할 IP 주소도 상기 설정 파일에 할당할 수 있다.
여기서 부팅 이미지는 사용자 단말(130)이 어떤 파생 이미지를 수신하여야 하는지에 관한 정보, 그리고 관리자 부팅/일반 사용자 부팅을 선택할 수 있는 메뉴 등이 포함된다. 그리고 부팅 이미지는 사용자 단말(130)의 개수만큼 각 사용자 단말(130)에 대응하여 서버(110)에 저장될 수 있고 또는 하나의 부팅 이미지만 저장되어 이용될 수 있다. .
원격 부팅 모듈(119)은 관리자 부팅시 ID/비밀번호를 사용자 단말로부터 수신하면 인증을 수행하고 인증에 성공할 경우 상기 이미지 전송 모듈(115)로 마스터 이미지 또는 임시 이미지의 전송을 요청하여 부팅을 성공시키고, 일반 사용자 부팅시 ID/비밀번호의 수신없이 상기 이미지 전송 모듈(115)로 파생 이미지의 전송을 요청하여 부팅을 성공시킨다.
도 2는 도 1의 시스템에서 관리자 모드의 동작 과정을 설명하는 신호 흐름도이다.
도 2를 참조하면, 관리자는 사용자 단말(130)에 전원을 인가한다(S201). 이에 따라 사용자 단말(130)은 메인보드에 설정된 PXE(Pre-boot eXecution Environment) 부팅 순서에 따라 서버(110)로 MAC 주소를 전송하고 서버(110)는 상기 MAC 주소를 이용하여 설정 파일에서 상기 사용자 단말(130)에 할당할 IP 주소를 검색하여 그 검색된 IP 주소를 상기 사용자 단말(130)에 할당한다(S203).
IP 주소를 할당한 후 서버(110)는 상기 사용자 단말(130)로 부팅 이미지를 전송한다(S205). 여기서 부팅 이미지는 사용자 단말(130)이 어떤 파생 이미지를 수신하여야 하는지에 관한 정보, 그리고 관리자 부팅/일반 사용자 부팅을 선택할 수 있는 메뉴 등이 포함된다. 바람직하게, 서버(110)는 사용자 단말(130)들에 대응하는 복수의 부팅 이미지를 저장하고, 이 중 하나를 사용자 단말(130)의 MAC 주소를 이용하여 검색한 후 사용자 단말(130)에 전송할 수 있다.
부팅 이미지를 수신한 사용자 단말(130)은 상기 부팅 이미지를 표시하여 관리자로부터 관리자 부팅에 관한 입력을 수신한다(S207). 이에 따라 사용자 단말(130)은 ID와 패스워드를 입력할 수 있는 입력창을 출력하고 그 입력창을 통해 ID와 패스워드를 입력받아 서버(110)로 전송한다(S209).
ID와 패스워드를 수신한 서버(110)는 ID와 패스워드를 이용하여 인증을 수행하고 인증에 성공한 경우 마스터 이미지를 사용자 단말(130)로 전송한다(S211). 마스터 이미지를 수신한 사용자 단말(130)은 그 수신된 마스터 이미지를 이용하여 부팅을 한다(S213).
부팅이 되면 사용자 단말(130)에는 상기 마스터 이미지에 대한 논리 드라이브가 생성되고 관리자는 그 마스터 이미지 내에서 운영체제의 환경 설정을 하거나, 게임 프로그램 설치, 오피스 프로그램의 설치, 또는 기존 설치되어 있던 프로그램의 삭제 등의 작업을 수행한다(S215). 이러한 작업 결과는 서버(110)로 전송되어 서버 내의 마스터 이미지에 반영이 된다(S217, S219).
이후 관리자가 작업을 완료하게 되면(S221), 서버(110)는 기존 마스터 이미지, 즉 관리자의 작업 결과가 반영되지 않은 마스터 이미지로부터 만들어진 임시 이미지를 삭제하고, 관리자의 작업 결과가 반영된 마스터 이미지로부터 새로운 임시 이미지를 생성한다(S223). 따라서, 이후에 서버(110)에 접속하는 사용자 단말(130)에는 관리자의 작업 결과가 반영된 임시 이미지로부터 파생되는 파생 이미지가 전송된다.
도 3은 도 1의 시스템에서 일반 사용자 모드의 동작 과정을 설명하는 신호 흐름도이다.
도 2를 참조하여 설명한 실시예의 단계 S207에서 부팅 이미지를 수신한 사용자 단말(130)은, 일반 사용자 부팅에 관한 입력을 수신하면, 일반 사용자 부팅 요청을 서버(110)로 전송한다(S301). 이때 일반 사용자 부팅 요청에는 사용자 단말(130)이 수신하여야 할 파생 이미지의 정보가 포함될 수 있다.
일반 사용자 부팅 요청을 수신한 서버(110)는 마스터 이미지로부터 생성된 임시 이미지에서 파생된 복수의 파생 이미지 중 사용자 단말(130)에 대응하는 파생 이미지를 검색한다(S303).
파생 이미지를 검색한 서버(110)는 그 검색한 파생 이미지를 사용자 단말(130)로 전송하고(S305), 파생 이미지를 수신한 사용자 단말(130)은 그 파생 이미지로 부팅을 한다(S307). 부팅이 되면 사용자 단말(130)에는 상기 파생 이미지에 대한 논리 드라이브가 생성되고 사용자는 그 파생 이미지 내에서 운영체제의 환경 설정을 하거나, 게임 프로그램 또는 오피스 프로그램을 구동하여 이용하며, 또한 각종 프로그램의 설치 및 삭제 등의 작업을 수행한다(S309). 이러한 작업 결과는 사용자 단말(130)로부터 서버(110)로 전송되고, 서버(110)는 그 수신되는 작업 결과를 해당 파생 이미지에 반영한다(S311, S313).
사용자가 컴퓨팅 작업을 완료하고 종료하기를 선택하는 경우, 이에 따른 종료 신호는 사용자 단말(130)로부터 서버(110)로 전송된다(S315). 서버(110)는 사용자의 컴퓨팅 작업이 반영된 해당 파생 이미지를 삭제하지 않고 그대로 저장한다(S317). 이에 따라 동일한 사용자가 사용자 단말(130)에 다시 전원을 인가하여 재부팅하는 경우에도 이전에 처리하였던 모든 작업 결과가 반영되어 있는 파생 이미지로 재부팅이 되므로 작업의 연속성을 유지할 수 있다.
도 4는 본 발명의 다른 실시예에 따른 저장 장치 대체 시스템을 나타낸 도면으로, 도 4를 참조하면, 본 실시예에 따른 저장 장치 대체 시스템은 서버(410), 복수의 사용자 단말(130) 및 상기 서버(410)와 상기 복수의 사용자 단말(130)을 연결하는 네트워크(150)를 포함한다.
도 4에 있어서 도 1에 도시된 구성요소와 동일한 참조부호의 구성요소는 도 1을 참조하여 설명한 기능 및 동작을 모두 포함한다. 따라서 도 1에 도시된 구성요소와 동일한 참조부호의 구성요소의 동일한 기능 및 동작의 설명을 여기서는 생략한다. 도 4를 참조한 본 실시예에서 서버(410)는 파생 이미지 갱신 모듈(411)을 더 포함한다.
파생 이미지 갱신 모듈(411)은 파생 이미지 생성 모듈(113)에 의해 생성된 파생 이미지를 특정 조건에서 삭제하고 새로운 파생 이미지를 생성하도록 상기 파생 이미지 생성 모듈(113)을 제어한다. 여기서 상기 특정 조건은 사용자 단말(130)이 부팅될 때마다 기존 파생 이미지를 삭제하고 새로운 파생 이미지를 생성하는 조건일 수 있다.
사용자 단말(130)은 사용자가 바뀔 때마다 마스터 이미지의 환경과 동일한 환경을 제공할 필요가 있고, 따라서 파생 이미지 갱신 모듈(411)은 사용자 단말(130)이 부팅될 때마다 해당 사용자 단말(130)로 제공되었던 파생 이미지를 삭제하고 새로운 파생 이미지를 생성하도록 파생 이미지 생성 모듈(113)을 제어한다. 이에 따라 해당 사용자 단말(130)에는 마스터 이미지와 동일한 파생 이미지를 내려받아 깨끗한 상태의 파생 이미지를 이용하여 컴퓨팅 기능을 이용할 수 있다. 만약, 이전 사용자가 사용하던 파생 이미지가 그대로 사용자 단말(130)에 제공될 경우 불필요한 프로그램이 설치되어 있거나 새로운 사용자에 맞지 않는 환경 설정이 되어 있을 경우 새로운 사용자는 이러한 환경 설정을 바꾸어주어야 하는 번거로움이 있으며, 또는 바이러스에 의한 오작동이 발생할 수 있다.
다른 실시 형태로서, 상기 특정 조건은 특정 시간대에만 사용자 단말(130)이 부팅될 때 기존 파생 이미지를 삭제하고 새로운 파생 이미지를 생성하는 조건일 수 있다. 사용자 단말(130)에서 파생 이미지가 구동된 후 사용자에 의해 환경 설정이 변경되거나 또는 새로운 프로그램이 설치되어 재부팅이 필요하게 될 수 있다. 이와 같이 동일한 사용자가 계속 사용자 단말(120)을 이용함에도 불구하고 해당 사용자 단말(120)이 재부팅되어야 하는 경우, 전술한 바와 같이 부팅때마다 기존 파생 이미지를 삭제하고 새로운 파생 이미지를 생성하게 되는 경우, 사용자가 원하는 환경 설정이 제대로 반영되지 않고 또는 새로운 프로그램이 전혀 설치되지 않게 되고, 기존의 작업 환경도 모두 삭제된다. 따라서 특정 시간 대에만 사용자 단말(130)이 부팅될 때 기존 파생 이미지를 삭제하고 새로운 파생 이미지를 생성하도록 할 수 있다.
대표적으로, 본 시스템이 PC방에 적용될 경우, PC방 관리자들은 손님이 없는 새벽 시간대에 PC방의 PC들을 초기 상태로 되돌리기 위해 PC들을 재부팅하게 되는데, 이 새벽 시간대에 PC들이 부팅될 때만 각 PC들의 기존 파생 이미지를 삭제하고 새로운 파생 이미지를 생성하여 각 PC들로 전송하도록 할 수 있다.
도 5는 도 4의 시스템에서 일반 사용자 모드의 동작 과정을 설명하는 신호 흐름도이다.
도 5를 참조하면, 사용자는 사용자 단말(130)에 전원을 인가한다(S501). 이에 따라 사용자 단말(130)은 메인보드에 설정된 PXE 부팅 순서에 따라 서버(410)로 MAC 주소를 전송하고 서버(410)는 상기 MAC 주소를 이용하여 설정 파일에서 상기 사용자 단말(130)에 할당할 IP 주소를 검색하여 그 검색된 IP 주소를 상기 사용자 단말(130)에 할당한다(S503).
IP 주소를 할당한 후 서버(410)는 상기 사용자 단말(130)로 부팅 이미지를 전송한다(S505). 여기서 부팅 이미지는 사용자 단말(130)이 어떤 파생 이미지를 수신하여야 하는지에 관한 정보, 그리고 관리자 부팅/일반 사용자 부팅을 선택할 수 있는 메뉴 등이 포함된다. 바람직하게, 서버(410)는 사용자 단말(130)들에 대응하는 복수의 부팅 이미지를 저장하고, 이 중 하나를 사용자 단말(130)의 MAC 주소를 이용하여 검색한 후 사용자 단말(130)에 전송할 수 있다.
부팅 이미지를 수신한 사용자 단말(130)은 상기 부팅 이미지를 표시하여 사용자로부터 일반 사용자 부팅에 관한 입력을 수신하고(S507), 일반 사용자 부팅 요청을 서버(110)로 전송한다(S509). 이때 일반 사용자 부팅 요청에는 사용자 단말(130)이 수신하여야 할 파생 이미지의 정보가 포함될 수 있다.
일반 사용자 부팅 요청을 수신한 서버(410)는 마스터 이미지로부터 생성된 임시 이미지에서 파생된 복수의 파생 이미지 중 사용자 단말(130)에 대응하는 파생 이미지를 검색한다(S511).
파생 이미지를 검색한 서버(410)는 그 검색한 파생 이미지를 사용자 단말(130)로 전송하고(S513), 파생 이미지를 수신한 사용자 단말(130)은 그 파생 이미지로 부팅을 한다(S515). 부팅이 되면 사용자 단말(130)에는 상기 파생 이미지에 대한 논리 드라이브가 생성되고 사용자는 그 파생 이미지 내에서 운영체제의 환경 설정을 하거나, 게임 프로그램 또는 오피스 프로그램을 구동하여 이용하며, 또한 각종 프로그램의 설치 및 삭제 등의 작업을 수행한다(S517). 이러한 작업 결과는 사용자 단말(130)로부터 서버(410)로 전송되고, 서버(410)는 그 수신되는 작업 결과를 해당 파생 이미지에 반영한다(S519, S521).
한편, 파생 이미지를 이용하여 사용자가 작업을 하는 도중 사용자 단말(130)의 재부팅이 필요할 수 있다. 예를 들어, 사용자가 사용자 단말(130)을 재시작하거나, 또는 파생 이미지의 환경에서 신규 프로그램을 설치하여 재부팅이 필요한 경우가 발생할 수 있다. 이에 따라 사용자 단말(130)은 재부팅 요청을 서버(410)로 전송한다(S523).
재부팅 요청을 수신한 서버(410)는 현재 시간이 파생 이미지의 갱신 기간인지 확인한다(S525). 현재 시간이 갱신 기간 내인 경우, 서버(410)는 해당 사용자 단말(130)에 대응하는 기존 파생 이미지를 삭제한 후 임시 이미지로부터 신규 파생 이미지를 생성한다(S527). 그리고 서버(410)는 그 생성된 신규 파생 이미지를 사용자 단말(130)로 전송한다(S529). 사용자 단말(130)은 상기 신규 파생 이미지로 부팅을 한다. 따라서 사용자 단말(130)의 환경은 초기 상태의 환경이 된다. 예를 들어, PC방에서 다수의 손님들이 사용하였던 특정 PC를 PC방 관리자가 재부팅하는 경우, 해당 특정 PC는 손님들이 사용하기 전의 초기 상태의 환경으로 되돌아가는 것이다.
한편, 상기 단계 S525에서 확인한 결과, 현재 시간이 갱신 시간이 아닌 경우, 서버(410)는 해당 사용자 단말(130)에 대응하는 기존 파생 이미지를 다시 사용자 단말(130)로 전송한다(S531). 따라서 사용자 단말(130)은 사용자가 사용하던 기존 파생 이미지로 부팅을 하게 되고, 따라서 사용자가 설치하려는 프로그램이 설치되고, 기존에 설정해 놓은 환경들이 그대로 유지된 상태의 컴퓨팅 환경을 갖게 된다.
도 6은 도 1의 시스템에서 미등록 사용자 단말을 등록 처리하는 과정을 설명하는 신호 흐름도이다.
도 6을 참조하면, 관리자는 미등록 상태인 사용자 단말(130)에 전원을 인가한다(S601). 이에 따라 사용자 단말(130)은 메인보드에 설정된 PXE 부팅 순서에 따라 서버(110)로 MAC 주소를 전송하며 IP 주소의 할당을 요청한다(S603).
서버(110)는 상기 MAC 주소를 이용하여 설정 파일에서 상기 사용자 단말(130)에 할당할 IP 주소를 검색하는데 미등록 상태의 단말이므로 해당 사용자 단말의 MAC 주소는 설정 파일에 등록되어 있지 않은 것을 확인한다(S605). 이에 따라 서버(110)는 임시 IP 주소를 상기 사용자 단말(130)에 할당한다(S607). 그리고 서버(110)는 임시 부팅 이미지를 상기 사용자 단말(130)로 전송한다(S609). 임시 부팅 이미지는 사용자 단말(130)이 수신해야 하는 이미지의 정보로서 임시 이미지의 정보를 포함하고, 또한 관리자 부팅/일반 사용자 부팅을 선택할 수 있는 메뉴 등이 포함된다.
임시 부팅 이미지를 수신한 사용자 단말(130)은 상기 임시 부팅 이미지를 표시하여 관리자로부터 관리자 부팅에 관한 입력을 수신한다. 이에 따라 사용자 단말(130)은 ID와 패스워드를 입력할 수 있는 입력창을 출력하고 그 입력창을 통해 ID와 패스워드를 입력받아 서버(110)로 전송한다(S611). 이때 사용자 단말(130)은 임지 이미지의 전송을 요청할 수 있다.
ID와 패스워드를 수신한 서버(110)는 ID와 패스워드를 이용하여 인증을 수행하고 인증에 성공한 경우 마스터 이미지로부터 만들어진 임시 이미지를 상기 사용자 단말(130)로 전송한다(S613). 임시 이미지를 수신한 사용자 단말(130)은 그 수신된 임시 이미지로 부팅을 하고(S615), 해당 임시 이미지 내의 단말 등록 모듈이 실행된다(S617).
사용자 단말(130)에서 실행된 단말 등록 모듈은 단말 등록을 위한 인터페이스 입력창을 표시하고, 그 입력창을 통해 관리자로부터 해당 미등록 상태인 사용자 단말(130)의 번호, 이름 등의 단말 정보를 입력받고, 그 입력받은 번호, 이름 등을 포함하는 단말 정보를 서버(110)로 전송한다(S619). 여기서 단말 정보에 MAC 주소도 포함될 수 있다.
단말 정보를 수신한 서버(110)는 그 수신된 단말 정보, 구체적으로 번호, 이름 등을 설정 파일에 기록하고 또한 MAC 주소도 상기 설정 파일에 기록하며, 또한 규칙에 따라 해당 사용자 단말(130)에 대한 IP 주소도 할당하여 상기 설정 파일에 기록한다(S621). 이로써 미등록 상태의 사용자 단말(130)은 서버에 등록되고, 차후 해당 사용자 단말(130)이 일반 사용자에 의해 이용될 경우 상기 설정 파일에 기록된 정보에 따라 IP 주소가 할당되고 파생 이미지가 배분되어 실행될 수 있다.
도 7은 본 발명의 또 다른 실시예에 따른 저장 장치 대체 시스템을 나타낸 도면이다.
도 7을 참조하면, 본 실시예에 따른 저장 장치 대체 시스템은 복수의 서버(610, 630)로 구성되고, 이 중 하나의 서버는 메인 서버(610)이고 나머지 하나의 서버는 백업 서버(630)이다. 도 7에 도시된 복수의 서버(610, 630)는 도 1 또는 도 4를 참조하여 설명한 서버(110, 410)의 구성을 모두 포함하여 여기서는 해당하는 부분의 설명을 생략한다.
도 7에 도시된 바와 같이, 복수의 서버(610, 630)는 서버 관리 모듈(611)을 포함한다.
서버 관리 모듈(611)은 메인 서버(610)와 백업 서버(630)에 설치되어 서버의 동작 상태를 모니터링하고 상호 통신하며, 이미지(마스터 이미지, 임시 이미지, 파생 이미지, 부팅 이미지 등) 그리고 설정 파일을 서버 간 상호 동기화시킨다. 서버 관리 모듈(611)은 서버에 장애가 발생하는 경우 해당 장애가 발생한 서버에 연결된 사용자 단말들을 장애가 발생하지 않은 서버로 연결을 변경하도록 제어한다.
바람직하게, 메인 서버(610)는 본 발명에 따른 동작을 주로 수행하고, 메인 서버(610)에 설치된 서버 관리 모듈(611)은 메인 서버(610)의 각종 데이터를 백업 서버(630)로 전달하여 실시간 동기화를 하고, 메인 서버(610)의 부하가 증가하거나 장애가 발생시 메인 서버(610)에 연결된 사용자 단말(130)을 백업 서버(630)로 연결 전환시킨다.
도 8은 본 발명의 또 다른 실시예에 따른 저장 장치 대체 시스템을 나타낸 도면이다.
도 8에 있어서 도 7에 도시된 구성요소와 동일한 참조부호의 구성요소는 도 7을 참조하여 설명한 기능 및 동작을 모두 포함한다. 도 8에 도시된 바와 같이, 서버(610, 630)와 사용자 단말(130) 사이의 네트워크(150)에는 스위칭 허브(810)가 포함된다.
스위칭 허브(810)는 서버(610, 630)와 사용자 단말(130) 간에 데이터 전송 속도를 높이기 위한 포트 트렁킹(PORT TRUNKING, 즉 LINK AGGREGATION) 기능을 제공한다. 예를 들어, 스위칭 허브(810) 상의 2 개의 개별적인 포트들이 각각 100 Mb/s의 데이터 전송 속도를 지원하도록 구성될 경우, 포트 트렁킹 방식을 통해 2 개의 포트들을 함께 연결하여 해당 2 개의 포트들을 통해 데이터를 송/수신함으로써 서버(610, 630)와 사용자 단말(130) 간에는 1 개의 200 Mb/s 링크를 형성한다.
도 9는 본 발명의 또 다른 실시예에 따른 저장 장치 대체 시스템의 대용량 저장 장치의 구성을 나타낸 도면으로, 도 9에 도시된 바와 같이, 본 실시예에 따른 서버(110)에 포함되는 대용량 저장 장치는 일반적인 하드 디스크(910)와 고속의 데이터 입출력을 위한 SSD(Solid State Drive(Disk))(930)를 포함하여 구성된다.
상기 일반적인 하드 디스크(910)는 복수 개의 하드 디스크가 RAID 방식으로 연결된 것으로, 본 실시예에 따른 마스터 이미지, 임시 이미지, 파생 이미지를 저장하고, 상기 RAID 운영에 관한 서버 자체의 운영체제 등을 저장한다.
그런데, 본 발명에 있어서 사용자 단말(130)들은 서버(110)로부터 상기 마스터 이미지를 참조하는 파생 이미지를 전송받고, 상기 마스터 이미지는 하나인 반면 파생 이미지는 사용자 단말(130)의 개수에 대응하는 수만큼 존재하므로, 본 발명에 있어서 마스터 이미지에 접근하는 횟수는 많아지게 되고 이에 따른 응답 속도가 자연히 떨어질 수밖에 없다.
이에 따라 본 실시예에서는 사용자들에 의해 자주 사용되는 데이터의 일부를 접근 속도가 빠른 SSD(930)에 저장해 놓고 사용자 단말(130)에서 데이터 입출력이 요구될 경우 상기 SSD(930)에 저장된 데이터를 빠르게 읽어들인 후 전체 데이터가 존재하는 상기 일반적인 하드 디스크(910)에 접근하도록 한다.
즉, SSD(930)를 상기 일반적인 하드 디스크(910)의 캐시 역할로 활용한다. 따라서 서버(110)의 이미지 관리 모듈(111)은 하드 디스크(910)의 어느 데이터가 SSD(930) 내의 어느 위치에 캐싱(Caching) 되어 있는지에 관한 매핑 정보를 관리한다. 상기 매핑 정보는 매핑 테이블의 형태로 관리될 수 있으나 여기에 제한되는 것은 아니다.
본 실시예에 따르면, 고속의 데이터 입출력을 제공하는 SSD(930)를 일반적인 하드 디스크(910)의 캐시 저장소로 활용하여 자주 사용되는 데이터를 SSD(930)를 통해 입출력함으로써 수백 기가 단위의 스토리지를 운용하는 본 발명에 있어 저장 장치를 중앙 집중화하면서 스토리지의 고성능화를 꾀할 수 있다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다.
본 명세서는 많은 특징을 포함하는 반면, 그러한 특징은 본 발명의 범위 또는 특허청구범위를 제한하는 것으로 해석되어서는 아니된다. 또한, 본 명세서에서 개별적인 실시예에서 설명된 특징들은 단일 실시예에서 결합되어 구현될 수 있다. 반대로, 본 명세서에서 단일 실시예에서 설명된 다양한 특징들은 개별적으로 다양한 실시예에서 구현되거나, 적절한 부결합(subcombination)에서 구현될 수 있다.
아울러, 상술한 실시예에서 다양한 시스템 구성요소의 구분은 모든 실시예에서 그러한 구분을 요구하지 않는 것으로 이해되어야 한다. 상술한 프로그램 구성요소 및 시스템은 일반적으로 단일 소프트웨어 제품 또는 멀티플 소프트웨어 제품에 패키지로 구현될 수 있다.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.
110 : 서버 150 : 네트워크
130 : 사용자 단말 111 : 이미지 관리 모듈
113 : 파생 이미지 생성 모듈 115 : 이미지 전송 모듈
119 : 원격 부팅 모듈

Claims (4)

  1. 저장 장치는 없고 연산 장치를 구비하는 사용자 단말에 대해 상기 저장 장치의 대체 서비스를 제공하는 서버 장치에 있어서,
    운영체제 및 응용 프로그램이 설치된 파티션에 대한 마스터 이미지와 그 마스터 이미지로부터 생성된 파생 이미지 및 부팅 이미지를 저장하는 저장 수단;
    네트워크를 통해 접속하는 상기 사용자 단말에 IP 주소를 할당하고 상기 부팅 이미지를 상기 사용자 단말에 전송하는 원격 부팅 모듈;
    상기 마스터 이미지로부터 상기 사용자 단말에 대응하는 상기 파생 이미지를 생성하는 이미지 생성 모듈; 및
    상기 파생 이미지를 상기 네트워크를 통해 상기 사용자 단말로 전송하는 이미지 전송 모듈;을 포함하고,
    상기 이미지 생성 모듈은,
    상기 마스터 이미지로부터 임시 이미지를 생성하고 그 임시 이미지로부터 상기 파생 이미지를 생성하며,
    상기 마스터 이미지에 대한 작업 완료 신호가 수신되면, 기존의 임시 이미지를 삭제하고 작업 완료된 마스터 이미지로부터 임시 이미지를 새로 생성하며 그 새로 생성된 임시 이미지로부터 상기 파생 이미지를 생성하는 서버 장치.
  2. 제 1 항에 있어서,
    상기 원격 부팅 모듈은,
    상기 부팅 이미지를 통한 관리자 인증의 성공시 상기 이미지 전송 모듈로 상기 마스터 이미지의 전송을 요청하고, 상기 부팅 이미지를 통한 일반 사용자 부팅시 상기 이미지 전송 모듈로 상기 파생 이미지의 전송을 요청하며,
    상기 이미지 전송 모듈은,
    상기 원격 부팅 모듈의 요청에 따라, 상기 마스터 이미지 또는 상기 파생 이미지를 전송하는 서버 장치.
  3. 컴퓨터에,
    운영체제 및 응용 프로그램이 설치된 파티션에 대한 마스터 이미지와 그 마스터 이미지로부터 생성된 파생 이미지 및 부팅 이미지를 저장하는 단계;
    네트워크를 통해 접속하는, 저장 장치는 없고 연산 장치를 구비하는 사용자 단말에 IP 주소를 할당하고 상기 부팅 이미지를 상기 사용자 단말에 전송하는 단계;
    상기 마스터 이미지로부터 상기 사용자 단말에 대응하는 상기 파생 이미지를 생성하는 단계; 및
    상기 파생 이미지를 상기 네트워크를 통해 상기 사용자 단말로 전송하는 단계;를 실행시키고,
    상기 생성하는 단계는,
    상기 마스터 이미지로부터 임시 이미지를 생성하고 그 임시 이미지로부터 상기 파생 이미지를 생성하며,
    상기 마스터 이미지에 대한 작업 완료 신호가 수신되면, 기존의 임시 이미지를 삭제하고 작업 완료된 마스터 이미지로부터 임시 이미지를 새로 생성하며 그 새로 생성된 임시 이미지로부터 상기 파생 이미지를 생성하는 것을 실행시키기 위한, 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
  4. 제 3 항에 있어서,
    상기 전송하는 단계는,
    상기 부팅 이미지를 통한 관리자 인증의 성공시 상기 마스터 이미지를 전송하고, 상기 부팅 이미지를 통한 일반 사용자 부팅시 상기 파생 이미지를 전송하는 것을 실행시키는, 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020140025173A 2014-03-03 2014-03-03 사용자 단말의 저장 장치를 대체하는 서비스를 제공하는 서버 장치 및 그 방법 KR101849708B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140025173A KR101849708B1 (ko) 2014-03-03 2014-03-03 사용자 단말의 저장 장치를 대체하는 서비스를 제공하는 서버 장치 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140025173A KR101849708B1 (ko) 2014-03-03 2014-03-03 사용자 단말의 저장 장치를 대체하는 서비스를 제공하는 서버 장치 및 그 방법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020120105007A Division KR101436101B1 (ko) 2012-09-21 2012-09-21 사용자 단말의 저장 장치를 대체하는 서비스를 제공하는 서버 장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20140051191A KR20140051191A (ko) 2014-04-30
KR101849708B1 true KR101849708B1 (ko) 2018-04-18

Family

ID=50655954

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140025173A KR101849708B1 (ko) 2014-03-03 2014-03-03 사용자 단말의 저장 장치를 대체하는 서비스를 제공하는 서버 장치 및 그 방법

Country Status (1)

Country Link
KR (1) KR101849708B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022012800A1 (en) * 2020-07-14 2022-01-20 Graphcore Limited Hardware autoloader

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101088673B1 (ko) 2010-07-13 2011-12-01 인하대학교 산학협력단 클라이언트 단말 운영 시스템 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101088673B1 (ko) 2010-07-13 2011-12-01 인하대학교 산학협력단 클라이언트 단말 운영 시스템 및 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022012800A1 (en) * 2020-07-14 2022-01-20 Graphcore Limited Hardware autoloader

Also Published As

Publication number Publication date
KR20140051191A (ko) 2014-04-30

Similar Documents

Publication Publication Date Title
US7941470B2 (en) Synchronization and customization of a clone computer
US7043604B2 (en) Disk array system
US8015396B2 (en) Method for changing booting configuration and computer system capable of booting OS
US7725940B2 (en) Operation management system for a diskless computer
US8677111B2 (en) Booting devices using virtual storage arrays over wide-area networks
JP4750040B2 (ja) ストレージボリュームに対するクロスプラットフォームアクセスを可能にするオペレーティングシステムメタデータをエミュレートするためのシステム及び方法
US8122212B2 (en) Method and apparatus for logical volume management for virtual machine environment
JP4868605B2 (ja) ソフトウェアを少なくとも1つのクライアント・システムにインストールする方法及びそのコンピュータ・プログラム
US20050289218A1 (en) Method to enable remote storage utilization
US20030126242A1 (en) Network boot system and method using remotely-stored, client-specific boot images created from shared, base snapshot image
JP5955977B2 (ja) システム冗長化確認方法及び計算機システム
US20190129971A1 (en) Storage system and method of controlling storage system
WO2015200528A1 (en) Systems and methods for storage service automation
JP2005339215A (ja) ディスクアレイ装置およびその制御方法
JP6458146B2 (ja) 計算機及びメモリ領域管理方法
JP2009536375A (ja) 拡張可能なインターネットエンジン用のiSCSIブートドライブシステムおよび方法
JP2008535042A5 (ko)
US8566541B2 (en) Storage system storing electronic modules applied to electronic objects common to several computers, and storage control method for the same
KR101436101B1 (ko) 사용자 단말의 저장 장치를 대체하는 서비스를 제공하는 서버 장치 및 그 방법
US7506115B2 (en) Incremental provisioning of software
KR101849708B1 (ko) 사용자 단말의 저장 장치를 대체하는 서비스를 제공하는 서버 장치 및 그 방법
US20060047927A1 (en) Incremental provisioning of software
KR101544899B1 (ko) 가상화 환경 백업 시스템 및 그 방법
JP6516875B2 (ja) 統合プラットフォーム、サーバ、及び、フェイルオーバ方法
US10747567B2 (en) Cluster check services for computing clusters

Legal Events

Date Code Title Description
A107 Divisional application of patent
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant