콘텐츠로 이동

시스템 검증 (rbln-bios)

rbln-bios는 서버 설정(GRUB, BIOS, 팬 속도)을 점검하여, RBLN NPU를 위한 호스트 전제 조건을 검증하는 시스템 진단 도구입니다.

Note

  • GRUB target: BMC 액세스가 필요하지 않습니다. 모든 벤더 / 모델에서 동작합니다.
  • BIOS / fanspeed targets: Redfish API를 통한 BMC (Baseboard Management Controller) 액세스가 필요합니다.
    • Supermicro: DCMS 라이센스 필요. 검증된 서버 모델:
      • AS -4125GS-TNRT2
      • AS -5126GS-TNRT2

빠른 시작

$ sudo rbln-bios -t grub -v

주요 개념 및 용어

검증 대상

rbln-bios-t, --target을 통해 하나 이상의 대상을 검증합니다:

  • grub: 최적의 NPU 성능을 위한 커널/부팅 파라미터를 검증합니다.
  • bios: Redfish API를 통해 BIOS 설정을 검증합니다.
  • fanspeed: Redfish API를 통해 팬 속도 상태를 점검합니다.
  • all: 지원되는 모든 대상을 실행합니다.

BMC (Redfish) 자격 증명

Note

BMC에 액세스하는 대상(bios, fanspeed)의 경우 다음을 제공하세요:

  • --bmc_ip <BMC_IP>: BMC IP 주소 (Redfish 엔드포인트)
  • --bmc_user <BMC_USER> / --bmc_password <BMC_PASSWORD>: BMC 자격 증명

명령어 참조

일반 사용법

$ rbln-bios -l
$ rbln-bios -t <target> [options]
$ rbln-bios -t <target1> <target2> ... [options]

Note

모든 검증 대상(-t)에는 root 권한이 필요합니다 — root가 아닌 경우 권한 오류로 실패합니다. 모든 명령어를 sudo로 실행하세요.

Tip

전체 버전별 옵션 참조를 보려면 rbln-bios --help를 실행하세요.

전역 옵션

Option Description
-h, --help 도움말 메시지를 표시하고 종료합니다.
-v, --verbose 상세 출력 (예: 예상/현재 GRUB cmdline 표시).
--version 버전 정보를 표시하고 종료합니다.
-t, --target <TARGET ...> 대상 검증: grub, bios, fanspeed, 또는 all.
-l, --list 사용 가능한 대상을 나열합니다.
-j, --json JSON 형식으로 출력합니다.
--bmc_ip <BMC_IP> BMC IP 주소 (Redfish 엔드포인트). biosfanspeed에 필수.
--bmc_user <BMC_USER> BMC 사용자. biosfanspeed에 필수.
--bmc_password <BMC_PASSWORD> BMC 비밀번호. biosfanspeed에 필수.

CLI 예제

요약

현재 시스템에서 사용 가능한 검증 대상을 나열합니다.

명령어

Command
$ rbln-bios -l

출력 (예제)

대상 목록 (예제)
Available targets:
        grub
        bios
        fanspeed

요약

커널/부팅 파라미터를 검증합니다. -v, --verbose를 사용하여 예상 및 현재 GRUB cmdline을 표시합니다.

명령어

Command
$ sudo rbln-bios -t grub

출력 (예제)

GRUB 검증 (예제)
==== System Information ====
OS                    : ubuntu 22.04.5 LTS (Jammy Jellyfish)
Kernel                : 6.8.0-90-generic
CPU Model             : AMD EPYC 9355 32-Core Processor
Manufacturer          : Supermicro
Architecture          : x86_64

==== GRUB Boot Parameter ====
Result                : PASS

Note

Result는 다음 세 가지 값 중 하나로 보고됩니다.

  • PASS: 권장 커널/부팅 파라미터가 모두 적용되어 있습니다.
  • FAIL: 필수 파라미터 중 누락된 항목이 있습니다. 누락된 항목은 Missing 필드에 표시됩니다.
  • UNSUPPORTED: Intel CPU 환경에서는 pci=noats 가 반드시 cmdline 에 포함되어야 합니다. 이 옵션이 누락된 Intel 시스템에서 보고되며, 해당 옵션은 Unsupported 필드에 표시됩니다.

요약

예상 및 현재 cmdline을 포함한 상세 커널/부팅 파라미터 검증을 수행합니다.

명령어

Command
$ sudo rbln-bios -t grub -v

출력 (예제)

GRUB 상세 검증 (예제)
==== System Information ====
OS                    : ubuntu 22.04.5 LTS (Jammy Jellyfish)
Kernel                : 6.8.0-90-generic
CPU Model             : AMD EPYC 9355 32-Core Processor
Manufacturer          : Supermicro
Architecture          : x86_64

==== GRUB Boot Parameter ====
Result                : PASS
Expected              : transparent_hugepage=madvise pcie_aspm=force pci=pcie_bus_perf pci=bfsort ...
Current               : BOOT_IMAGE=... root=... ro transparent_hugepage=madvise pcie_aspm=force ...

요약

Redfish API를 통해 BIOS 설정을 검증합니다. --bmc_ip, --bmc_user, --bmc_password가 필요합니다.

명령어

Command
$ sudo rbln-bios -t bios --bmc_ip 192.168.1.100 --bmc_user admin --bmc_password password123

출력 (예제)

BIOS 검증 (예제)
==== System Information ====
OS                    : ubuntu 22.04.5 LTS (Jammy Jellyfish)
Kernel                : 6.8.0-90-generic
CPU Model             : AMD EPYC 9355 32-Core Processor
Manufacturer          : Supermicro
Architecture          : x86_64

==== BIOS Settings ====
 Setting                        Status
 ---------------------------------------------
  IOMMU                          ✓  Enabled
  SR_IOVSupport                  ✓  Enabled
  Above4GDecoding                ✓  Enabled
  Re_SizeBARSupport              ✓  Enabled
  ASPMSupport                    ✓  Auto
  DFCstates                      ✓  Disabled
  NUMANodesPerSocket             ✓  NPS1
  ACPISRATL3CacheAsNUMADomain    ✓  Disabled
  MMIO High Base                 N/A
  MMIO High Granularity Size     N/A
  SNC (Intel)                    N/A

Note

일부 CPU(예: AMD Turin)에서는 Above 4G Decoding 옵션이 기본적으로 활성화되어 BIOS에 노출되지 않을 수 있습니다. 해당 항목이 UNKNOWN으로 보고되더라도 시스템이 올바르게 구성되어 있을 수 있으며, rbln-bios는 이 경우 안내 메시지를 함께 출력합니다.

요약

Redfish API를 통해 팬 속도 상태를 점검합니다. --bmc_ip, --bmc_user, --bmc_password가 필요합니다.

명령어

Command
$ sudo rbln-bios -t fanspeed --bmc_ip 192.168.1.100 --bmc_user admin --bmc_password password123

출력 (예제)

팬 속도 점검 (예제)
==== System Information ====
OS                    : ubuntu 22.04.5 LTS (Jammy Jellyfish)
Kernel                : 6.8.0-90-generic
CPU Model             : AMD EPYC 9355 32-Core Processor
Manufacturer          : Supermicro
Architecture          : x86_64

==== Fan Speed ====
 Result                         PASS
 Fan                            Speed(RPM)     Status
 -----------------------------------------------------------------
 FAN_1                                7500    enabled
 FAN_2                                7600    enabled

요약

프로그래밍 방식으로 사용할 수 있도록 JSON 형식으로 검증 결과를 출력합니다.

명령어

Command
$ sudo rbln-bios -t grub -j

출력 (예제)

JSON 출력 (예제)
{
    "version": "3.2.0",
    "system_information": {
        "os": "ubuntu 22.04.5 LTS (Jammy Jellyfish)",
        "kernel": "6.8.0-90-generic",
        "cpu_model": "AMD EPYC 9355 32-Core Processor",
        "manufacturer": "Supermicro",
        "architecture": "x86_64"
    },
    "grub_boot_parameter": {
        "result": "PASS"
    }
}

Host Interface를 통한 운영

BMC와 호스트 간의 내부 네트워크 인터페이스(Host Interface)를 사용하면, 외부 네트워크 연결 없이도 rbln-bios의 Redfish 기반 기능(bios, fanspeed)을 사용할 수 있습니다.

1. Web BMC에서 Host Interface 활성화

Web BMC 관리 페이지에 접속하여 Host Interface 설정을 활성화합니다. (Configuration/BMC Settings/Host Interface)

  • Host IP Address: 169.254.3.1 (변경 가능)
  • BMC IP Address: 169.254.3.254 (실제 입력값으로 사용할 IP)

2. 호스트 측 네트워크 인터페이스 설정

Host Interface에 해당하는 네트워크 장치에 IP 주소를 할당하고 활성화합니다.

$ sudo ip addr add 169.254.3.1/24 dev enxbe3af2b6059f
$ sudo ip link set enxbe3af2b6059f up

Note

enxbe3af2b6059f는 Host Interface의 네트워크 장치 이름이며, 시스템에 따라 다를 수 있습니다. ip link 명령어로 확인할 수 있습니다.

3. rbln-bios 실행

--bmc_ip 옵션에 내부 BMC IP(169.254.3.254)를 지정하여 Host Interface를 통해 실행합니다.

$ sudo rbln-bios -t bios --bmc_ip 169.254.3.254 --bmc_user <username> --bmc_password <password>
$ sudo rbln-bios -t fanspeed --bmc_ip 169.254.3.254 --bmc_user <username> --bmc_password <password>

문제 해결

bios 또는 fanspeed 실패

  • 호스트가 BMC에 도달할 수 있고 Redfish 엔드포인트에 액세스할 수 있는지 확인하세요.
  • BMC 자격 증명 및 BMC IP 주소를 확인하세요 (BMC (Redfish) 자격 증명 참조).

지원되지 않는 플랫폼

grub target은 모든 벤더 / 모델에서 동작합니다. biosfanspeed target은 Redfish API를 통한 BMC 액세스가 필요하며, 현재 Supermicro AS -4125GS-TNRT2AS -5126GS-TNRT2에서 검증되었습니다 (DCMS 라이센스 필요).

관련 문서