ipmideck

セットアップ

ラックで ipmideck を稼働させる

まっさらなマシンからライブダッシュボードまで3ステップ。Docker か pip を選んで起動し、ウィザードを開くだけ。手で編集する設定ファイルはありません。

入手先

PyPI と Docker Hub に公開、ソース一式は GitHub にあります。あなたの運用に合うものを選んでください。

ステップ 1

インストールして起動

ipmideck を動かす方法は2つ。Docker ならコマンド1つ。pip ならパッケージを入れてからサーバーを起動します。

docker

コンテナを起動

docker
docker run --network host devluigi06/ipmideck:latest

ipmideck が BMC に直接届くよう --network host で動きます。

pip
  1. パッケージをインストール

    pip
    pip install ipmideck
  2. サーバーを起動

    cli
    ipmideck

pip パッケージにはホストに ipmitool が必要です。素の ipmideck は 0.0.0.0:3000 にバインドします。

ステップ 2

ダッシュボードを開く

http://<your-ip>:3000

your-ip は実行したマシンのアドレスです。Linux なら ip addr で、あるいはルーターのデバイス一覧で確認できます。

ポート 3000 でサーバーのアドレスにアクセスし、アプリ内のセットアップウィザードに従って最初の BMC を追加します。config.yaml は初回起動時に自動で書き込まれるので、手で設定するものはありません。

動きましたか? ipmideck のログインに到達し、続いて最初の BMC を追加する短いウィザードが出ます。

表示されませんか?

何も読み込まれない? ポート 3000 を空けるか、ipmideck を別のポートに移してください。対話コンソールで b キーを押すか、IPMIDECK_SERVER_PORT を設定します。

ウィザードに BMC が出ない? UDP 623 で到達できる必要があります。Docker では --network host で起動してください。

対応ハードウェア

ipmideck は標準の IPMI 2.0 を話すので、ほとんどのサーバー BMC が応答します。対応は、各ベンダーをどこまで入念にテストしたかで段階分けしています。

Dell PowerEdge / iDRAC対応 / テスト済み
IPMI 2.0。完全対応・テスト済み。
Supermicro実験的
IPMI 2.0。動作しますが、まだ網羅的なテストはしていません。
HPE
HPE iLO実験的
IPMI 2.0。実験的、まだ網羅的なテストはしていません。
Lenovo XCC実験的
IPMI 2.0。実験的、まだ網羅的なテストはしていません。
IBM
IBM IMM実験的
IPMI 2.0。実験的、まだ網羅的なテストはしていません。

設定

上級

始めるのに必要はありません。ipmideck は初回起動時に、ほどよいデフォルト値で data/config.yaml を書き込みます。どこにあって、どう変えるかを知りたいときのために置いてあります。

config.yaml の場所
Docker
/data/config.yaml。イメージは IPMIDECK_DATA_DIR=/data を設定するので、そのパスをボリュームで永続化してください。
pip / ソース
インストール先の隣のデータディレクトリ(Linux では /data)。IPMIDECK_DATA_DIR で移動できます。
デフォルトの config.yaml を表示
config.yaml
# data/config.yaml — auto-generated on first run
server:
  host: "0.0.0.0"
  port: 3000
  https: false
auth:
  enabled: true
  session_expiry: "24h"
  max_login_attempts: 5
ipmi:
  poll_interval: 30
  power_poll_interval: 30
  command_timeout: 30
data:
  retention_days: 365
  cleanup_interval: "24h"
logging:
  level: "info"
modules:
  sensors:
    enabled: true
  fanpilot:
    enabled: true
  power:
    enabled: true
  sel:
    enabled: true
  fru:
    enabled: true

どの設定も、IPMIDECK_ プレフィックスの環境変数で実行時に上書きできます。Docker で ipmideck を設定する手軽な方法です。

IPMIDECK_SERVER_PORT
ダッシュボードがバインドする HTTP ポート(デフォルト 3000)。
IPMIDECK_AUTH_ENABLED
内蔵ログインを有効または無効にします(デフォルト true)。
IPMIDECK_IPMI_POLL_INTERVAL
BMC センサーのポーリング間隔の秒数(デフォルト 30)。
IPMIDECK_DATA_RETENTION_DAYS
クリーンアップ前に保持するセンサー履歴の日数(デフォルト 365)。