Installing IPMI Tool for Linux Server
IPMI은 (Intelligent Platform Management Interface)의 약자이며, Intel이 리드하고, HP, DELL 등 다수의 x86 Platform 서버 제조사가 지원하는 사실상의 H/W 관리 프로토콜이다. 따라서, 각 제조사 및 지원 OS의 기능을 볼 수 도 있지만, 가장 근본인 Intel의 자료를 한 번 보는 것이 의미 있을 것 같다.
http://www.intel.com/content/www/us/en/servers/ipmi/ipmi-animation.html
기본적으로 서버의 온도나, Power, Fan, H/W Inventory 등의 정보를 수집하고 그 정보를 OS나 관리 콘솔 등으로 전달해 주는 Interface이다. HP는 이를 활용하여 ILO라는 관리 콘솔을 만들어 사용자의 서버 관리를 편하게 해 주었으며, 최근에는 Network를 통해 원격지의 서버로 IPMI기능을 사용하여 서버의 On/Off 부터 각종 H/W 항목을 모니터링 관리할 수 있게 개발되고 있다.
[root@test ~]# yum install ipmitool
Loaded plugins: aliases, changelog, downloadonly, kabi, presto, product-id, refresh-packagekit, security, subscription-manager, tmprepo, verify, versionlock
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Loading support for Red Hat kernel ABI
LOCAL | 3.9 kB 00:00 ...
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package ipmitool.x86_64 0:1.8.11-16.el6 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================================================================================================
Package Arch Version Repository Size
================================================================================================================================================================
Installing:
ipmitool x86_64 1.8.11-16.el6 LOCAL 329 k
Transaction Summary
================================================================================================================================================================
Install 1 Package(s)
Total download size: 329 k
Installed size: 1.0 M
Is this ok [y/N]: y
Downloading Packages:
Setting up and reading Presto delta metadata
Processing delta metadata
Package(s) data still to download: 329 k
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Warning: RPMDB altered outside of yum.
Installing : ipmitool-1.8.11-16.el6.x86_64 1/1
Verifying : ipmitool-1.8.11-16.el6.x86_64 1/1
Installed:
ipmitool.x86_64 0:1.8.11-16.el6
Complete!
[root@test ~]#
실제로 최근 도입된 HP서버에 Linux 6.6 OS를 설치하고 IPMI를 설치해 보았다.
간단히 yum을 통해 설치가 가능하며, Module이 생성되지 않은 OS의 경우 아래와 같이device 번호를 찾아 Module을 만들어주면 바로 활용이 가능하다.
[root@test ~]# modprobe ipmi_devintf
[root@test ~]# modprobe ipmi_si
[root@test ~]# lsmod | grep ipmi
ipmi_devintf 7729 0
[root@test ~]#
혹은 https://forum.likg.org.ua/ipmi/create-dev-ipmi0-device-manually-t355.html 참조.
설치가 완료되면 ipmitool이라고 명령어를 수행할 수 있는데, 아래와 같이 나온다면 정상 설치 및 H/W와 연동된 것이라고 보면 된다.
[root@test ~]# ipmitool
No command provided!
Commands:
raw Send a RAW IPMI request and print response
i2c Send an I2C Master Write-Read command and print response
spd Print SPD info from remote I2C device
lan Configure LAN Channels
chassis Get chassis status and set power state
power Shortcut to chassis power commands
event Send pre-defined events to MC
mc Management Controller status and global enables
sdr Print Sensor Data Repository entries and readings
sensor Print detailed sensor information
fru Print built-in FRU and scan SDR for FRU locators
gendev Read/Write Device associated with Generic Device locators sdr
sel Print System Event Log (SEL)
pef Configure Platform Event Filtering (PEF)
sol Configure and connect IPMIv2.0 Serial-over-LAN
tsol Configure and connect with Tyan IPMIv1.5 Serial-over-LAN
isol Configure IPMIv1.5 Serial-over-LAN
user Configure Management Controller users
channel Configure Management Controller channels
session Print session information
sunoem OEM Commands for Sun servers
kontronoem OEM Commands for Kontron devices
picmg Run a PICMG/ATCA extended cmd
fwum Update IPMC using Kontron OEM Firmware Update Manager
firewall Configure Firmware Firewall
delloem OEM Commands for Dell systems
shell Launch interactive IPMI shell
exec Run list of commands from file
set Set runtime variable for shell and exec
hpm Update HPM components using PICMG HPM.1 file
ekanalyzer run FRU-Ekeying analyzer using FRU files
[root@test ~]#
실제로 IPMI를 통해 활용 가능한 부분은 위의 기능들이다. 특히 빨간색으로 표시한 부분이 서버 운영을 하면서 모니터링 및 Action이 필요한 부분이고, 나머지 기능은 원격에서 접속이나, IPMI 사용 권한, 방화벽, Batch 파일 수행 등의 기능을 담고 있는 부분이다. 그럼에도 Chassis나, Power 등의 부분은 실제로 전산센터 장비실에 올라가 확인하지 않는다면 모니터링하기 쉽지 않은 부분이기에 OS Level에서의 운영과 별개로 순수한 H/W 운영에 대한 카테고리로 잡아 모니터링 및 관리를 할 필요가 있을 것이다.
[root@test ~]# ipmltool -l open sdr
-bash: ipmltool: command not found
[root@test ~]# ipmitool -l open sdr
UID Light | 0 unspecified | nc
Sys. Health LED | 0 unspecified | nc
01-Front Ambient | 22 degrees C | ok
02-CPU 1 | 40 degrees C | ok
03-CPU 2 | disabled | ns
04-P1 DIMM 1-3 | 35 degrees C | ok
05-P1 DIMM 4-6 | 36 degrees C | ok
06-P1 DIMM 7-9 | 36 degrees C | ok
07-P1 DIMM 10-12 | 37 degrees C | ok
08-P2 DIMM 1-3 | disabled | ns
09-P2 DIMM 4-6 | disabled | ns
10-P2 DIMM 7-9 | disabled | ns
11-P2 DIMM 10-12 | disabled | ns
12-HD Max | 35 degrees C | ok
13-Chipset | 50 degrees C | ok
14-P/S 1 | 32 degrees C | ok
15-P/S 2 | 31 degrees C | ok
16-P/S 2 Zone | 34 degrees C | ok
17-VR P1 | 41 degrees C | ok
18-VR P2 | 36 degrees C | ok
19-VR P1 Mem | 37 degrees C | ok
20-VR P1 Mem | 39 degrees C | ok
21-VR P2 Mem | 37 degrees C | ok
22-VR P2 Mem | 35 degrees C | ok
23-VR P1Vtt Zone | 39 degrees C | ok
24-VR P2Vtt Zone | 34 degrees C | ok
25-HD Controller | 75 degrees C | ok
26-iLO Zone | 40 degrees C | ok
27-LOM Card | disabled | ns
28-PCI 1 | disabled | ns
29-PCI 2 | disabled | ns
30-PCI 3 | disabled | ns
31-PCI 4 | disabled | ns
32-PCI 5 | disabled | ns
33-PCI 6 | disabled | ns
34-PCI 1 Zone | 37 degrees C | ok
35-PCI 2 Zone | 37 degrees C | ok
36-PCI 3 Zone | 38 degrees C | ok
37-PCI 4 Zone | disabled | ns
38-PCI 5 Zone | disabled | ns
39-PCI 6 Zone | disabled | ns
40-I/O Board 1 | 40 degrees C | ok
41-I/O Board 2 | disabled | ns
42-VR P1 Zone | 34 degrees C | ok
43-BIOS Zone | 48 degrees C | ok
44-System Board | 39 degrees C | ok
45-SuperCap Max | 31 degrees C | ok
46-Chipset Zone | 40 degrees C | ok
47-Battery Zone | 38 degrees C | ok
48-I/O Zone | 41 degrees C | ok
49-Sys Exhaust | 39 degrees C | ok
50-Sys Exhaust | 40 degrees C | ok
Fan 1 | disabled | ns
Fan 2 | disabled | ns
Fan 3 | 13.72 unspecifi | nc
Fan 4 | 21.17 unspecifi | nc
Fan 5 | 35.28 unspecifi | nc
Fan 6 | 35.28 unspecifi | nc
Power Supply 1 | 65 Watts | nc
Power Supply 2 | 65 Watts | nc
Power Meter | 126 Watts | cr
Power Supplies | 0 unspecified | nc
Fans | 0 unspecified | nc
Memory | 0 error | ok
C1 P1I Bay 1 | 0 unspecified | nc
C1 P1I Bay 2 | 0 unspecified | nc
C1 P1I Bay 3 | 0 unspecified | nc
C1 P1I Bay 4 | 0 unspecified | nc
C1 P2I Bay 5 | 0 unspecified | nc
C1 P2I Bay 6 | 0 unspecified | nc
C1 P2I Bay 7 | 0 unspecified | nc
C1 P2I Bay 8 | 0 unspecified | nc
[root@test ~]#
[root@test ~]# ipmitool -l open chassis status
System Power : on
Power Overload : false
Power Interlock : inactive
Main Power Fault : false
Power Control Fault : false
Power Restore Policy : previous
Last Power Event :
Chassis Intrusion : inactive
Front-Panel Lockout : inactive
Drive Fault : false
Cooling/Fan Fault : false
Front Panel Control : none
[root@test ~]#
위와 같이, 서버 내부의 온도와 장비들의 상태들을 점검하는데 있어서 활용도가 높은 편이며, IPMI라는 제조사 공통의 프로토콜이라는 점으로 모니터링 Script나 시스템을 한 번 개발 해 둔다면, 어떤 장비를 사더라도 제조사에 의존성없이 주요 H/W 항목에 대한 모니터링이 가능하다는 점에 주목할 필요있다.
http://www.intel.com/content/www/us/en/servers/ipmi/ipmi-animation.html
기본적으로 서버의 온도나, Power, Fan, H/W Inventory 등의 정보를 수집하고 그 정보를 OS나 관리 콘솔 등으로 전달해 주는 Interface이다. HP는 이를 활용하여 ILO라는 관리 콘솔을 만들어 사용자의 서버 관리를 편하게 해 주었으며, 최근에는 Network를 통해 원격지의 서버로 IPMI기능을 사용하여 서버의 On/Off 부터 각종 H/W 항목을 모니터링 관리할 수 있게 개발되고 있다.
[root@test ~]# yum install ipmitool
Loaded plugins: aliases, changelog, downloadonly, kabi, presto, product-id, refresh-packagekit, security, subscription-manager, tmprepo, verify, versionlock
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Loading support for Red Hat kernel ABI
LOCAL | 3.9 kB 00:00 ...
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package ipmitool.x86_64 0:1.8.11-16.el6 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================================================================================================
Package Arch Version Repository Size
================================================================================================================================================================
Installing:
ipmitool x86_64 1.8.11-16.el6 LOCAL 329 k
Transaction Summary
================================================================================================================================================================
Install 1 Package(s)
Total download size: 329 k
Installed size: 1.0 M
Is this ok [y/N]: y
Downloading Packages:
Setting up and reading Presto delta metadata
Processing delta metadata
Package(s) data still to download: 329 k
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Warning: RPMDB altered outside of yum.
Installing : ipmitool-1.8.11-16.el6.x86_64 1/1
Verifying : ipmitool-1.8.11-16.el6.x86_64 1/1
Installed:
ipmitool.x86_64 0:1.8.11-16.el6
Complete!
[root@test ~]#
실제로 최근 도입된 HP서버에 Linux 6.6 OS를 설치하고 IPMI를 설치해 보았다.
간단히 yum을 통해 설치가 가능하며, Module이 생성되지 않은 OS의 경우 아래와 같이device 번호를 찾아 Module을 만들어주면 바로 활용이 가능하다.
[root@test ~]# modprobe ipmi_devintf
[root@test ~]# modprobe ipmi_si
[root@test ~]# lsmod | grep ipmi
ipmi_devintf 7729 0
[root@test ~]#
혹은 https://forum.likg.org.ua/ipmi/create-dev-ipmi0-device-manually-t355.html 참조.
설치가 완료되면 ipmitool이라고 명령어를 수행할 수 있는데, 아래와 같이 나온다면 정상 설치 및 H/W와 연동된 것이라고 보면 된다.
[root@test ~]# ipmitool
No command provided!
Commands:
raw Send a RAW IPMI request and print response
i2c Send an I2C Master Write-Read command and print response
spd Print SPD info from remote I2C device
lan Configure LAN Channels
chassis Get chassis status and set power state
power Shortcut to chassis power commands
event Send pre-defined events to MC
mc Management Controller status and global enables
sdr Print Sensor Data Repository entries and readings
sensor Print detailed sensor information
fru Print built-in FRU and scan SDR for FRU locators
gendev Read/Write Device associated with Generic Device locators sdr
sel Print System Event Log (SEL)
pef Configure Platform Event Filtering (PEF)
sol Configure and connect IPMIv2.0 Serial-over-LAN
tsol Configure and connect with Tyan IPMIv1.5 Serial-over-LAN
isol Configure IPMIv1.5 Serial-over-LAN
user Configure Management Controller users
channel Configure Management Controller channels
session Print session information
sunoem OEM Commands for Sun servers
kontronoem OEM Commands for Kontron devices
picmg Run a PICMG/ATCA extended cmd
fwum Update IPMC using Kontron OEM Firmware Update Manager
firewall Configure Firmware Firewall
delloem OEM Commands for Dell systems
shell Launch interactive IPMI shell
exec Run list of commands from file
set Set runtime variable for shell and exec
hpm Update HPM components using PICMG HPM.1 file
ekanalyzer run FRU-Ekeying analyzer using FRU files
[root@test ~]#
실제로 IPMI를 통해 활용 가능한 부분은 위의 기능들이다. 특히 빨간색으로 표시한 부분이 서버 운영을 하면서 모니터링 및 Action이 필요한 부분이고, 나머지 기능은 원격에서 접속이나, IPMI 사용 권한, 방화벽, Batch 파일 수행 등의 기능을 담고 있는 부분이다. 그럼에도 Chassis나, Power 등의 부분은 실제로 전산센터 장비실에 올라가 확인하지 않는다면 모니터링하기 쉽지 않은 부분이기에 OS Level에서의 운영과 별개로 순수한 H/W 운영에 대한 카테고리로 잡아 모니터링 및 관리를 할 필요가 있을 것이다.
[root@test ~]# ipmltool -l open sdr
-bash: ipmltool: command not found
[root@test ~]# ipmitool -l open sdr
UID Light | 0 unspecified | nc
Sys. Health LED | 0 unspecified | nc
01-Front Ambient | 22 degrees C | ok
02-CPU 1 | 40 degrees C | ok
03-CPU 2 | disabled | ns
04-P1 DIMM 1-3 | 35 degrees C | ok
05-P1 DIMM 4-6 | 36 degrees C | ok
06-P1 DIMM 7-9 | 36 degrees C | ok
07-P1 DIMM 10-12 | 37 degrees C | ok
08-P2 DIMM 1-3 | disabled | ns
09-P2 DIMM 4-6 | disabled | ns
10-P2 DIMM 7-9 | disabled | ns
11-P2 DIMM 10-12 | disabled | ns
12-HD Max | 35 degrees C | ok
13-Chipset | 50 degrees C | ok
14-P/S 1 | 32 degrees C | ok
15-P/S 2 | 31 degrees C | ok
16-P/S 2 Zone | 34 degrees C | ok
17-VR P1 | 41 degrees C | ok
18-VR P2 | 36 degrees C | ok
19-VR P1 Mem | 37 degrees C | ok
20-VR P1 Mem | 39 degrees C | ok
21-VR P2 Mem | 37 degrees C | ok
22-VR P2 Mem | 35 degrees C | ok
23-VR P1Vtt Zone | 39 degrees C | ok
24-VR P2Vtt Zone | 34 degrees C | ok
25-HD Controller | 75 degrees C | ok
26-iLO Zone | 40 degrees C | ok
27-LOM Card | disabled | ns
28-PCI 1 | disabled | ns
29-PCI 2 | disabled | ns
30-PCI 3 | disabled | ns
31-PCI 4 | disabled | ns
32-PCI 5 | disabled | ns
33-PCI 6 | disabled | ns
34-PCI 1 Zone | 37 degrees C | ok
35-PCI 2 Zone | 37 degrees C | ok
36-PCI 3 Zone | 38 degrees C | ok
37-PCI 4 Zone | disabled | ns
38-PCI 5 Zone | disabled | ns
39-PCI 6 Zone | disabled | ns
40-I/O Board 1 | 40 degrees C | ok
41-I/O Board 2 | disabled | ns
42-VR P1 Zone | 34 degrees C | ok
43-BIOS Zone | 48 degrees C | ok
44-System Board | 39 degrees C | ok
45-SuperCap Max | 31 degrees C | ok
46-Chipset Zone | 40 degrees C | ok
47-Battery Zone | 38 degrees C | ok
48-I/O Zone | 41 degrees C | ok
49-Sys Exhaust | 39 degrees C | ok
50-Sys Exhaust | 40 degrees C | ok
Fan 1 | disabled | ns
Fan 2 | disabled | ns
Fan 3 | 13.72 unspecifi | nc
Fan 4 | 21.17 unspecifi | nc
Fan 5 | 35.28 unspecifi | nc
Fan 6 | 35.28 unspecifi | nc
Power Supply 1 | 65 Watts | nc
Power Supply 2 | 65 Watts | nc
Power Meter | 126 Watts | cr
Power Supplies | 0 unspecified | nc
Fans | 0 unspecified | nc
Memory | 0 error | ok
C1 P1I Bay 1 | 0 unspecified | nc
C1 P1I Bay 2 | 0 unspecified | nc
C1 P1I Bay 3 | 0 unspecified | nc
C1 P1I Bay 4 | 0 unspecified | nc
C1 P2I Bay 5 | 0 unspecified | nc
C1 P2I Bay 6 | 0 unspecified | nc
C1 P2I Bay 7 | 0 unspecified | nc
C1 P2I Bay 8 | 0 unspecified | nc
[root@test ~]#
[root@test ~]# ipmitool -l open chassis status
System Power : on
Power Overload : false
Power Interlock : inactive
Main Power Fault : false
Power Control Fault : false
Power Restore Policy : previous
Last Power Event :
Chassis Intrusion : inactive
Front-Panel Lockout : inactive
Drive Fault : false
Cooling/Fan Fault : false
Front Panel Control : none
[root@test ~]#
위와 같이, 서버 내부의 온도와 장비들의 상태들을 점검하는데 있어서 활용도가 높은 편이며, IPMI라는 제조사 공통의 프로토콜이라는 점으로 모니터링 Script나 시스템을 한 번 개발 해 둔다면, 어떤 장비를 사더라도 제조사에 의존성없이 주요 H/W 항목에 대한 모니터링이 가능하다는 점에 주목할 필요있다.
댓글
댓글 쓰기