サーバ管理技術IPMI

スピーカー

ゆたかさん

発表資料

Googleスライド 

※当初非公開としていましたが、一般公開します。(2018/3/25)

本編(16:00-17:45)

目次

  • IPMI の概要
  • BMC の呼称
  • OOB の機能
  • OOB の WEB
  • OOB の CLI
  • IB の機能
  • 参考文献

IPMI とは

Intelligent Platform Management Interface。読み方はアイピーエムアイ。 Intel、HP、NEC、Dell が仕様を策定。 Intel のホームページに仕様書(PDF)が無料公開されている。

※仕様書のURLは不定期に変動するため、「Intel IPMI PDF」で検索するのがよいです。

v1.0 が 1998 年に登場。最新版は v2.0 (2015年)

IPMI とは ・・・ サーバを管理するための仕組み 一部のサーバ製品(ローエンドモデル)はサポートしていないものもある。

定期的に仕様がアップデートがされていて、 約20年使われている技術になる。

サーバ -------------------------------------------- | ------------- ----------------- | | | BIOS | OS |-----| ファームウェア | | | |-----------|-----| -------------- | | | Intel CPU |-----| SoC | | | ------------- ----------------- | | ホスト(DC 電源) BMC(AC 電源) | --------------------------------------------

用語説明

  • BIOS と UEFI  UEFI はBIOS と異なる新しいもの。昔からの BIOS はレガシー BIOS、UEFI ファームウェアと合わせて BIOS
  • ホスト Intel プロセッサ上で動作するソフトウェア群、ハードウェアのこと
  • BMC  Baseboard Management Controller の略。 IPMI 仕様で定義されている。IPMI を実現するために存在する。
  • ファームウェア  BMC を制御するソフトウェア。BMCファームウェアと呼ぶ。
  • SoC  System-on-a-chip の略。CPU、I2C、GPIO、LAN などを一つにまとめたもの。CPUはARMやPowerPC が一般的。
  • AC 電源  交流電源(=電源ケーブルを指した瞬間に電源が流れる)
  • DC 電源  直流電源(=電源ケーブルを指し、電源ボタンを押したときに初めて電源が流れる)

IPMI の領域

領域は2つあり、 サーバ内で完結するホストと BMC の間を In-band、サーバと管理端末の間を Out-of-band と呼ぶ。

  • In-band 筐体内でのホストと BMC 間の通信。略は IB。BMC が提供する機能(USB, IPMI, Serial)に対応したバスで結線される

  • Out-of-band 筐体の外で BMC と管理端末の通信。略は OOB。IPMI、HTTP(S)、SSH をサポート。

BMC の呼称

  • HPE
    • iLO(Integrated Lights-Out) アイロ、アイエルオー
      • integrated: 統合
      • lights-out: 完全自動の(形容詞)
    • ProLiant シリーズに搭載される
  • Dell
    • iDRAC(Integrated Dell Remote Access Controller) アイドラック
    • PowerEdge シリーズに搭載
  • IBM
    • IMM(Integrated Management Module)
    • Power Systems シリーズに搭載
  • Fujitsu
    • iRMC(Integrated Remote Management Controller)
    • PRIMERGY/PREMEQUEST シリーズに搭載
  • NEC
    • EXPRESSCOPE エンジン 3
    • Express5800 シリーズに搭載

参考文献

  • インフラエンジニアの教科書 コラム:リモートコントロール機能の名称 (p.31)

OOB の機能

  • ネットワーク経由で BMC を制御する

  • IPv4 (と IPv6) 対応

  • UDP/623

    asf-rmcp ・・・ ASF Remote Management and Control Protocol

  • 管理端末のソフトウェア

    • 基本的にはベンダーが提供するアプリケーション
    • フリーソフトでは IPMItool や ipmiutil
      • ipmuitil は windows 版あり
      • IPMItool は Cygwin でビルド可能
  • IPMItool の使い方

    • コマンドラインから実行
    • ipmitool -l lanplus -H <BMC の IP> - U <ユーザ名> -P <パスワード>
  • 実行例

    • サーバの電源オン
    • ipmitool -l lanplus -H 192.168.1.10 -U test -P test chassis power on
    • サーバに NMI(マスク不可割り込み)を送る
    • ipmitool -l lanplus -H 192.168.1.10 -U test -P test chassis power diag

できること

  • リモート電源制御
    • 電源 ON(DC電源オン)
    • 電源 OFF(DC電源オフ)
    • パワーサイクル・・・ハードの電源を強制オフ後に電源オン。コールドリブート。
    • ハードリセット・・・ハードの電源は落とさない。ウォームリブート。
    • ソフトシャットダウン・・・ホスト OS にシャットダウン指示を出す。ただしホストOSの設定による。
    • NMI・・・OS のクラッシュダンプを採取後、再起動をかける。
  • イベントログの参照
    • BMC が記録しているホストの動作ログを取得可能
    • SEL = System Event Log
    • ipmitool sel list - リモートシリアル操作
    • ホスト OS のシリアル端末が操作可能
    • SOL = Serial Over LAN
    • RHEL では OS 設定が必要(console=ttyS0)。Windows Server は SAC がデフォルトで使える。

OOB の Web

WEB コンソール

  • BMC の制御をブラウザから行える
  • IPMI を直接使っているわけではなく BMC の Web サーバ経由の操作
  • できること
    • 電源操作
    • リモート KVM とメディア
    • 各種設定
    • ファームウェア/BIOS アップデート
    • ログ採取
  • リモート KVM (Keyboard, Video, Mouse) を遠隔操作できる OSがクラッシュしている状態でも画面が確認できて操作できる
  • リモートメディア(DVD, USB, Floppy)を遠隔接続できる OS のインストールなど

リモート KVM のアプリ

  • アプリはファームウェアに内蔵
  • 形式は ActiveX, Java Web Start, ClickOnce
種別拡張子説明
ActiveX.cabIE のプロセス上で動作する DLL
Java Web Start.jarJavaVM 上で動作するアプリケーション
ClickOnce.exe.NET Framework で動作するアプリケーション

- サポートが IE 一択の理由は HTML5 化が遅れているから

最新モデルでようやくHTML5の対応が始まり推奨されている。 旧モデルでもFWやIPMIのアップデートにより使える場合がある。

推奨ブラウザはChrome,FireFox, Edge。IEも使えないことはないが、古いためつかえない機能があるので要注意。

安定性が悪い場合は環境によってはJaba Web Startを使う場合のほうが安定することがある。

HTML5が使えない場合にjava版を使うとよい。

  • Java Web Start や ClickOnce 採用の理由
    • ファームウェアはハードの一部という考え方が根強い
    • データセンターにソフトが持ち込ませてもらえないことが多い Tera Term は例外

OOB の CLI

  • CLI とは・・・Command Line Interface の略。CUI と同義

  • ブラウザではなくターミナルソフトで BMC 制御を行う

  • 自動化が可能

  • SMASH-CLP

    • DMTF が規定
    • Server Management Architecture for Server Hardware - COmmand Line Protocol
    • できること
      • Web コンソールと同じこと
      • 操作の自動化
      • 操作ログの採取
      • SOL が便利
    • SOLで出力されるログはBMC内部に保存されているため、Tera Termで接続していない時のログも見れる

IB の機能

  • IPMI は IB だけでも機能する
  • セキュリティなどの問題を考慮し、 OOB は無効化できる

IB の機能

  • ホストの死活監視
  • 電源制御
  • センサ監視
  • 故障管理
  • コア制御
  • ログ採取 上記以外にも色々あるが割愛

ホスト死活監視

  •  電源オン/BIOS起動/BIOS setup/OptionROM展開/OS起動/OS運用中/OSリブート、停止  このうちBIOS setup(PC起動時のF2画面がイメージし易い)を除いて監視可能  BIOS setupを除外しているのは、この操作中の状況をBIOS起動失敗と捉えられると困るから
  • 各プロセスを監視することで、失敗した場合にリブートするなどの特定のアクションを実行させられる

コア制御

  • BMC と BIOS 連携によるコア数制御
  • コア数によって必要なライセンスが変わってくる場合に有用(特にDB 製品) BIOS は元のコア数で動くが、OS には BMC で指定したコアに見せることができる(ACPIを利用)
  • 例として15コアプロセッサ*3のサーバーの場合 BIOS上では45コアと認識させるがOSでの認識は10コアとなるという設定ができる

自動起動

  • 瞬停(瞬断)でもサーバを自動的に DC ON する
  • 名称: AC-LINK、Restore on AC Power Loss、Power Failure Recovery

参考文献

書籍「Linux デバイスドライバプログラミング」(SBクリエイティブ)

第 15 章 著 平田 豊 (ゆたかさん @yutakakn 

まとめ

インフラ勉強会にひかりあれ!

フリートーク(17:45-18:00)

  • ここでは言えない業界裏話が炸裂しました。