KR20030056539A - 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치 및방법 - Google Patents

서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치 및방법 Download PDF

Info

Publication number
KR20030056539A
KR20030056539A KR1020010086767A KR20010086767A KR20030056539A KR 20030056539 A KR20030056539 A KR 20030056539A KR 1020010086767 A KR1020010086767 A KR 1020010086767A KR 20010086767 A KR20010086767 A KR 20010086767A KR 20030056539 A KR20030056539 A KR 20030056539A
Authority
KR
South Korea
Prior art keywords
node
diagnostic
monitoring
message
emp
Prior art date
Application number
KR1020010086767A
Other languages
English (en)
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 KR1020010086767A priority Critical patent/KR20030056539A/ko
Publication of KR20030056539A publication Critical patent/KR20030056539A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/161Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45508Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
    • G06F9/45512Command shells
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0695Management of faults, events, alarms or notifications the faulty arrangement being the maintenance, administration or management system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명은 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치 및 방법에 관한 것으로, 모니터링 서버와 모니터링 클라이언트 및 진단 노드로 이루어진 리눅스 클러스터의 노드 진단 장치에 있어서, 모니터링 서버는, 모니터링 클라이언트의 웹을 통한 접근을 제공하는 웹 인터페이스 모듈과, 모니터링 클라이언트의 요구를 해석하고 접속 클라이언트 정보와 모니터링 대상 노드 정보 및 요구된 명령 정보를 메시지로 구성하는 hmonsh 쉘과, 메시지로부터 접속 클라이언트의 정보를 얻어 클라이언트를 추상화 한 슬래브 구조를 생성하고, 모니터링 대상 노드가 추상화 된 키퍼에게 필요한 진단을 요구하는 다이렉터와, 메시지의 타입에 따른 키퍼의 선택적인 요청에 따라 시리얼 라인을 통해 연결된 EMP 포트를 통해 대상 노드의 BMC에 IPMI 명령 메시지를 EMP 프로토콜에 따라 보내는 EMP 드라이버를 포함하며, 부가적인 진단카드 없이 클러스터 노드의 상태를 원격 모니터링 할 수 있고, 관리자에게 웹 인터페이스를 제공하므로 모니터링 클라이언트의 일반화를 이룰 수 있으며, 진단 노드를 추상화 된 객체로 유지함으로 동적인 진단 노드 추가 및 삭제가 용이한 이점이 있다.

Description

서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치 및 방법{METHOD AND APPARATUS FOR MONITORING NODE OF LINUX CLUSTER SYSTEM USING SERVER BOARD}
본 발명은 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치 및 방법에 관한 것으로, 더욱 상세하게는 인텔(Intel) 서버 보드에서 제공하는 EMP(Emergency Management Protocol) 포트와 BMC(Baseboard Management Controller)칩의 IPMI(Intelligent Platform Management Interface)를 이용하여 별도의 추가 진단 카드 없이 각 클러스터 노드의 진단 기능을 제공할 수 있도록 한 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치 및 방법에 관한 것이다.
현재의 리눅스 클러스터는 인텔 서버 보드를 이용한 다수의 노드로 구성된 시스템이 주종을 이루고 있으며, 이러한 클러스터 시스템에서 하드웨어 진단은 주로 진단 칩을 탑재한 추가 진단 카드를 서버 보드와 별도로 사용한 방식이 주종을 이루고 있다.
도 1은 종래 기술에 따른 리눅스 클러스터의 노드 진단 장치의 구성도로서, 참조부호 10은 모니터링 서버, 20과 30 및 40은 진단 노드, 21과 31 및 41은 서버 보드, 23과 33 및 43은 추가 진단 카드이다.
노드 모니터링 장치는 모니터링 서버(10), 모니터링 클라이언트, 진단 노드(20,30,40)의 세 부분으로 구성되나, 모니터링 서버(10)에서 웹 인터페이스를 제공하므로 상기 모니터링 클라이언트는 웹 브라우저로 대체되며, 진단 노드(20,30,40)의 서버 보드(21,31,41)에는 하드웨어 진단을 위한 추가 진단카드(23,33,43)가 각각 장착된다.
그러나, 전술한 바와 같은 종래의 노드 모니터링 장치에서는 추가 진단 카드에 종속적인 소프트웨어를 설계하여야만 하였으며, 이로서 서버 보드 상에 내장된 기능 중 일부는 사장되는 문제점이 있었다.
본 발명은 이와 같은 종래의 문제점을 해결하기 위하여 제안한 것으로, 그 목적하는 바는 인 밴드(In-band) 상황에서 서버 보드 상의 BMC칩을 이용하여 서버 보드의 다양한 센서의 작동 상태 및 이상 유무를 진단하고 원격 전원 관리를 할 수 있도록 하는 데 있다.
본 발명의 다른 목적은 아웃 오브 밴드(Out-of-band) 상황에서 서버 보드의 EMP 포트를 사용하여 원격으로 클러스터 노드를 통제하고 진단할 수 있도록 하는 데 있다.
이와 같은 목적들을 실현하기 위한 본 발명의 한 견지로서 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치는, BMC칩과 EMP 포트가 내장된 서버 보드를 이용하며, 모니터링 서버와 모니터링 클라이언트 및 진단 노드로 이루어진 리눅스 클러스터의 노드 진단 장치에 있어서, 상기 모니터링 서버는, 상기 모니터링 클라이언트의 웹을 통한 접근을 제공하는 웹 인터페이스 모듈과, 상기 모니터링 클라이언트의 요구를 해석하고 접속 클라이언트 정보와 모니터링 대상 노드 정보 및 요구된 명령 정보를 메시지로 구성하는 hmonsh 쉘과, 상기 메시지로부터 접속 클라이언트의 정보를 얻어 클라이언트를 추상화 한 슬래브 구조를 생성하고, 상기 모니터링대상 노드가 추상화 된 키퍼에게 필요한 진단을 요구하는 다이렉터와, 상기 메시지의 타입에 따른 상기 키퍼의 선택적인 요청에 따라 시리얼 라인을 통해 연결된 상기 EMP 포트를 통해 대상 노드의 상기 BMC에 IPMI 명령 메시지를 EMP 프로토콜에 따라 보내는 EMP 드라이버를 포함한다.
본 발명의 다른 견지로서 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치는, BMC칩이 내장된 서버 보드를 이용하며, 모니터링 서버와 모니터링 클라이언트 및 진단 노드로 이루어진 리눅스 클러스터의 노드 진단 장치에 있어서, 상기 진단 노드는 서버 보드를 채택한 클러스터 시스템의 각 노드를 진단하기 위한 노드 모니터링 장치에 있어서, 상기 서버 보드는, BMC칩과, 상기 BMC칩과의 정보 교환이 가능한 SMIC 드라이버와, 상기 SMIC 드라이버를 통해 상기 BMC칩에 대상 노드의 진단을 위한 명령을 보내는 센서 진단 데몬과, 상기 모니터링 장치와의 통신을 위한 NIC를 포함하며; 상기 모니터링 서버는, 상기 모니터링 클라이언트의 웹을 통한 접근을 제공하는 웹 인터페이스 모듈과, 상기 모니터링 클라이언트의 요구를 해석하고 접속 클라이언트 정보와 모니터링 대상 노드 정보 및 요구된 명령 정보를 메시지로 구성하는 hmonsh 쉘과, 상기 메시지로부터 접속 클라이언트의 정보를 얻어 클라이언트를 추상화 한 슬래브 구조를 생성하고, 상기 모니터링 대상 노드가 추상화 된 키퍼에게 필요한 진단을 요구하는 다이렉터와, 상기 메시지의 타입에 따른 상기 키퍼의 선택적인 요청에 따라 인 밴드로 노드 진단이 가능하도록 대상 노드의 상기 센서 진단 데몬에게 정보를 요청하는 메시지를 보내는 센서 관측기를 포함한다.
본 발명의 또 다른 견지로서 서버 보드를 이용한 리눅스 클러스터의 노드 진단 방법은, BMC칩과 EMP 포트가 내장된 서버 보드를 이용하며, 모니터링 서버와 모니터링 클라이언트 및 진단 노드로 이루어진 리눅스 클러스터의 노드 진단 방법에 있어서, 모니터링 클라이언트가 진단 요구를 보내면 상기 모니터링 서버가 진단 요구를 해석하고 클라이언트 정보와 대상 노드 정보 및 내용이 포함된 형태로 메시지를 변경하는 제 1 단계와, 상기 변경된 메시지를 이용해 슬래브 객체를 생성하고 생성된 슬래브 객체가 진단 시스템 내에서 진단 대상 노드와 관련된 키퍼 객체들을 검색하고 연결된 채널을 통해 진단 메시지를 보내는 제 2 단계와, 상기 진단 메시지를 받은 키퍼 객체가 처리해야 할 진단 유형에 따라 EMP 드라이버에 의한 처리 루틴과 센서 관측기에 의한 처리 루틴 중 어느 하나의 루틴을 선택하는 제 3 단계와, 상기 처리 루틴으로 선택된 상기 EMP 드라이버가 시리얼 라인으로 직접 연결된 진단 노드의 상기 EMP 포트에 직접 IPMI 명령 메시지들을 보내어 상기 BMC를 통해 진단 서비스를 받는 제 4 단계와, 상기 처리 루틴으로 선택된 상기 센서 관측기가 노드 진단 처리를 대상 노드의 센서 진단 데몬에게 넘겨주면 진단 요구를 받은 대상 노드의 센서 진단 데몬이 SMIC 드라이버를 구동하고 적절한 명령을 IPMI의 시스템 인터페이스를 통해 상기 BMC에게 보내어 진단 처리 결과를 회신 받는 제 5 단계를 포함한다.
도 1은 종래 기술에 따른 리눅스 클러스터의 노드 진단 장치의 구성도,
도 2는 발명에 따른 리눅스 클러스터의 노드 진단 장치의 구성도,
도 3은 도 2에 도시된 모니터링 서버의 상세 구성도,
도 4는 표준적인 IPMI와 관리 소프트웨어의 모듈 구성도,
도 5는 본 발명에서 접속 클라이언트와 진단 노드에 의한 객체 연결도,
도 6은 발명에 따른 리눅스 클러스터 노드 진단 장치에 의한 노드 상태 진단 방법을 나타낸 흐름도.
<도면의 주요 부분에 대한 부호의 설명>
100 : 모니터링 서버 110 : 웹 인터페이스 모듈
120 : hmonsh 쉘 130 : 다이렉터
140 : 키퍼 150 : EMP 드라이버
160 : 센서 관측기 200,300,400 : 진단 노드
201 : 센서 진단 데몬 202 : SMIC 드라이버
210,310,410 : 서버 보드 240,340,440 : BMC칩
260,360,460 : NIC 280,380,480 : EMP 포트
본 발명의 실시예로는 다수개가 존재할 수 있으며, 이하에서는 첨부한 도면을 참조하여 바람직한 실시예에 대하여 상세히 설명하기로 한다. 이 실시예를 통해 본 발명의 목적, 특징 및 이점들을 보다 잘 이해할 수 있게 된다.
본 발명에 따른 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치는 각 클러스터 노드의 하드웨어 진단을 수행하기 위해 개별 노드의 서버 보드 기능을 사용한다. 이 서버 보드는 Intel, HP, NEC, DELL 등의 회사들이 참여해 플랫폼 관리 하드웨어의 표준을 세운 IPMI 아키텍쳐(architecture)를 채택하고 있다. 이 IPMI는 다음과 같은 특징을 포함하고 있다.
첫째, 시스템 전원이 꺼져 있는 상태에서도 운영체제와 독립적으로 이용될 수 있는 기본적인 플랫폼 관리 기능을 제공한다. 둘째, 운영체제나 하드웨어 관리 소프트웨어에 의해 사용될 수 있는 부가적인 관리 기능을 제공한다. 셋째, 모니터링 될 정보의 접근을 위해 추상화 된 센서 모델을 제공한다. 넷째, BMC로 개별 시스템의 플랫폼 관리 기능을 통합한다. 다섯째, 다양한 BMC 접근 인터페이스 형태를 제공한다.
또한, 이러한 서버 보드는 내장된 BMC칩을 가지고 있으며, 전원이 꺼져 있을 때도 외부로부터 BMC에 접근할 수 있도록 하기 위해 시리얼 포트인 COM2를 BIOS의 설정을 통해 EMP 포트로 변경 가능하도록 제공하고 있다.
도 2는 상기와 같은 서버 보드를 이용한 본 발명에 따른 리눅스 클러스터의 노드 진단 장치의 구성도로서, 참조부호 100은 모니터링 서버, 200과 300 및 400은 진단 노드, 210과 310 및 410은 서버 보드, 240과 340 및 440은 BMC(Baseboard Management Controller)칩, 260과 360 및 460은 NIC(Network Interface Card), 280과 380 및 480은 EMP(Emergency Management Protocol) 포트이다.
본 발명의 노드 진단 장치는 모니터링 서버(100), 모니터링 클라이언트, 진단 노드(200,300,400)의 세 부분으로 구성되나, 모니터링 서버(100)에서 웹 인터페이스를 제공하므로 상기 모니터링 클라이언트는 웹 브라우저로 대체된다.
모니터링 서버(100)는 도 3의 상세 구성도에 나타낸 바와 같이, 웹 인터페이스 모듈(110), hmonsh 쉘(120), 다이렉터(Director; 130), 키퍼(Keeper; 140), EMP 드라이버(150), 센서 관측기(Sensor watcher; 160)로 구성된다.
웹 인터페이스 모듈(110)은 모니터링 클라이언트의 웹을 통한 접근을 제공한다.
hmonsh 쉘(120)은 모니터링 클라이언트의 요구를 해석하고 접속 클라이언트 정보(이름)와 모니터링 대상 노드 정보, 요구된 명령 정보(내용) 등을 메시지로 구성하여 다이렉터(130)에게 보낸다.
다이렉터(130)는 hmonsh 쉘(120)에게서 받은 메시지로부터 접속 클라이언트의 정보를 얻어 클라이언트를 추상화 한 슬래브(Slave) 구조를 생성하고, 모니터링 할 대상 노드가 추상화 된 키퍼(140)에게 필요한 진단 요구를 보낸다.
각 클러스터 노드를 추상화하고 있는 키퍼(140)는 메시지의 타입에 따라 EMP 드라이버(150)에 의한 처리 루틴과 센서 관측기(160)에 의한 처리 루틴 중 어느 하나의 루틴을 통하여 진단 메시지를 처리한다.
EMP 드라이버(150)는 키퍼(140)의 요청을 받아 대상 노드의 진단을 위해 시리얼 라인을 통해 연결된 EMP 포트(280,380,480)에 IPMI 명령 메시지를 EMP 프로토콜에 따라 직접 보낸다.
센서 관측기(160)는 LAN을 통해 인 밴드(in-band)로 노드 진단을 가능하게하는 모듈로서, 대상 노드의 센서 진단 데몬(Daemon)(201)에게 정보를 요청하는 메시지를 보낸다.
이와 같은 본 발명에서 채택하고 있는 진단 방식은 전원이 꺼져 있을 때는 서버 보드(210,310,410)에 이미 내장되어 있는 BMC칩(240,340,440)과 EMP 포트(280,380,480)를 사용해서 진단 기능을 수행하고, 전원이 켜져 있을 때는 아웃 오브 밴드(Out-of-band) 방식과 함께 개별 NIC(260,360,460)를 통해서 메시지를 클러스터 노드에서 동작중인 관리 데몬에 전송함으로써 부가적인 진단 기능을 수행할 수 있다.
진단 노드(200)에는 인 밴드로 진단을 수행할 때 필요한 센서 진단 데몬(201)이 있다.
도 4는 표준적인 IPMI와 관리 소프트웨어의 구성 모듈들을 도식화 한 것으로서, 본 발명에서 센서 진단 데몬(201)은 인스트러먼테이션 코드(Instrumentation code)층을 구현한 것이며 상위 스택은 사용되지 않았다.
센서 진단 데몬(201)은 BMC(240)의 서비스를 제공받기 위해 SMIC(System Management Interface Chip)를 다루는 SMIC 드라이버(202)에 서비스를 요청한다. SMIC 드라이버(202)는 도 4의 IPMI I/F 코드 모듈을 구현하고 있으며 BMC(240)의 IPMI H/W I/F를 통해 정보 교환을 가능하게 한다.
본 발명은 클러스터 환경에 존재하는 다수 노드의 하드웨어 진단 기능을 단일점(single point)으로 통합 관리하고 다수의 모니터링 클라이언트가 동시에 동작하는 것이 가능하도록 하는 메커니즘을 포함한다.
진단 대상 노드들은 진단 시스템 내에서 각각 키퍼1(141)과 키퍼2(142)와 같이 추상화 된 객체로 존재한다. 이 객체는 콘텍스트(Context; 작동 문맥)라는 작동 환경을 통해 진단 시스템 내에서 다른 모듈과 상호 작용이 이루어진다. 콘텍스트에는 모듈간에 통신에 필요한 통신 채널과 여러 정보들이 유지된다.
도 5에서 보듯 키퍼 객체는 서로 리스트 구조로 연결된다. 또한 클러스터 노드들의 하드웨어 상태를 진단하기 위해 동시에 여러 모니터링 클라이언트가 서버에 접근할 경우가 있을 수 있다. 이런 경우에 키퍼 객체와 유사하게 클라이언트의 정보를 유지하기 위해 슬래브1,2,3과 같은 슬래브 객체가 만들어진다.
모니터링 서버(100)의 다이렉터(130)는 키퍼 객체와 슬래브 객체를 관리한다. 진단 시스템이 초기화될 때 다이렉터(130)는 사용 가능한 진단 노드들에 대해 키퍼 객체와 그 객체의 콘텍스트를 생성하고 그것을 관리한다. 만일 클라이언트의 진단 요구가 있으면 그것을 위한 슬래브 객체를 생성하고 이 객체로 하여금 해당 요구에 대한 처리를 담당하게 한다. 이때, 객체들 간의 통신은 키퍼 객체의 해당 콘텍스트에 포함된 파이프를 통해 메시지 형태로 이루어진다. 따라서 모든 모니터링 클라이언트의 진단 요구는 다이렉터(130)를 통해서 받아들여지고, 처리되는 것이 가능해진다.
이와 같이, 진단 노드를 위한 개별 콘텍스트를 제공하여 서버 시스템 내에서 진단할 노드의 동적인 추가/삭제가 가능하도록 하며, 콘텍스트를 통한 노드 관리는 동일한 IPMI 명령을 여러 노드의 BMC(240)에게 요청할 때 관련된 노드의 콘텍스트를 그룹핑하고 적용함으로써 보다 효율적인 요청이 가능하다.
상기와 같이 구성된 본 발명에 따른 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치에 의한 각 클러스터 노드의 하드웨어 진단 과정을 도 6을 참조하여 설명하기로 한다.
먼저, 모니터링 클라이언트(100)가 진단 요구를 보내면 hmonsh 쉘(120)은 웹을 통해 받아들인 진단 요구를 해석하고 다이렉터(130)에게 요구를 전달하기 위해 클라이언트 정보와 대상 노드 정보 및 내용이 포함된 형태로 메시지를 변경한다(S601∼S603).
다이렉터(130)는 받은 메시지를 이용해 슬래브 객체를 생성하고 생성된 슬래브 객체에게 처리를 넘긴다. 그러면 슬래브 객체는 진단 시스템 내에서 진단 대상 노드와 관련된 키퍼 객체들을 검색하고 연결된 채널을 통해 진단 메시지를 모든 키퍼(140,141,142)에게 보낸다(S604∼S605).
슬래브 객체로부터 진단 요구를 받은 키퍼 객체는 처리해야 할 진단 유형, 즉 BMC 시스템 인터페이스의 필요 유무에 따라 EMP 드라이버(150)에 의한 처리 루틴과 센서 관측기(160)에 의한 처리 루틴 중 어느 하나의 루틴을 선택한다(S607).
EMP 드라이버(150)는 시리얼 라인으로 직접 연결된 진단 노드의 EMP 포트(280,380,480)에 직접 IPMI 명령 메시지들을 보내므로 운영체제 기동의 유무에 관계없이 BMC(240,340,440)를 통해 직접 진단 서비스를 받을 수 있다.
키퍼(140)가 노드 진단 처리를 EMP 드라이버(150)로 넘기면 EMP 드라이버(150)는 BMC(240,340,440)에게 IPMI 명령 메시지를 보내기 위해 EMP 프로토콜을 사용함으로 프로토콜 초기화 과정이 선행된다. 이 과정이 성공적으로 끝나면 실제 진단 요구 메시지가 시리얼 라인을 통해 BMC(240,340,440)에게 전달되고, BMC(240,340,440)는 받은 명령을 처리한 후 결과를 EMP 프로토콜의 응답 형식에 맞추어 EMP 드라이버(150)로 회신한다(S621∼S623).
만일, 키퍼(140)에 의해 센서 관측기(160)가 선택되면 센서 관측기(160)는 노드 진단 처리를 LAN을 통해 대상 노드의 센서 진단 데몬(201)에게 넘겨준다. 이 처리 과정은 운영체제의 동작 시에만 사용될 수 있다. 진단 요구를 받은 대상 노드의 센서 진단 데몬(201)은 SMIC 드라이버(202)를 구동하고 적절한 명령을 IPMI의 시스템 인터페이스를 통해 BMC(240,340,440)에게 보낸다(S611∼S613).
BMC(240,340,440)의 진단 처리 결과는 다시 센서 진단 데몬(201)에게 보내지고 다시 그 결과는 LAN을 통해 센서 관측기(160)로 회신된다(S614).
위와 같은 과정으로 얻은 진단 결과는 최종적으로 모니터링 클라이언트에게 보내짐으로써 필요한 처리 과정을 끝내게 된다.
상기에서는 본 발명의 일 실시예에 국한하여 설명하였으나 본 발명의 기술이 당업자에 의하여 용이하게 변형 실시될 가능성이 자명하다. 이러한 변형된 실시예들은 본 발명의 특허청구범위에 기재된 기술사상에 포함된다고 하여야 할 것이다.
전술한 바와 같은 본 발명은 서버 보드를 채용한 리눅스 클러스터 환경에서 시리얼 라인과 LAN를 이용한 노드 진단 방법을 설계하였으며 이를 통해서 다중 클러스터 노드의 원격 진단이 가능하다.
이에 따라, 부가적인 진단카드 없이 클러스터 노드의 상태를 원격 모니터링할 수 있으며, 관리자에게 웹 인터페이스를 제공하므로 모니터링 클라이언트의 일반화를 이룰 수 있고, 진단 노드를 추상화 된 객체로 유지함으로 동적인 진단 노드 추가 및 삭제가 용이한 효과가 있다.

Claims (10)

  1. BMC칩과 EMP 포트가 내장된 서버 보드를 이용하며, 모니터링 서버와 모니터링 클라이언트 및 진단 노드로 이루어진 리눅스 클러스터의 노드 진단 장치에 있어서,
    상기 모니터링 서버는,
    상기 모니터링 클라이언트의 웹을 통한 접근을 제공하는 웹 인터페이스 모듈과,
    상기 모니터링 클라이언트의 요구를 해석하고 접속 클라이언트 정보와 모니터링 대상 노드 정보 및 요구된 명령 정보를 메시지로 구성하는 hmonsh 쉘과,
    상기 메시지로부터 접속 클라이언트의 정보를 얻어 클라이언트를 추상화 한 슬래브 구조를 생성하고, 상기 모니터링 대상 노드가 추상화 된 키퍼에게 필요한 진단을 요구하는 다이렉터와,
    상기 메시지의 타입에 따른 상기 키퍼의 선택적인 요청에 따라 시리얼 라인을 통해 연결된 상기 EMP 포트를 통해 대상 노드의 상기 BMC에 IPMI(Intelligent Platform Management Interface) 명령 메시지를 EMP 프로토콜에 따라 보내는 EMP 드라이버를 포함하는 것을 특징으로 한 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치.
  2. 제 1 항에 있어서, 상기 모니터링 서버는
    상기 서버 보드에 전원이 꺼져 있는 상태에서 상기 EMP 포트의 아웃 오브 밴드 접근 특징으로 이용하여 각 노드를 진단하는 것을 특징으로 한 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치.
  3. BMC칩이 내장된 서버 보드를 이용하며, 모니터링 서버와 모니터링 클라이언트 및 진단 노드로 이루어진 리눅스 클러스터의 노드 진단 장치에 있어서,
    상기 서버 보드는,
    상기 BMC칩과의 정보 교환이 가능한 SMIC(System Management Interface Chip) 드라이버와,
    상기 SMIC 드라이버를 통해 상기 BMC칩에 대상 노드의 진단을 위한 명령을 보내는 센서 진단 데몬과,
    상기 모니터링 장치와의 통신을 위한 NIC(Network Interface Card)를 포함하며;
    상기 모니터링 서버는,
    상기 모니터링 클라이언트의 웹을 통한 접근을 제공하는 웹 인터페이스 모듈과,
    상기 모니터링 클라이언트의 요구를 해석하고 접속 클라이언트 정보와 모니터링 대상 노드 정보 및 요구된 명령 정보를 메시지로 구성하는 hmonsh 쉘과,
    상기 메시지로부터 접속 클라이언트의 정보를 얻어 클라이언트를 추상화 한 슬래브 구조를 생성하고, 상기 모니터링 대상 노드가 추상화 된 키퍼에게 필요한진단을 요구하는 다이렉터와,
    상기 메시지의 타입에 따른 상기 키퍼의 선택적인 요청에 따라 인 밴드(In-band)로 노드 진단이 가능하도록 대상 노드의 상기 센서 진단 데몬에게 정보를 요청하는 메시지를 보내는 센서 관측기를 포함하는 것을 특징으로 한 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치.
  4. 제 3 항에 있어서, 상기 모니터링 서버는
    상기 서버 보드에 전원이 켜져 있는 상태에서 각 노드를 진단하는 것을 특징으로 한 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치.
  5. 제 1 항 또는 제 3 항에 있어서, 상기 모니터링 서버는
    진단 노드를 위한 개별 콘텍스트(Context; 작동 문맥)를 제공하여 서버 시스템 내에서 진단할 노드의 동적인 추가/삭제가 가능하도록 한 것을 특징으로 한 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치.
  6. 제 5 항에 있어서, 상기 모니터링 서버는
    상기 콘텍스트를 통한 노드 관리는 동일한 IPMI 명령을 여러 노드의 상기 BMC에게 요청할 때 관련된 노드의 상기 콘텍스트를 그룹핑하고 적용하는 것을 특징으로 한 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치.
  7. BMC칩과 EMP 포트가 내장된 서버 보드를 이용하며, 모니터링 서버와 모니터링 클라이언트 및 진단 노드로 이루어진 리눅스 클러스터의 노드 진단 방법에 있어서,
    모니터링 클라이언트가 진단 요구를 보내면 상기 모니터링 서버가 진단 요구를 해석하고 클라이언트 정보와 대상 노드 정보 및 내용이 포함된 형태로 메시지를 변경하는 제 1 단계와,
    상기 변경된 메시지를 이용해 슬래브 객체를 생성하고 생성된 슬래브 객체가 진단 시스템 내에서 진단 대상 노드와 관련된 키퍼 객체들을 검색하고 연결된 채널을 통해 진단 메시지를 보내는 제 2 단계와,
    상기 진단 메시지를 받은 키퍼 객체가 처리해야 할 진단 유형에 따라 EMP 드라이버에 의한 처리 루틴과 센서 관측기에 의한 처리 루틴 중 어느 하나의 루틴을 선택하는 제 3 단계와,
    상기 처리 루틴으로 선택된 상기 EMP 드라이버가 시리얼 라인으로 직접 연결된 진단 노드의 상기 EMP 포트에 직접 IPMI 명령 메시지들을 보내어 상기 BMC를 통해 진단 서비스를 받는 제 4 단계와,
    상기 처리 루틴으로 선택된 상기 센서 관측기가 노드 진단 처리를 대상 노드의 센서 진단 데몬에게 넘겨주면 진단 요구를 받은 대상 노드의 센서 진단 데몬이 SMIC 드라이버를 구동하고 적절한 명령을 IPMI의 시스템 인터페이스를 통해 상기 BMC에게 보내어 진단 처리 결과를 회신 받는 제 5 단계를 포함하는 서버 보드를 이용한 리눅스 클러스터의 노드 진단 방법.
  8. 제 7 항에 있어서, 상기 제 3 단계는
    BMC 시스템 인터페이스의 필요 유무에 따라 처리 루틴을 선택하는 것을 특징으로 한 서버 보드를 이용한 리눅스 클러스터의 노드 진단 방법.
  9. 제 7 항에 있어서, 상기 제 4 단계는
    상기 EMP 드라이버는 상기 BMC에게 IPMI 명령 메시지를 보내기 위해 EMP 프로토콜을 사용함으로 프로토콜 초기화 과정이 선행되는 것을 특징으로 한 서버 보드를 이용한 리눅스 클러스터의 노드 진단 방법.
  10. 제 9 항에 있어서,
    상기 초기화 과정이 끝나면 실제 진단 요구 메시지가 시리얼 라인을 통해 상기 BMC에게 전달되고, 상기 BMC는 받은 명령을 처리한 후 결과를 EMP 프로토콜의 응답 형식에 맞추어 상기 EMP 드라이버로 회신하는 것을 특징으로 한 서버 보드를 이용한 리눅스 클러스터의 노드 진단 방법.
KR1020010086767A 2001-12-28 2001-12-28 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치 및방법 KR20030056539A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020010086767A KR20030056539A (ko) 2001-12-28 2001-12-28 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치 및방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020010086767A KR20030056539A (ko) 2001-12-28 2001-12-28 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치 및방법

Publications (1)

Publication Number Publication Date
KR20030056539A true KR20030056539A (ko) 2003-07-04

Family

ID=32214724

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010086767A KR20030056539A (ko) 2001-12-28 2001-12-28 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치 및방법

Country Status (1)

Country Link
KR (1) KR20030056539A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009036370A2 (en) * 2007-09-14 2009-03-19 Softkvm, Llc Software method and system for controlling and observing computer networking devices
CN108718256A (zh) * 2018-06-14 2018-10-30 郑州云海信息技术有限公司 一种对节点的冗余监控系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100264896B1 (ko) * 1998-07-27 2000-09-01 윤종용 다중 클러스터 시스템의 클러스터 노드 고장 감지 장치 및 방법
US6496790B1 (en) * 2000-09-29 2002-12-17 Intel Corporation Management of sensors in computer systems

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100264896B1 (ko) * 1998-07-27 2000-09-01 윤종용 다중 클러스터 시스템의 클러스터 노드 고장 감지 장치 및 방법
US6496790B1 (en) * 2000-09-29 2002-12-17 Intel Corporation Management of sensors in computer systems

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
논문.(<page 1,2>, 도면 1 참조)2000. 09. 26 *
카다로그(<page 3,31> 참조)1999. 11. 15 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009036370A2 (en) * 2007-09-14 2009-03-19 Softkvm, Llc Software method and system for controlling and observing computer networking devices
WO2009036370A3 (en) * 2007-09-14 2009-06-04 Softkvm Llc Software method and system for controlling and observing computer networking devices
CN108718256A (zh) * 2018-06-14 2018-10-30 郑州云海信息技术有限公司 一种对节点的冗余监控系统

Similar Documents

Publication Publication Date Title
US6308207B1 (en) Distributed service subsystem architecture for distributed network management
US7139861B2 (en) Input/output unit access switching system and method
EP1892929B1 (en) A method, an apparatus and a system for message transmission
JP2008519498A (ja) サービスプロセッサゲートウェイシステム及び機器
IL189483A (en) System for consolidating and securing access to all out-of- band interfaces in computer, telecommunication and networking equipment, regardless of the interface type
JP2004021556A (ja) 記憶制御装置およびその制御方法
CN104322012A (zh) 平台独立的管理控制器
JP4592242B2 (ja) サーバ/クライアントシステム
JPH1165968A (ja) ネットワーク管理方法及びそのシステム
CN105677589A (zh) 一种访问控制方法、装置及系统
US7433351B1 (en) Isolation of data, control, and management traffic in a storage area network
US20070162583A1 (en) Information providing device, device discovering method, and computer product
CN109150724B (zh) 一种通信方法和网卡
KR20030056539A (ko) 서버 보드를 이용한 리눅스 클러스터의 노드 진단 장치 및방법
US20030005106A1 (en) Communication control apparatus and method
US6948001B1 (en) Modular software method for independent storage nodes
CN116723198A (zh) 一种多节点服务器主机控制方法、装置、设备、存储介质
WO2001022681A2 (en) Method and system for data transformation in a computer network
US8214473B1 (en) Apparatus, system, and method for communicating with a device within a computer system
CN111858433A (zh) 一种基于ssh串口重定向的方法、系统、设备及介质
JP3884609B2 (ja) 多重化システム
CN115665172B (zh) 一种嵌入式终端设备的管理系统
JP2559473B2 (ja) ノードの活性状態管理方式
JP2003037600A (ja) テストマネージャ付きメディアコンバータ、障害検出方法、およびそれを用いたシステム
JP4871832B2 (ja) 計算機システム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application