KR102414260B1 - 네트워크 환경에서의 운영체제 자동 설치 장치 및 방법 - Google Patents

네트워크 환경에서의 운영체제 자동 설치 장치 및 방법 Download PDF

Info

Publication number
KR102414260B1
KR102414260B1 KR1020200126522A KR20200126522A KR102414260B1 KR 102414260 B1 KR102414260 B1 KR 102414260B1 KR 1020200126522 A KR1020200126522 A KR 1020200126522A KR 20200126522 A KR20200126522 A KR 20200126522A KR 102414260 B1 KR102414260 B1 KR 102414260B1
Authority
KR
South Korea
Prior art keywords
operating system
installation
target device
installation target
image file
Prior art date
Application number
KR1020200126522A
Other languages
English (en)
Other versions
KR20220043293A (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 KR1020200126522A priority Critical patent/KR102414260B1/ko
Publication of KR20220043293A publication Critical patent/KR20220043293A/ko
Application granted granted Critical
Publication of KR102414260B1 publication Critical patent/KR102414260B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4406Loading of operating system
    • 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/445Program loading or initiating
    • G06F9/44568Immediately runnable code
    • G06F9/44578Preparing or optimising for loading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services

Abstract

본 발명은 네트워크 환경에서의 설치 대상 디바이스에 운영체제를 자동 설치하기 위한 장치에 관한 것으로서, 이를 위하여 네트워크에 연결된 설치 대상 디바이스에 설치된 운영체제에 대한 설치 정보를 수집하는 정보 수집부와, 상기 수집된 설치 정보를 이용하여 상기 운영체제 맞는 무인 설치 가능한 설정 파일을 생성하고, 상기 생성한 설정 파일이 포함된 OS 이미지 파일을 생성한 후 이를 데이터베이스에 저장시키는 이미지 생성부와, 상기 설치 대상 디바이스에 대한 운영체제 설치 요청에 따라 상기 OS 이미지 파일을 제공받아 마운트 처리되도록 상기 설치 대상 디바이스를 제어하는 디바이스 제어부와, 상기 설치 대상 디바이스를 제어하여 상기 마운트 처리된 OS 이미지 파일로 부팅시켜 운영체제를 설치시키는 운영체제 설치부를 포함하는 네트워크 환경에서의 운영체제 자동 설치 장치를 제공할 수 있다.

Description

네트워크 환경에서의 운영체제 자동 설치 장치 및 방법{Method and apparatus for automatically installing operating system in an environment of network}
본 발명은 네트워크 환경에서 디바이스에 운영체제를 자동으로 설치하기 위한 장치 및 방법에 관한 것이다.
다수의 호스트들이 연결된 네트워크에서, 호스트들에 네트워크주소를 할당하고, 원격으로 운영체제를 설치하는 시스템은 DHCP서버, TFTP서버를 포함한다. DHCP서버는 DHCP(Dynamic Host Configuration Protocol)프로토콜을 사용하여 호스트들에 IP주소를 동적으로 할당하기 위한 서버로서, 호스트들의 개별적 요청에 따라 호스트들의 MAC address에 대응하여 IP주소를 부여한다. IP주소가 할당된 호스트의 사용자는 TFTP서버에 부트로더(boot-loader) 이미지를 요청하고 TFTP서버의 관리자는 사용자의 요청에 따라 부트로더 이미지를 전송한다.
부트로더 이미지를 전송받은 호스트의 사용자는 운영체제의 원격설치를 선택하여, TFTP서버로부터 운영체제의 설치파일을 전송받아 설치한다. TFTP서버는 TFTP(Trivial File Transfer Protocol)프로토콜을 사용하여, 호스트들에 원격으로 운영체제 설치파일을 제공한다.
종래에는 컴퓨터시스템의 부팅이 불가능하거나, 바이러스 또는 해킹으로부터 침해를 받아 운영체제로서의 기능을 상실하는 등의 이상이 발생하여 운영체제의 재설치가 요구될 경우, 전문적인 엔지니어가 직접방문하여 상기 이상이 발생한 컴퓨터시스템에 운영체제(OS, Operating System)와, 필요에 따라 각종 어플리케이션을 재설치하는 방법을 이용하였다.
그러나 이와 같은 방법은 많은 량의 데이터가 유실될 수 있으며, 장시간의 수리시간이 소요될 뿐만 아니라, 운영체제의 설치과정이 난해한 관계로 숙련된 엔지니어가 아닌 일반적인 사용자가 수리하는 데에는 많은 어려움이 있었다.
따라서, 일정 시간 내에 수리될 수 있는 컴퓨터는 한정되기 때문에 다수의 컴퓨터시스템에 이상이 있을 경우 대처하기 어려운 단점이 있었다.
대한민국등록특허 제10-1408033호
본 발명은 네트워크 환경을 통해 설치 대상 디바이스의 설치 정보를 수집하여 OS(Operating System) 이미지 파일을 생성한 후 이를 토대로 자동으로 설치 대상 디바이스에 운영체제를 설치할 수 있는 네트워크 환경에서의 운영체제 자동 설치 장치 및 방법을 제공한다.
또한, 본 발명은 OS 이미지 파일을 이용하여 운영체제를 설치한 후 설치 대상 디바이스의 정상 부팅 상태를 체크함으로써, 정상적으로 운영체제가 설치 대상 디바이스에 설치되었는지를 판단할 수 있는 네트워크 환경에서의 운영체제 자동 설치 장치 및 방법을 제공한다.
또한, 본 발명은 설치 대상 디바이스가 정상 부팅됨에 따라 추가 설정을 진행할 수 있는 네트워크 환경에서의 운영체제 자동 설치 장치 및 방법을 제공한다.
상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 실시예에 따른 네트워크 한경에서의 운영체제 자동 설치 장치는 네트워크에 연결된 설치 대상 디바이스에 설치될 운영체제에 대한 설치 정보를 수집하는 정보 수집부와, 상기 수집된 설치 정보를 이용하여 상기 운영체제 맞는 무인 설치 가능한 설정 파일을 생성하고, 상기 생성한 설정 파일이 포함된 OS 이미지 파일을 생성한 후 이를 데이터베이스에 저장시키는 이미지 생성부와, 상기 설치 대상 디바이스에 대한 운영체제 설치 요청에 따라 상기 OS 이미지 파일을 제공받아 마운트 처리되도록 상기 설치 대상 디바이스를 제어하는 디바이스 제어부와, 상기 설치 대상 디바이스를 제어하여 상기 마운트 처리된 OS 이미지 파일로 부팅시켜 운영체제를 설치시키는 운영체제 설치부를 포함할 수 있다.
본 발명의 실시예에 따르면, 상기 디바이스 제어부는 상기 OS 이미지 파일에 접근할 수 있는 접근 정보를 포함한 마운트 처리 요청을 상기 설치 대상 디바이스에 전송하며, 상기 설치 대상 디바이스는 상기 접근 정보를 기반으로 상기 OS 이미지 파일을 제공받은 후 이를 마운트 처리할 수 있다.
본 발명의 실시예에 따르면, 상기 운영체제 설치부는 상기 운영체제의 설치가 완료된 후 상기 설치 대상 디바이스의 정상 부팅 여부를 판단하며, 상기 정상 부팅인 경우 상기 설치 대상 디바이스의 추가 설정을 수행할 수 있다.
상기한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 실시예에 따른 네트워크 한경에서의 운영체제 자동 설치 방법은 운영체제 자동 설치 장치에서 상기 설치 대상 디바이스에 설치될 운영체제에 대한 설치 정보를 수집하는 단계와, 상기 수집된 설치 정보를 이용하여 상기 운영체제 맞는 무인 설치 가능한 설정 파일을 생성하고, 상기 생성한 설정 파일이 포함된 OS 이미지 파일을 생성하는 단계와, 상기 설치 대상 디바이스에 대한 운영체제 설치 요청에 따라 상기 설치 대상 디바이스에 OS 이미지 파일에 대한 마운트 처리를 요청하는 단계와, 상기 마운트 처리된 OS 이미지 파일로 상기 설치 대상 디바이스가 부팅되도록 상기 설치 대상 디바이스를 제어하여 운영체제를 상기 설치 대상 디바이스에 설치시키는 단계를 포함할 수 있다.
본 발명의 실시예에 따르면, 상기 마운트 처리를 요청하는 단계는 상기 OS 이미지 파일에 접근할 수 있는 접근 정보를 포함한 마운트 처리 요청을 상기 설치 대상 디바이스에 전송하는 단계와, 상기 설치 대상 디바이스에서 상기 접근 정보를 기반으로 상기 OS 이미지 파일을 제공받은 후 이를 마운트 처리하는 단계를 포함할 수 있다.
본 발명의 실시예에 따르면, 상기 자동 설치 방법은 상기 운영체제의 설치가 완료된 후 상기 설치 대상 디바이스의 정상 부팅 여부를 판단하며, 상기 정상 부팅인 경우 상기 설치 대상 디바이스의 추가 설정을 수행하는 단계를 더 포함할 수 있다.
전술한 본 발명의 실시예에 따르면, 네트워크 환경을 통해 설치 대상 디바이스의 설치 정보를 수집하여 OS(Operating System) 이미지 파일을 생성한 후 이를 토대로 자동으로 설치 대상 디바이스에 운영체제를 설치할 수 있는 네트워크 환경에서의 운영체제 자동 설치 장치 및 방법을 제공함으로써, 운영체제 설치 편의성을 도모할 수 있다.
또한, 전술한 본 발명의 실시예에 따르면, OS 이미지 파일을 이용하여 운영체제를 설치한 후 설치 대상 디바이스의 정상 부팅 상태를 체크함으로써, 정상적으로 운영체제가 설치 대상 디바이스에 설치되었는지를 판단할 수 있기 때문에 운영체제 설치에 대한 신뢰성을 확보할 수 있다.
도 1은 본 발명의 실시예에 따른 네트워크 환경에서의 운영체제 자동 설치 시스템을 전체 구성을 도시한 네트워크 구성도이다.
도 2는 본 발명의 실시예에 따른 운영체제 자동 설치 시스템에서 운영체제 자동 설치 서버의 세부 구성을 도시한 블록도이다.
도 3은 본 발명의 실시예에 따른 운영체제 설치 대상 디바이스에 운영체제를 자동으로 설치하는 과정을 도시한 흐름도이다.
이하, 도면을 참조하여 본 발명의 구체적인 실시 형태를 설명하기로 한다. 이하의 상세한 설명은 본 명세서에서 기술된 방법, 장치 및/또는 시스템에 대한 포괄적인 이해를 돕기 위해 제공된다. 그러나 이는 예시에 불과하며 본 발명은 이에 제한되지 않는다.
본 발명의 실시예들을 설명함에 있어서, 본 발명과 관련된 공지기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략하기로 한다. 그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 상세한 설명에서 사용되는 용어는 단지 본 발명의 실시예들을 기술하기 위한 것이며, 결코 제한적이어서는 안 된다. 명확하게 달리 사용되지 않는 한, 단수 형태의 표현은 복수 형태의 의미를 포함한다. 본 설명에서, "포함" 또는 "구비"와 같은 표현은 어떤 특성들, 숫자들, 단계들, 동작들, 요소들, 이들의 일부 또는 조합을 가리키기 위한 것이며, 기술된 것 이외에 하나 또는 그 이상의 다른 특성, 숫자, 단계, 동작, 요소, 이들의 일부 또는 조합의 존재 또는 가능성을 배제하도록 해석되어서는 안 된다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예에 따른 네트워크 환경에서의 운영체제 자동 설치 시스템 및 방법에 대해 설명하기로 한다.
도 1은 본 발명의 실시예에 따른 네트워크 환경에서의 운영체제 자동 설치 시스템을 전체 구성을 도시한 네트워크 구성도이며, 도 2는 본 발명의 실시예에 따른 운영체제 자동 설치 시스템에서 운영체제 자동 설치 서버의 세부 구성을 도시한 블록도이다.
도 1에 도시된 바와 같이, 네트워크 환경에서 물리적 디바이스의 운영체제 자동 설치 시스템은 사용자측 디바이스(100), 운영체제 자동 설치 서버(110), 이미지 생성 서버(120) 및 운영체제 설치 대상 디바이스(130) 등으로 구성될 수 있으며, 각각의 구성은 네트워크를 통해 연결될 수 있다.
본 발명의 실시예에 대한 설명에 앞서, 네트워크는 공용 네트워크, 사설망을 포함할 수 있다.
사용자측 디바이스(100)는 네트워크 환경에서의 운영체제에 대한 설치 정보를 운영체제 자동 설치 서버(110)에 제공할 수 있는 기기로서, 운영체제 자동 설치 서버(110)로부터 제공받은 인터페이스를 통해 운영체제의 설치 대상 디바이스에 대한 설치 정보를 입력하여 제공할 수 있다.
본 발명의 실시예에서, 사용자측 디바이스(100)는 네트워크 기능을 갖고, 사용자에 조작이 가능한 다양한 입출력 기능 등을 구비한 기기로서, 그 예로서 컴퓨터, 노트북, PDA, 테블릿, 스마트폰 등을 들 수 있으나, 이에 한정하지는 않는다.
또한, 사용자측 디바이스(100)는 운영체제 설치 대상 디바이스(130)의 관리, 운영, 소유하고 있는 사용자가 소유한 기기일 수 있다.
운영체제 자동 설치 서버(110)는 사용자측 디바이스(100) 또는 자체적으로 수집한 운영체제에 대한 설치 정보를 기반으로 운영체제 설치 대상 디바이스(130)에 운영체제를 자동으로 설치할 수 있다.
이를 위하여, 운영체제 자동 설치 서버(110)는, 도 2에 도시된 바와 같이, 정보 수집부(111), 이미지 생성 요청부(112), 디바이스 제어부(113) 및 운영체제 설치부(114) 등을 포함할 수 있다.
정보 수집부(111)는 사용자측 디바이스(100)와의 연동을 통해 네트워크 환경에서의 운영체제에 대한 설치 정보를 수집할 수 있으며, 운영체제 설치 대상 디바이스(130)와의 연동을 통해 운영체제에 대한 설치 정보를 수집할 수 있다.
여기에서, 설치 정보는 운영체제 설치 대상 디바이스(130)에 설정될 호스트 아이피(Hostname, IP), OS 버전, 디스크 파티션(Disk Partition) 등을 포함할 수 있을 뿐만 아니라 운영체제 설치 시 필요한 설치 목록을 포함할 수 있다.
본 발명의 실시예에서, 설치 목록은 WEB apache, nginx 등등과 같은 웹 어플리케이션 정보, Tomcat, php-fpm, jboss 등등과 같은 WAS Application, 디바이스 운영에 필요한 모든 어플리케이션의 정보, OS 기본 설정 등을 포함할 수 있다.
또한, 디바이스 운영에 필요한 모든 어플리케이션의 예로는 모니터링 시스템, 백업 시스템, 자산 등록 및 관리 시스템 등을 들 수 있으나, 이에 한정하지는 않는다.
이미지 생성 요청부(112)는 수집한 설치 정보에 의거하여 무인 설치 가능한 설정 파일을 생성함과 더불어 생성한 설정 파일을 포함한 운영체제 이미지 파일(이하, 'OS 이미지 파일'이라고 함)의 생성을 이미지 생성 서버(120)에 요청할 수 있다. 여기에서, 설정 파일은 수집된 설치 정보를 기초하여 생성되는데, 운영체제의 설치 후 정상 부팅 시 자동 설정 및 어플리케이션의 자동 설치를 위한 자동화 설치 스크립트를 포함할 수 있다.
다른 한편, 이미지 생성 요청부(112)는 설정 파일과 별도로 자동화 설치 스크립트를 생성할 수도 있다.
이에 따라, 이미지 생성 서버(120)는 운영체제 자동 설치 서버(110)의 생성 요청에 따라 OS 이미지 파일을 생성한 후 데이터베이스(122)에 저장하여 관리하며, 생성한 OS 이미지 파일을 운영체제 설치 대상 디바이스(130)에 제공할 수 있다.
본 발명의 실시예에서, 이미지 생성 서버(120)는 네트워크 프로토콜, 예컨대 http, https, nfs, SMB 등의 모든 네트워크 프로토콜을 이용하여 OS 이미지 파일을 운영체제 설치 대상 디바이스(130)에 제공할 수 있다.
본 발명의 실시예에서, OS 이미지 파일은 부팅 가능한 파일이며, 리눅스, 윈도우 등을 설치할 수 있는 이미지 데이터일 수 있다.
또한, 설정 파일은 운영체제가 리눅스인 경우 'kickstart' 파일이며, 운영체제가 윈도우일 경우 'Autounattend' 파일일 수 있다.
디바이스 제어부(113)는 운영체제 설치 대상 디바이스(130)에 대한 운영체제 설치 요청에 따라 OS 이미지 파일이 마운트 처리되도록 운영체제 설치 대상 디바이스(130)를 제어할 수 있다. 구체적으로, 디바이스 제어부(113)는 H/W의 시스템 서비스 관리, 모니터링, 유지보수 및 제어가 가능한 이더넷 프로토콜을 이용하여 OS 이미지 파일이 마운트 처리되도록 운영체제 설치 대상 디바이스(130)를 제어할 수 있다.
이에 따라, 운영체제 설치 대상 디바이스(130)는 이미지 생성 서버(120)와의 연동을 통해 OS 이미지 파일을 제공받은 후 이를 마운트 처리할 수 있다.
본 발명의 실시예에서, 운영체제 설치 대상 디바이스(130)는 기 설치된 운영체제가 있을 경우 마운트 처리 요청을 기 설정된 운영체제에서 제공하는 각종 툴을 이용하여 OS 이미지 파일을 마운트 처리할 수 있다.
운영체제 설치부(114)는 마운트 처리된 OS 이미지 파일을 이용하여 운영체제 설치 대상 디바이스(130)에 운영체제를 자동 설치하기 위한 것으로서, 운영체제 설치 대상 디바이스(130)가 마운트 처리된 OS 이미지 파일로 부팅 가능하도록 하기 위한 부팅 순서 변경 명령을 운영체제 설치 대상 디바이스(130)에 전송하고, 운영체제 설치 대상 디바이스(130)의 리부팅 또는 전원 온 동작을 위한 재부팅 명령을 운영체제 설치 대상 디바이스(130)에 전송할 수 있다. 이때, 명령 전송은 하드웨어 원격 관리 프로토콜을 이용할 수 있다.
이에 따라, 운영체제 설치 대상 디바이스(130)는 OS 이미지 파일로 부팅되며, 설정 파일에 의해 개별 설정이 셋팅된 운영체제가 설치될 수 있다.
한편, 운영체제 설치부(114)는 운영체제 설치 대상 디바이스(130)에 운영체제의 설치가 완료되어 정상 부팅된 것으로 체크됨에 따라 운영체제 설치 대상 디바이스(130)의 원격 접속을 통해 설정 파일 내 자동화 설치 스크립트를 이용하여 추가로 필요한 설정을 진행시킬 수 있다.
정상 부팅 여부를 체크하는 방법은 운영체제 설치 대상 디바이스(130)의 포트(또는 프로세스)에 대한 접속 상태를 체크하여 정상 부팅 여부, 즉 운영체제의 정상 설치 여부를 판단할 수 있다.
본 발명의 실시예에서, 포트는 ssh 포트, rdp(remote desktop port), 사용자가 정의한 포트일 수 있으나, 이에 한정하지는 않는다.
또한, 운영체제 설치 대상 디바이스(130)에 설치된 운영체제가 리눅스인 경우 ssh 포트는 22이고, 윈도우인 경우 rdp 3389일 수 있다.
운영체제 설치부(114)는 정상 부팅이 체크됨에 따라 설치 목록을 기반으로 추가로 필요한 설치를 수행할 수 있다. 이를 위하여, OS 이미지 파일을 생성할 때, 필요한 설치 목록이 포함된 자동화 설치 스크립트와 설치에 필요한 모든 설치 파일을 포함한 OS 이미지 파일을 생성할 수 있다.
이 경우, 운영체제 설치부(114)에 의해 운영체제가 설치된 후 운영체제 설치 대상 디바이스(130)는 OS 이미지 파일 내 자동화 설치 스크립트를 실행시켜 기본 OS 설정 및 어플리케이션 설치를 진행할 수 있다.
자동 설치는 운영체제가 지원하는 언어를 기반으로 수행할 수 있는데, 리눅스의 경우 Bash shell, python 등이 될 수 있고, 윈도우는 Power shell 또는 Batch shell 등이 될 수 있다.
한편, 운영체제의 설치 후 자동 설정 및 설치를 위해서, OS 이미지 파일에 모든 파일이 포함되는 것으로 예를 들어 설명하였지만, 네트워크를 통해 자동 설정 및 설치를 진행할 수도 있다. 이 경우, 설치 정보를 수집하여 데이터베이스(122)에 등록 후, 필요한 설치 목록이 포함된 자동화 설치 스크립트를 포함하여 OS 이미지파일을 생성할 수 있다.
그런 다음, 운영체제가 설치 후 정상 부팅됨에 따라 운영체제 설치 대상 디바이스(130) 상에서 자동화 설치 스크립트가 실행되며, 설치 프로그램과 설정 파일을 네트워크를 통해 다운받고, 설치 스크립트 또한 네트워크를 통해 다운받아 실행할 수 있다. 즉, 운영체제 설치 대상 디바이스(130)는 운영체제 자동 설치 서버(110)의 운영체제 설치부(114)와의 연동을 통해 운영체제 설치 대상 디바이스(130)에 설치 프로그램 및 설정 파일과 자동화 설치 스크립트를 다운로드받아 실행시켜 설치 프로그램의 설치와 설정 과정을 수행할 수 있다.
한편, 운영체제 설치 대상 디바이스(130)에 운영에 필요한 기본 OS 설정을 비롯하여 수집된 설치 목록(어플리케이션 목록)을 원격으로 설치 및 설정할 수도 있다.
운영체제 자동 설치 서버(110)는 정상 부팅 후 원격 명령 또는 설치에 필요한 파일을 운영체제 대상 설치 디바이스(130)에 전송한 후 실행시켜 운영체제 설치 대상 디바이스(130) 상에 추가 설정 및 설치목록에 대응되는 어플리케이션의 설치를 진행할 수도 있다.
이러한 방법을 적용하기 위해, 본 발명의 실시예에서, 운영체제 자동 설치 서버(110)는 설치 정보로 OS 종류, IP 정보, 하드웨어 벤더(H/W Vendor), 모델(Model) 정보 등을 수집하고, 이를 이용하여 OS 기본 설정, 설치될 어플리케이션 등을 정의한 후 이를 기반으로 자동화 설치 스크립트를 생성할 수도 있다.
이를 통해 운영체제 자동 설치 서버(110)는 설치 정보를 이용하여 자동화 설치 스크립트를 자동으로 생성하여 원격으로 운영체제 설치 대상 디바이스(130)에 전송 후 실행시켜 설치를 진행할 수 있다.
본 발명의 실시예에서, 운영체제 설치 대상 디바이스(130)는 네트워크 기능, 저장장치를 구비하는 물리적 디바이스를 의미할 수 있으며, 그 예로서 노트북, 퍼스널 컴퓨터, 서버 등을 포함할 수 있으나, 이에 한정하지는 않는다.
상술한 바와 같은 본 발명의 실시예에 따르면, 사용자측 디바이스(100)와 운영체제 설치 대상 디바이스(130)가 서로 다른 기기로 도시하여 설명하였지만, 동일한 기기일 수도 있으며, 이미지 생성 서버(120)가 별도로 구성되는 것으로 예를 들어 설명하였지만, 이미지 생성 서버(120)가 운영체제 자동 설치 서버(110) 내의 구성으로 포함될 수도 있다.
상술한 바와 같은 구성을 갖는 운영체제 자동 설치 서버(110)가 운영체제 설치 대상 디바이스에 운영체제를 자동으로 설치하는 과정에 대해 도 3을 참조하여 설명하기로 한다.
도 3은 본 발명의 실시예에 따른 운영체제 설치 대상 디바이스에 운영체제를 자동으로 설치하는 과정을 도시한 흐름도이다.
도 3에 도시된 바와 같이, 운영체제 자동 설치 서버(110)는 운영체제 설치 대상 디바이스(130)에 대한 원격 운영체제 자동 설치를 위해 설치 정보를 수집한다(S300). 구체적으로, 운영체제 자동 설치 서버(110)는 사용자측 디바이스(100)와의 연동을 통해 설치 정보를 수집하거나 운영체제 설치 대상 디바이스(130)에 연결되어 자동으로 설치 정보를 수집할 수 있다.
그런 다음, 운영체제 자동 설치 서버(110)는 수집한 설치 정보에 의거하여 이미지 생성 서버(120)에 OS 이미지 파일의 생성을 요청한다(S302).
이에 따라, 이미지 생성 서버(120)는 수집한 설치 정보를 기반으로 운영체제에 맞는 무인 설치 가능한 설정 파일을 생성함과 더불어 생성한 무인 설치 가능한 설정 파일을 포함한 OS 이미지 파일, 즉 부팅 가능한 OS 이미지 파일을 생성하여 데이터베이스(122)에 저장한다(S304).
이후, 운영체제 자동 설치 서버(110)는 생성된 OS 이미지 파일에 대한 마운트 처리 요청을 운영체제 설치 대상 디바이스(130)에 전송한다(S306). 이때, 마운트 처리 요청에는 OS 이미지 파일이 저장된 데이터베이스(122)에 액세스할 수 있는 정보를 포함할 수 있다.
예를 들어, 하드웨어 원격 관리가 가능한 프로토콜이 'iDrac'인 경우 "{{ idracCommand }} remoteimage -c -l 'http://{{ OS 이미지 파일이 저장된 데이터베이스의 주소와 URL}}/{{OS 이미지 파일}}'"을 포함하는 마운트 처리 요청이 전송될 수 있다.
이에 따라, 운영체제 설치 대상 디바이스(130)는 하드웨어의 원격 관리가 가능한 프로토콜을 이용하여 데이터베이스(122)에 접속하여 OS 이미지 파일을 제공받은 후 이를 마운트 처리한다(S308).
그리고나서, 운영체제 자동 설치 서버(110)는 하드웨어 원격 관리 프로토콜을 통해 부팅 순서를 변경하기 위한 부팅 순서 변경 명령을 운영체제 설치 대상 디바이스(130)에 전송하여 운영체제 설치 대상 디바이스(130) 상에 부팅 순서를 변경, 즉 OS 이미지 파일이 마운트된 드라이버가 최우선 부팅 순위로 되도록 부팅 순서를 변경시킬 수 있다(S310).
그런 다음, 운영체제 자동 설치 서버(110)는 하드웨어 원격 관리 프로토콜을 통해 운영체제 설치 대상 디바이스(130)의 리부팅(reboot) 또는 전원 온시켜 부팅시키기 위한 명령을 운영체제 설치 대상 디바이스(130)에 전송한다(S312). 이에 따라, 운영체제 설치 대상 디바이스(130)는 설정 파일이 포함된 OS 이미지 파일을 이용하여 리부팅 또는 부팅되어 운영체제 설치를 수행한다(S314).
이후, 운영체제 자동 설치 서버(110)는 운영체제 설치 대상 디바이스(130)와의 통신을 통해 정상 부팅 여부를 판단한다(S316). 구체적으로, 운영체제 자동 설치 서버(110)는 운영체제 설치 대상 디바이스(130)와의 연동을 통해 포트(또는 프로세스)에 대한 접속 상태를 체크하여 정상 부팅 여부, 즉 운영체제의 정상 설치 여부를 판단할 수 있다.
본 발명의 실시예에서, 포트는 ssh 포트, rdp(remote desktop port), 사용자가 정의한 포트일 수 있으나, 이에 한정하지는 않는다.
또한, 운영체제 설치 대상 디바이스(130)에 설치된 운영체제가 리눅스인 경우 ssh 포트는 22이고, 윈도우인 경우 rdp 3389일 수 있다.
S316의 판단 결과, 정상 부팅인 경우 운영체제 자동 설치 서버(110)는 운영체제 설치 대상 디바이스(130)의 연결을 통해 추가로 필요한 설정을 자동 진행한다(S318).
한편, S316의 판단 결과, 정상 부팅이 아닌 경우 운영체제 자동 설치 서버(110)는 S312로 진행하여 이후 단계를 수행할 수 있다.
한편, 첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록에서 설명된 기능들을 수행하는 수단을 생성하게 된다.
이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 기록매체(또는 메모리) 등에 저장되는 것도 가능하므로, 그 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 기록매체(또는 메모리)에 저장된 인스트럭션들은 블록도의 각 블록에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다.
그리고, 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 적어도 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
100 : 사용자측 디바이스
110 : 운영체제 자동 설치 서버
111 : 정보 수집부
112 : 이미지 생성 요청부
113 : 디바이스 제어부
114 : 운영체제 설치부
120 : 이미지 생성 서버
122 : 데이터베이스
130 : 운영체제 설치 대상 디바이스

Claims (6)

  1. 네트워크 환경에서의 설치 대상 디바이스에 운영체제를 자동 설치하기 위한 장치로서,
    네트워크에 연결된 설치 대상 디바이스에 설치될 운영체제에 대한 설치 정보를 수집하는 정보 수집부와,
    상기 수집된 설치 정보를 이용하여 상기 설치될 운영체제를 무인 설치 가능한 설정 파일을 생성하고, 상기 생성한 설정 파일이 포함된 OS 이미지 파일을 생성한 후 이를 데이터베이스에 저장시키는 이미지 생성부와,
    상기 설치 대상 디바이스에 대한 운영체제 설치 요청에 따라 상기 OS 이미지 파일을 제공받아 마운트 처리되도록 상기 설치 대상 디바이스를 제어하는 디바이스 제어부와,
    상기 설치 대상 디바이스를 제어하여 상기 마운트 처리된 OS 이미지 파일로 부팅시켜 운영체제를 설치시키는 운영체제 설치부를 포함하는
    네트워크 환경에서의 운영체제 자동 설치 장치.
  2. 제1항에 있어서,
    상기 디바이스 제어부는,
    상기 OS 이미지 파일에 접근할 수 있는 접근 정보를 포함한 마운트 처리 요청을 상기 설치 대상 디바이스에 전송하며,
    상기 설치 대상 디바이스는 상기 접근 정보를 기반으로 상기 OS 이미지 파일을 제공받은 후 이를 마운트 처리하는
    네트워크 환경에서의 운영체제 자동 설치 장치.
  3. 제1항에 있어서,
    상기 운영체제 설치부는,
    상기 운영체제의 설치가 완료된 후 상기 설치 대상 디바이스의 정상 부팅 여부를 판단하며, 상기 정상 부팅인 경우 상기 설치 대상 디바이스의 추가 설정을 수행하는
    네트워크 환경에서의 운영체제 자동 설치 장치.
  4. 네트워크 환경에서의 설치 대상 디바이스에 운영체제를 자동 설치하기 위한 방법으로서,
    운영체제 자동 설치 장치에서 상기 설치 대상 디바이스에 설치될 운영체제에 대한 설치 정보를 수집하는 단계와,
    상기 수집된 설치 정보를 이용하여 상기 설치될 운영체제를 무인 설치 가능한 설정 파일을 생성하고, 상기 생성한 설정 파일이 포함된 OS 이미지 파일을 생성하는 단계와,
    상기 설치 대상 디바이스에 대한 운영체제 설치 요청에 따라 상기 설치 대상 디바이스에 OS 이미지 파일에 대한 마운트 처리를 요청하는 단계와,
    상기 마운트 처리된 OS 이미지 파일로 상기 설치 대상 디바이스가 부팅되도록 상기 설치 대상 디바이스를 제어하여 운영체제를 상기 설치 대상 디바이스에 설치시키는 단계를 포함하는
    네트워크 환경에서의 운영체제 자동 설치 방법.
  5. 제4항에 있어서,
    상기 마운트 처리를 요청하는 단계는,
    상기 OS 이미지 파일에 접근할 수 있는 접근 정보를 포함한 마운트 처리 요청을 상기 설치 대상 디바이스에 전송하는 단계와,
    상기 설치 대상 디바이스에서 상기 접근 정보를 기반으로 상기 OS 이미지 파일을 제공받은 후 이를 마운트 처리하는 단계를 포함하는
    네트워크 환경에서의 운영체제 자동 설치 방법.
  6. 제4항에 있어서,
    상기 자동 설치 방법은,
    상기 운영체제의 설치가 완료된 후 상기 설치 대상 디바이스의 정상 부팅 여부를 판단하며, 상기 정상 부팅인 경우 상기 설치 대상 디바이스의 추가 설정을 수행하는 단계를 더 포함하는
    네트워크 환경에서의 운영체제 자동 설치 방법.
KR1020200126522A 2020-09-29 2020-09-29 네트워크 환경에서의 운영체제 자동 설치 장치 및 방법 KR102414260B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200126522A KR102414260B1 (ko) 2020-09-29 2020-09-29 네트워크 환경에서의 운영체제 자동 설치 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200126522A KR102414260B1 (ko) 2020-09-29 2020-09-29 네트워크 환경에서의 운영체제 자동 설치 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20220043293A KR20220043293A (ko) 2022-04-05
KR102414260B1 true KR102414260B1 (ko) 2022-06-28

Family

ID=81181999

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200126522A KR102414260B1 (ko) 2020-09-29 2020-09-29 네트워크 환경에서의 운영체제 자동 설치 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102414260B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110246981A1 (en) 2010-03-31 2011-10-06 Verizon Patent And Licensing, Inc. Automated software installation with interview

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100439175B1 (ko) * 2001-12-26 2004-07-05 한국전자통신연구원 리눅스 기반의 클러스터 시스템의 운영체제 원격 자동설치 방법
KR101535153B1 (ko) * 2008-11-27 2015-07-08 에스케이커뮤니케이션즈 주식회사 운영체제 원격 자동설치 제어 시스템 및 방법, 그 프로그램소스를 기록한 기록매체
KR101408033B1 (ko) 2011-08-24 2014-06-17 주식회사 케이티 다수의 호스트들의 형상을 자동 구축하기 위한 형상관리서버 및 그 방법
KR102057665B1 (ko) * 2017-07-04 2020-01-22 주식회사 웨인 리눅스 계열 운영체제 배포시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110246981A1 (en) 2010-03-31 2011-10-06 Verizon Patent And Licensing, Inc. Automated software installation with interview

Also Published As

Publication number Publication date
KR20220043293A (ko) 2022-04-05

Similar Documents

Publication Publication Date Title
CN107534647B (zh) 用于传送启动脚本的系统、计算设备和存储介质
US8997090B2 (en) Installing an operating system in a host system
US8914478B2 (en) Automated deployment of software for managed hardware in a storage area network
US20170228228A1 (en) Remote launch of deploy utility
US8332490B2 (en) Method, apparatus and program product for provisioning a computer system
CN106911729B (zh) 一种适用于国产处理器的操作系统远程安装方法
US11132187B2 (en) Bare metal provisioning of software defined infrastructure
US20100217843A1 (en) Systems and methods for collecting and altering firmware configurations of target machines in a software provisioning environment
US20100138696A1 (en) Systems and methods for monitoring hardware resources in a software provisioning environment
JP2013156993A (ja) コンピュータシステムにおけるbiosの設定方法とコンピュータプログラム製品
US10747523B2 (en) Methods of updating firmware components, computer systems and memory apparatus
US20200142683A1 (en) Software update system
CN104113430A (zh) 一种云计算数据中心自动化部署软件架构设计
CN112968929B (zh) 一种服务器管理方法和系统
JP6750605B2 (ja) 計算機システム、ベースボード管理コントローラ、osインストール方法、及びプログラム
US11861357B2 (en) Selecting and sending subset of components to computing device prior to operating system install
US20230229481A1 (en) Provisioning dpu management operating systems
CN114115917A (zh) 操作系统安装方法及装置
KR100791293B1 (ko) 네트워크 내 컴퓨터 시스템의 데이터 관리 장치 및 방법
KR102414260B1 (ko) 네트워크 환경에서의 운영체제 자동 설치 장치 및 방법
CN102053845A (zh) 自动化连续安装操作系统的电子装置及其相关方法与系统
CN110737444A (zh) 基于固件的操作系统远程自适应动态部署方法及系统
CN107659621B (zh) 一种raid控制卡配置方法及装置
CN111181953B (zh) 一种鲲鹏虚拟化支持spice协议的方法及装置
JP6051798B2 (ja) ファームウェア検証システム、ファームウェア検証方法およびファームウェア検証プログラム

Legal Events

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