IPMI over LANの設定方法
こんにちは。プロジェクトメンバーの城間です。
今回はIPMI(Intelligent Platform Management Interface)の設定方法について紹介します。IPMIを利用すると、ネットワーク越しのシリアル通信やコンソールログイン、サーバーの電源制御などができるようになります。BIOSメッセージや起動時のメッセージを見ることができるので、データセンターにサーバーを置いている場合など、リモートからサーバーを操作せざるをえない状況で重宝します。
※IPMIの設定方法はベンダーやファームウェアによって異なります。ここでは、DELL PowerEdge R300を例とした設定方法を説明しています。
BIOS設定
シリアル通信設定
起動時にF2を押し、BIOSセットアップモードに入ります。各パラメータを以下のように設定します。
Serial Communication の設定項目 Serial Communication = On with Console Redirection via COM2 External Serial Connector = COM2 Failsafe Baud Rate = 57600 Redirection After Boot = Enabled
シリアルポートCOM2への出力をSOL(Serial Over LAN)にリダイレクト出力させます。物理デバイスからも接続できるようExternal Serial Connectorも設定します。また、GRUBによるSOLへの出力を有効にするため、Redirection After Bootを有効にしています。
リモートアクセス設定
GRUBが起動する前に下記のようなメッセージが出力されるので、Ctrl+Eを入力してリモートアクセスセットアップモードに入ります。
Press <Ctrl-E> for Remote Access Setup within 5 sec…
IPMI Over LAN = On LAN Parameters = IPアドレス等を設定します LAN User Configuration = SOLへアクセスするユーザーを設定します
BIOS側の設定は以上です。この状態でIPMIを通して電源のオン/オフなどを操作できます。次に、Linuxへコンソールログインできるように、Linux側の設定をします。
Linux設定
Xenカーネルを使用する際のIPMI設定方法です。
パッケージインストール
以下のIPMI関連パッケージをインストールします。
- OpenIPMI
- OpenIPMI-tools
- OpenIPMI-libs
インストール後 chkconfig ipmi on を実行し、Linux起動時にIPMI関連のドライバーを初期化するよう設定します。
/etc/grub.conf (/boot/grub/grub.conf)
grub.conf を以下のように設定します。
default=0
timeout=5
serial --unit=1 --speed=57600 --word=8 --parity=no --stop=1
terminal --timeout=5 console
#splashimage=(hd0,2)/grub/splash.xpm.gz
title Red Hat Enterprise Linux Server (2.6.18-92.1.10.el5xen)
root (hd0,2)
kernel /xen.gz-2.6.18-92.1.10.el5 com2=57600n8r console=com2,vga
module /vmlinuz-2.6.18-92.1.10.el5xen ro root=/dev/VolGroup00/LogVol00 rhgb quiet xencons=xvc console=xvc pnpacpi=off
module /initrd-2.6.18-92.1.10.el5xen.img
注意点は以下の通りです。
- 57600 という数値はBIOS側で設定した数値に合わせてください。この数値は、シリアル通信時の動作周波数です。
- splashimageの行(起動時に表示される画像ファイルを指定します)はコメントアウトしてください。
- Xenカーネルの利用するコンソール(consoleで指定)は、Xendの利用するコンソール(xenconsで指定)と同じ値にします。
/etc/inittab
inittabに以下を記述します。
co:2345:respawn:/sbin/agetty xvc0 57600 vt100-nav
前述の通り、57600はシリアル通信時の動作周波数ですので、同じ値を指定してください。
/etc/securetty
コンソール経由でのrootログインを許可するため、securettyにxvc0を記述します。
Linux側の設定は以上です。
IPMIへ接続
IPMIへの接続は、デバイスへ直接接続する方法とネットワーク越しに接続する方法があります。
デバイスに直接接続する
デバイスへ直接接続するには、IPMIドライバーを動作させなければなりません(例:service ipmi start)。
ipmitool -U ユーザー名 [-P パスワード] コマンド
パスワードのオプションは任意です。このオプションを指定しない場合は、コマンド実行後パスワードの入力を求められます。
ネットワーク越しに接続する
ネットワーク越しに接続するには、-Iでインターフェイスを指定します。IPMIのバージョンが2.0のときはlanplus、バージョンが1.5のときはlanを指定します。
ipmitool -I lanplus -H ホスト名 -U ユーザー名 [-P パスワード] コマンド
このlanplusインターフェイスは、ローカルのマシンからは接続できないようです。
コマンド一覧
よく使うコマンドを紹介します。詳細はオンラインマニュアルに記述されていますので、そちらを参照してください。
| コマンド | 内容 |
|---|---|
| power status | 電源の状態を確認する |
| power on | 電源をオンにする |
| power off | 電源をオフにする |
| power soft | OSからシャットダウンさせる |
| sol activate | シリアル接続する |
| sol deactivate | シリアル接続を解除する |
| lan print | IPMIのIP情報などを表示する |
| shell | shellのようなインタラクティブモードに入る |
solコマンドはIPMIバージョン2.0用で、バージョン1.5用にはisolコマンドを使用します。
おわりに
冒頭にも書きましたが、IPMIおよびSOL(Serial Over LAN)は、リモートのサーバー管理にとても役立ちます。コンソール出力の確認やBIOSの設定がリモートでできるのは素晴らしいです。是非利用してみてください。
One Trackback
[...] IPMI over LAN の設定方法 [...]