2007/10/15

OpenIPMI・その3・管理端末編

管理端末側の準備は簡単だ。パッケージOpenIPMI-toolsをインストールすればよい。
# yum install -y OpenIPMI-tools

主に使用するコマンドは、ipmitool(1)。概要で実行例を示したが、これとマニュアルを見れば、大体の操作はできるだろう。
実行例では、パスワードの指定にコマンドラインオプション-P "パスワード"を使用したが、代わりに、-a-Eおよび-f ファイル名を指定することができ、それぞれ、プロンプトを出して入力、環境変数IPMI_PASSWORDで指定、および、ファイルで指定、となる。安全面を考えると、-a-f ファイル名がいいだろう(環境変数や、コマンドライン引数は、ps auxwweで覗き見可能なので)

最後に、再起動の実行例を示す。まずは、管理端末側。
$ export IPMI_PASSWORD=IPMIパスワード
$ ipmitool -I lan -H サーバ名 -U IPMIユーザ名 -E -L operator chassis power cycle
Chassis Power Control: Cycle
$
なお、コマンドラインオプション-L operatorは、権限レベルの指定。
サーバ側では、コンソールに
Broadcast message from root (Mon Oct 15 19:47:03 2007):

The system is going down for system halt NOW!
の様なメッセージが表示され、再起動が実行される。ログ(/var/log/messages)には、以下の様な行が確認できるはずだ。
Oct 15 19:47:02 サーバ名 /usr/bin/ipmilan: Mon Oct 15 19:47:02 2007: Activate session: Session opened for user 0x2, max priv 3
Oct 15 19:47:02 サーバ名 /usr/bin/ipmilan: Mon Oct 15 19:47:02 2007: Session closed: Closed due to request
Oct 15 19:47:03 サーバ名 shutdown[14921]: shutting down for system halt


OpenIPMI・その1・概要
OpenIPMI・その2・サーバ編
OpenIPMI・その3・管理端末編

4 件のコメント:

Quuux さんのコメント...

IPMIの簡単に使えるWindows(GUI)クライアントってないですかねえ。ipmiviewは動かないし..

りょう さんのコメント...

Quuuxさん:
おめでとうございます。このブログ始まって以来の初コメントです(笑)。

IPMIのGUIクライアントですか…正直言って知りません。
もしかすると、OpenViewとかTivoliJP1辺りだとIPMIがサポートされていそうですけど、いかんせん気軽に試してみるというわけにも行かず(OVは弊社内にあるにはあるんですが、私が気楽に遊べるようなものでは当然ないわけで)。
ここは一発、作ってみるってのはどうですかね?

quuux さんのコメント...

IPMIのUDPパケットフォーマットを探したが見つからず。そうすると、コマンドラインのipmishをバックグラウンドで起動して、双方向パイプで制御するか… ん? Windowsのプロセス間通信って同じ考え方でできるのか? 調べるのめんどくせー (終了)

りょう さんのコメント...

ざっと調べてみると、Windows2003R2あたりでIPMI COM DLLが準備されているんだそうです(参考)。これを叩けば、少なくともパケットを解析する手間は省けそう。後は適当な言語でガワを作ればよさそうです…
が、手元にWindows 2003がありません。とほほ。