ipmideck

Einrichtung

Bring ipmideck auf deinem Rack zum Laufen

Drei Schritte von einer frischen Box zu einem Live-Dashboard. Wähl Docker oder pip, starte es, dann öffne den Assistenten. Keine Konfigurationsdateien zum Hand-Anlegen.

Wo du es bekommst

Veröffentlicht auf PyPI und Docker Hub, mit dem vollständigen Quellcode auf GitHub. Wähl, was zu deiner Arbeitsweise passt.

Schritt 1

Installieren und starten

Zwei Wege, ipmideck zu betreiben. Docker ist ein einziger Befehl. Mit pip installierst du das Paket und startest dann den Server.

docker

Container starten

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

Läuft mit --network host, damit ipmideck deine BMCs direkt erreicht.

pip
  1. Paket installieren

    pip
    pip install ipmideck
  2. Server starten

    cli
    ipmideck

Das pip-Paket benötigt ein auf dem Host installiertes ipmitool. Ein nacktes ipmideck bindet an 0.0.0.0:3000.

Schritt 2

Dashboard öffnen

http://<your-ip>:3000

your-ip ist die Adresse der Maschine, auf der du es gestartet hast. Finde sie mit ip addr unter Linux oder in der Geräteliste deines Routers.

Geh zur Adresse deines Servers auf Port 3000 und folge dann dem App-Assistenten, um deinen ersten BMC hinzuzufügen. config.yaml wird beim ersten Start automatisch geschrieben, es gibt also nichts von Hand zu konfigurieren.

Läuft? Du landest beim ipmideck-Login und dann bei einem kurzen Assistenten, um deinen ersten BMC hinzuzufügen.

Siehst du nichts?

Es lädt nichts? Gib entweder Port 3000 frei oder verschiebe ipmideck auf einen anderen Port: drück die Taste b in der interaktiven Konsole oder setze IPMIDECK_SERVER_PORT.

BMC fehlt im Assistenten? Er muss über UDP 623 erreichbar sein. In Docker mit --network host starten.

Unterstützte Hardware

ipmideck spricht das übliche IPMI 2.0, daher antworten die meisten Server-BMCs. Die Unterstützung ist gestaffelt, je nachdem, wie gründlich jeder Hersteller getestet wurde.

Dell PowerEdge / iDRACUnterstützt / getestet
IPMI 2.0. Voll unterstützt und getestet.
SupermicroExperimentell
IPMI 2.0. Funktioniert, noch nicht erschöpfend getestet.
HPE
HPE iLOExperimentell
IPMI 2.0. Experimentell, noch nicht erschöpfend getestet.
Lenovo XCCExperimentell
IPMI 2.0. Experimentell, noch nicht erschöpfend getestet.
IBM
IBM IMMExperimentell
IPMI 2.0. Experimentell, noch nicht erschöpfend getestet.

Konfiguration

fortgeschritten

Für den Einstieg brauchst du das nicht. ipmideck schreibt beim ersten Start data/config.yaml mit sinnvollen Standardwerten. Es steht hier, falls du wissen willst, wo sie liegt und wie man sie ändert.

wo config.yaml liegt
Docker
/data/config.yaml. Das Image setzt IPMIDECK_DATA_DIR=/data, sichere diesen Pfad also mit einem Volume.
pip / Quellcode
Ein Datenverzeichnis neben der Installation (unter Linux /data). Verschieb es mit IPMIDECK_DATA_DIR.
Standard-config.yaml anzeigen
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

Jede Einstellung lässt sich zur Laufzeit mit einer Umgebungsvariable mit dem Präfix IPMIDECK_ überschreiben, der einfache Weg, ipmideck in Docker zu konfigurieren.

IPMIDECK_SERVER_PORT
HTTP-Port, an den das Dashboard bindet (Standard 3000).
IPMIDECK_AUTH_ENABLED
Den eingebauten Login aktivieren oder deaktivieren (Standard true).
IPMIDECK_IPMI_POLL_INTERVAL
Sekunden zwischen den BMC-Sensorabfragen (Standard 30).
IPMIDECK_DATA_RETENTION_DAYS
Tage an Sensorverlauf, die vor der Bereinigung aufbewahrt werden (Standard 365).