KR101471655B1 - 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템 및 그 방법 - Google Patents
가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템 및 그 방법 Download PDFInfo
- Publication number
- KR101471655B1 KR101471655B1 KR1020130011921A KR20130011921A KR101471655B1 KR 101471655 B1 KR101471655 B1 KR 101471655B1 KR 1020130011921 A KR1020130011921 A KR 1020130011921A KR 20130011921 A KR20130011921 A KR 20130011921A KR 101471655 B1 KR101471655 B1 KR 101471655B1
- Authority
- KR
- South Korea
- Prior art keywords
- node
- end node
- unit
- state information
- current time
- Prior art date
Links
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Power Sources (AREA)
Abstract
본 발명은 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템 및 그 방법에 관한 것으로서, 가상 컴퓨팅 랩 서비스에서 서비스를 제공하지 않을 시 서버 팜의 전원을 관리하기 위해, 미리 정해진 실습시간표에 따라 전원을 관리하도록 할 수 있는 시스템 및 그 방법을 제공함에 목적이 있다.
이러한 목적을 달성하기 위한 본 발명은, 사용자 컴퓨터로부터 프로그램 종료요청신호가 입력되었는지 여부를 판단하여, 입력된 경우, 프로그램을 종료시키는 프로그램 종료 판단부; 상기 엔드 노드의 상태 정보를 로딩하는 노드 상태 정보 로딩부; 현재 시간과, 상기 노드 상태 정보 로딩부를 통해 로딩된 상기 엔드 노드의 상태 정보에 따라 노드를 부팅시키는 노드 부팅부; 및 현재 시간과, 상기 노드 상태 정보 로딩부를 통해 로딩된 상기 엔드 노드의 상태 정보에 따라 노드를 종료시키는 노드 종료부; 를 포함한다.
이러한 목적을 달성하기 위한 본 발명은, 사용자 컴퓨터로부터 프로그램 종료요청신호가 입력되었는지 여부를 판단하여, 입력된 경우, 프로그램을 종료시키는 프로그램 종료 판단부; 상기 엔드 노드의 상태 정보를 로딩하는 노드 상태 정보 로딩부; 현재 시간과, 상기 노드 상태 정보 로딩부를 통해 로딩된 상기 엔드 노드의 상태 정보에 따라 노드를 부팅시키는 노드 부팅부; 및 현재 시간과, 상기 노드 상태 정보 로딩부를 통해 로딩된 상기 엔드 노드의 상태 정보에 따라 노드를 종료시키는 노드 종료부; 를 포함한다.
Description
본 발명은 노드 전원관리 시스템 및 그 방법에 관한 것으로서, 더욱 상세하게는 미리 정의된 시간에 가상 컴퓨팅 랩 서비스 제공에 영향을 주지 않고, 서버 팜(Server Farm)의 노드(Node)를 부팅 및 종료시킴으로써, 가상 컴퓨팅 랩 서비스의 에너지를 절감할 수 있는 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템 및 그 방법에 관한 것이다.
최근 에너지 가격이 급격하게 변동하고 있고 지구 온난화 현상도 심각한 문제로 대두되고 있다. IT 분야에서도 에너지 절감과 이산화탄소 배출량을 줄이는 노력의 일환으로 '그린 IT' 가 이슈로 떠오르고 있다.
그린 IT는 IT 관련 제품의 저전력화 등 IT 제품 및 서비스 자체를 녹색화하는 것으로 클라우드 컴퓨팅(Cloud Computing)을 포함하며 클라우드 컴퓨팅은 다양한 도메인, 다양한 종류의 컴퓨팅 및 스토리지 자원 통합을 통하여 가상화된 컴퓨팅 자원 집합체를 구축하고 컴퓨팅 요구에 필요한 만큼의 컴퓨팅 자원을 제공하는 기술이다.
이러한 클라우드 컴퓨팅 기술을 초중고 및 대학 등 교육기관의 실습실에 적용하여 가상 컴퓨팅 랩을 구축하여 기존 실습실에서 문제되었던 실습 컴퓨터들의 유지보수 시간과 비용, 업그레이드 비용을 크게 절감시킬 수 있는 가상 컴퓨팅 랩 서비스 시스템을 개발하였다.
이러한 가상 컴퓨팅 랩 서비스 환경에서 가상머신은 사용자가 클라이언트를 이용하여 가상머신을 접속하여 사용하기 때문에 항상 최적의 상태로 유지되며, 기존 컴퓨터 실습실에서 사용자 부주의 혹은 바이러스, 악성코드로 오염되어 사용에 지장을 주고 컴퓨터 장애로 인한 많은 유지보수 시간과 비용 문제를 해결할 수 있게 한다. 또한, 인력 낭비를 방지하고 컴퓨터 업그레이드 시에는 모든 컴퓨터를 교체하여 많은 비용이 발생하지만 가상 컴퓨팅 랩 서비스는 서버 팜의 소수의 엔드 노드(End Node)를 교체하여 교체 비용을 절감할 수 있다.
한편, 가상화 컴퓨팅과 관련해서는, 한국공개특허 제10-2011-0063285호(이하, '선행문헌')외에 다수 출원 및 공개되어 있다.
상기한 선행문헌은, 동적 미디어 서비스 합성을 위한 테스트베드 시스템으로서, 미디어 데이터 처리를 수행하는 컴퓨팅 자원들의 집합인 미디어 자원 집합; 프로그래머블 네트워킹과 네트워크 가상화를 제공하는 컴퓨터 자원들의 집합인 네트워크 자원 집합; 상기 미디어 자원 집합과 상기 네트워크 자원 집합을 관리하는 서버로서, 상기 미디어 자원 집합과 상기 네트워크 자원 집합의 동작 상태를 파악하고, 테스트를 위한 자원들의 할당을 수행하는 테스트베드 관리 서버; 및 서비스 합성 실험을 제어하기 위한 서버로서, 서비스 의존 그래프를 해석하여 발견된 서비스들과 자원들을 대응시키고, 서비스를 활성화시키며, 각 서비스 인스턴스를 연결하여 서비스 인스턴스 의존 그래프를 생성하는 테스트베드 실험 컨트롤 서버; 를 포함한다.
상술한 선행문헌을 포함한, 기존 클라우드 컴퓨팅 기술을 이용하여 기존 컴퓨터 실습실에 적용한 가상 컴퓨팅 랩 서비스는, 사용자에게 필요한 운영체제(OS, Operating System)와 소프트웨어를 맞춤식으로 제공하며 가상 컴퓨팅 랩 서비스는 가상의 강의실에 일정대로 가상머신을 생성하여 사용자에게 제공한다. 가상 컴퓨팅 랩 서비스를 실습 강의 일정에 맞춰 안전하게 운영하기 위해서 자동화 시스템이 가동되고 클라우드의 서버 팜이 24시간 동안 운영된다.
이때, 가상 컴퓨팅 랩 서비스는 하루의 실습 강의가 모두 끝나고 다음 날의 실습 강의 일정에 맞는 가상머신을 자동적으로 생성하기 위해서 모든 서버가 동작하게 되고 불필요하게 동작하는 서버는 불필요한 전력낭비를 발생하게 된다. 이런 문제를 해결하기 위해서 서버 팜의 모든 서버를 종료시키게 되면, 서버 재 기동 시간이 오래 걸리게 되고 재 기동 중 관리자가 실수를 하면 큰 문제가 발생하여 서비스에 지장이 발생한다.
본 발명은 상기와 같은 문제점을 감안하여 안출된 것으로, 가상 컴퓨팅 랩 서비스에서 서비스를 제공하지 않을 시 서버 팜의 전원을 관리하기 위해, 미리 정해진 실습시간표에 따라 전원을 관리하도록 할 수 있는 시스템 및 그 방법을 제공함에 목적이 있다.
이러한 기술적 과제를 달성하기 위한 본 발명은 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템에 관한 것으로서, 사용자 컴퓨터로부터 프로그램 종료요청신호가 입력되었는지 여부를 판단하여, 입력된 경우, 프로그램을 종료시키는 프로그램 종료 판단부; 상기 프로그램 종료요청 신호가 수신되지 아니한 경우 복원이 가능한 상기 엔드 노드의 상태 정보를 로딩하는 노드 상태 정보 로딩부; 현재 시간이 미리 정해진 제1 설정 시간에 도달하고, 상기 노드 상태 정보 로딩부(200)를 통해 로딩된 상기 엔드 노드(20)의 상태 정보가 꺼진 상태 경우 엔드 노드를 부팅하여 가상 머신을 생성하는 노드 부팅부(300); 및 현재 시간이 미리 정해진 제2 설정 시간에 도달하고 상기 노드 상태 정보 로딩부(200)를 통해 로딩된 상기 엔드 노드(20)의 상태 정보가 켜진 상태인 경우 엔드 노드를 종료시켜 사용자 데이터를 백업한 후 가상 머신을 삭제하는 노드 종료부(400);를 포함한다.
또한 상기 노드 부팅부는, 상기 현재 시간과, 상기 노드 상태 정보 로딩부를 통해 로딩된 엔드 노드의 상태 정보를 바탕으로, 현재 시간이 제 1 설정시간이며 엔드 노드가 꺼져있는지 여부를 판단하는 제 1 노드상태 판단모듈; 및 상기 현재 시간이 제 1 설정시간이며 엔드 노드가 꺼져있는 경우, Wake On Lan(WOL)을 이용하여 엔드 노드에 매직 패킷을 전송하여 엔드 노드를 부팅시키는 노드 부팅모듈; 을 포함하는 것을 특징으로 한다.
또한 상기 노드 부팅부는, 상기 매직 패킷 전송 후, 부팅을 확인하기 위하여 엔드 노드에 Ping을 전송하고, 엔드 노드의 응답여부에 따라 부팅여부를 판단하는 부팅 확인모듈;을 더 포함하는 것을 특징으로 한다.
또한 상기 노드 종료부는, 상기 현재 시간과, 상기 노드 상태 정보 로딩부를 통해 로딩된 엔드 노드의 상태 정보를 바탕으로, 현재 시간이 제 2 설정시간이며 엔드 노드가 켜져있는지 여부를 판단하는 제 2 노드상태 판단모듈; 및 상기 현재 시간이 제 2 설정시간이며 엔드 노드가 켜져있는 경우, Secure Shell을 이용하여 엔드 노드에 종료 명령을 전송하여 엔드 노드를 종료시키는 노드 종료모듈; 을 포함하는 것을 특징으로 한다.
그리고 상기 노드 종료부는, 상기 종료 명령 전송 후, 종료를 확인하기 위하여 엔드 노드에 Ping을 전송하고, 엔드 노드의 응답여부에 따라 종료여부를 판단하는 종료 확인모듈; 을 더 포함하는 것을 특징으로 한다.
한편, 본 발명은 가상 컴퓨팅 랩 환경에서의 노드 전원관리 방법에 관한 것으로서, (a) 프로그램 종료 판단부(100)가 사용자 컴퓨터(40)로부터 프로그램 종료요청신호가 입력되었는지 여부를 판단하는 단계; (b) 상기 (a) 단계의 판단결과, 입력되지 않은 경우, 노드 상태 정보 로딩부(200)가 복원 가능한 상기 엔드 노드(End Node)(20)의 상태 정보를 로딩하는 단계; (c) 노드 부팅부(300)가 현재 시간, 상기 (b) 단계를 통해 로딩된 엔드 노드(20)의 상태 정보를 바탕으로, 현재 시간이 기 정해진 제 1 설정시간이며 엔드 노드(20)가 꺼져있는지 여부를 판단하는 단계; 및 (d) 상기 (c) 단계의 판단결과, 현재 시간이 상기 제 1 설정시간이며 엔드 노드(20)가 꺼져있을 경우 상기 노드 부팅부(300)가 Wake On Lan(WOL)을 이용하여 엔드 노드(20)에 매직 패킷을 전송하여 엔드 노드(20)를 부팅시켜 가상 머신을 생성하는 단계; 를 포함한다.
또한 상기 (d) 단계 이후에, (e) 상기 노드 부팅부가 매직 패킷 전송 후, 부팅을 확인하기 위하여 엔드 노드에 Ping을 전송하는 단계; 및 (f) 상기 노드 부팅부가 엔드 노드의 응답여부에 따라 부팅여부를 판단하는 단계; 를 더 포함하는 것을 특징으로 한다.
또한 (g) 상기 (c) 단계의 판단결과, 현재 시간이 제 1 설정시간이며 엔드 노드(20)가 꺼져있는 경우가, 아닌 경우, 상기 노드 종료부(400)가 현재 시간이 제 2 설정시간이며 엔드 노드(20)가 켜져있는지 여부를 판단하는 단계; 및 (h) 상기 (g) 단계의 판단결과, 현재 시간이 제 2 설정시간이며 엔드 노드(20)가 켜져있는 경우, 상기 노드 종료부(400)가 Secure Shell을 이용하여 엔드 노드(20)에 종료 명령을 전송하여 엔드 노드(20)를 종료시켜 사용자 데이터를 백업한 후 가상 머신을 삭제하는 단계; 를 포함하는 것을 특징으로 한다.
그리고 상기 (h)단계 이후에, (i) 상기 노드 종료부가 종료 명령 전송 후, 종료를 확인하기 위하여 엔드 노드에 Ping을 전송하는 단계; 및 (j) 상기 노드 종료부가 엔드 노드의 응답여부에 따라 종료여부를 판단하는 단계; 를 더 포함하는 것을 특징으로 한다.
상기와 같은 본 발명에 따르면, 미리 정의된 시간에 가상 컴퓨팅 랩 서비스 제공에 영향을 주지 않고 서버 팜의 엔드 노드(End Node)를 부팅시키고, 종료시킴으로써, 가상 컴퓨팅 랩 서비스의 에너지를 절감할 수 있는 효과가 있다.
그리고 본 발명에 따르면, 서버 팜의 모든 서버를 종료시키지 않고, 시스템 복원이 확실하게 가능한 엔드 노드(End Node)만을 종료시킴으로써, 안전한 무정지 서비스가 가능한 효과도 있다.
도 1 은 헤드 노드(Head Node), 엔드 노드(End Node) 및 데이터 노드(Data Node)로 구성된 서버 팜을 보이는 일예시도.
도 2 는 본 발명의 일실시예에 따른 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템을 개념적으로 도시한 전체 구성도.
도 3 은 본 발명의 일실시예에 따른 노드 부팅모듈의 동작에 따라 보여지는 노드 부팅기능 상태확인 정보에 관한 일예시도.
도 4 는 본 발명의 일실시예에 따른 노드 종료모듈의 동작에 따라 보여지는 노드 종료기능 상태확인 정보에 관한 일예시도.
도 5 는 본 발명의 일실시예에 따른 가상 컴퓨팅 랩 환경에서의 노드 전원관리 방법에 관한 전체 흐름도.
도 2 는 본 발명의 일실시예에 따른 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템을 개념적으로 도시한 전체 구성도.
도 3 은 본 발명의 일실시예에 따른 노드 부팅모듈의 동작에 따라 보여지는 노드 부팅기능 상태확인 정보에 관한 일예시도.
도 4 는 본 발명의 일실시예에 따른 노드 종료모듈의 동작에 따라 보여지는 노드 종료기능 상태확인 정보에 관한 일예시도.
도 5 는 본 발명의 일실시예에 따른 가상 컴퓨팅 랩 환경에서의 노드 전원관리 방법에 관한 전체 흐름도.
본 발명의 구체적 특징 및 이점들은 첨부도면에 의거한 다음의 상세한 설명으로 더욱 명백해질 것이다. 이에 앞서 본 발명에 관련된 공지 기능 및 그 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는, 그 구체적인 설명을 생략하였음에 유의해야 할 것이다.
이하, 첨부된 도면을 참조하여 본 발명을 상세하게 설명한다.
본 발명의 일실시예에 따른 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템에 관하여 도 1 내지 도 4 를 참조하여 설명하면 다음과 같다.
먼저, 가상 컴퓨팅 랩 서비스의 기본적인 구성에 관하여 설명하면 다음과 같다. 가상 컴퓨팅 랩 서비스는 클라우드 컴퓨팅 기술을 이용하기 때문에 클라우드 서비스 플랫폼을 제공하기 위해 서버 팜(Server Farm)을 구축한다. 서버 팜은 도 1 에 도시된 바와 같이, 헤드 노드(Head Node)(10)와 엔드 노드(End Node)(20), 데이터 노드(Data Node)(30)로 구성된다.
여기서, 헤드 노드(Head Node)(10)는 가상 컴퓨팅 랩을 관리하고 서비스를 제공하며, 엔드 노드(End Node)(20)는 서비스에 필요한 가상머신을 생성한다. 또한, 가상머신은 서버 가상화를 통해 단일의 서버에 영역을 나눠서 만들어진 가상의 컴퓨터이고, 데이터 노드(Data Node)(30)는 사용자의 데이터를 저장한다.
구축된 서버 팜은 관리자가 지정한 시간에 따라 사용자가 사용하는 가상머신을 생성하여 서비스하고, 서비스가 끝나면 가상머신의 사용자 데이터를 백업하고 가상머신을 삭제한다.
이때, 관리자는 가상머신이 이용할 가상네트워크를 추가하고, 강의에 사용할 가상머신의 종류 템플릿을 작성하여 헤드 노드(Head Node) 데이터베이스에 저장한다. 또한, 이를 바탕으로 강의에 사용할 가상머신 템플릿과 가상네트워크를 선택 후 강의 시작시간과 종료시간, 강의요일을 입력하면, 엔드 노드(End Node)는 강의 일정에 맞게 강의가 시작되기 전에 자동적으로 가상머신을 생성하고, 강의시간이 종료되면 자동적으로 사용자 데이터를 백업하고 가상머신을 제거한다. 사용자는 강의시간에 맞춰 클라이언트를 이용하여 원격으로 데스크탑에 접속하여 서비스를 이용하게 된다.
본 발명에 따른 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템은, 오픈소스를 이용하여 구축된 클라우드 서버 팜과 가상 컴퓨팅 랩 서비스에 적용된 시스템으로서, 매시간 마다 해당 요일의 강의 시간표를 체크하게 되고, 이때 체크하는 항목은 해당 요일의 첫 강의시작 시간과 해당 요일의 마지막 강의 종료시간의 2가지 항목을 이용하여, 노드전원을 관리하는 것으로 이해하는 것이 바람직하다.
도 2 는 본 발명의 일실시예에 따른 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템(S)에 관한 전체 구성도로서, 도시된 바와 같이 프로그램 종료 판단부(100), 노드 상태 정보 로딩부(200), 노드 부팅부(300) 및 노드 종료부(400)를 포함하여 이루어진다.
프로그램 종료 판단부(100)는 사용자 컴퓨터(40)로부터 프로그램 종료요청신호가 입력되었는지 여부를 판단하여, 입력된 경우, 프로그램을 종료시킨다.
이때, 프로그램 종료 판단부(100)는 병렬 처리기법인 쓰레드를 기법을 이용하여 실시간으로 입력받을 수 있으며, 종료요청신호가 입력된 경우, 병렬처리로 작업되고 있는 노드종료기능 또는 노드부팅기능이 완료될 때까지 기다리고, 다음 작업을 수행하지 못하도록 작업쓰레드를 멈추게 하고 진행 중인 작업들이 완료된 후 프로그램을 종료시킨다.
노드 상태 정보 로딩부(200)는 엔드 노드(End Node)(20)의 상태 정보를 로딩한다. 앞서 상술한 바와 같이, 엔드 노드(End Node)(20)는 강의 일정에 맞춰 해당 일에 첫 강의가 시작하기 전 가상머신을 생성하고, 강의가 종료되면 마지막 강의의 사용자 데이터를 백업한다.
노드 부팅부(300)는 현재 시간과, 상기 노드 상태 정보 로딩부(200)를 통해 로딩된 엔드 노드(20)의 상태 정보에 따라 노드를 부팅시키는 기능을 수행하는 바, 상기 도 1 에 도시된 바와 같이 제 1 노드상태 판단모듈(310), 노드 부팅모듈(320) 및 부팅 확인모듈(330)을 포함한다.
구체적으로, 제 1 노드상태 판단모듈(310)은 현재 시간과, 상기 노드 상태 정보 로딩부(200)를 통해 로딩된 엔드 노드(20)의 상태 정보를 바탕으로, 현재 시간이 첫 강의 시작시간 1시간 전('제 1 설정시간')이며 엔드 노드(20)가 꺼져있는지 여부를 판단한다.
노드 부팅모듈(320)은 현재 시간이 첫 강의 시작시간 1시간 전('제 1 설정시간')이며 엔드 노드(20)가 꺼져있는 경우, Wake On Lan(WOL)을 이용하여 엔드 노드(20)에 매직 패킷을 전송하여 엔드 노드(20)를 부팅시킨다. 도 3 은 노드 부팅모듈(320)의 동작에 따라 보여지는 노드 부팅기능 상태확인 정보에 관한 일예시도이다.
여기서, Wake On Lan(WOL)이란, 네트워크 원격관리용 서버로부터 각 클라이언트에 웨이크업 프레임 또는 매직 패킷을 보냄으로써 클라이언트에 설치된 WOL 네트워크 카드로 웨이크업 프레임이 수신되면 컴퓨터가 기동된다. 웨이크업 프레임은 주로 UDP 통신을 이용하여 사용되며 포트는 0, 7, 9번 중 하나의 포트를 사용한다. 웨이크업 프레임은 6바이트의 FF FF FF FF FF FF 뒤에 클라이언트의 MAC(Media Access Control) Address를 16번 붙여 전송하게 된다.
부팅 확인모듈(330)은 매직 패킷 전송 후, 부팅을 확인하기 위하여 엔드 노드(20)에 Ping을 전송하고, 엔드 노드(20)의 응답여부에 따라 부팅여부를 판단한다. 이때, Ping은 매직 패킷 전송 후, 부팅에 걸리는 소정 시간 뒤에 전송될 수 있다.
여기서, Ping은 TCP/IP 프로토콜을 사용하는 응용 프로그램으로 다른 호스트에 IP 데이터그램이 도착할 수 있는지를 검사하는 것을 의미한다. Ping을 수행하는 프로그램은 ICMP echo request라는 메시지를 원격 호스트로 보내 응답하는가를 기다린다. 즉, 송신한 ICMP echo request를 받은 호스트가 동작 중이면 응답하게 되고 호스트가 동작하지 않으면 응답하지 않게 된다. 이와 같이, ICMP echo reply가 돌아오는 지의 여부에 따라 원격 호스트가 동작 중인지 아닌 지를 검사할 수 있다.
노드 종료부(400)는 현재 시간과, 상기 노드 상태 정보 로딩부(200)를 통해 로딩된 엔드 노드(20)의 상태 정보에 따라 노드를 종료시키는 기능을 수행하는 바, 상기 도 1 에 도시된 바와 같이 제 2 노드상태 판단모듈(410), 노드 종료모듈(420) 및 종료 확인모듈(430)을 포함한다.
구체적으로, 제 2 노드상태 판단모듈(410)은 현재 시간과, 상기 노드 상태 정보 로딩부(200)를 통해 로딩된 엔드 노드(20)의 상태 정보를 바탕으로, 현재 시간이 마지막 강의 종료시간 1시간 후('제 2 설정시간')이며 엔드 노드(20)가 켜져있는지 여부를 판단한다.
노드 종료모듈(420)은 현재 시간이 마지막 강의 종료시간 1시간 후('제 2 설정시간')이며 엔드 노드(20)가 켜져있는 경우, Secure Shell을 이용하여 엔드 노드(20)에 종료 명령을 전송하여 엔드 노드(20)를 종료시킨다. 도 4 는 노드 종료모듈(420)의 동작에 따라 보여지는 노드 종료기능 상태확인 정보에 관한 일예시도이다.
여기서, Secure Shell(SSH)은 네트워크 환경에서 원격 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있도록 해주는 응용프로그램 또는 그 통신규약을 가리키며, 원격 시스템을 제어하기 위해 Telnet과 FTP(File Transfer Protocol) 같은 기능을 지원한다. SSH는 기존의 rsh, rlogin, 텔넷 등을 대체하기 위해 설계되었으며 강력한 인증 방법 및 안전하게 통신을 할 수 있게 암호화 기능이 기본으로 내장되어 있다.
종료 확인모듈(430)은 종료 명령 전송 후, 종료를 확인하기 위하여 엔드 노드(20)에 Ping을 전송하고, 엔드 노드(20)의 응답여부에 따라 종료여부를 판단한다. 이때, Ping은 종료 명령 전송 후, 종료에 걸리는 소정 시간 뒤에 전송될 수 있다.
이하에서는, 상술한 시스템을 이용한 가상 컴퓨팅 랩 환경에서의 노드 전원관리 방법에 관하여 도 5 를 참조하여 설명하면 다음과 같다.
도 5 는 본 발명의 일실시예에 따른 가상 컴퓨팅 랩 환경에서의 노드 전원관리 방법에 관한 전체 흐름도로서, 도시된 바와 같이 프로그램 종료 판단부(100)는 사용자 컴퓨터(40)로부터 프로그램 종료요청신호가 입력되었는지 여부를 판단한다(S10).
제S10 단계의 판단결과, 입력되지 않은 경우, 노드 상태 정보 로딩부(200)는 엔드 노드(20)의 상태 정보를 로딩한다(S20).
이후, 노드 부팅부(300)의 제 1 노드상태 판단모듈(310)은 현재 시간과, 상기 노드 상태 정보 로딩부(200)를 통해 로딩된 엔드 노드(20)의 상태 정보를 바탕으로, 현재 시간이 첫 강의 시작시간 1시간 전('제 1 설정시간')이며 엔드 노드(20)가 꺼져있는지 여부를 판단한다(S30).
제S30 단계의 판단결과, 현재 시간이 첫 강의 시작시간 1시간 전('제 1 설정시간')이며 엔드 노드(20)가 꺼져있을 경우, 노드 부팅부(300)의 노드 부팅모듈(320)은 Wake On Lan(WOL)을 이용하여 엔드 노드(20)에 매직 패킷을 전송하여 엔드 노드(20)를 부팅시킨다(S40).
그리고, 노드 부팅부(300)의 부팅 확인모듈(330)은 매직 패킷 전송 후, 부팅을 확인하기 위하여 엔드 노드(20)에 Ping을 전송하고(S50), 엔드 노드(20)의 응답여부에 따라 부팅여부를 판단한다(S60).
제S60 단계의 판단결과, 부팅된 경우, 제S10 단계로 절차를 이행하며, 부팅되지 않은 경우, 제S40 단계로 절차를 이행한다.
한편, 상기 제S30 단계의 판단결과, 현재 시간이 첫 강의 시작시간 1시간 전('제 1 설정시간')이며 엔드 노드(20)가 꺼져 있는 경우가, 아닌 경우, 노드 종료부(400)의 제 2 노드상태 판단모듈(410)은 현재 시간이 마지막 강의 종료시간 1시간 후('제 2 설정시간')이며 엔드 노드(20)가 켜져있는지 여부를 판단한다(S70).
제S70 단계의 판단결과, 현재 시간이 마지막 강의 종료시간 1시간 후('제 2 설정시간')이며 엔드 노드(20)가 켜져있는 경우, 노드 종료부(400)의 노드 종료모듈(420)은 Secure Shell을 이용하여 엔드 노드(20)에 종료 명령을 전송하여 엔드 노드(20)를 종료시킨다(S80).
그리고, 노드 종료부(400)의 종료 확인모듈(430)은 종료 명령 전송 후, 종료를 확인하기 위하여 엔드 노드(20)에 Ping을 전송하고(S90), 엔드 노드(20)의 응답여부에 따라 종료여부를 판단한다(S100).
제S100 단계의 판단결과, 종료된 경우, 제S10 단계로 절차를 이행하며, 종료되지 않은 경우, 제S80 단계로 절차를 이행한다. 그리고, 제S10 단계의 판단결과, 프로그램 종료요청신호가 입력된 경우, 프로그램 종료 판단부(100)는 프로그램을 종료한다.
이상으로 본 발명의 기술적 사상을 예시하기 위한 바람직한 실시예와 관련하여 설명하고 도시하였지만, 본 발명은 이와 같이 도시되고 설명된 그대로의 구성 및 작용에만 국한되는 것이 아니며, 기술적 사상의 범주를 일탈함이 없이 본 발명에 대해 다수의 변경 및 수정이 가능함을 당업자들은 잘 이해할 수 있을 것이다. 따라서, 그러한 모든 적절한 변경 및 수정과 균등물들도 본 발명의 범위에 속하는 것으로 간주되어야 할 것이다.
S: 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템
100: 프로그램 종료 판단부 200: 노드 상태 정보 로딩부
300: 노드 부팅부 400: 노드 종료부
310: 제 1 노드상태 판단모듈 320: 노드 부팅모듈
330: 부팅 확인모듈 410: 제 2 노드상태 판단모듈
420: 노드 종료모듈 430: 종료 확인모듈
10: 헤드 노드 20: 엔드 노드
30: 데이터 노드 40: 사용자 컴퓨터
100: 프로그램 종료 판단부 200: 노드 상태 정보 로딩부
300: 노드 부팅부 400: 노드 종료부
310: 제 1 노드상태 판단모듈 320: 노드 부팅모듈
330: 부팅 확인모듈 410: 제 2 노드상태 판단모듈
420: 노드 종료모듈 430: 종료 확인모듈
10: 헤드 노드 20: 엔드 노드
30: 데이터 노드 40: 사용자 컴퓨터
Claims (9)
- 가상 컴퓨팅 랩 서비스에서 서비스를 제공하지 않을 시, 헤드 노드(Head Node), 엔드 노드(End Node) 및 데이터 노드(Data Node)로 구성되는 서버 팜의 전원을 관리하기 위해 미리 정해진 시간에 따른 노드 전원관리 시스템에 있어서,
사용자 컴퓨터(40)로부터 프로그램 종료요청신호가 입력되었는지 여부를 판단하여, 입력된 경우 프로그램을 종료시키는 프로그램 종료 판단부(100);
상기 프로그램 종료요청 신호가 수신되지 아니한 경우 복원이 가능한 상기 엔드 노드(End Node)(20)의 상태 정보를 로딩하는 노드 상태 정보 로딩부(200);
현재 시간이 미리 정해진 제1 설정 시간에 도달하고, 상기 노드 상태 정보 로딩부(200)를 통해 로딩된 상기 엔드 노드(20)의 상태 정보가 꺼진 상태 경우 엔드 노드를 부팅하여 가상 머신을 생성하는 노드 부팅부(300); 및
현재 시간이 미리 정해진 제2 설정 시간에 도달하고 상기 노드 상태 정보 로딩부(200)를 통해 로딩된 상기 엔드 노드(20)의 상태 정보가 켜진 상태인 경우 엔드 노드를 종료시켜 사용자 데이터를 백업한 후 가상 머신을 삭제하는 노드 종료부(400); 를 포함하는 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템.
- 제 1 항에 있어서,
상기 노드 부팅부(300)는,
상기 현재 시간과, 상기 노드 상태 정보 로딩부(200)를 통해 로딩된 엔드 노드(20)의 상태 정보를 바탕으로, 현재 시간이 제 1 설정시간이며 엔드 노드(20)가 꺼져있는지 여부를 판단하는 제 1 노드상태 판단모듈(310); 및
상기 현재 시간이 제 1 설정시간이며 엔드 노드(20)가 꺼져있는 경우, Wake On Lan(WOL)을 이용하여 엔드 노드(20)에 매직 패킷을 전송하여 엔드 노드(20)를 부팅시키는 노드 부팅모듈(320); 을 포함하는 것을 특징으로 하는 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템.
- 제 2 항에 있어서,
상기 노드 부팅부(300)는,
상기 매직 패킷 전송 후, 부팅을 확인하기 위하여 엔드 노드(20)에 Ping을 전송하고, 엔드 노드(20)의 응답여부에 따라 부팅여부를 판단하는 부팅 확인모듈(330);을 더 포함하는 것을 특징으로 하는 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템.
- 제 1 항에 있어서,
상기 노드 종료부(400)는,
상기 현재 시간과, 상기 노드 상태 정보 로딩부(200)를 통해 로딩된 엔드 노드(20)의 상태 정보를 바탕으로, 현재 시간이 제 2 설정시간이며 엔드 노드(20)가 켜져있는지 여부를 판단하는 제 2 노드상태 판단모듈(410); 및
상기 현재 시간이 제 2 설정시간이며 엔드 노드(20)가 켜져있는 경우, Secure Shell을 이용하여 엔드 노드(20)에 종료 명령을 전송하여 엔드 노드(20)를 종료시키는 노드 종료모듈(420); 을 포함하는 것을 특징으로 하는 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템.
- 제 4 항에 있어서,
상기 노드 종료부(400)는,
상기 종료 명령 전송 후, 종료를 확인하기 위하여 엔드 노드(20)에 Ping을 전송하고, 엔드 노드(20)의 응답여부에 따라 종료여부를 판단하는 종료 확인모듈(430); 을 더 포함하는 것을 특징으로 하는 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템.
- 가상 컴퓨팅 랩 서비스에서 서비스를 제공하지 않을 시, 헤드 노드(Head Node), 엔드 노드(End Node) 및 데이터 노드(Data Node)로 구성되는 서버 팜의 전원을 관리하기 위해 미리 정해진 시간에 따른 노드 전원관리 방법에 있어서,
(a) 프로그램 종료 판단부(100)가 사용자 컴퓨터(40)로부터 프로그램 종료요청신호가 입력되었는지 여부를 판단하는 단계;
(b) 상기 (a) 단계의 판단결과, 입력되지 않은 경우, 노드 상태 정보 로딩부(200)가 복원 가능한 상기 엔드 노드(End Node)(20)의 상태 정보를 로딩하는 단계;
(c) 노드 부팅부(300)가 현재 시간, 상기 (b) 단계를 통해 로딩된 엔드 노드(20)의 상태 정보를 바탕으로, 현재 시간이 기 정해진 제 1 설정시간이며 엔드 노드(20)가 꺼져있는지 여부를 판단하는 단계; 및
(d) 상기 (c) 단계의 판단결과, 현재 시간이 상기 제 1 설정시간이며 엔드 노드(20)가 꺼져있을 경우 상기 노드 부팅부(300)가 Wake On Lan(WOL)을 이용하여 엔드 노드(20)에 매직 패킷을 전송하여 엔드 노드(20)를 부팅시켜 가상 머신을 생성하는 단계; 를 포함하는 가상 컴퓨팅 랩 환경에서의 노드 전원관리 방법.
- 제 6 항에 있어서,
상기 (d) 단계 이후에,
(e) 상기 노드 부팅부(300)가 매직 패킷 전송 후, 부팅을 확인하기 위하여 엔드 노드(20)에 Ping을 전송하는 단계; 및
(f) 상기 노드 부팅부(300)가 엔드 노드(20)의 응답여부에 따라 부팅여부를 판단하는 단계; 를 더 포함하는 것을 특징으로 하는 가상 컴퓨팅 랩 환경에서의 노드 전원관리 방법.
- 제 6 항에 있어서,
(g) 상기 (c) 단계의 판단결과, 현재 시간이 제 1 설정시간이며 엔드 노드(20)가 꺼져있는 경우가, 아닌 경우, 상기 노드 종료부(400)가 현재 시간이 제 2 설정시간이며 엔드 노드(20)가 켜져있는지 여부를 판단하는 단계; 및
(h) 상기 (g) 단계의 판단결과, 현재 시간이 제 2 설정시간이며 엔드 노드(20)가 켜져있는 경우, 상기 노드 종료부(400)가 Secure Shell을 이용하여 엔드 노드(20)에 종료 명령을 전송하여 엔드 노드(20)를 종료시켜 사용자 데이터를 백업한 후 가상 머신을 삭제하는 단계; 를 포함하는 것을 특징으로 하는 가상 컴퓨팅 랩 환경에서의 노드 전원관리 방법.
- 제 8 항에 있어서,
상기 (h)단계 이후에,
(i) 상기 노드 종료부(400)가 종료 명령 전송 후, 종료를 확인하기 위하여 엔드 노드(20)에 Ping을 전송하는 단계; 및
(j) 상기 노드 종료부(400)가 엔드 노드(20)의 응답여부에 따라 종료여부를 판단하는 단계; 를 더 포함하는 것을 특징으로 하는 가상 컴퓨팅 랩 환경에서의 노드 전원관리 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130011921A KR101471655B1 (ko) | 2013-02-01 | 2013-02-01 | 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템 및 그 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130011921A KR101471655B1 (ko) | 2013-02-01 | 2013-02-01 | 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템 및 그 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140099097A KR20140099097A (ko) | 2014-08-11 |
KR101471655B1 true KR101471655B1 (ko) | 2014-12-11 |
Family
ID=51745626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130011921A KR101471655B1 (ko) | 2013-02-01 | 2013-02-01 | 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템 및 그 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101471655B1 (ko) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100030877A (ko) * | 2008-09-11 | 2010-03-19 | 한국전자통신연구원 | 사용자 일정관리장치 및 방법 |
KR20110049429A (ko) * | 2009-11-05 | 2011-05-12 | 한국전자통신연구원 | 가상화 솔루션의 관리 시스템, 관리 서버, 및 그 방법 |
-
2013
- 2013-02-01 KR KR1020130011921A patent/KR101471655B1/ko active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20100030877A (ko) * | 2008-09-11 | 2010-03-19 | 한국전자통신연구원 | 사용자 일정관리장치 및 방법 |
KR20110049429A (ko) * | 2009-11-05 | 2011-05-12 | 한국전자통신연구원 | 가상화 솔루션의 관리 시스템, 관리 서버, 및 그 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20140099097A (ko) | 2014-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10855464B2 (en) | Methods and apparatus to manage credentials in hyper-converged infrastructures | |
US9851996B2 (en) | Applying firmware updates in a system with zero downtime by selectively offlining and onlining hardware using a scale-up hypervisor layer | |
US9619417B2 (en) | Method and apparatus for remote delivery of managed USB services via a mobile computing device | |
WO2019184164A1 (zh) | 自动部署Kubernetes从节点的方法、装置、终端设备及可读存储介质 | |
US20090158292A1 (en) | Use of external services with clusters | |
CN102752137B (zh) | 主动设置虚拟机网络参数的装置和方法 | |
US11080041B1 (en) | Operating system management for virtual workspaces | |
US10333785B2 (en) | Server information handling system configuration by peer-to-peer networking | |
CN113196237A (zh) | 计算***中的容器迁移 | |
WO2015191649A1 (en) | Providing multiple synchronous serial console sessions using data buffering | |
US9021008B1 (en) | Managing targeted scripts | |
CN104572227A (zh) | 一种基于安腾平台通过bmc刷新cpld fw方法 | |
US11894983B2 (en) | Simulation and testing of infrastructure as a service scale using a container orchestration engine | |
US20230333877A1 (en) | Virtual machine migration method, apparatus, and system | |
US11489730B2 (en) | Methods, apparatuses and systems for configuring a network environment for a server | |
WO2020131480A1 (en) | Methods, apparatuses and systems for configuring a network environment for a server | |
WO2017096951A1 (zh) | 一种虚拟机更新方法和装置 | |
CN112035062A (zh) | 云计算的本地存储的迁移方法、计算机设备及存储介质 | |
US8250413B2 (en) | Connection broker assignment status reporting | |
JP5993835B2 (ja) | マルチノードを用いるスマート端末ファジング装置およびその方法 | |
KR101471655B1 (ko) | 가상 컴퓨팅 랩 환경에서의 노드 전원관리 시스템 및 그 방법 | |
US20190050256A1 (en) | Systems and methods for distributed management of computing resources | |
US8065561B1 (en) | Method and apparatus for automating device recovery using device configuration information | |
CN108259228B (zh) | 一种网络设备虚拟化***及其设备配置方法、装置 | |
US20150186409A1 (en) | Portable electronic device, method for sharing file between multiple operating systems, recording medium and computer program product |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20171120 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20191120 Year of fee payment: 6 |