KR20140144520A - 프로세서 모듈, 마이크로 서버 및 프로세서 모듈의 제어 방법 - Google Patents

프로세서 모듈, 마이크로 서버 및 프로세서 모듈의 제어 방법 Download PDF

Info

Publication number
KR20140144520A
KR20140144520A KR1020130066599A KR20130066599A KR20140144520A KR 20140144520 A KR20140144520 A KR 20140144520A KR 1020130066599 A KR1020130066599 A KR 1020130066599A KR 20130066599 A KR20130066599 A KR 20130066599A KR 20140144520 A KR20140144520 A KR 20140144520A
Authority
KR
South Korea
Prior art keywords
module
processor
unit
information
processor module
Prior art date
Application number
KR1020130066599A
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 KR1020130066599A priority Critical patent/KR20140144520A/ko
Priority to PCT/KR2013/010101 priority patent/WO2014200162A1/en
Priority to US14/140,876 priority patent/US20140365641A1/en
Priority to TW103104818A priority patent/TW201447767A/zh
Priority to EP14158684.2A priority patent/EP2843557A1/en
Publication of KR20140144520A publication Critical patent/KR20140144520A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual
    • 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/0654Management of faults, events, alarms or notifications using network fault recovery
    • 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/0677Localisation of faults
    • 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/069Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
    • 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/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning

Landscapes

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

Abstract

마이크로 서버가 개시된다. 본 마이크로 서버는, 복수의 프로세서 모듈, 외부의 관리 서버와 통신을 수행하는 통신부, 및 복수의 프로세서 모듈 각각의 장치 정보를 수집하고, 수집된 복수의 프로세서 모듈의 장치 정보를 이용하여, 관리 서버에 복수의 프로세서 모듈 각각에 대한 IPMI(Intelligent Platform Management Interface) 서비스를 제공하는 모듈 관리부를 포함한다.

Description

프로세서 모듈, 마이크로 서버 및 프로세서 모듈의 제어 방법{PROCESSOR MODULE, SERVER SYSTEM AND METHOD FOR CONTROLLING PROCESSOR MODULE}
본 발명은 프로세서 모듈, 마이크로 서버 및 프로세서 모듈의 제어 방법에 관한 것으로, 보다 상세하게는 복수의 프로세서 모듈 각각을 관리하기 위한 컨트롤러를 공용화할 수 있는 프로세서 모듈, 마이크로 서버 및 프로세서 모듈의 제어 방법에 관한 것이다.
최근 고속 인터넷 및 인트라넷 기술의 발달에 따라 대량의 데이터를 고속으로 처리할 수 있는 서버 기술이 요구되어 왔다. 이에 따라, 랙 마운트형 클러스터 서버 기술이 등장하였지만, 부피가 크고, 전력 소비량도 크게 증가하는 문제점이 있으며, 각 서버 모듈들을 케이블로 연결하여야 하였다는 점에서 시스템 확장에 제한이 있었다.
이에 따라 최근에는 프로세서 모듈을 이용하는 마이크로 서버가 이용되고 있다. 프로세서 모듈이란 랙 마운트형 서버처럼 가로로 랙 서버를 쌓아올리지 않고 마이크로 서버 시스템의 본체에 끼워 동작시키는 얇고 모듈화된 증설품 서버를 의미한다. 좁은 공간에 많은 수의 서버를 삽입, 설치할 수 있다는 의미에서 고밀도 서버라고도 불리며, 하나 이상의 CPU(Ceteral Processing unit), 기억 장치, 운영 체제 등 서버의 핵심 요소를 내장하고, 본체로부터 전원, 입출력, 부수 장치 및 각종 제어 기능을 지원받아 서버로서의 기능을 수행한다.
서버는 서버 관리를 위한 관리 인터페이스로 원격지나 로컬 서버의 상태를 파악하고 제어할 수 있는 IPMI(Intelligent Platform Management Interface) 서비스를 지원하여야 하는데, 종래에는 마이크로 모듈 각각에 IPMI 기능을 지원하기 위한 BMC라는 마이크로컨트롤러가 구비되었다.
여기서 BMC란 서버의 전원 제어 및 전압, 온도, 문제점에 대한 모니터링 및 제어 기능을 수행하는 마이크로컨트롤러로, BMC가 구비되는 경우, 외부 장치와 통신을 수행하기 위한 네트워크 컨트롤러 및 RJ-45 이더넷 커넥터도 프로세서 모듈 각각에 구비되어야 하였다.
하지만, 상술한 바와 같은 마이크로 서버에는 복수의 프로세서 모듈이 장착된다는 점에서, 복수의 프로세서 모듈 각각에 BMC가 설치되면 공통 기능에 대한 중복 문제와 비용의 비효율성이 증가하는 문제점이 있었다.
더욱이 상술한 바와 같이 BMC가 구비되는 경우 네트워크 컨트롤러 및 RJ-45 이더넷 커넥터도 프로세서 모듈 각각에 구비되어야 한다는 점에서, 부품 수 증가에 따른 면적 필요, 전력 소모 증가, 보드 설계시의 복잡도 증가, 비용 증가 등의 문제가 있었다.
따라서, 본 발명의 목적은, 복수의 프로세서 모듈 각각을 관리하기 위한 컨트롤러를 공용화할 수 있는 프로세서 모듈, 마이크로 서버 및 프로세서 모듈의 제어 방법을 제공하는 데 있다.
상술한 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 마이크로 서버는, 복수의 프로세서 모듈, 외부의 관리 서버와 통신을 수행하는 통신부, 및 상기 복수의 프로세서 모듈 각각의 장치 정보를 수집하고, 상기 수집된 복수의 프로세서 모듈의 장치 정보를 이용하여, 상기 관리 서버에 상기 복수의 프로세서 모듈 각각에 대한 IPMI(Intelligent Platform Management Interface) 서비스를 제공하는 모듈 관리부를 포함한다.
이 경우, 상기 IPMI(Intelligent Platform Management Interface) 서비스는 상기 프로세서 모듈에 대한 모니터링(monitoring), 로깅(logging), 리커버리(recovery), 인벤토리(inventory) 및 하드웨어 제어 중 적어도 하나를 수행하는 것이다.
한편, 상기 모듈 관리부는, 상기 수집된 장치 정보에 대응되는 프로세서 모듈이 상기 수집된 장치 정보를 상기 관리 서버에 전송하는 것으로 가상화할 수 있다.
한편, 상기 모듈 관리부는, 상기 관리 서버로부터 특정 프로세서 모듈에 대한 제어 정보를 수신하면, 상기 특정 프로세서 모듈에 대한 상기 제어 정보에 대응되는 하드웨어 제어를 수행할 수 있다.
한편, 상기 모듈 관리부는, 상기 수집된 장치 정보를 기초로 상기 복수의 프로세서 모듈 각각의 이상 여부를 감지하고, 이상이 감지된 프로세서 모듈에 대한 정보를 상기 관리 서버에 전송할 수 있다.
한편, 본 마이크로 서버는, 상기 마이크로 서버의 팬 상태 정보, 전원 정보 및 네트워크 정보 중 적어도 하나의 정보를 수집하는 수집부를 더 포함하고, 상기 모듈 관리부는, 상기 수집부를 통하여 수집된 정보와 상기 복수의 프로세서 모듈 각각으로 부터 수집된 장치 정보를 병합하여, 상기 복수의 프로세서 모듈 각각의 IPMI 서비스를 제공할 수 있다.
한편, 상기 모듈 관리부는, 상기 복수의 프로세서 모듈 각각에 대한 IPMI 서비스를 가상화하여 상기 관리 서버에 제공할 수 있다.
한편, 상기 모듈 관리부는, 전가상화(Full virtualization), 반가상화(Para-virtualization) 및 어플레이션 가상화(Application virtualization) 중 하나의 가상화 방식을 이용하여 상기 복수의 프로세서 모듈 각각에 대한 IPMI 서비스를 가상화할 수 있다.
한편, 상기 장치 정보는, 상기 프로세서 모듈의 CPU 정보, 상기 프로세서 모듈의 동작 정보 및 상기 프로세서 모듈의 작동상태 정보 중 적어도 하나의 정보일 수 있다.
한편, 본 마이크로 서버는, 상기 마이크로 서버 내의 데이터 및 제어 명령을 송수신하는 공통 인터페이스 버스를 더 포함하고, 상기 공통 인터페이스 버스는 I2C 인터페이스, PCI Express 인터페이스 및 SMBUS 인터페이스 중 적어도 하나의 인터페이스 버스일 수 있다.
이 경우, 상기 모듈 관리부는, 상기 I2C 인터페이스를 이용하여 상기 복수의 프로세서 모듈 각각의 장치 정보를 수집할 수 있다.
한편, 상기 프로세서 모듈은, 제어 연산을 수행하는 CPU, 상기 CPU 동작을 제어하는 모듈 컨트롤러, 및, 상기 프로세서 모듈의 장치 정보를 수집하여, 상기 모듈 관리부에 제공하는 수집부를 포함할 수 있다.
이 경우, 상기 수집부는, 상기 모듈 관리부의 제어에 따라 상기 프로세서 모듈에 대한 리커버리(recovery)를 진행하거나, 상기 모듈 컨트롤러의 펌웨어를 업그레이드할 수 있다.
한편, 본 마이크로 서버는, 상기 통신부 및 모듈 관리부가 탑재되며, 복수의 프로세서 모듈과 연결되기 위한 복수의 슬롯을 포함하는 베이스 보드를 더 포함하고, 상기 복수의 프로세서 모듈은, 상기 복수의 슬롯에 장착 및 탈착이 가능할 수 있다.
이 경우, 본 마이크로 서버는, 외부로부터 데이터를 송수신하는 I/O 카드를 포함하는 I/O 디바이스(Input/Output Device)부, 및, 상기 I/O 디바이스부와 상기 복수의 프로세서 모듈을 선택적으로 연결하는 스위치부를 더 포함하며, 상기 스위치부는, PCI Express 스위치 회로로 구성되어, 상기 복수의 프로세서 모듈과 상기 적어도 하나의 I/O 카드의 연결을 선택적으로 조정할 수 있다.
한편, 본 실시 예에 따른 마이크로 서버의 베이스 보드에 장착하여 동작하는 프로세서 모듈은, 제어 연산을 수행하는 CPU, 프로세서 모듈을 제어하는 모듈 컨트롤러, 및, 상기 프로세서 모듈에 대한 IPMI 서비스가 상기 관리 서버에서 제공되도록, 상기 프로세서 모듈의 장치 정보를 수집하여 상기 마이크로 서버에 전송하는 수집부를 포함한다.
이 경우, 상기 수집부는, 상기 마이크로 서버의 제어에 따라 상기 프로세서 모듈에 대한 리커버리(recovery)를 진행하거나, 상기 모듈 컨트롤러의 펌웨어를 업그레이드할 수 있다.
한편, 본 실시 예에 따른 복수의 프로세서 모듈, 외부의 관리 서버와 통신을 수행하는 통신부 및 모듈 관리부를 구비하는 마이크로 서버에서의 복수의 프로세서 모듈의 제어 방법은, 상기 모듈 관리부에서 상기 복수의 프로세서 각각의 장치 정보를 수집하는 단계, 및, 상기 모듈 관리부에서 상기 수집된 복수의 프로세서 모듈의 장치 정보를 이용하여, 상기 관리 서버에 대한 복수의 프로세서 모듈 각각에 대한 IPMI(Intelligent Platform Management Interface) 서비스를 제공하는 단계를 포함한다.
이 경우, 상기 IPMI 서비스를 제공하는 단계는, 상기 복수의 프로세서 모듈 각각에 대한 IPMI 서비스를 가상화하여 상기 관리 서버에 제공할 수 있다.
이 경우, 상기 IPMI 서비스를 제공하는 단계는, 전가상화, 반가상화 및 어플레이션 가상화 중 하나의 가상화 방식을 이용하여 상기 복수의 프로세서 모듈 각각에 대한 IPMI 서비스를 가상화할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 마이크로 서버의 간략한 구성을 도시한 블록도,
도 2는 본 발명의 일 실시 예에 따른 마이크로 서버의 구체적인 구성을 도시한 블록도,
도 3은 제2 실시 예에 따른 마이크로 서버의 구체적인 구성을 도시한 블록도,
도 4는 본 실시 예에 따른 프로세서 모듈의 간략한 구성을 도시한 블록도,
도 5는 본 실시 예에 따른 프로세서 모듈의 구체적인 구성을 도시한 블록도,
도 6은 IPMI 서비스를 제공하기 위한 종래의 시스템의 블록도,
도 7 및 도 8은 복수의 프로세서 모듈에 대한 IPMI 서비스를 제공하는 본 실시 예에 따른 마이크로 서버의 구조를 도시한 블록도,
도 9는 제1 실시 예에 따른 모듈 관리부의 구조를 도시한 도면,
도 10은 제2 실시 예에 따른 모듈 관리부의 구조를 도시한 도면,
도 11은 제3 실시 예에 따른 모듈 관리부의 구조를 도시한 도면,
도 12는 본 발명의 일 실시 예에 따른 프로세서 모듈의 제어 방법을 설명하기 위한 흐름도,
도 13은 도 12의 IPMI 서비스 제공 단계를 구체적으로 설명하기 위한 흐름도, 그리고,
도 14는 본 발명이 일 실시 예에 따른 프로세서 모듈에서의 제어 동작을 설명하기 위한 흐름도이다.
이하 도면을 참조하여 본 발명에 대하여 보다 상세하게 설명하기로 한다.
도 1은 본 발명의 일 실시 예에 따른 마이크로 서버의 간략한 구성을 도시한 블록도이다.
도 1을 참조하면, 본 실시 예에 따른 마이크로 서버(100)는 통신부(110), 모듈 관리부(120) 및 복수의 프로세서 모듈(200)로 구성된다.
통신부(110)는 관리 서버(400)와 통신을 수행한다. 구체적으로, 통신부(110)는 네트워크 컨트롤러 및 LAN 포트를 포함하며, 모듈 관리부(120)가 관리 서버(400)와 통신을 수행할 수 있도록 한다. 여기서 통신부(110)는 마이크로 서버(100)의 서비스를 수행하는 네트워크 채널과 분리된 서버 관리용 네트워크 채널(OOB(Out of band)을 통하여 관리 서버(400)와 통신을 수행할 수 있다. 한편, 본 실시 예에서는 유선의 LAN 포트를 통하여 관리 서버(400)와 통신을 수행하는 것으로 설명하였지만, LAN 방식 이외의 다른 유선 통신 방식뿐만 아니라, 무선 통신 방식으로 관리 서버(400)와 통신을 수행하는 형태로도 구현될 수 있다.
모듈 관리부(120)는 공용화된 BMC(Baseboard management controller)이다. 여기서 BMC란 IPMI를 지원하는 서버에 장착되는 마이크로프로세서로, 본 실시 예에서는 종래의 BMC에서 지원하는 기능 중 공용이 가능한 기능을 공용화하여 마이크로 서버 측에서 처리를 수행한다. 이에 대해서는 도 6 및 도 7을 참조하여 후술한다.
구체적으로, 모듈 관리부(120)는 복수의 프로세서 모듈 각각의 장치 정보를 수집한다. 보다 구체적으로, 모듈 관리부(120)는 복수의 프로세서 모듈 각각으로 장치 정보를 수집하기 위하여, 장치 정보의 전송 요청을 각 프로세서 모듈의 수집부에 전송할 수 있도록 스위치부(140)를 제어하고, 각 프로세서 모듈로부터 장치 정부를 수집할 수 있다.
여기서 장치 정보는, 프로세서 모듈에 장착된 CPU 정보(예를 들어, CPU 타입, 동작 클록수 등) 및 프로세서 모듈의 동작 정보(모드 여부, 전원 공급 여부, 프로세스 점유율 등), 프로세서 모듈의 상태 정보(센서로부터의 수집된 정보), 상술한 정보 이외에도 IPMI에서 제공하는 정보 등을 포함할 수 있다.
한편, 본 실시 예에 따른 마이크로 서버(100)는 베이스 보드를 통하여 네트워크, 파워 및 팬 등을 공유하기 때문에, 모듈 관리부(120)는 베이스 보드에 장착된 수집부(170 또는 slave BMC)를 통하여 팬 상태 정보, 전원 정보 및 네트워크 정보를 수집할 수 있다.
그리고 모듈 관리부(120)는 수집된 복수의 프로세서 모듈의 장치 정보를 이용하여 복수의 프로세서 모듈 각각에 대한 IPMI 서비스를 제공한다. 구체적으로, 모듈 관리부(120)는 복수의 프로세서 모듈(200) 각각으로부터 수집된 장치 정보 및 베이스 보드에 장착된 수집부(170)를 통하여 수집된 정보를 기초로 복수의 프로세서 모듈에 대한 IPMI(Intelligent Platform Management Interface) 서비스를 가상화하여 상기 관리 서버(400)에 제공할 수 있다. 이 경우, 관리 서버(400)는 프로세서 모듈(200)의 상태 정보를 이용하여 관리자 또는 사용자에게 마이크로 서버(100)의 상태를 표시할 수 있으며, 다양한 프로세서 모듈 중 적절한 프로세서 모듈을 선택하여 리소스 할당을 수행할 수 있다.
여기서 IPMI는 임베디드 관리 하위 시스템이 통신할 수 있는 특정 방법을 정의하는 개방형 표준 하드웨어 관리 인터페이스 규격으로, 프로세서 모듈에 대한 모니터링(monitoring), 로깅(logging), 리커버리(recovery), 인벤토리(inventory) 및 하드웨어 제어를 수행하는 것으로, 본 실시 예에서는 이러한 IPMI 서비스를 프로세서 모듈에 장착된 마이크로프로세서에서 수행하지 않고, 베이스 보드에 장착된 모듈 관리부(120)에서 가상화하여 제공한다.
여기서 모니터링은 각 프로세서 모듈의 이상 동작 여부를 감시하는 것이고, 로깅은 시스템이 작동할 때 시스템의 작동상태의 기록·보존 또는 이용자의 습성조사 및 시스템 동작의 분석 등을 하기 위해 작동 중의 각종 정보를 기록하는 것이다. 그리고 리커버리는 프로세서 모듈이 고장 또는 이상을 갖는 경우 이를 회복하는 것이고, 인벤토리는 프로세서 모듈의 장치 정보를 목록화하는 것이다.
구현시에 모듈 관리부(120)는 복수의 프로세서 모듈 각각의 IPMI 서비스를 가상화하기 위하여, 전가상화(Full virtualization) 방식, 반가상화(Para-virtualization) 방식 및 어플레이션 가상화(Application virtualization) 방식 중 하나의 가상화 방식으로 구현될 수 있다. 각각의 가상화 방식에 따른 모듈 관리부(120)의 구성에 대해서는 도 9 내지 도 11을 참조하여 후술한다.
이와 같은 가상화 방식에 의하여 모듈 관리부(120)는 수집된 장치 정보에 대응되는 프로세서 모듈이 수집된 장치 정보를 관리 서버에 전송하는 것과 같이 가상화할 수 있으며, 관리 서버(400)로부터 특정 프로세서 모듈에 대한 제어 정보를 수신하면, 특정 프로세서 모듈에 대한 제어 정보에 대응되는 하드웨어 제어를 수행할 수 있다. 또한, 모듈 관리부(120)는 수집된 장치 정보를 기초로 복수의 프로세서 모듈 각각의 이상 여부를 감지하고, 이상이 감지된 프로세서 모듈에 대한 정보를 관리 서버(400)에 전송하며, 이상이 감지된 프로세서 모듈에 대한 하드웨어 제어를 수행할 수 있다.
프로세서 모듈(200)은 하나의 CPU, 기억장치, 운영체제 등 서버의 핵심 요소를 내장하고, 마이크로 서버(100)로부터 전원, 입출력, 부수 장치 및 각종 제어 기능을 지원받아 서버로서의 기능을 수행하는 모듈이다. 프로세서 모듈(200)의 구체적인 구성 및 동작에 대해서는 도 4 및 도 5를 참조하여 후술한다.
이와 같이 본 실시 예에 따른 마이크로 서버(100)는 기존의 프로세서 모듈에서 처리하는 IPMI 서비스를 마이크로 서버(100)에 장착되는 모듈 관리부에서 공용화하여 제공하는바, 프로세서 모듈 각각에 고 기능의 BMC 칩을 구비할 필요가 없게 된다. 또한, BMC 칩이 구비될 필요가 없게 됨에 따라서, BMC 칩과 함께 배치되는 네트워크 컨트롤러 및 LAN 포트를 프로세서 모듈에 배치할 필요가 없게 되어, 프로세서 모듈의 면적을 작게 설계할 수 있으며, 보드 설계시의 복잡도 및 비용을 감소할 수 있는 효과가 있다.
이상에서는 마이크로 서버(100)에 두 개의 프로세서 모듈만이 장착되는 것으로 도시하였지만, 구현시에 3개 이상의 프로세서 모듈이 마이크로 서버(100)에 장착되는 형태로도 구현될 수 있다.
한편, 도 1을 설명함에 있어서, 통신부(110) 및 모듈 관리부(120)가 개별적으로 구현되는 것으로 도시하였지만, 모듈 관리부(120)와 통신부(110)의 기능은 하나의 구성에서 구현될 수도 있다.
또한, 도 1을 설명함에 있어서, 마이크로 서버(100)에 통신부(110), 모듈 관리부(120) 및 프로세서 모듈(200)만이 구비되는 것으로 설명하였지만, 구현시에는 상기 구성 이외의 다른 구성들이 더 포함될 수 있으며, 이에 대해서는 도 2를 참조하여 이하에서 설명한다.
도 2는 본 발명의 제1 실시 예에 따른 마이크로 서버의 구체적인 구성을 도시한 블록도이다.
도 2를 참조하면, 본 실시 예에 따른 마이크로 서버(100)는 통신부(110), 모듈 관리부(120), 메인 컨트롤러(130), 스위칭부(140), I/O 디바이스부(150), 공통 인터페이스 버스(160) 및 복수의 프로세서 모듈(200)로 구성된다. 한편, 도시되어 있지 않지만, 상술한 통신부(110), 모듈 관리부(120), 스위칭부(140), I/O 디바이스부(150) 및 공통 인터페이스 버스(160)는 베이스 보드에 형성되며, 복수의 프로세서 모듈은 베이스 보드에 형성된 슬롯을 통하여 장착 또는 탈착이 가능하다.
통신부(110), 모듈 관리부(120) 및 복수의 프로세서 모듈(200)의 구성은 도 1의 구성들과 동일한 기능을 수행하는바, 중복 설명은 생략한다.
메인 컨트롤러(130)는 마이크로 서버(100)의 각 구성을 제어한다. 구체적으로, 메인 컨트롤러(130)는 I/O 디바이스부(150)를 통하여 전송된 데이터를 공통 인터페이스 버스(160)를 이용하여 각각의 프로세서 모듈(200)에 전송할 수 있도록 스위치부(140)를 제어할 수 있다.
그리고 메인 컨트롤러(130)는 마이크로 서버(100)에 장착된 각각의 프로세서 모듈(200)을 제어하여, 웹 서버, FTP 서버, 메일 서버, 데이터베이스 서버 등 특화된 시스템을 구성할 수 있게 한다. 일 예로, 동시에 많은 사용자가 액세스하는 웹 서버로 이용되는 경우, 메인 컨트롤러(130)는 액세스되는 웹페이지에 더 많은 프로세서 모듈을 이용할 수 있도록 프로세서 모듈(200)을 제어하거나, 고속의 인터넷 연결만으로 연결된 웹 캐싱용 프로세서가 해당 처리를 수행할 수 있도록 할 수 있다.
스위칭부(140)는 I/O 디바이스부(150)와 복수의 프로세서 모듈을 선택적으로 연결할 수 있다. 구체적으로, 스위칭부(140)는 메인 컨트롤러(130)의 제어에 따라 I/O 디바이스부(150)로부터 수신된 데이터를 복수의 프로세서 모듈(200) 중 어느 하나를 선택적으로 연결하여 데이터를 송수신하게 한다.
그리고 스위치부(140)는 PCI Express 스위치 회로(또는 MRA PCIe switch)로 구성될 수 있으며, 복수의 프로세서 모듈(200)과 적어도 하나의 I/O 카드의 연결관계를 선택적으로 조정할 수 있다.
이러한 스위치부(140)는 I/O 가상화 기술을 통하여 구현될 수 있다. 여기서 I/O 가상화 기술이란, 한 개의 I/O 카드를 여러 대의 프로세서 모듈에서 동시에 사용하는 기술을 의미한다.
스위치부(140)는 프로세서 모듈(200)과 I/O 디바이스부(150) 사이의 연결 구조를 조정할 수 있으므로, I/O 디바이스부(150)와 프로세서 모듈(200)의 물리적인 위치를 변경하지 않고도, 프로세서 모듈(200)의 연결 구조를 조정할 수 있다.
I/O 디바이스부(150)는 적어도 하나의 I/O 카드를 포함하고, 마이크로 서버(100) 외부와 데이터를 송수신한다. 여기서 I/O 카드는 Enternet Card(150-1), Fiber Channel Card(150-2) 등으로 구현될 수 있다.
그리고 I/O 디바이스부(150)는 외부의 장치 또는 외부의 네트워크 등으로부터 데이터를 수신하거나, 송신할 수 있다. 여기서 데이터는 PCI Express 인터페이스를 통하여 프로세서 모듈(200)에 송수신될 수 있으며, 프로세서 모듈(200)과의 연결은 스위치부(140)에서 제어할 수 있다.
공통 인터페이스 버스(160)는 마이크로 서버(100)의 각 구성을 연결하는 접속 장치이다. 구체적으로, 공통 인터페이스 버스(160)는 메인 컨트롤러(130)의 제어에 따라 쌍방향 통신 또는 반이중 통신을 수행할 수 있다. 이러한 공통 인터페이스 버스(160)는 제어 명령 신호를 연결하는 제1 인터페이스 버스(160-1)와 데이터 신호를 연결하는 제2 인터페이스 버스(160-2)로 구성될 수 있다.
한편, 공통 인터페이스 버스(160)는 I2C 인터페이스, PCI Express 인터페이스 및 SMBUS 인터페이스 중 적어도 하나를 지원할 수 있다. 이에 따라, 상술한 제어 명령 신호를 연결하는 제1 인터페이스 버스(160-1)는 I2C 인터페이스 버스 또는 SMBus 인터페이스 버스일 수 있으며, 데이터 신호를 연결하는 제2 인터페이스 버스(160-2)는 PCI Express 인터페이스 버스일 수 있다. 그리고 상술한 모듈 관리부(120)와 프로세서 모듈(200) 간의 통신은 I2C 인터페이스 또는 SMBus 를 지원하는 제1 인터페이스 버스를 통하여 수행될 수 있다.
여기서 I2C(Inter-Intergrated Circuit) 인터페이스란, 중앙처리장치와 저속의 주변 장치 사이의 통신을 위한 용도로 개발된 버스 규격으로, 두 가닥의 선을 사용하므로 TWI(Two Wire Interface)라고도 불린다. I2C 인터페이스 버스는 동기식 통신 방식으로, 클럭 신호와 데이터 신호로 이루어져, 슬레이브 장치의 수에 관계없이 마스터 장치와 양방향 통신이 가능하다. 또한, 버스 하나에 두 개 이상의 마스터 장치를 둘 수 있으며, 슬레이브 장치들은 I2C 인터페이스 버스가 동작중일 경우에도 추가/제거될 수 있다. 이에 따라 상술한 메인 컨트롤러, 모듈 관리부가 마스터 장치로 동작될 수 있으며, 상술한 복수의 프로세서 모듈(200)이 슬레이브 장치로 동작될 수 있다.
그리고 PCI Express(Peripheral Componet Interconnet Express) 인터페이스란 종래의 PCI(Peripheral Componet Interconnet) 병렬 인터페이스 버스와 소프트웨어적인 호환성을 유지하며, 장치 간의 고속 입출력을 위한 개량된 직렬 구조의 로컬 버스 규격이다. PCI express 인터페이스는 대용량의 데이터 처리에 적합하다. 이러한 점에서, 본 실시 예에서는 메인 컨트롤러(130)의 제어에 따라 공통 인터페이스 버스(160-2)의 PCI Express 인터페이스 버스를 통하여 각 프로세서 모듈(200)에 데이터를 전달한다.
그리고 SMBus(System management Bus) 인터페이스란 마더보드에 있는 저속도 장치들과 통신하는데 사용하는 간단한 2선 버스로, 클럭, 데이터, 명령을 전달하며 I2C직렬 버스 프로토콜에 기반한 인터페이스이다.
구체적으로, I/O 디바이스부(150)로부터 수신된 데이터는 PCI Express 인터페이스를 통하여 스위치부(140)에서 선택된 프로세서 모듈(200)에 전송될 수 있다. 여기서 스위치부(140)는 메인 컨트롤러(130)의 제어를 받아 데이터를 전송할 프로세서 모듈(200)을 선택할 수 있다.
프로세서 모듈(200)은 공통 인터페이스 버스(160)를 통해 메인 컨트롤러(130)와 연결된다. 구체적으로, 프로세서 모듈(200)은 공통 인터페이스 버스(160)와 프로세서 모듈에 탑재된 CPU가 사용하는 인터페이스 사이의 연결을 중계하는 모듈 컨트롤러(220)를 포함한다.
그리고 프로세서 모듈(200)은 공통 인터페이스 버스(160)를 통해 모듈 관리부(120)와 연결된다.
이상에서는 마이크로 서버(100)의 기본적인 구성들에 대해서 설명하였으며, 이하에서는 상술한 IPMI 서비스를 제공하기 위한 구성만을 기초로 마이크로 서버(100)의 동작을 설명한다.
도 3은 제2 실시 예에 따른 마이크로 서버의 구체적인 구성을 도시한 블록도이다.
도 3을 참조하면, 본 실시 예에 따른 마이크로 서버(100)는 모듈 관리부(120), 수집부(170), 센서들(180) 및 복수의 프로세서 모듈(200)로 구성된다.
모듈 관리부(120)는 LAN Port(또는 RJ-45 커넥터)를 통하여 관리 서버(400)와 통신을 수행한다.
그리고 모듈 관리부(120)는 복수의 프로세서 모듈(200) 및 수집부(170)를 통하여 정보들을 수집하고, 수집된 정보를 기초로 관리 서버에 복수의 프로세서 모듈 각각에 대한 IPMI 서비스를 제공한다. 모듈 관리부(120)의 구체적인 구성 및 동작에 대해서는 도 9 내지 도 11을 참조하여 후술한다.
수집부(170)는 베이스 보드에 장착된 센서들(180)로부터 네트워크, 파워 및 팬들에 대한 정보를 수집한다. 그리고 수집부(170)는 수집된 정보를 모듈 관리부(120)에 전송한다. 이러한 수집부(170)는 센서로부터 정보를 수집하거나, 간단한 제어를 수행할 수 있는 칩으로 구현될 수 있으며, 후술할 프로세서 모듈(200)에 장착되는 수집부(300)와 동일한 칩일 수 있다.
센서들(180)은 네트워크 센서, 파워 센서, 팬 센서 등일 수 있으며, 네트워크, 파워, 팬 등의 동작 상태에 대한 정보, 이상 유무에 대한 정보를 수집부(170)의 제어에 의하여 생성하여 수집부(170)에 제공할 수 있다.
프로세서 모듈(200) 각각은 CPU(210), 모듈 컨트롤러(220), 휘발성 메모리(230), 네트워크(240), 바이오스(250) 및 수집부(300, 또는 slave BMC)로 구성된다.
CPU(210)는 프로세서 모듈(200)의 중앙처리장치로, 제어 명령을 해독하고 산술논리연산이나 데이터 처리를 실행하는 장치이다. CPU의 구체적인 설명은 도 4를 참조하여 후술한다.
모듈 컨트롤러(220)는 프로세서 모듈(200)의 각 구성을 제어하는 구성으로, 바이오스(250)에 저장된 정보를 기초로 프로세서 모듈(220)의 각 구성을 제어한다. 그리고 모듈 컨트롤러(220)는 마이크로 서버(100)로부터 전달되는 데이터 및 제어 정보를 CPU를 이용하여 처리한다. 모듈 컨트롤러(220)의 구체적인 동작에 대해서는 도 4를 참조하여 후술한다. 이러한 모듈 컨트롤러(220)는 마이컴 칩셋일 수 있다.
휘발성 메모리(230)는 정보를 저장하는 메모리로, 정보를 유지하기 위해서 지속적인 전력 공급을 요구하는 휘발성 메모리로, 운영체제의 구동시에 프로그램 또는 프로세스 처리 속도를 높이기 위한 작업 공간으로 이용된다. 휘발성 메모리(230)는 DRAM(Dynamic Random Access Memory), SRAM(static random access memory) 등일 수 있다. 한편, 본 실시 예에서는 프로세서 모듈(200)에 휘발성 메모리만이 구비되는 것으로 도시하였지만, 구현시에는 도 5에 도시된 바와 같이 비휘발성 메모리(260)인 HDD, SDD, Flash memory 등도 구비될 수 있다.
네트워크(240)는 마이크로 서버(100)로부터 데이터 및 제어 명령을 수신한다. 구체적으로, 네트워크(240)는 상술한 공통 인터페이스 버스(160)와 연결되며, 제어 명령 신호 및 모듈 관리부(120)의 정보 요청 등은 I2C 인터페이스 버스를 통하여 송수신할 수 있으며, I/O 디바이스부(150)를 통한 데이터 신호는 PCI Express 인터페이스 버스를 통하여 송수신할 수 있다.
바이오스(250)는 모듈 컨트롤러(220)의 동작에 필요한 정보 및 프로세서 모듈(200)의 구성에 대한 정보를 저장해 놓은 저장매체이다.
수집부(300)는 프로세서 모듈(200)의 장치 정보를 수집하여 모듈 관리부(120)에 전송하거나, 모듈 관리부(120)의 제어에 따라 프로세서 모듈(200)에 대한 리커버리를 진행하거나, 모듈 컨트롤러(220)의 바이오스의 펌웨어(250)를 업그레이드할 수 있다.
도 4 및 도 5는 본 실시 예에 따른 프로세서 모듈의 간략한 구성을 도시한 블록도이다.
도 4 및 도 5를 참조하면, 프로세서 모듈(200)은 CPU(210), 모듈 컨트롤러(220), 수집부(300, 또는 Slave BMC)로 구성된다. 여기서 프로세서 모듈(200)은 마이크로 서버(100)에 장착시킬 수 있는 모듈화된 고밀도 서버로, 하나 이상의 CPU, 저장부 및 운영체계 등을 서버의 핵심 요소를 구비할 수 있다. 이러한 프로세서 모듈(200)은 마이크로 서버(100)의 베이스 보드에 장착되어, 마이크로 서버(100)로부터 전원, 입출력, 각종 제어 기능을 지원받아 서버로서의 기능을 수행한다.
CPU(210)는 프로세서 모듈(200)의 중앙처리장치로, 제어 명령을 해독하고 산술논리연산이나 데이터 처리를 실행하는 장치이다. CPU(210)는 BIU(BUS Interface Unit)을 구비하여, 외부 구성과 통신을 수행할 수 있다. 여기서 CPU는 Intel(R) 계열을 CPU, ARM(R) 계열의 CPU, ARM 타입 CPU일 수 있다.
한편, CPU(210)는 제조사에 따라 아키텍처가 상이할 수 있다. 아키텍처란 CPU의 기본 구조, 설계 방식 및 제조 공정까지 포함하는 개념으로, 클록 속도나 코어의 수, 캐시의 용량, BIU등이 결정된다. 따라서, 각각의 제조사마다의 CPU의 아키텍처에 따라 인터페이스 규격이 정의되어 사용되므로, 다른 제조사의 CPU를 혼용하여 사용할 수 없었다.
일 예로, 도 5에 도시된 바와 같이 하나의 프로세서 모듈(200)에 복수의 CPU(210-1, 210-2)가 장착될 수 있다. 그러나 프로세서 모듈(200) 내의 인터페이스는 동일해야 하는바, 복수의 CPU(210-1, 210-2)는 동일한 제조사에서 설계된 동일한 타입의 CPU일 필요가 있다. 이 경우, 하나의 모듈 컨트롤러(220)의 제어에 의하여 복수의 CPU(210-1, 210-2) 각각은 독립된 운영체제를 실행하거나, 하나의 운영체제상에서 동작될 수 있다.
그러나 이러한 다른 제조사의 CPU를 혼용하여 사용할 수 없다는 내용은 하나의 프로세서 모듈에 국한된 것이며, 프로세서 모듈 각각은 이기종의 CPU로 구성될 수 있다. 예를 들어, 제1 프로세서 모듈(200-1)은 Intel(R) 계열의 CPU가 장착될 수 있으며, 제2 프로세서 모듈(200-2)은 ARM 타입 CPU가 장착될 수 있다.
모듈 컨트롤러(220)는 공통 인터페이스 버스(160)와 연결되어 프로세서 모듈(200)의 CPU(210)가 사용하는 인터페이스 사이의 연결을 중계한다. 구체적으로, 프로세서 모듈(200)은 장착하고 있는 CPU(210)에 대응되는 인터페이스로 설계된다. 따라서, 마이크로 서버(100)의 공통 인터페이스 버스와 통신을 하기 위하여, 모듈 컨트롤러(220)는 장착하고 있는 CPU(210)에 대응되는 인터페이스 프로토콜로 제어 명령 및 데이터를 변환할 수 있다.
그리고 모듈 컨트롤러(220)는 CPU(220)의 BIU에 연결되어 제어 명령 및 데이터를 송수신할 수 있다. 예를 들어, 프로세서 모듈에 장착되어 있는 CPU의 타입이 Inter(R)인 경우, 모듈 컨트롤러(220)는 마이크로 서버(100)의 메인 컨트롤러(130)에서 전송된 제어 명령을 I2C 인터페이스 버스(160-1)를 통하여 전달받고, 전달받은 제어 명령을 intel(R) 타입의 CPU에 대응되는 규격의 인터페이스로 변환하여 CPU(210) 및 프로세서 모듈(200) 내의 각 구성에 제공할 수 있다.
그리고 모듈 컨트롤러(220)는 프로세서 모듈(200)에 장착되어 있는 CPU의 제어에 사용되는 펌웨어를 구비하여, 프로세서 모듈(200)의 각 구성을 제어할 수 있다. 이러한 모듈 컨트롤러(220)에 구비된 펌웨어는 후술할 수집부(300)에 의하여 업데이트될 수 있다.
수집부(300)는 종래의 BMC에서 모듈 관리부(120)에서 공용화된 기능이 생략된 구성으로, 프로세서 모듈(200)의 장치 정보를 수집하여 모듈 관리부(120)에 전송하거나, 모듈 관리부(120)의 제어에 따라 프로세서 모듈(200)에 대한 리커버리를 진행하거나, 모듈 컨트롤러(220)의 펌웨어를 업그레이드할 수 있다.
도 6은 IPMI 기능을 제공하기 위한 종래의 BMC를 도시한 블록도이다.
도 6을 참조하면, OOB를 통하여 IPMI 서비스를 제공하기 위해서 종래의 프로세서 모듈은 CPU(10), 칩셋(20) 구성 이외에 BMC칩(30)과 별도의 네트워크 컨트롤러(40), RJ-45 이더넷 커넥터(50)가 프로세서 모듈(200)에 내장되었다.
여기서, BMC란 IPMI를 통해서 관리 콘솔에서 명령을 받아서, 센서(50, 60)의 값을 읽거나 파워(70)를 조작하거나, 문제 발생시 이벤트를 네트워크를 통해서 알려주는 기능을 하는 마이크로 프로세서이다. 네트워크를 통하여 이벤트 및 조작 명령이 전달되어야 하기 때문에, 소프트웨어 구조를 보면 별도의 OS 및 TCP/IP 스택을 포함한 각종 드라이버를 모두 가지고 있었다. 또한, 필요에 따라 BMC 펌웨어를 저장하기 위한 별도의 저장부(예를 들어, ROM, Flash Memory)가 필요하였다.
그러나 마이크로 서버(100)에서는 팬 관리 및 전원 관리가 불필요하다. 따라서, 본 실시 예에서는 종래의 BMC에서 구비된 기능 중 반드시 프로세서 모듈에 장착되어서 동작해야 하는 센서 측정 기능, 마이크로 서버(100)와 통신을 수행하기 위한 버스 드라이버 및 프로세서 모듈(200)을 제어하기 위한 명령어 처리 기능만을 갖는 모듈 관리부(220)만을 프로세서 모듈(200)에 구비하고, 기존의 BMC에서 제공하는 나머지 기능은 모듈 관리부(120)에서 공용하여 처리한다. 이와 같은 실시 예에 대해서는 도 7 및 8을 참조하여 이하에서 자세히 설명한다.
도 7 및 도 8은 IPMI 기능을 제공하기 위한 본 실시 예에 따른 구조를 도시한 블록도이다.
도 7 및 도 8을 참조하면, 프로세서 모듈(200-1, 200-2, 200-3) 각각에는 CPU(210), 모듈 컨트롤러(220) 및 기본적인 기능(310, 320,330)만을 갖는 수집부(300 또는 slave BMC)가 배치된다.
CPU(210) 및 모듈 컨트롤러(220)의 동작에 대해서는 도 4와 관련하여 앞서 설명하였는바, 중복 설명은 생략한다.
수집부(300)는 프로세서 모듈(200)에 배치되는 센서(50)의 정보를 읽고 오는 기능(310), 간단한 프로세서를 처리하는 기능(320)(예를 들어, 프로세서 모듈의 리커버리 등), 모듈 관리부(120)와 통신하는 기능(330)만을 갖는다. 도 6의 30 구성과 비교하면 많은 기능을 갖지 않고 있는바, 수집부(300)는 비교적 작은 마이컴으로 구현될 수 있다. 그리고 수집부(300)는 프로세서 모듈(200)의 I2C 인터페이스를 통하여 모듈 관리부(120)와 통신을 수행한다는 점에서, 프로세서 모듈(200)에는 네트워크 컨트롤러 및 LAN 커넥터의 배치가 불필요하다.
또한, 마이크로 서버(100)에서 팬 관리 및 전원 관리를 수행하는바, 수집부(300)는 도 6의 BMC와 비교하였을 때, 팬으로부터 정보를 수집하지 않으며, 전원 관리에 대해서는 별도로 수행하지 않는다. 이러한 팬 관리 및 전원 관리는 베이스 보드 상에 배치되는 수집부를 통하여 수집된다.
모듈 관리부(120)는 공용화된 BMC(Baseboard management controller)이다.구체적으로, 모듈 관리부(120)는 마이크로 서버(100)에 설치된 프로세서 모듈의 개수만큼 가상의 BMC를 생성하고, 복수의 프로세서 모듈 각각의 장치 정보를 수집부(300)를 통하여 수집한다. 여기서 장치 정보는, 프로세서 모듈에 장착된 CPU 정보(예를 들어, CPU 타입, 동작 클록수 등) 및 프로세서 모듈의 동작 정보(모드 여부, 전원 공급 여부, 프로세스 점유율 등), 상술한 정보 이외에도 IPMI에서 제공하는 정보 등을 포함할 수 있다.
그리고 모듈 관리부(120)는 베이스 보드에 장착된 수집부(170)를 통하여 팬 상태 정보, 전원 정보 및 네트워크 정보를 수집할 수 있다.
그리고 모듈 관리부(120)는 복수의 프로세서 모듈(200) 각각으로부터 수집된 장치 정보 및 베이스 보드에 장착된 수집부(170)를 통하여 수집된 정보를 기초로 복수의 프로세서 모듈에 대한 IPMI(Intelligent Platform Management Interface) 서비스를 가상화하여 상기 관리 서버(400)에 제공할 수 있다. 구체적인 가상화 방식에 대해서는 도 9 내지 도 11을 참조하여 후술한다.
그리고 모듈 관리부(120)는 통신부(110)를 통하여 외부 관리 서버(400)와 통신을 수행할 수 있다.
이와 같이 본 실시 예에 따른 마이크로 서버(100)는 기존의 프로세서 모듈 각각에서 처리하는 IPMI 서비스를 마이크로 서버(100)에 장착되는 모듈 관리부에서 공용화하여 제공하는바, 프로세서 모듈 각각에 고 기능의 BMC 칩을 구비할 필요가 없게 된다. 또한, BMC 칩이 구비될 필요가 없게 됨에 따라서, BMC 칩과 함께 배치되는 네트워크 컨트롤러 및 LAN 포트를 프로세서 모듈에 배치할 필요가 없게 되어, 프로세서 모듈의 면적을 작게 설계할 수 있으며, 보드 설계시의 복잡도 및 비용을 감소할 수 있는 효과가 있다.
한편, 도 7 및 도 8을 설명함에 있어서, 마이크로 서버 내의 모든 프로세서 모듈(200) 각각에 수집부(slave BMC)가 배치되는 것으로 도시하고 설명하였지만, 구현시에 프로세서 모듈 중 일부는 종래의 BMC가 배치되는 형태로도 구현될 수 있다. 즉, 본 실시 예에 따른 모듈 관리부는 본 실시 예와 같은 slave BMC를 이용할 수 있을 뿐만 아니라, 종래의 일반적인 BMC를 통하여 상술한 바와 같은 정보를 취득하거나, 제어를 수행할 수 있도록 구현할 수도 있다.
이 경우, 본 실시 예에 따른 모듈 관리부는 마이크로 서버 내에 배치되는 프로세서 모듈의 수집부뿐만 아니라, 외부 장치에 배치되는 수집부의 정보를 취득하거나, 제어를 수행하는 형태로도 구현될 수 있다. 예를 들어, 마이크로 서버에 저장 장치가 연결될 수 있는 경우, 저장 장치에 구비된 BMC를 가상화하는 형태로도 구현될 수 있다.
한편, 본 발명의 일 실시 예에 따른 마이크로 서버(100)는 프로세서 모듈 각각에 배치되어 동작하는 BMC의 기능을 가상화하여, 하나의 프로세서에서 개별 IPMI 서비스를 제공한다. 가상화된 BMC가 프로세서 모듈의 수만큼 실행될 경우, 네트워크 채널에 연결된 OOB를 통하여 관리서버는 실제 서버가 다수로 있는 것으로 볼 수 있으며, 관리를 위하여 선택한 개별 서버의 파워 및 상태를 파악하고 제어를 수행할 수 있다.
이러한 IPMI 서비스의 가상화는 전가상화(Full virtualization), 반가상화(para virtualization), 어플리케이션 가상화(Application virtualization)으로 구현될 수 있는데 이하에서는 도 9를 참조하여 전가상화 방식에 대해서 설명한다.
도 9는 제1 실시 예에 따른 모듈 관리부의 구조를 도시한 도면이다. 구체적으로, 제1 실시예는 전가상화 방식을 이용하여 모듈 관리부를 구현한 경우이다.
도 9를 참조하면, 모듈 관리부(120)는 각종 구성과 물리적으로 연결되는 하드웨어(121), 하이퍼바이저(122) 및 에뮬레이션부(123)를 포함한다.
하드웨어(121)는 통신부(110) 및 복수의 프로세서 모듈(200)과 연결되는 하드웨어 구성이다.
하이퍼바이저(122)는 기존의 BMC의 소프트웨어(123)를 가상화하는 소프트웨어로, 프로세서나 메모리와 같은 다양한 컴퓨터 자원에서 서로 다른 각종 운영체제의 접근 방법을 통제하는 얇은 계층의 소프트웨어이다.
이와 같이 하이퍼바이저(122)를 이용함으로써, 기존의 BMC에서 사용하는 소프트웨어를 별도의 가공 없이 그대로 사용할 수 있다는 장점이 있다. 다만, 하드웨어를 에뮬레이션하고, 하이퍼바이저를 개발하는데 시간이 소용된다는 단점이 있으며, 하드웨어 에뮬레이션에 의하여 속도가 빠르지 않은 단점이 있다.
도 10은 제2 실시 예에 따른 모듈 관리부의 구조를 도시한 도면이다. 구체적으로, 제2 실시예는 반가상화 방식을 이용하여 모듈 관리부를 구현한 경우이다. 여기서 반 가상화란 Guest OS가 직접 제어하는 방식이 아닌, 하이퍼바이저에게 의뢰하여 처리하는 방식이다.
도 10을 참조하면, 모듈 관리부(120')는 각종 구성과 물리적으로 연결되는 하드웨어(121), 하이퍼바이저(122) 및 에뮬레이션부(124)를 포함한다.
하드웨어(121)는 통신부(110) 및 복수의 프로세서 모듈(200)과 연결되는 하드웨어 구성이다.
하이퍼바이저(122)는 프로세서나 메모리와 같은 다양한 컴퓨터 자원에서 서로 다른 각종 운영체제의 접근 방법을 통제하는 얇은 계층의 소프트웨어이다. 여기서 하이퍼바이저는 XEN 하이퍼바이저일 수 있다.
에뮬레이션부(124)는 수집부(170)에서 수집된 정보를 가공하는 에뮬레이션부(124-1) 및 프로세서 모듈의 수집부(300)에서 수집된 정보를 처리하는 에뮬레이션부(124-2, 124-3)로 구성된다. 구체적으로, 마이크로 서버(100)는 팬 및 파워를 공용하여 사용하는바, 이에 대한 정보를 베이스 보드에 장착된 수집부를 통하여 수집한 정보와 프로세서 모듈의 수집부에서 수집된 장치 정보를 합하여 처리하기 위하여, 이러한 구성을 갖는다.
반 가상화의 경우, 전가상화의 경우보다 구현이 쉽고, 동작 속도 또한 빠르다는 장점이 있다.
도 11은 제3 실시 예에 따른 모듈 관리부의 구조를 도시한 도면이다. 구체적으로, 제3 실시 예에는 어플리케이션 가상화 방식을 이용하여 모듈 관리부를 구현한 경우이다.
도 11을 참조하면, IPMI 서비스를 하는 BMC를 어플리케이션 형태로 개발하여, 개별적인 가상의 랜 카드에 연결하도록 하여, 간단한 형태의 어플리케이션 가상화를 구현한 형태이다. 전가상화 및 반가상화 방식과 비교하였을 때, 구현이 쉬우며, 소프트웨어 자체가 가벼운 장점이 있다.
도 12는 본 발명의 일 실시 예에 따른 프로세서 모듈의 제어 방법을 설명하기 위한 흐름도이다.
도 12를 참조하면, 먼저, 모듈 관리부에서 복수의 프로세서 각각의 수집부에 장치 정보의 전송을 요청한다(S1210). 여기서 장치 정보는, 프로세서 모듈에 장착된 CPU 정보(예를 들어, CPU 타입, 동작 클록수 등) 및 프로세서 모듈의 동작 정보(모드 여부, 전원 공급 여부, 프로세스 점유율 등), 프로세서 모듈의 상태 정보(센서로부터의 수집된 정보), 상술한 정보 이외에도 IPMI에서 제공하는 정보 등을 포함할 수 있다.
그리고 상기 요청에 대응하여, 프로세서 모듈 각각으로부터 장치 정보를 수신하여, 복수의 프로세서 모듈의 장치 정보를 수집할 수 있다(S1220).
그리고 모듈 관리부에서 수집된 복수의 프로세서 모듈의 장치 정보를 이용하여, 관리 서버에 대한 복수의 프로세서 모듈 각각에 대한 IPMI 서비스를 제공한다(S1230). 구체적으로, 복수의 프로세서 모듈 각각에 대한 IPMI 서비스를 전가상화, 반가상화, 어플리케이션 가상화 중 하나의 가상화 방식을 이용하여 가상화하고, 가상화된 IPMI 서비스를 관리 서버에 제공할 수 있다.
그리고 IPMI 서비스에 대응하여, 수집된 프로세서 모듈의 장치 정보를 해당 프로세서 모듈에서 전송하는 것과 같이 관리 서버에 전송할 수 있으며, 관리 서버의 제어 명령에 대응되는 기능을 모듈 관리부에서 프로세서 모듈을 제어하여 수행할 수 있다.
이상과 같은 프로세서 모듈의 제어 방법은, 기존의 BMC 기능을 가상화하여 제공하는바, 비용과 부품 수를 줄일 수 있으며, 마이크로 서버의 소모 전력을 절감할 수 있는 효과가 있다. 도 12와 같은 제어 방법은 도 1 내지 도 3의 구성을 가지는 마이크로 서버상에서 실행될 수 있으며, 그 밖의 구성을 가지는 마이크로 서버상에서도 실행될 수 있다.
또한, 상술한 바와 같은 제4 실시 예에 따른 제어 방법은 컴퓨터에서 실행될 수 있는 실행가능한 알고리즘을 포함하는 프로그램으로 구현될 수 있고, 상기 프로그램은 비일시적 판독 가능 매체(non-transitory computer readable medium)에 저장되어 제공될 수 있다.
여기서 비일시적 판독 가능 기록매체란, 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라, 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로, 상술한 프로그램들은 CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리 카드, ROM 등과 같은 비일시적 판독가능 기록매체에 저장되어 제공될 수 있다.
도 13은 도 12의 IPMI 서비스 제공 단계를 구체적으로 설명하기 위한 흐름도이다.
도 13을 참조하면, 마이크로 서버(100)의 시스템이 온되면(S1310), 네트워크 프로세서를 개시한다(S1320).
그리고 마이크로 서버(100)에 장착된 프로세서 모듈(200)의 개수를 파악하고(1330), 파악된 개수만큼의 BMC 가상화를 수행한다(S1340).
그리고 BMC 가상화가 구동되면, 해당 BMC에 대응되는 프로세서 모듈(200)의 장치 정보를 호출하여 취득하고(S1370, S1380), 베이스 보드에 장착된 수집부(170)에 장치 정보의 전송을 요청하여 취득한다(S1350, S1360).
그리고 수집된 정보를 기초로 해당 프로세서 모듈에 대한 IPMI 서비스를 가상화 방식으로 제공한다(S1390).
도 14는 본 발명이 일 실시 예에 따른 프로세서 모듈에서의 제어 동작을 설명하기 위한 흐름도이다.
도 14를 참조하면, 프로세서 모듈에 구비된 수집부는 모듈 관리부(120)를 통하여 장치 정보의 요청을 수신한다(S1410),
장치 정보의 요청에 대응하여, 센서부로부터 값을 취득하고(S1420), 수집된 장치 정보를 모듈 관리부(120)에 전송한다(S1430).
그리고 모듈 관리부(120)를 통하여 제어 정보(즉, 제어 명령)가 수신되면, 수신된 제어 정보에 대응되는 동작을 수행할 수 있다(S1440). 예를 들어, 모듈 관리부(120)로부터 리커버리 명령을 수신하면, 수집부(300)는 프로세스 모듈이 재부팅되도록 할 수 있다.
이상과 같이 본 실시 예에 따른 프로세서 모듈은 자체적으로 제어 동작을 수행하지 않고 모듈 관리부의 제어에 의하여 동작을 수행하는바, 간단한 구성을 갖는 수집부에서도 기존과 같은 IPMI 서비스를 수행할 수 있게 된다. 도 14와 같은 제어 동작은 도 4의 구성을 가지는 프로세서 모듈(200)에서 실시될 수 있으며, 그 밖의 구성을 가지는 프로세서 모듈(200)에서도 실행될 수 있다.
또한, 상술한 바와 같은 프로세서 모듈에서의 제어 방법은 수집부에서 실행될 수 있는 실행 가능한 알고리즘을 포함하는 프로그램으로 구현될 수 있고, 상기 프로그램은 비일시적 판독 가능 기록매체(non-transitory computer readable medium)에 저장되어 제공될 수 있다.
이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면, 누구든지 본 발명의 기술적 사상 및 범위를 벗어나지 않는 범주 내에서 본 발명의 바람직한 실시 예를 다양하게 변경할 수 있음은 물론이다. 따라서 본 발명은 특허청구범위에서 청구하는 본 발명의 요지를 벗어나지 않는다면 다양한 변형 실시가 가능할 것이며, 이러한 변형 실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해돼서는 안 될 것이다.
100: 마이크로 서버 110: 통신부
120: 모듈 관리부 130: 메인 컨트롤러
140: 스위칭부 150: I/O 디바이스부
160: 공통 인터페이스 버스 200: 프로세서 모듈
210: CPU 220: 모듈 컨트롤러
230: 모듈 관리부

Claims (20)

  1. 마이크로 서버에 있어서,
    복수의 프로세서 모듈;
    외부의 관리 서버와 통신을 수행하는 통신부; 및
    상기 복수의 프로세서 모듈 각각의 장치 정보를 수집하고, 상기 수집된 복수의 프로세서 모듈의 장치 정보를 이용하여, 상기 관리 서버에 상기 복수의 프로세서 모듈 각각에 대한 IPMI(Intelligent Platform Management Interface) 서비스를 제공하는 모듈 관리부;를 포함하는 마이크로 서버.
  2. 제1항에 있어서,
    상기 IPMI(Intelligent Platform Management Interface) 서비스는 상기 프로세서 모듈에 대한 모니터링(monitoring), 로깅(logging), 리커버리(recovery), 인벤토리(inventory) 및 하드웨어 제어 중 적어도 하나를 수행하는 것을 특징으로 하는 마이크로 서버.
  3. 제1항에 있어서,
    상기 모듈 관리부는,
    상기 수집된 장치 정보에 대응되는 프로세서 모듈이 상기 수집된 장치 정보를 상기 관리 서버에 전송하는 것으로 가상화하는 것을 특징으로 하는 마이크로 서버.
  4. 제1항에 있어서,
    상기 모듈 관리부는,
    상기 관리 서버로부터 특정 프로세서 모듈에 대한 제어 정보를 수신하면, 상기 특정 프로세서 모듈에 대한 상기 제어 정보에 대응되는 하드웨어 제어를 수행하는 것을 특징으로 하는 마이크로 서버.
  5. 제1항에 있어서,
    상기 모듈 관리부는,
    상기 수집된 장치 정보를 기초로 상기 복수의 프로세서 모듈 각각의 이상 여부를 감지하고, 이상이 감지된 프로세서 모듈에 대한 정보를 상기 관리 서버에 전송하는 것을 특징으로 하는 마이크로 서버.
  6. 제1항에 있어서,
    상기 마이크로 서버의 팬 상태 정보, 전원 정보 및 네트워크 정보 중 적어도 하나의 정보를 수집하는 수집부;를 더 포함하고,
    상기 모듈 관리부는,
    상기 수집부를 통하여 수집된 정보와 상기 복수의 프로세서 모듈 각각으로 부터 수집된 장치 정보를 병합하여, 상기 복수의 프로세서 모듈 각각의 IPMI 서비스를 제공하는 것을 특징으로 하는 마이크로 서버.
  7. 제1항에 있어서,
    상기 모듈 관리부는,
    상기 복수의 프로세서 모듈 각각에 대한 IPMI 서비스를 가상화하여 상기 관리 서버에 제공하는 것을 특징으로 하는 마이크로 서버.
  8. 제7항에 있어서,
    상기 모듈 관리부는,
    전가상화(Full virtualization), 반가상화(Para-virtualization) 및 어플레이션 가상화(Application virtualization) 중 하나의 가상화 방식을 이용하여 상기 복수의 프로세서 모듈 각각에 대한 IPMI 서비스를 가상화하는 것을 특징으로 하는 마이크로 서버.
  9. 제1항에 있어서,
    상기 장치 정보는,
    상기 프로세서 모듈의 CPU 정보, 상기 프로세서 모듈의 동작 정보 및 상기 프로세서 모듈의 작동상태 정보 중 적어도 하나의 정보인 것을 특징으로 하는 마이크로 서버.
  10. 제1항에 있어서,
    상기 마이크로 서버 내의 데이터 및 제어 명령을 송수신하는 공통 인터페이스 버스;를 더 포함하고,
    상기 공통 인터페이스 버스는 I2C 인터페이스, PCI Express 인터페이스 및 SMBUS 인터페이스 중 적어도 하나의 인터페이스 버스인 것을 특징으로 하는 마이크로 서버.
  11. 제10항에 있어서,
    상기 모듈 관리부는,
    상기 I2C 인터페이스를 이용하여 상기 복수의 프로세서 모듈 각각의 장치 정보를 수집하는 것을 특징으로 하는 마이크로 서버.
  12. 제1항에 있어서,
    상기 프로세서 모듈은,
    제어 연산을 수행하는 CPU;
    상기 CPU 동작을 제어하는 모듈 컨트롤러; 및
    상기 프로세서 모듈의 장치 정보를 수집하여, 상기 모듈 관리부에 제공하는 수집부;를 포함하는 것을 특징으로 하는 마이크로 서버.
  13. 제12항에 있어서,
    상기 수집부는,
    상기 모듈 관리부의 제어에 따라 상기 프로세서 모듈에 대한 리커버리(recovery)를 진행하거나, 상기 모듈 컨트롤러의 펌웨어를 업그레이드하는 것을 특징으로 하는 마이크로 서버.
  14. 제1항에 있어서,
    상기 통신부 및 모듈 관리부가 탑재되며, 복수의 프로세서 모듈과 연결되기 위한 복수의 슬롯을 포함하는 베이스 보드;를 더 포함하고,
    상기 복수의 프로세서 모듈은, 상기 복수의 슬롯에 장착 및 탈착이 가능한 것을 특징으로 하는 마이크로 서버.
  15. 제14항에 있어서,
    외부로부터 데이터를 송수신하는 I/O 카드를 포함하는 I/O 디바이스(Input/Output Device)부; 및
    상기 I/O 디바이스부와 상기 복수의 프로세서 모듈을 선택적으로 연결하는 스위치부;를 더 포함하며,
    상기 스위치부는,
    PCI Express 스위치 회로로 구성되어, 상기 복수의 프로세서 모듈과 상기 적어도 하나의 I/O 카드의 연결을 선택적으로 조정하는 것을 특징으로 하는 마이크로 서버.
  16. 마이크로 서버의 베이스 보드에 장착하여 동작하는 프로세서 모듈에 있어서,
    제어 연산을 수행하는 CPU;
    프로세서 모듈을 제어하는 모듈 컨트롤러; 및
    상기 프로세서 모듈에 대한 IPMI 서비스가 상기 관리 서버에서 제공되도록, 상기 프로세서 모듈의 장치 정보를 수집하여 상기 마이크로 서버에 전송하는 수집부;를 포함하는 프로세서 모듈.
  17. 제16항에 있어서,
    상기 수집부는,
    상기 마이크로 서버의 제어에 따라 상기 프로세서 모듈에 대한 리커버리(recovery)를 진행하거나, 상기 모듈 컨트롤러의 펌웨어를 업그레이드하는 것을 특징으로 하는 프로세서 모듈.
  18. 복수의 프로세서 모듈, 외부의 관리 서버와 통신을 수행하는 통신부 및 모듈 관리부를 구비하는 마이크로 서버에서의 복수의 프로세서 모듈의 제어 방법에 있어서,
    상기 모듈 관리부에서 상기 복수의 프로세서 각각의 장치 정보를 수집하는 단계; 및
    상기 모듈 관리부에서 상기 수집된 복수의 프로세서 모듈의 장치 정보를 이용하여, 상기 관리 서버에 대한 복수의 프로세서 모듈 각각에 대한 IPMI(Intelligent Platform Management Interface) 서비스를 제공하는 단계;를 포함하는 제어 방법.
  19. 제18항에 있어서,
    상기 IPMI 서비스를 제공하는 단계는,
    상기 복수의 프로세서 모듈 각각에 대한 IPMI 서비스를 가상화하여 상기 관리 서버에 제공하는 것을 특징으로 하는 제어 방법.
  20. 제19항에 있어서,
    상기 IPMI 서비스를 제공하는 단계는,
    전가상화, 반가상화 및 어플레이션 가상화 중 하나의 가상화 방식을 이용하여 상기 복수의 프로세서 모듈 각각에 대한 IPMI 서비스를 가상화하는 것을 특징으로 하는 제어 방법.



KR1020130066599A 2013-06-11 2013-06-11 프로세서 모듈, 마이크로 서버 및 프로세서 모듈의 제어 방법 KR20140144520A (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020130066599A KR20140144520A (ko) 2013-06-11 2013-06-11 프로세서 모듈, 마이크로 서버 및 프로세서 모듈의 제어 방법
PCT/KR2013/010101 WO2014200162A1 (en) 2013-06-11 2013-11-08 Processor module, server system and method of controlling processor module
US14/140,876 US20140365641A1 (en) 2013-06-11 2013-12-26 Processor module, server system and method of controlling processor module
TW103104818A TW201447767A (zh) 2013-06-11 2014-02-14 處理器模組,微伺服器和控制處理器模組的方法
EP14158684.2A EP2843557A1 (en) 2013-06-11 2014-03-10 Processor module, server system and method of controlling processor module

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130066599A KR20140144520A (ko) 2013-06-11 2013-06-11 프로세서 모듈, 마이크로 서버 및 프로세서 모듈의 제어 방법

Publications (1)

Publication Number Publication Date
KR20140144520A true KR20140144520A (ko) 2014-12-19

Family

ID=50389198

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130066599A KR20140144520A (ko) 2013-06-11 2013-06-11 프로세서 모듈, 마이크로 서버 및 프로세서 모듈의 제어 방법

Country Status (5)

Country Link
US (1) US20140365641A1 (ko)
EP (1) EP2843557A1 (ko)
KR (1) KR20140144520A (ko)
TW (1) TW201447767A (ko)
WO (1) WO2014200162A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200069610A (ko) * 2018-12-07 2020-06-17 (주)케이티엔에프 Bmc 기반의 서버메인보드 및 그 보드의 구동방법
KR20200083017A (ko) * 2018-12-31 2020-07-08 주식회사 포스코아이씨티 멀티코어 프로세서 기반의 이중화된 plc 제어시스템

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9537949B2 (en) * 2013-09-24 2017-01-03 Clearcube Technology, Inc. Computer system image clustering architecture and use
KR20150047784A (ko) * 2013-10-25 2015-05-06 삼성전자주식회사 서버 시스템 및 스토리지 시스템
US9680712B2 (en) * 2014-07-01 2017-06-13 American Megatrends, Inc. Hardware management and control of computer components through physical layout diagrams
US9749189B2 (en) * 2014-07-01 2017-08-29 American Megatrends, Inc. Generating graphical diagram of physical layout of computer platforms
DE102014112942B3 (de) * 2014-09-09 2016-01-21 Fujitsu Technology Solutions Intellectual Property Gmbh Modulares Computersystem, Servermodul und Rackanordnung
DE102014112943B4 (de) 2014-09-09 2018-03-08 Fujitsu Ltd. Modulares Computersystem und Servermodul
JP6429188B2 (ja) * 2014-11-25 2018-11-28 APRESIA Systems株式会社 中継装置
US9916270B2 (en) * 2015-03-27 2018-03-13 Intel Corporation Virtual intelligent platform management interface (IPMI) satellite controller and method
TWI567566B (zh) * 2015-05-08 2017-01-21 英業達股份有限公司 電子裝置
US11983138B2 (en) 2015-07-26 2024-05-14 Samsung Electronics Co., Ltd. Self-configuring SSD multi-protocol support in host-less environment
CN105425917A (zh) * 2015-12-16 2016-03-23 英业达科技有限公司 微型服务器
TWI567567B (zh) * 2015-12-25 2017-01-21 英業達股份有限公司 微型伺服器
CN105955908B (zh) * 2016-04-21 2019-03-15 北京国旺盛源智能终端科技有限公司 一种用于实现多串口设备连接和监控方法
US10034407B2 (en) * 2016-07-22 2018-07-24 Intel Corporation Storage sled for a data center
US20190109720A1 (en) 2016-07-26 2019-04-11 Samsung Electronics Co., Ltd. Modular system (switch boards and mid-plane) for supporting 50g or 100g ethernet speeds of fpga+ssd
US11144496B2 (en) 2016-07-26 2021-10-12 Samsung Electronics Co., Ltd. Self-configuring SSD multi-protocol support in host-less environment
US10762023B2 (en) 2016-07-26 2020-09-01 Samsung Electronics Co., Ltd. System architecture for supporting active pass-through board for multi-mode NMVe over fabrics devices
US10372659B2 (en) 2016-07-26 2019-08-06 Samsung Electronics Co., Ltd. Multi-mode NMVE over fabrics devices
US10346041B2 (en) 2016-09-14 2019-07-09 Samsung Electronics Co., Ltd. Method for using BMC as proxy NVMeoF discovery controller to provide NVM subsystems to host
US10210123B2 (en) * 2016-07-26 2019-02-19 Samsung Electronics Co., Ltd. System and method for supporting multi-path and/or multi-mode NMVe over fabrics devices
US11461258B2 (en) 2016-09-14 2022-10-04 Samsung Electronics Co., Ltd. Self-configuring baseboard management controller (BMC)
TWI635401B (zh) * 2017-09-11 2018-09-11 技嘉科技股份有限公司 Arm架構伺服器及其管理方法
US10509656B2 (en) * 2017-12-01 2019-12-17 American Megatrends International, Llc Techniques of providing policy options to enable and disable system components
TWI665604B (zh) * 2018-02-27 2019-07-11 其陽科技股份有限公司 具開機之可信驗證與容錯移轉之計算機系統及方法
CN109542833A (zh) * 2018-12-03 2019-03-29 群蜂信息技术(上海)有限公司 一种基于微服务器架构的服务器管理方法、装置、服务器
CN115756824B (zh) * 2022-10-21 2023-11-03 超聚变数字技术有限公司 一种服务器中处理器信息的带外查询/配置方法及服务器

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6665731B1 (en) * 2000-05-16 2003-12-16 Intel Corporation Method for remotely accessing component management information
US7051363B2 (en) * 2001-09-20 2006-05-23 Intel Corporation System and method for interfacing to different implementations of the intelligent platform management interface
US7058703B2 (en) * 2002-03-08 2006-06-06 Intel Corporation System management controller (SMC) negotiation protocol for determining the operational mode of SMCs
US7533210B2 (en) * 2002-10-24 2009-05-12 Sun Microsystems, Inc. Virtual communication interfaces for a micro-controller
US7966389B2 (en) * 2003-04-22 2011-06-21 Hewlett-Packard Development Company, L.P. System and method for application programming interface for extended intelligent platform management
US7844866B2 (en) * 2007-10-02 2010-11-30 International Business Machines Corporation Mechanism to report operating system events on an intelligent platform management interface compliant server
US20080046546A1 (en) * 2006-08-18 2008-02-21 Parmar Pankaj N EFI based mechanism to export platform management capabilities to the OS
US20090125901A1 (en) * 2007-11-13 2009-05-14 Swanson Robert C Providing virtualization of a server management controller
CA2741088C (en) * 2008-10-21 2017-07-11 Raritan Americas, Inc. Methods of achieving cognizant power management
RU2636848C2 (ru) * 2009-07-20 2017-11-28 Шнайдер Электрик АйТи Корпорейшен Способ оценки потребления мощности
JP5459593B2 (ja) * 2009-08-17 2014-04-02 日本電気株式会社 サーバ監視システム及びサーバ監視方法
US8751635B2 (en) * 2010-12-13 2014-06-10 International Business Machines Corporation Monitoring sensors for systems management
US9384018B2 (en) * 2012-07-27 2016-07-05 Vmware, Inc. Virtual intelligent platform management interface for hardware components
US20140280469A1 (en) * 2013-03-14 2014-09-18 American Megatrends, Inc. Method and apparatus for remote management of computer system using handheld device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200069610A (ko) * 2018-12-07 2020-06-17 (주)케이티엔에프 Bmc 기반의 서버메인보드 및 그 보드의 구동방법
KR20200083017A (ko) * 2018-12-31 2020-07-08 주식회사 포스코아이씨티 멀티코어 프로세서 기반의 이중화된 plc 제어시스템

Also Published As

Publication number Publication date
EP2843557A1 (en) 2015-03-04
US20140365641A1 (en) 2014-12-11
TW201447767A (zh) 2014-12-16
WO2014200162A1 (en) 2014-12-18

Similar Documents

Publication Publication Date Title
KR20140144520A (ko) 프로세서 모듈, 마이크로 서버 및 프로세서 모듈의 제어 방법
US11301404B2 (en) Enabling high availability in server SAN enabled storage box
KR102297321B1 (ko) 섀시 내의 프록시 장치와 장치, 그리고 프록시 장치의 동작 방법
KR102277412B1 (ko) 셀프-구성하는 bmc 및 그것의 동작 방법
US10810085B2 (en) Baseboard management controllers for server chassis
JP6515132B2 (ja) シャーシ管理システム及びシャーシ管理方法
US9471126B2 (en) Power management for PCIE switches and devices in a multi-root input-output virtualization blade chassis
US10127170B2 (en) High density serial over LAN management system
US11061837B2 (en) UBM implementation inside BMC
US9817468B2 (en) System and method for automatic detection and switching between USB host and device rolls on a type-A connector
EP2892212A1 (en) Micro server, method of allocating MAC address, and computer readable recording medium
US10223161B2 (en) Hardware-based inter-device resource sharing
CN106814826B (zh) 控制服务器机柜中气流的系统及方法
US20170220506A1 (en) Modular Software Defined Storage Technology
US20180210850A1 (en) System and Method to Avoid SMBus Address Conflicts via a Baseboard Management Controller
KR102170993B1 (ko) 전자 시스템 및 그것의 동작 방법
US20170109248A1 (en) Sharing bus port by multiple bus hosts
US11354259B1 (en) Computer system configurations based on accessing data elements presented by baseboard management controllers
US8554974B2 (en) Expanding functionality of one or more hard drive bays in a computing system
US10511407B2 (en) Techniques of deep discovery of a composed node through management network
US10489328B2 (en) Universal sleds server architecture
US9569112B1 (en) Drive compatibility information maintenance
US10409940B1 (en) System and method to proxy networking statistics for FPGA cards

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid