セットアップ
ラックで ipmideck を稼働させる
まっさらなマシンからライブダッシュボードまで3ステップ。Docker か pip を選んで起動し、ウィザードを開くだけ。手で編集する設定ファイルはありません。
入手先
PyPI と Docker Hub に公開、ソース一式は GitHub にあります。あなたの運用に合うものを選んでください。
インストールして起動
ipmideck を動かす方法は2つ。Docker ならコマンド1つ。pip ならパッケージを入れてからサーバーを起動します。
コンテナを起動
docker run --network host devluigi06/ipmideck:latestipmideck が BMC に直接届くよう --network host で動きます。
パッケージをインストール
pip install ipmideckサーバーを起動
ipmideck
pip パッケージにはホストに ipmitool が必要です。素の ipmideck は 0.0.0.0:3000 にバインドします。
ダッシュボードを開く
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 が応答します。対応は、各ベンダーをどこまで入念にテストしたかで段階分けしています。
設定
上級始めるのに必要はありません。ipmideck は初回起動時に、ほどよいデフォルト値で data/config.yaml を書き込みます。どこにあって、どう変えるかを知りたいときのために置いてあります。
- Docker
- /data/config.yaml。イメージは IPMIDECK_DATA_DIR=/data を設定するので、そのパスをボリュームで永続化してください。
- pip / ソース
- インストール先の隣のデータディレクトリ(Linux では /data)。IPMIDECK_DATA_DIR で移動できます。
デフォルトの 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)。