Meinen ersten Rechner habe ich 1997 geschraubt — meinen bisher letzten in 2006. Die Umstellung von Linux auf OSX und Apple-Hardware in 2006 und die Umstellung auf Dedicated- bzw. Cloud-Hosting haben es lange Jahre nicht erfordert, selbst Hand an Hardware anzulegen.
Doch weil Apple seit Jahren keine ordentliche Arbeitshardware mehr im Angebot hat — Mac Pro ist ein teurer Witz, Retina Macbook Pros seit fast 3 Jahren ohne grundlegende Aktualisierung — trug ich schon einige ganze Weile den Wunsch in mir, hier mal etwas ordentliches zu bauen.
Im Idealfall wäre ein Hackintosh herausgekommen, aber eigentlich möchte ich auf ein mobiles Apple-Notebook nicht verzichten und hoffe auf baldige Vorstellung aktualisierter Nachfolger. Viele meiner beruflichen Tätigkeiten bestehen heutzutage aus DevOps-Tätigkeiten, erfordern virtuelle Maschinen oder Docker. Und genau hier gibt es die größten Performance-Problem auf dem Mac, weil selbst VMWare Fusion eine miserable IO-Performance hat, vom knappen RAM (16GB) in den Geräten mal abgesehen.
Per SSH auf einem Linux-Zweitsystem zu arbeiten oder mittels test-kitchen und docker-machine auf eine Build-Machine auszulagern, sind hierbei kein Problem (Gigabit-Ethernet, SSD…). Ein Auslagern in die Cloud oder auf dedizierte Systeme sind wegen der asymmetrischen Bandbreiten in Deutschland keine Option: Selbst mit 12 Mbit/s dauern 2-3 GB Upload viel zu lange für einen Testlauf, den man pro Stunde ein paar Mal ausführen möchte, weiterhin hätten es meine Kunden sicher nicht gerne, würde ich privaten Sourcecode bzw die notwendige Build-Umgebungen auf irgend einem Lowcost-Hosting-System hosten, welches 24/7 von aussen erreichbar wäre und mich auch locker 120-150€ im Monat gekostet hätte.
Und so ging ich auf die Suche nach dem passenden System und wurde bei LGA-2011-3-XEON-Mainboards fündig.
Aktuell schaut das System so aus:
- 1x SuperMicro X10DRi-O (E-ATX/SSI-EEB Mainboard) – 390 € (geht auch günstiger bzw es gibt Boardversionen mit Thunderbolt+Audio, aber ohne IPMI. Ohne IPMI BMC könnte es aber schwierig bis unmöglich sein, die Lüftergeschwindigkeiten anzupassen, siehe unten)
- 2x Genuine Intel(R) CPU 0000 (E5-2600v4-Serie, siehe unten) – 610€
- 2x Noctua NH-U12DX i4 (CPU-Kühler) – 122,48€ (nur das beste, wer es lauter mag, kann ab 30€ pro Lüfter starten, auf 2011-3 „ILM-Narrow„-Kompatibilität achten)
- 8x 16GB DDR4 REG ECC Crucial (CT16G4RFD424A) – 643,20€
- 1x 512GB Samsung SM951-NVMe SSD (MZVPV512HDGL) – 229,85€
- 1x Delock PCIe x4 zu 1 x M.2 NGFF NVMe (bitte unten lesen!) – 29,69€
- 1x Corsair RMi Series RM850i (Netzteil) – 141,62€ (geht auch günstiger wenn man die zweite CPU mittels PCIe-Stromkabel versorgt, dann ~80-120€)
- 1x Phanteks Enthoo Pro (Gehäuse) – 104,85€
- 1x Phanteks 24-Pin ATX Verlängerung – sleeved rot – 8,74€
- 2x BitFenix 8-Pin EPS12V Verlängerung 45cm – sleeved red/black – 16,60€
Dual-Xeon-Boards sind bis auf wenige Ausnahmen nur im E-ATX bzw SSI-EEB-Format erhältlich, also das größte Format, was man regulär erwerben kann und erfordern dementsprechend wuchtige Gehäuse, wie eben das Phanteks Enthoo Pro. Ein ASUS-Board im etwas kleineren Full-ATX-Format schied leider aus einigen Gründen aus: zu wenige RAM-Slots und ohne ein sehr wichtiges BIOS-Feature:
Xeon-Prozessoren in der E5-2600v4-Serie starten ab ca. 220€ pro CPU, können aber leistungstechnisch so gut wie nichts. Die guten CPUs liegen preislich zwischen 600-2000€ pro Stück — schon eine Hausnummer. Es gibt eine kleine, riskante Abkürzung die ich natürlich niemandem zur Nachahmung empfehlen kann: Intel stellt Vorabmodelle her, sogenannte „Engineering Samples“, „Quality Samples“ und „OEM“-Modelle, die großen Integratoren zu Testzwecken bereitgestellt werden. Hier reden wir von Unternehmen wie Dell, HP, HPC-Cluster-Betreibern und Cloud-Anbietern wie AWS. Letztlich landen diese Vorabserien im Recycling und werden dort einer besseren Verwendung zugeführt, als einer destruktive thermomechanischen Zerlegung…
Sind diese Prozessoren mit den normalen Retail-Versionen identisch? Nein. Oftmals sind sie geringer getaktet und haben uU einige Features nicht oder nicht in für Intel üblichen Performance. Manchmal sind nicht alle Kerne aktiv, oder die Turbo-Boost-Geschwindigkeit ist gedrosselt. Je nach Stabilität der Serienfertigung sind uU solche ES-Versionen neuer Plattformen nicht sinnvoll nutzbar. Spätere ES dann eventuell durchaus schon. Hauptproblempunkt ist die Unterstützung durch Mainboards und BIOSe. SuperMicro-Mainboards sind hier die tolerantesten.
Was man so auf eBay hören und lesen kann, so ist der Markt aktuell bereit, ein E5-2683v4 ES für ca 310€ pro Stück zu veräussern. Hier gibt es 16 Hardware-Cores mit einer Frequenz 100MHz unter dem Retail-Prozessor und einem Turbo-Boost ca 700MHz unter dem Retail-Chip, für den man 1900€ hinlegen muss.
Verschweigen möchte ich nicht die Probleme mit oben genannter Hardware:
Leider bootet das System von der NVMe SSD nicht, laut Support ist die Adapterkarte M.2 auf PCIe von Delock schuld. Hier fehlt wohl ein Option-ROM, das bei „richtigen PCIe NVMe SSD“ dafür sorgt, dass ein UEFI-Bios hiervon booten kann. Weil das Board keinen M.2-Sockel hat, fehlt jedenfalls der Boot-Support im BIOS dafür, man kann aber Ubuntu 16.04 direkt darauf installieren oder das Device mounten. So habe ich noch eine langsame SATA SSD von SanDisk als Boot-Device eingebaut und mounte dann die NVMe SSD von dort.
Die Lüftersteuerung ist nervig: SuperMicro stellt Boards für Serversysteme her, die üblicherweise mit maximal lauten Hochleistungsventilatoren gekühlt werden und daher eine Drehzahl von weit über 1000RPM erreichen. Die super-silent-Kühler von Noctua haben jedoch eine Mindest-Drehzahl von 300RPM, was vom BIOS/IPMI als Fehler angesehen wird: Alle Lüfter werden auf maximale Leistung hochgefahren.
Per IPMI kann man jedoch diese Limite auf 100RPM reduzieren, allerdings läuft das System manchmal so kühl, dass das Board die Steuerungsspannung soweit absenkt, dass der Lüfter anhält (0 RPM). Somit tritt also wieder das selbe Problem auf: Lüfter Aus => Fehler => MAX RPM. Aktuell habe ich noch keine Lösung, ausser dafür zu sorgen, dass die beiden Prozessoren nicht unter 37°C fallen was für stabile 300RPM sorgt.
Bei einigen Performance-Tests, die alle Cores und Turbo-Boost forderten, bin ich nicht über 51°C CPU-Temperatur hinausgekommen.
UPDATE 07.09.2016
Durch RAW-Commands über das ipmitool kann man wohl die Mindestgeschwindigkeit (nicht nur den Threshold) frei konfigurieren. Die Anleitung ist auf https://forums.servethehome.com/index.php?resources/supermicro-x9-x10-x11-fan-speed-control.20/ zu finden, hier warte ich aber noch auf auf Lüfterkabelverlängerung, um das ganze in zwei unterschiedliche „Zones“ platzieren zu können: Es gibt eine CPU- und eine Peripher-Zone, die Drehzahl kann man pro Zone festlegen, nicht pro FAN-Port.
UPDATE 14.09.2016
Dank der Raw-Commands und des Umsteckens der Gehäuselüfter auf „FANA“ (system group) konnte ich das gewünschte Ergebnis realisieren (per systemd-unit wird das bei jedem Start konfiguriert). Jetzt habe ich nur noch ein Miniproblem: Der PCH (Mainboard-Chipsatz) wird etwas warm, so um die 45-50°C – weil hier 60° das empfohlene Maximum darstellen, lässt das Bios die Systemlüfter nach einiger Zeit etwas lauter laufen. Hier muss ich mir noch eine bessere Kühlung überlegen, die weniger Lärm (Rauschen) macht, als die zwei Gehäuselüfter. Schliesslich geht es wirklich nur um den mit einem Kühlgerippe (Heatsink) versehenen MB-Chipsatz und nicht um die allgemeine Systemtemperatur.
/UPDATES
Dank des Fernwartungsmoduls (IPMI, KVM, Powerswitch, Virtual Media – per Browser/Java oder iOS App) und „docker-machine“ kann ich hier nun wunderbar Docker-Images erstellen oder Cluster testen.
Wer das System nachbauen möchte oder sich für die Thematik interessiert, dem empfehle ich das Forum auf http://www.servethehome.com/
PS: Es gibt noch einen anderen Weg: Große IT-Unternehmen müssen ihre Hardware auch alle paar Jahre aktualiseren, so fliegen oftmals 2-3 Jahre alte Xeons in enormen Stückzahlen auf eBay und können ein leistungsfähiges Schnäppchen sein. Beispiele gibt es dafür hier und hier.
[…] mit dem meines 5K iMac 2017, den ich auch aufgerüstet habe, die SSD dient zur Aufrüstung meines headless Linux-Servers. Wenn nächstes Jahr wieder Geld in die Kasse kommt, werde ich möglicherweise diese Konfiguration […]
[…] Veröffentlicht am 2. Februar 2019 /* Oben: Raspberry Pi Zero WH: 1 ARMv6 Prozessor, 1 Kern, 512MB RAM, 15€Unten: “Rambo”, 2 Xeon Prozessoren, 32 Kerne (64 mit Hyperthreading), 128GB RAM, >2500€ […]