Management-Module (Baseboard Management Controller, BMC) in Servern sind eine feine Sache, um den Zustand des Systems zu ermitteln und bei den Varianten die KVM oder IP beherrschen auch dann zugreifen zu können, wenn das installierte Betriebssystem nicht mehr startet oder noch überhaupt gar keines vorhanden ist.

Bei Netzwerkarbeiten bei einem Kunden fiel per Zufall auf, das auf keines der BMCs der beiden Server mehr zugegriffen werden konnte. Wobei, diese Aussage stimmt nicht ganz, denn das Monitoring konnte nach wie die Messwerte der Sensoren auslesen, ein Ping auf die jeweiligen IP-Adressen klappte ebenfalls, aber auf das Web-Interface konnte man nicht mehr gelangen. Ganz gleich welcher Browser, es wurde quasi endlos versucht die Seite zu laden, angezeigt wurde letztlich gar nichts, einen Timeout gab es allerdings nicht.

Für solche und andere Schwierigkeiten kann man versuchen das BMC, und eben wirklich nur das BMC ohne den kompletten Server, neu zu starten. Vom installierten Betriebssystem aus geht das mit Tools wie ipmiutil (Linux & Windows) oder ipmitool (Linux). Die jeweilige Syntax sieht so aus:

ipmiutil reset -k

ipmitool mc reset bzw. ipmitool bmc reset

Interessanterweise findet sich in der Hilfe von ipmiutil nicht den oben gezeigte Parameter “-k”. Gefunden wurde dieser hier:

Sourceforge – ipmiutil – Tickets – #30 Using ipmiutil to restart unresponding BMC

Für ipmitool findet man viele Anleitungen, wie z.B. hier

Thomas Krenn – wiki – IPMI BMC reset bei IPMI Problemen

ipmitool(1) – Linux man page

Beide Tools bieten zudem die Möglichkeit Befehle remote ausführen zu können. Am Beispiel eines der genannten Server sah die Ausgabe von ipmiutil unter Windows wie folgt aus:

C:\Program Files (x86)\Server-Eye\service\993\ipmi>ipmiutil health
ipmiutil health ver 3.12
BMC manufacturer  = 000a3f (ASUS), product = 0e73
BMC version       = 2.05, IPMI v2.0
BIOS Version      = 4301
IPMI driver type  = 10        (ms)
Power State       = 00       (S0: working)
Selftest status   = 0055     (OK)
Chassis Status    = 01 10 40 00 (on, see below)
        chassis_power       = on
        pwr_restore_policy  = stay_off
        last_power_event    = IPMI
        chassis_intrusion   = inactive
        front_panel_lockout = inactive
        drive_fault         = false
        cooling_fan_fault   = false
Power On Hours    = 32166 hours (1340 days)
BMC LAN Channels  = 1 8
Chan 1 AuthTypes  = MD2 MD5 Straight_Passwd OEM
ipmiutil health, completed successfully

C:\Program Files (x86)\Server-Eye\service\993\ipmi>ipmiutil reset -k
ipmiutil reset ver 3.12
-- BMC version 2.5, IPMI version 2.0
Power State      = 00   (S0: working)
ipmiutil reset: cold reset BMC ...
ipmiutil reset: Cold_Reset to BMC ok
ipmiutil reset, completed successfully

Wie man an der Ausgabe des ersten Befehls (“ipmutil health”) sehen kann, sind die Server schon eine Weile in Betrieb:

Power On Hours = 32166 hours (1340 days)

Kurzum: Seit über dreieinhalb Jahren. Oder anders ausgedrückt: Seitdem sie beim Kunden aufgebaut und eingeschaltet wurden, seitdem sind nur die BMCs durchgelaufen, die installierten Windows Server 2016 wurden im Schnitt einmal im Monat beim Patchday bzw. kurze Zeit danach neu gestartet.

Die Ausgabe des eigentlichen reset-Befehls zeigt an, das der Neustart erfolgreich ausgelöst wurde. Ob es dann wirklich geklappt hat, kann man erst ein paar Minuten später beurteilen, wenn das Modul (hoffentlich) erfolgreich gestartet ist und man wieder vollen Zugriff hat.