IPMIでサーバーの電源を遠隔でon/offをする方法
ほとんど自分用の備忘録だが書いておく。
まず、大前提として IPMI を使ってリモートからサーバーの状態を確認orコントロールするためには BIOS の設定画面から IPMI 用に IP を振ったりユーザーやパスワードを予め登録しておく必要がある。これはもう済んでいるものとする。
以下のコマンドで電源やファンの状態を確認できる。
sudo ipmitool -H IPMIに振ったアドレス -U ユーザー名 chassis status
実行例はこんな感じ。targetserver-ipmi は、対象サーバーの IPMI に振った IP アドレス(に解決する名前)である。
[admin@myserver ~]$ sudo ipmitool -H targetserver-ipmi -U username chassis status Password: (ここでパスワードを入力) System Power : on Power Overload : false Power Interlock : inactive Main Power Fault : false Power Control Fault : false Power Restore Policy : always-off Last Power Event : Chassis Intrusion : inactive Front-Panel Lockout : inactive Drive Fault : false Cooling/Fan Fault : false
電源の状態だけ確認したい場合(or 電源の状態ぐらいしか確認できないしょぼいハードの場合)、
sudo ipmitool -H IPMIに振ったアドレス -U ユーザー名 power status
で確認できる。
また、電源の on/off は
sudo ipmitool -H IPMIに振ったアドレス -U ユーザー名 power on sudo ipmitool -H IPMIに振ったアドレス -U ユーザー名 power off
で実行できるので、サーバーから ping も帰ってこないレベルに達したら power off してしばらく待って power on することで運が良ければサーバーが回復する。