드레스룸 시스템행거 인테리어

반응형

Supermicro IPMICFG 사용법

 

 

 

 

오늘은 다시 한번 Supermicro에서 제공되는 IPMI에 대하여 조금 더 알아보도록 하겠다.

 

이전 포스팅에서 Supermicro IPMI Web접속과 사용방법에 대하여 설명을 하였는데,

 

Web UI를 사용할 수 없는 환경에서는 다른 벤더사들도 마찬가지로 제공되겠지만

 

CLI를 통한 IPMI 정보를 확인해야 하는 경우가 많다.

 

그래서 오늘은 CLI를 통한 IPMI 정보 값 확인 방법과 IPMI를 통한 제어 방법에 대하여 설명하고자 한다.

 

아래 링크를 통해 슈퍼마이크로에서 제공되는 ipmicfg를 다운로드하여 서버에 옮기도록 하자.

 

www.supermicro.com/en/solutions/management-software/ipmi-utilities

 

(base) root@ckkim:/opt/ckkim# ls
IPMICFG_1.31.1_build.200623.zip
(base) root@ckkim:/opt/ckkim# unzip IPMICFG_1.31.1_build.200623.zip
Archive:  IPMICFG_1.31.1_build.200623.zip
..
..
(base) root@ckkim:/opt/ckkim# ls
IPMICFG_1.31.1_build.200623  IPMICFG_1.31.1_build.200623.zip
(base) root@ckkim:/opt/ckkim# cd IPMICFG_1.31.1_build.200623/
DOS/     Linux/   UEFI/    Windows/
(base) root@ckkim:/opt/ckkim# cd IPMICFG_1.31.1_build.200623/Linux/64bit/
(base) root@ckkim:/opt/ckkim/IPMICFG_1.31.1_build.200623/Linux/64bit#

 

압축해제를 하게 되면 위와 같은 디렉토리들이 생성이 된다.

 

windows, linux, dos 등 모두 명령어는 동일하다.

 

현재 내 운영체제는 ubunut18.04이기 때문에 linux의 64bit 폴더로 이동했다.

 

(base) root@ckkim:/opt/ckkim/IPMICFG_1.31.1_build.200623/Linux/64bit# ./IPMICFG-Linux.x86_64 -help
IPMICFG Version 1.31.1 (Build 200623)
Copyright(c) 2020 Super Micro Computer, Inc.
Usage: IPMICFG params (Example: IPMICFG -m 192.168.1.123)
 -help                      Display a list of commands
 -m                         Shows IPv4 address and MAC.
 -m <ip>                    Sets IPv4 address (format: ###.###.###.###).
 -a <mac>                   Sets MAC (format: ##:##:##:##:##:##).
 -k                         Shows Subnet Mask.
 -k <mask>                  Sets Subnet Mask (format: ###.###.###.###).
 -dhcp                      Gets the DHCP status.
 -dhcp on                   Enables the DHCP.
 -dhcp off                  Disables the DHCP.
 -g                         Shows a Gateway IP.
 -g <gateway>               Sets a Gateway IP (format: ###.###.###.###).
 -garp on                   Enables the Gratuitous ARP.
 -garp off                  Disables the Gratuitous ARP.
 -r                         Performs a BMC cold reset.
                            Detects if a BMC reset was successfully performed
                             on the IPMI device, use -d after -r.
 -fd <option>               Resets to the factory defaults without preserving
                             configurations.
                            option:  1 | Preserves User configurations
                            option:  2 | Restores to factory default and
                             default password
                            option:  3 | Sets user defaults to ADMIN/ADMIN
 -fdl                       Resets IPMI to the factory default. (Clean LAN).
 -fde                       Resets IPMI to the factory default. (Clean FRU &
                             LAN).
 -d                         Detects if a BMC reset was successfully performed
                             on the IPMI device.
                            Note that this option can be only used after -r,
                             -fd, -fdl or -fde
 -ver                       Gets firmware revision.
 -vlan                      Gets VLAN status.
 -vlan on [VLAN tag]        Enables the VLAN and sets the VLAN tag.
                            If VLAN tag is not given, it uses the previously
                             saved value.
 -vlan off                  Disables the VLAN.
 -selftest                  Checks and reports the basic health status of the
                             BMC.
 -raw                       Sends a RAW IPMI request and prints a response.
                            Format: NetFn/LUN Cmd [Data1 ... DataN]
 -fru info                  Shows information of the FRU inventory area.
 -fru list                  Shows all FRU values.
 -fru cthelp                Shows chassis type code.
 -fru help                  Shows help of FRU Write.
 -fru <field>               Shows FRU field value.
 -fru <field> <value>       Writes FRU.
 -fru backup <file>         Backs up FRU to a file <Binary format>.
 -fru restore <file>        Restores FRU from a file <Binary format>.
 -fru tbackup <file>        Backs up FRU to a file <Text format>.
 -fru trestore <file>       Restores FRU from a file <Text format>.
 -fru ver <v1> <v2>         Gets/Sets the FRU version. (<v1> and <v2> are
                             BCD-format)
 -sel info                  Shows SEL information.
 -sel list                  Shows SEL records.
 -sel del                   Deletes all SEL records.
 -sel raw                   Shows SEL raw data.
 -sdr [full]                Shows SDR records and readings.
 -sdr del <sdr id>          Deletes the SDR record.
 -sdr ver <v1> <v2>         Gets/Sets the SDR version. (<v1> and <v2> are
                             BCD-format)
 -nm nmsdr                  Displays NM SDR.
 -nm seltime                Gets SEL time.
 -nm deviceid               Gets the ID of the ME device.
 -nm reset                  Reboots ME.
 -nm reset2default          Forces ME to reset to default settings.
 -nm updatemode             Forces ME to enter the update mode.
 -nm selftest               Gets self-test results.
 -nm listimagesinfo         Lists ME information of images.
 -nm oemgetpower            OEM Power command for ME.
 -nm oemgettemp             OEM Temp. command for ME.
 -nm pstate                 Gets the maximum allowed CPU P-State.
 -nm tstate                 Gets the maximum allowed CPU T-State.
 -nm cpumemtemp             Gets CPU/memory temperature.
 -nm hostcpudata            Gets the host CPU data.
 -fan                       Gets the fan mode.
 -fan <mode>                Sets the fan mode.
 -pminfo [full]             Displays PMBus health information of power supply.
 -psfruinfo                 Displays FRU health information of power supply.
 -psbbpinfo                 Displays status of the backup battery.
 -autodischarge <module>    Sets auto discharge by days.
  <day>
 -discharge <module>        Manually discharges a battery.
 -user list                 Lists user privileges.
 -user help                 Shows a user privilege code.
 -user add <user id> <name> Adds a user.
  <password> <privilege>
 -user del <user id>        Deletes users.
 -user level <user id>      Updates user privileges.
  <privilege>
 -user setpwd <user id>     Updates a user password.
  <password>
 -conf download <file>      Downloads IPMI configuration to a binary file.
 -conf upload <file>        Uploads IPMI configuration from a binary file.
  <option>                  option: -p | Bypass warning message
 -conf tdownload <file>     Downloads IPMI configuration to a text file.
 -conf tupload <file>       Uploads IPMI configuration from a text file.
  <option>                  option: -p | Bypass warning message
 -clrint                    Clears chassis intrusion.
 -reset <index>             Resets system and forces to boot from the selected
                             device.
 -soft <index>              Initiates a soft-shutdown for OS and forces system
                             to boot from the selected device.
 -ipv6 mode                 Shows the IPv6 mode.
 -ipv6 mode <mode>          Sets the IPv6 mode.
 -ipv6 autoconfig           Shows IPv6 auto configuration.
 -ipv6 autoconfig on        Enables IPv6 auto configuration.
 -ipv6 autoconfig off       Disables IPv6 auto configuration.
 -ipv6 list                 Lists IPv6 static addresses.
 -ipv6 duid                 Shows IPv6 DUID.
 -ipv6 dns [ip]             Gets/Sets IPv6 DNS server.
 -ipv6 add <id> <ip>        Adds IPv6 static address.
  <prefix>
 -ipv6 remove <id>          Removes IPv6 static address.
 -ipv6 route                Displays IPv6 static route.
 -ipv6 route on             Enables IPv6 static route.
 -ipv6 route off            Disables IPv6 static route.
 -ipv6 route list           Lists IPv6 static router information.
 -ipv6 route <id> <prefix   Sets IPv6 static router information.
  value> <prefix length>
  <ip>
 -ipv6 route clear <id>     Clears IPv6 static router information.
 -nvme list                 Displays the existing NVME SSD list.
 -nvme info                 Displays NVME SSD information.
 -nvme rescan               Rescans all devices by in-band.
 -nvme insert <aoc> <group> Inserts SSD by out-of-band.
  <slot>
 -nvme locate <HDD name>    Locates SSD. (in-band)
 -nvme locate <aoc> <group> Locates SSD. (out-of-band)
  <slot>
 -nvme stoplocate <HDD      Stops locateing SSD. (in-band)
  name>
 -nvme stoplocate <aoc>     Stops locateing SSD. (out-of-band)
  <group> <slot>
 -nvme remove <HDD name>    Removes NVME device. (in-band)
  [option1] [option2]       option1: 0 | Do eject after remove (Default)
                            option1: 1 | Do not eject after remove
                            option2:-p | Bypass warning message
 -nvme remove <aoc> <group> Removes NVME device. (out-of-band)
  <slot> [option]           option: -p | Bypass warning message
 -nvme smartdata [HDD name] NVME S.M.A.R.T data.
 -tas info                  Gets TAS information.
 -tas pause                 Pauses a TAS service.
 -tas resume                Resumes a TAS service.
 -tas refresh               Triggers TAS to recollect data.
 -tas clear                 Clears collected TAS data in BMC.
 -tas period <sec>          Sets the time length of a TAS update <limit 5 to 60
                             sec>.
 -tas exec <cmd>            Executes a user's specified command.
 -tp info                   Gets MCU information.
 -tp info <type>            Gets information of MCU type. (type: 1 - 3)
 -tp nodeid                 Gets a node ID.
 -summary                   Displays FW and BIOS information.
 -hostname [value]          Gets/Sets a host name.
 -dcmi cap                  Lists information of DCMI capabilities.
 -dcmi power                Gets the DCMI power readings.
 -dcmi ctl [value]          Gets/Sets the DCMI management controller ID string.
 -mel download <file>       Downloads a BMC maintenance event log to a file.
 -mel clear                 Clears a BMC maintenance event log.
 -addrptl [option]          Gets/Sets IP address protocol.
                            option:  1 | IPv4
                            option:  2 | IPv6
                            option:  3 | Dual

 

실행파일 IPMICFG-Linux.x86_64을 -help옵션을 주면 굉장히 위에 나열되어 있는

 

많은 옵션을 확인할 수 있다. 하지만 오늘 몇 개만 설명할 예정이다.

 

굳이 사용해보지 않았던 것을 이제 와서 테스트해서 설명할 필요도 없고 그만큼

 

엔지니어에게 필요 없는 명령어 일수도 있기 때문이다.

 

이전 포스팅에서 말했지만 IPMI IP를 dhcp로 자동으로 받느냐 static으로 고정하느냐의 옵션이 있는데

 

일반적으로 테스트 목적이 아니라면 static으로 사용한다.

 

일반적인 서버 메인보드는 기본 dhcp로 되어 있다, 이제부터 그 옵션을 static으로 변경 후

 

IP address 값을 입력하기 위해 순차적으로 하나씩 진행하도록 하겠다.

 

 

 

 

IPMICFG - DHCP -> STATIC

 

(base) root@ckkim:/opt/ckkim/IPMICFG_1.31.1_build.200623/Linux/64bit# ./IPMICFG-Linux.x86_64 -dhcp
DHCP is currently enabled.
(base) root@ckkim:/opt/ckkim/IPMICFG_1.31.1_build.200623/Linux/64bit# ./IPMICFG-Linux.x86_64 -dhcp off
Successfully disable DHCP.
(base) root@ckkim:/opt/ckkim/IPMICFG_1.31.1_build.200623/Linux/64bit# ./IPMICFG-Linux.x86_64 -dhcp
DHCP is currently disabled.

 

ipmicfg를 통해 static을 설정하기 위해서는 dhcp 명령어로 dhcp의 enabled/disabled 여부를 확인한 후

 

dhcp를 off 하여 disabled를 만들어 준다.

 

 

IPMICFG - IP 설정

 

(base) root@ckkim:/opt/ckkim/IPMICFG_1.31.1_build.200623/Linux/64bit# ./IPMICFG-Linux.x86_64 -m
IP=192.168.15.57
MAC=AC:1F:6B:3B:75:FC
(base) root@ckkim:/opt/ckkim/IPMICFG_1.31.1_build.200623/Linux/64bit# ./IPMICFG-Linux.x86_64 -m 192.168.15.58
IP=192.168.15.58
(base) root@ckkim:/opt/ckkim/IPMICFG_1.31.1_build.200623/Linux/64bit# ./IPMICFG-Linux.x86_64 -g 192.168.15.1
Gateway=192.168.15.1
(base) root@ckkim:/opt/ckkim/IPMICFG_1.31.1_build.200623/Linux/64bit# ./IPMICFG-Linux.x86_64 -k 255.255.255.0
Subnet Mask=255.255.255.0

 

IPMICFG를 통해 ip를 설정해 주면 된다.

 

-m을 치면 현재 ip가 출력되며 -m {IP_ADDRESS} 입력해주게 되면 IP 설정이 바뀌게 된다.

 

-g {GATEWAY}, -k {NETMASK}를 입력해 주면 위에 코드 블럭에서 처럼 설정이 가능하다.

 

 

IPMICFG - FAN 설정

 

(base) root@ckkim:/opt/ckkim/IPMICFG_1.31.1_build.200623/Linux/64bit# ./IPMICFG-Linux.x86_64 -fan
Current Fan Speed Mode is [ Optimal Mode ]

Supported Fan modes:
0:Standard
1:Full
2:Optimal
4:Heavy IO

 

-fan 옵션으로 fan 속도 조절이 가능하다. (ex:./IPMICFG-Linux.x86_64 -fan 2)

 

보통은 2번 옵션 optimal을 사용하여 시스템 부하가 걸리게 되면 유동적으로 fan속도가 올라가게 설정한다.

 

하지만 8 GPU 서버나 Temp가 계속해서 올라가 있는 서버에는 1번 Full mode로 사용하게 된다.

 

물론 저 Full mode는 기본 사무실에서는 사용하기 힘들며 IDC 같은 서버실에서 많이 사용하게 된다.

 

 

IPMICFG - SDR

 

(base) root@ckkim:/opt/ckkim/IPMICFG_1.31.1_build.200623/Linux/64bit# ./IPMICFG-Linux.x86_64 -sdr
Status | (#)Sensor                |      Reading | Low Limit | High Limit |
------ | ---------                |      ------- | --------- | ---------- |
    OK | (4) CPU1 Temp            |     48C/118F |    0C/32F |   95C/203F |
    OK | (71) CPU2 Temp           |     43C/109F |    0C/32F |   95C/203F |
    OK | (138) PCH Temp           |      35C/95F |    5C/41F |   95C/203F |
    OK | (205) System Temp        |      31C/88F |   -5C/23F |   85C/185F |
    OK | (272) Peripheral Temp    |     40C/104F |   -5C/23F |   85C/185F |
    OK | (339) Vcpu1VRM Temp      |     40C/104F |    0C/32F |  100C/212F |
    OK | (406) Vcpu2VRM Temp      |     44C/111F |    0C/32F |  100C/212F |
    OK | (473) VmemABVRM Temp     |      36C/97F |    0C/32F |  100C/212F |
    OK | (540) VmemCDVRM Temp     |      34C/93F |    0C/32F |  100C/212F |
    OK | (607) VmemEFVRM Temp     |      37C/99F |    0C/32F |  100C/212F |
    OK | (674) VmemGHVRM Temp     |     39C/102F |    0C/32F |  100C/212F |
    OK | (741) P1-DIMMA1 Temp     |      35C/95F |    0C/32F |   85C/185F |
       | (808) P1-DIMMA2 Temp     |          N/A |       N/A |        N/A |
    OK | (875) P1-DIMMB1 Temp     |      35C/95F |    0C/32F |   85C/185F |
       | (942) P1-DIMMB2 Temp     |          N/A |       N/A |        N/A |
       | (1009) P1-DIMMC1 Temp    |          N/A |       N/A |        N/A |
       | (1076) P1-DIMMC2 Temp    |          N/A |       N/A |        N/A |
       | (1143) P1-DIMMD1 Temp    |          N/A |       N/A |        N/A |
       | (1210) P1-DIMMD2 Temp    |          N/A |       N/A |        N/A |
    OK | (1277) P2-DIMME1 Temp    |      35C/95F |    0C/32F |   85C/185F |
       | (1344) P2-DIMME2 Temp    |          N/A |       N/A |        N/A |
    OK | (1411) P2-DIMMF1 Temp    |      35C/95F |    0C/32F |   85C/185F |
       | (1478) P2-DIMMF2 Temp    |          N/A |       N/A |        N/A |
       | (1545) P2-DIMMG1 Temp    |          N/A |       N/A |        N/A |
       | (1612) P2-DIMMG2 Temp    |          N/A |       N/A |        N/A |
       | (1679) P2-DIMMH1 Temp    |          N/A |       N/A |        N/A |
       | (1746) P2-DIMMH2 Temp    |          N/A |       N/A |        N/A |
       | (1813) FAN1              |          N/A |       N/A |        N/A |
    OK | (1880) FAN2              |     1100 RPM |   500 RPM |  25400 RPM |
    OK | (1947) FAN3              |      800 RPM |   500 RPM |  25400 RPM |
       | (2014) FAN4              |          N/A |       N/A |        N/A |
    OK | (2081) FAN5              |     1000 RPM |   500 RPM |  25400 RPM |
       | (2148) FAN6              |          N/A |       N/A |        N/A |
    OK | (2215) FANA              |     2400 RPM |   500 RPM |  25400 RPM |
    OK | (2282) FANB              |     1600 RPM |   500 RPM |  25400 RPM |
    OK | (2349) 12V               |      12.00 V |   10.29 V |    13.26 V |
    OK | (2416) 5VCC              |       4.97 V |    4.29 V |     5.54 V |
    OK | (2483) 3.3VCC            |       3.33 V |    2.82 V |     3.65 V |
    OK | (2550) VBAT              |       2.85 V |    2.49 V |     3.60 V |
    OK | (2617) Vcpu1             |       1.82 V |    1.26 V |     2.08 V |
    OK | (2684) Vcpu2             |       1.82 V |    1.26 V |     2.08 V |
    OK | (2751) VDIMMAB           |       1.20 V |    0.97 V |     1.42 V |
    OK | (2818) VDIMMCD           |       1.19 V |    0.97 V |     1.42 V |
    OK | (2885) VDIMMEF           |       1.20 V |    0.97 V |     1.42 V |
    OK | (2952) VDIMMGH           |       1.20 V |    0.97 V |     1.42 V |
    OK | (3019) 5VSB              |       4.92 V |    4.29 V |     5.54 V |
    OK | (3086) 3.3VSB            |       3.28 V |    2.82 V |     3.65 V |
    OK | (3153) 1.5V PCH          |       1.50 V |    1.34 V |     1.67 V |
    OK | (3220) 1.2V BMC          |       1.20 V |    1.04 V |     1.37 V |
    OK | (3287) 1.05V PCH         |       1.04 V |    0.89 V |     1.22 V |
    OK | (3354) Chassis Intru     |                                    OK |

 

SDR을 센서 reading 하는 옵션이다.

 

기본적인 CPU, MEM, PCH 등의 서버 내부의 온도를 확인하고 연결되어 있는

 

FAN Rpm 및 전압 확인을 할 수 있다.

 

시스템을 모니터링하는 용도이기 때문에 많이 쓰는 옵션이다.

 

 

IPMICFG - SEL

 

(base) root@ckkim:/opt/ckkim/IPMICFG_1.31.1_build.200623/Linux/64bit# ./IPMICFG-Linux.x86_64 -sel list
  1 | 2020/08/26 04:28:53 | Memory
    | Assertion:Correctable ECC@DIMM[6(CPU4)
  2 | 2020/08/31 01:35:05 | Memory
    | Assertion:Correctable ECC@DIMM[6(CPU4)
  3 | 2020/09/01 00:29:32 | CPU1 Temp
    | Assertion:Processor Automatically Throttled
  4 | 2020/09/01 00:29:37 | CPU1 Temp
    | Assertion:Upper Critical - going high
  5 | 2020/09/01 00:30:20 | CPU1 Temp
    | Deassertion:Processor Automatically Throttled
  6 | 2020/09/01 00:30:20 | CPU1 Temp
    | Deassertion:Upper Critical - going high

 

sel list는 서버의 H/W적인 event를 확인할 수 있는 옵션이며,

 

위에 코드 블럭에서 확인하듯이 ecc memory 혹은 CPU 온도 등이 감지되며 혹은 Power supply fail 등이 

 

나오며, 굉장히 많이 사용하는 옵션이며, 그만큼 중요하다.

 

 

IPMICFG - FD

 

(base) root@ckkim:/opt/ckkim/IPMICFG_1.31.1_build.200623/Linux/64bit# ./IPMICFG-Linux.x86_64 -fd
Command: -fd <option>
Please select an option:
        option:  1 | Preserves User configurations
        option:  2 | Restores to factory default and default password
        option:  3 | Sets user defaults to ADMIN/ADMIN

 

ipmicfg를 통한 IPMI 초기화 옵션이며, IPMI상태가 이상하거나 초기화해야 할 경우 사용하게 된다.

 

factory default 옵션이며, fd 1, fd 2, fd 3 옵션이 있지만, fdl, fde옵션도 있으니 참고하기 바란다.

 

하지만 사용할 일은 거의 없을 것이다.

 

나머지 옵션들도 무엇인지 궁금하다면 한번 테스트 해보면 좋을 것이다.

 

 

2020/08/31 - [linux] - Supermicro server ipmi_web 접속 및 사용법

2020/08/27 - [linux] - LSI Raid - MSM (Megaraid-storage-management) 설치 및 사용

2020/08/25 - [linux] - linux 현재 접속해 있는 user 사용자 확인 및 kill 하기

2020/08/24 - [linux] - linux - tar, gz, unzip 압축 해제 및 압축하기

2020/08/21 - [GPU] - ubuntu18.04 desktop nvidia driver troubleshooting

반응형

이 글을 공유합시다

facebook twitter kakaoTalk kakaostory naver band