IPMI(アイピーエムアイ)とは | 意味や読み方など丁寧でわかりやすい用語解説
IPMI(アイピーエムアイ)の意味や読み方など、初心者にもわかりやすいように丁寧に解説しています。
読み方
日本語表記
インテリジェントプラットフォーム管理インターフェース (インテリジェントプラットフォームマネジメントインターフェース)
英語表記
IPMI (アイピーエムアイ)
用語解説
IPMIはIntelligent Platform Management Interfaceの略称であり、サーバーの物理的な状態を遠隔から監視、管理するための標準規格である。サーバー管理において、OSが正常に動作している場合はSSHやリモートデスクトップといったソフトウェアを用いて遠隔操作が可能だが、OSがフリーズしたり、起動に失敗したり、あるいは電源がオフの状態ではこれらの方法は利用できない。IPMIは、このようなOSやアプリケーションの層よりも低い、ハードウェアレベルでの管理を実現するために策定された。その最大の特徴は、サーバー本体のCPUやOSとは独立して動作する専用の管理チップを通じて、サーバーの電源状態に関わらず管理機能を提供できる点にある。これにより、システム管理者はデータセンターに直接赴くことなく、遠隔地からサーバーの電源投入や強制再起動、ハードウェアの状態監視といった物理的な操作を行えるようになる。
IPMIの仕組みの中核を担うのが、BMC(Baseboard Management Controller)と呼ばれるマイクロコントローラである。BMCはサーバーのマザーボード上に搭載された小型の独立したコンピュータのようなものであり、サーバー本体がAC電源に接続されていさえすれば、本体の電源がオフの状態でも常に稼働している。このBMCが、IPMI規格に準拠した管理機能のすべてを制御する。BMCは、マザーボード上に配置された多数のセンサーと接続されている。これらのセンサーは、CPUの温度、各所の電圧、冷却ファンの回転数、筐体の開閉状態といったハードウェアの物理的な情報を常時監視している。BMCはこれらのセンサーから情報を収集し、設定された閾値を超えた場合に管理者にアラートを送信するなどの動作を行う。
外部の管理用コンピュータからBMCにアクセスするためには、通常、サーバーの背面に設けられた専用のネットワークポートが使用される。このポートは、サーバーが通常のサービス提供に用いるネットワークポートとは物理的にも論理的にも分離されており、管理用の通信がサービス用のトラフィックに影響を与えたり、逆にサービス用のネットワーク障害が管理機能に影響を与えたりすることを防ぐ。管理者はこのネットワーク経由で、IPMI over LANというプロトコルを用いてBMCにコマンドを送信し、様々な操作を実行する。
IPMIが提供する具体的な機能は多岐にわたる。最も基本的な機能は電源制御である。遠隔からサーバーの電源をオン、オフ、リセットすることが可能で、OSが応答しなくなった際に強制的に再起動させることができる。また、ハードウェアの健全性を監視する機能も重要である。前述の各種センサーからの情報をリアルタイムで取得し、ハードウェアの異常を早期に検知することができる。BMCはこれらのセンサー情報や発生したハードウェアイベントを、SEL(System Event Log)と呼ばれる不揮発性メモリ上のログに記録する。このログはOSが起動する前の段階で発生したエラーも記録するため、障害発生時の原因究明に極めて有効な情報源となる。
さらに、Serial over LAN(SOL)という機能を使えば、ネットワーク経由でサーバーのシリアルコンソールにアクセスできる。これにより、OSの起動プロセスをリアルタイムで監視したり、ネットワーク設定に失敗してリモート接続できなくなったサーバーのCUI画面を操作して復旧作業を行ったりすることが可能になる。多くのサーバー製品では、IPMIの拡張機能としてリモートKVM(Keyboard, Video, Mouse)機能も提供されている。これはKVM over IPとも呼ばれ、サーバーのビデオ出力をネットワーク経由で転送し、管理者の手元のコンピュータの画面に表示させると同時に、キーボードとマウスの操作をサーバーに送信する機能である。この機能により、遠隔からサーバーのBIOS設定を変更したり、OSのインストール作業をグラフィカルな画面で行ったりすることができ、あたかもサーバーの目の前で直接作業しているかのような操作性を実現する。
これらの機能により、IPMIは現代のデータセンター運用において不可欠な技術となっている。物理的なサーバーへのアクセスを大幅に削減できるため、運用コストの低減と管理業務の効率化に大きく貢献する。また、障害発生時には迅速な初期対応が可能となり、システムのダウンタイムを最小限に抑えることにも繋がる。システムエンジニアを目指す者にとって、サーバーがどのように物理的に管理されているかを理解する上で、IPMIの知識は非常に重要である。