2 Punkte von GN⁺ 2024-09-04 | 1 Kommentare | Auf WhatsApp teilen
  • Computers Are Bad kauft gerade neue Server, während die Enterprise-Cloud nach New Mexico umgezogen wird
  • Die derzeit genutzten Big-Iron-Server sind rund 10 Jahre alte Hardware
  • In der heutigen Cloud-zentrierten Industrie vergleicht man nur noch selten die Spezifikationen von Dell PowerEdge und HP ProLiant
  • Der Nicht-Hyperscale-Servermarkt wird zunehmend auf Intel-Spezifikationen und Referenzdesigns vereinheitlicht

Was ist ein Server?

  • Es gibt die alte Frage, ob ein Server einfach nur ein großer, leistungsstarker Computer ist oder etwas Besonderes
  • Zur Geschichte des Servers gehört viel Industriegeschichte, und je nach Kontext kann die Antwort unterschiedlich ausfallen
  • Über die Geschichte des Servers lassen sich einige Verallgemeinerungen treffen:
    • Client-Server-Computing entwickelte sich vor allem aus dem Time-Sharing-Computing mit mehreren an einen einzelnen Computer angeschlossenen Terminals
    • Es wurde nicht erwartet, dass Terminals eine dem Computer ähnliche Architektur haben würden, und das setzte sich auch in Client-Server-Systemen fort
    • Bis in die 2000er hinein war es üblich, dass Server andere Betriebssysteme und Architekturen nutzten
  • Durch die PC-Revolution etablierte sich bis Mitte der 1990er auf der Client-Seite weitgehend eine WinTel-Monokultur

Veränderungen in der Server-Architektur

  • Die Kombination aus SPARC und Solaris war bei Servern sehr verbreitet, ebenso wie IBMs Minicomputer-Architektur und verschiedene Betriebssysteme
  • Einer der wichtigsten kommerziellen Beiträge von Java bestand darin, dass sich beim Schreiben von Enterprise-Anwendungen für Solaris/SPARC-Backends Code auch in „modernen“ Business-Computing-Umgebungen wie Unix/RISC oder Windows/x86 wiederverwenden ließ
  • Das Client-Server-Computing-Modell mit „dicken Clients“ verknüpfte Server-Plattformen stark mit „Enterprise-Computing“
  • Architekturen, die einst auf Server beschränkt waren, wurden zunehmend zu Nischenlösungen und konnten bei Kosten und Leistung nur schwer mit PC-Architekturen konkurrieren
  • Die gängige Architektur von Server-Software verlagerte sich von „vertikaler Skalierung und Systemen mit hoher Verfügbarkeit“ zu „horizontaler Skalierung und gelockerten Stabilitätsanforderungen“, wodurch die Vorteile von Enterprise-Computern stark schrumpften
  • In den meisten Fällen ist ein Server heute einfach nur ein großer Computer
  • Ein Server ist allerdings deutlich häufiger ein SMP- oder NUMA-System mit mehreren Prozessorsockeln
  • Die Ära von SAS und Hardware-RAID verschwindet allmählich, aber Server bieten weiterhin komplexere Storage-Controller und Topologien als Clients
  • Server bieten fast immer Out-of-Band-Management (OOB)

Out-of-Band-Management

  • Out-of-Band-Management (OOB) ist eine Funktion, die man bei Clients fast nie findet
  • Ein separater kleiner Verwaltungscomputer ermöglicht den Fernzugriff auf einen Server
  • OOB-Management benötigt weder das Betriebssystem noch die üblichen Komponenten
  • Die meisten Server bieten eine Remote-Konsole, mit der man so interagieren kann, als wären lokaler Monitor und Tastatur angeschlossen
  • OOB-Management-Produkte bieten die Funktion „virtuelle Medien“, mit der sich ISO-Dateien hochladen und als physische Geräte darstellen lassen

Out-of-Band-Management

  • Out-of-Band-Management (manchmal auch als unbeaufsichtigte Verwaltung bezeichnet) beschreibt eine Funktion, von der man bei Clients fast nie hört
  • Über einen separaten kleinen Verwaltungscomputer ist Remote-Zugriff möglich, selbst wenn der Server ausgeschaltet ist
  • Die Begriffe „out-of-band“ und „in-band“ stammen zwar aus der in Netzwerken und Kommunikation üblichen Bedeutung, ihre tatsächliche Verwendung hat sich jedoch verändert
    • Sinnvoller ist es möglicherweise, Out-of-Band-Management so zu verstehen, dass dafür weder das Betriebssystem noch allgemeine Systemkomponenten erforderlich sind
  • Ein sehr typisches Beispiel für In-Band-Management ist SSH, ein Dienst, der von der Software des Computers bereitgestellt wird
  • Out-of-Band-Management dagegen wird durch einen dedizierten Hardware- und Software-Stack bereitgestellt und erfordert weder das Betriebssystem noch traditionell die Mitwirkung der CPU
  • Das beste heutige Beispiel für Out-of-Band-Management ist die Remote-Konsole, die die meisten Server bieten
    • Im Grunde ist das ein integriertes IP-KVM, über das sich die Maschine so bedienen lässt, als wären Monitor und Tastatur lokal angeschlossen
  • Viele OOB-Management-Produkte bieten außerdem „virtuelle Medien“: Man lädt eine ISO-Datei in die Verwaltungsoberfläche hoch, und sie erscheint dem Computer als echtes Gerät
    • Das ist für die Installation eines Betriebssystems sehr nützlich

Die Geschichte des OOB-Managements

  • OOB-Management ist ein interessantes kleines Kapitel der Computergeschichte
  • Tatsächlich ist es keine wirklich neue Idee, denn ähnliche Funktionen finden sich in der gesamten Geschichte des Business-Computing
  • Mit der Zeit wurde OOB-Management einfacher und langweiliger
  • Seit Ende der 1980er bis Anfang der 1990er ist es ein gemeinsames Merkmal von Servern
    • irgendeine Form einer lokalen Bedienoberfläche, die niedrigstufige Informationen über den Hardware-Zustand liefert, etwa ein LCD-Matrix-Display oder ein Raster aus LED-Anzeigen
    • eine serielle Konsole mit Zugriff auf den frühen Bootloader und auf persistente Low-Level-Verwaltungssysteme
    • je nach Architektur ein höheres Verwaltungssystem mit variabler Position im Stack, das der Remote-Verwaltung der Maschinen-Workloads dient
  • Der aktuelle Stand des OOB-Managements
    • Die meisten Server können heute über das Frontpanel anzeigen, ob eine redundante Komponente ausgefallen ist, etwa ein Lüfter oder ein Netzteil
    • Allerdings ist die Zahl der redundanten und im laufenden Betrieb austauschbaren Komponenten von „alles einschließlich der CPU“ in den 1990ern teilweise auf Lüfter geschrumpft
    • Serielle Verwaltung ist weiterhin recht verbreitet, weil sie für Installation und Wartung des OS auf Headless-Systemen ein beliebter Weg bleibt
    • In den meisten Fällen wurde OOB-Management jedoch genauso wie die Prozessorarchitektur auf Intel IPMI vereinheitlicht

Das Verwirrende an IPMI

  • IPMI ist eine Spezifikation, keine Implementierung
    • Die meisten großen Anbieter haben ihre eigenen IPMI-Implementierungen mit Funktionen über die Kernspezifikation hinaus und nennen sie mit merkwürdigen Abkürzungen wie HP iLO, Dell DRAC usw.
    • Diese anbieterspezifischen Implementierungen sind älter als IPMI, daher ist es nicht ganz korrekt, einfach nur von „IPMI“ zu sprechen
    • Neue Hersteller nennen es dagegen eher IPMI; in diesem Fall kann es sich um ein Standardprodukt eines Firmware-Anbieters handeln
  • IPMI-Software läuft normalerweise auf einem Prozessor, der meist Baseboard Management Controller (BMC) genannt wird; deshalb werden die Begriffe IPMI und BMC manchmal synonym verwendet
  • Lights-out-Management (LOM) ist größtenteils ein nutzloser Begriff, wird aber weiter verwendet, weil HP(E) ihn bevorzugt und seine IPMI-Implementierung Integrated Lights-Out nennt
  • Der BMC darf nicht mit dem System Management Controller (SMC) verwechselt werden, einer Komponente, die in Client-Computern vorkommt
    • SMC ist einer von mehreren Begriffen für Komponenten, die Aufgaben wie die Steuerung der Lüfterdrehzahl übernehmen
    • BMC und SMC haben eine miteinander verknüpfte Geschichte; tatsächlich übernimmt der BMC in den meisten Servern diese Aufgaben
  • IPMI definiert zwei Schnittstellen
    • eine Out-of-Band-Schnittstelle, die über das Netzwerk oder eine serielle Verbindung genutzt werden kann
    • eine In-Band-Schnittstelle, die vom Betriebssystem über einen Treiber genutzt werden kann (die Kommunikation zwischen CPU und BMC läuft dabei über den LPC-Bus, ein seltsames kleines Überbleibsel des ISA-Busses, das in den meisten modernen Computern noch existiert)
  • Deshalb kann man mit IPMI auch aus Tools heraus interagieren, die im Betriebssystem laufen, etwa Linux ipmitool
  • Wenn man nicht versteht, dass IPMI ein vollständig unabhängiges System mit einer lokalen Schnittstelle zum laufenden Betriebssystem aus Bequemlichkeitsgründen ist, kann es etwas verwirrend sein, was genau vor sich geht

Was IPMI kann

  • IPMI ist größtenteils zu einer Web-App geworden
    • Web-Oberflächen sind einfach zu praktisch, um sie abzulehnen
    • Viele IPMI-Produkte haben zwar dedizierte Client-Software, portieren aber alle Funktionen in eingebettete Web-Anwendungen
  • Die Qualität der Web-Oberflächen variiert stark, aber die meisten sind nicht besonders gut
  • So greift man auf die IPMI-Weboberfläche zu
    • Die meisten heute verkauften Server haben ein dediziertes Ethernet-Interface mit Beschriftungen wie „IPMI“, „management“ usw.
    • Der beste Weg, IPMI zu nutzen, ist, die Management-Netzwerkschnittstelle in ein dediziertes physisches Netzwerk zu stellen
      • aus Sicherheits- und Zuverlässigkeitsgründen (auch wenn das Hauptnetzwerk Leistungs- oder Stabilitätsprobleme hat, sollte IPMI weiterhin erreichbar sein)
    • Ein dediziertes physisches Netzwerk kostet jedoch Zeit, Platz und Geld
      • Das „Management-Netzwerk“ ist daher sehr oft einfach ein VLAN auf normaler Netzwerkinfrastruktur
      • ähnlich dem, was AT&T ein Common Channel Signaling Arrangement (CCSA) nannte
      • Es verhält sich wie ein unabhängiges privates Netzwerk, nutzt aber in Wirklichkeit dieselbe Hardware wie alles andere; die Isolation wird per Software umgesetzt
  • IPMI-Sideband-Networking
    • Mit Sideband-Management kommuniziert der BMC direkt über dieselbe NIC, die auch das Betriebssystem nutzt
    • Die Art der Implementierung ist etwas merkwürdig
      • Die NIC gibt sich als zwei unterschiedliche Interfaces aus und mischt IPMI-Traffic in denselben Paketstrom wie den Host-Traffic, verwendet dabei aber eine andere MAC-Adresse
      • Für andere Netzwerkgeräte sieht es auf diese Weise so aus, als wären wie üblich zwei unterschiedliche Netzwerkschnittstellen in Betrieb
    • Daraus ergeben sich offensichtliche Sicherheitsaspekte, weil die Trennung zwischen IPMI- und Anwendungs-Traffic geringer wird
  • Sicherheitsprobleme bei IPMI
    • Viele IPMI-Implementierungen haben sich als sicherheitstechnischer Albtraum erwiesen
    • Unvertrauenswürdige Personen sollten niemals Zugriff darauf haben
  • Netzwerkfunktionen von IPMI
    • Die Details der Netzwerkfunktionen unterscheiden sich je nach IPMI-Implementierung, aber auf UDP 623 gibt es eine Standardschnittstelle für Erkennung und grundlegende Befehle
    • Häufig gibt es außerdem SSH und eine Weboberfläche; für die Remote-Konsole ist VNC sehr verbreitet

Grundfunktionen von IPMI

  • Es gibt einige nützliche Grundfunktionen, die man mit IPMI über das Netzwerk oder mit einem In-Band-IPMI-Client ausführen kann
  • Eine besonders praktische Funktion für vergessliche Menschen ohne gute Dokumentation ist die Auflistung der Hardware-Module, aus denen ein System besteht, auf FRU- oder Anbieter-Teilenummernebene
  • Man kann auch mit grundlegenden Hardware-Funktionen interagieren, etwa Sensoren, Stromstatus und Lüftern
  • IPMI stellt einen standardisierten Watchdog-Timer bereit, der zusammen mit im Betriebssystem laufender Software dafür sorgen kann, dass der Server zurückgesetzt wird, wenn eine Anwendung in einen fehlerhaften Zustand gerät
  • Man muss einen Timeout wählen, der lang genug ist, damit das System booten und sich verbinden kann, um den Watchdog-Timer zu deaktivieren

IPMI und alltägliche Client-Computer

  • IPMI ist in Enterprise-Servern sehr verbreitet, sonst aber eher selten
  • Das ist frustrierend für Menschen, deren Platz- oder Lärmtoleranz nicht bei einer 1U-Pizzabox endet
  • Wer bei kleinen oder stromsparenden Computern bleiben möchte, wird wohl ohne IPMI leben müssen

Intel ME und AMD ST

  • Ein OOB-Management-Controller, der praktisch in allen Intel- und AMD-Prozessoren vorhanden ist
  • Intel ME (Management Engine) ist die aktivierende Komponente von Intel Active Management Technology (Intel AMT)
  • AMT war ein Versuch, OOB-Management für Client-Maschinen populär zu machen, und bietet fast dieselben Funktionen wie IPMI
  • Wesentlich erfolgreicher war das jedoch nicht, vermutlich vor allem aus Preisgründen
    • Intel beschränkte fast alle AMT-Funktionen darauf, mit sehr teuren Enterprise-Management-Plattformen verwendet zu werden
  • Es gibt Open-Source-AMT-Clients, aber das nächste Problem ist, überhaupt eine Maschine zu finden, auf der sich AMT tatsächlich nutzen lässt

Sideband-Management-Funktionen und Sicherheitsprobleme bei Intel AMT

  • Dass Intel AMT Sideband-Management-Funktionen hat und damit auch die Intel-ME-Komponente, auf der AMT läuft, war in der Security-Community ein erhebliches Thema
  • Ein mildernder Faktor: Sideband-Management ist nur möglich, wenn Prozessor, Mainboard-Chipsatz und NIC alle AMT-fähig sind
    • Die Optionen bei allen drei Geräten sind auf Intel-Produkte mit vPro-Label beschränkt
    • Allein die geringe Verbreitung von Intel-NICs in Consumer-Geräten macht Sideband-Zugriff fast unmöglich
  • vPro ist zudem auf eher höherwertige Prozessoren und Chipsätze beschränkt
    • Die schlechte Nachricht ist, dass sich AMT im Homelab nur schwer nutzen lässt, auch wenn manche Leute das durchaus tun
    • Die gute Nachricht ist, dass die oft kolportierte „Tatsache“, Intel ME sei auf Consumer-Geräten über Sideband-Networking erreichbar, in der Regel nicht stimmt – und zwar aus mehr Gründen als nur wegen Intels Software-Lizenzierung

Warum Intel ME überhaupt existiert

  • Ohne AMT bleibt die merkwürdige Frage, warum Intel ME selbst existiert, obwohl es dann eigentlich keine OOB-Management-Funktion hat
  • Warum haben fast alle Prozessoren Intel ME?
    • Es ist Spekulation, aber Intel ME scheint vor allem als bequeme Möglichkeit zu existieren, Trusted-Execution-Komponenten zu hosten und zu verwalten, die für Dinge wie Secure Boot und DRM verwendet werden
    • Diese Funktionen laufen alle auf demselben Prozessor wie ME und teilen sich einen Teil des gemeinsamen Technologie-Stacks
  • Der „Management“-Teil von Intel ME ist daher zu einem großen Teil historischer Ballast und zugleich Teil der Sicherheitsinfrastruktur des Computings

Keine Entschuldigung für Intel ME

  • Das soll keine Entschuldigung für Intel ME sein, das sich von Dritten überhaupt nicht auditieren lässt und in der Vergangenheit schwerwiegende Sicherheitslücken enthielt
  • Da wir im Grunde alle die Prozessorarchitektur eines von zwei Anbietern nutzen, hat Intel wenig Anreiz, es besser zu machen
  • Und bevor die Antwort ARM lautet: Auch moderne ARM-SoCs in Consumer-Geräten haben fast dieselbe Funktionalität

Anmerkung: die Definition von Headless

  • Die Definition von „Headless“ ist knifflig, und man sollte sich nicht zu sehr daran festbeißen
  • Menschen neigen dazu, mit „Headless“ zu meinen, dass kein Monitor und keine Tastatur angeschlossen sind
  • Da ausziehbare Rack-Konsolen und IP-KVMs aber seit Langem verbreitet sind, sollte man bedenken, dass wirklich Headless-Systeme außerhalb von Hyperscale-Umgebungen seltener sind, als man denkt
  • Das liegt auch daran, dass die Nutzung serieller Konsolen ausgesprochen schmerzhaft ist und normale Computeroperatoren viel tun, um das zu vermeiden

Meinung von GN⁺

  • Dieser Artikel bietet interessante Einblicke in Definition und Geschichte des Servers. Anders als die verbreitete Wahrnehmung, ein Server sei einfach nur ein großer Computer, zeigt er, dass Server über lange Zeit eine besondere Rolle hatten.
  • Ein Blick auf die Servergeschichte zeigt, wie sich mit dem technischen Fortschritt auch das Verständnis dessen verändert hat, was ein Server ist. Besonders interessant ist, dass die Grenze zwischen Server und Client seit der PC-Revolution immer unschärfer wird.
  • Out-of-Band-Management ist eine servertypische Spezialfunktion, die es ermöglicht, einen Server auch ohne Hilfe von Betriebssystem oder CPU zu verwalten. Für Administratoren kann das sehr nützlich sein.
  • In jüngerer Zeit werden OOB-Management-Technologien zunehmend rund um Intel IPMI standardisiert. Das erhöht den Komfort der Serververwaltung, birgt aber auch das Risiko einer stärkeren Abhängigkeit von einem einzelnen Anbieter.
  • Andere Lösungen mit ähnlichen OOB-Management-Funktionen sind etwa HPs iLO oder Dells iDRAC. Wer eine Bindung an einen bestimmten Anbieter vermeiden will, sollte auch solche Alternativen in Betracht ziehen.

1 Kommentare

 
GN⁺ 2024-09-04
Hacker-News-Kommentare
  • Intel liegt bei der CPU- und GPU-Leistung hinter AMD zurück

    • Eine Ausnahme ist die N100-CPU-Serie, die sich gut für stromsparende und lüfterlose Anwendungen eignet
    • Die meisten Organisationen kaufen Intel-CPUs, um bestehende Umgebungen zu aktualisieren
    • Mit der EVC-Funktion von vSphere ist Hot-Migration zwischen CPU-Architekturen möglich
  • Intel-NICs sind insgesamt hervorragend und auch in Consumer-Geräten beliebt

    • PCs oder Laptops mit Intel-CPU enthalten fast immer auch eine Intel-NIC
  • Beim Serverkauf ist Supermicro eine gute Wahl

    • Günstig und mit hoher Flexibilität bei Formfaktor, Chassis, Komponenten und Anzahl der Slots
    • Allerdings ist der Support weniger zuverlässig als bei Dell/HPE, daher eher für redundante Setups geeignet
  • Die IPMI-Spezifikation wird durch Redfish ersetzt

    • Redfish bietet eine vollständigere, sicherere und standardisierte API
  • Die Hardware von Supermicro ist weiterhin hervorragend, aber in einer aktuellen Untersuchung von Hindenburg wurden einige Probleme aufgezeigt

  • IPMI ist in Enterprise-Servern üblich, für den Heimgebrauch jedoch selten

    • Mit einem Atom-basierten Supermicro-MicroATX-Board und Noctua-Lüftern ist eine leise Kühlung möglich
  • Es ist ratsam, den IPMI-Port nicht mit dem primären LAN zu verbinden

    • In isolierter Umgebung ist er nützlich einsetzbar
  • Um Maschinen ohne IPMI Fernzugriff hinzuzufügen, kann man den $30 teuren RISC-V NanoKVM verwenden

    • Er bietet HDMI-Capture, Ethernet/WiFi, ATX-Stromsteuerung usw.
  • Geteilte Erfahrungen mit der Installation von Intel-Servern in den späten 90ern

    • Verwendung der Software LANDesk Server Manager Pro und der Emergency Management Card
    • Das Standardpasswort der EMC war calvin
  • Lösungen wie IPMI sind gut, aber eine standardmäßige serielle Schnittstelle wird bevorzugt

  • IPMI hat langfristig zu wenig Hardware-Unterstützung

    • Wenn sich auf die IPMI-Hardware ein eigenes OS laden ließe, wäre sie nützlicher
  • Intel ME und AMD PSP spielen eine wichtige Rolle bei der CPU-Initialisierung

    • Wegen der hohen Komplexität der Initialisierung ist es sinnvoller, sie von einem separaten Embedded-Core verarbeiten zu lassen
  • Dell bemüht sich, IPMI durch Redfish zu ersetzen

    • Redfish verwendet eine HTTP/JSON-REST-API
  • Bei der Nutzung von IPMI im Homelab sind etwa 5 W Standby-Stromverbrauch problematisch

    • Es ist geplant, Remote-Management-Funktionen mit PiKVM(V2) und Raspberry 4 auszuprobieren
  • Die Standardschlüssel von IPMI sind ein wichtiges Problem

    • Wenn in der Lieferkette zusätzliche Schlüssel installiert werden, könnte Remote-Management möglich werden