2 Punkte von GN⁺ 2023-12-23 | 1 Kommentare | Auf WhatsApp teilen
  • Während des Lockdowns 2020 begann Varun mit der Webentwicklung, wechselte von Replit und dem eigenen PC zu einem Homelab, in dem er Services und experimentelle Projekte direkt von zu Hause aus betreibt
  • Mit der wachsenden Zahl real genutzter Dienste – etwa dem Echtzeit-Quizspiel für die Schule Quickz, einer selbst gebauten Social-Media-Plattform und Tools für die Scratch-Community – sammelte er zugleich immer mehr Betriebserfahrung im Self-Hosting
  • Der erste Server mit Windows 10 Pro hatte mit Updates und Downtime zu kämpfen; im November 2020 wechselte er zu Ubuntu Server und stellte auf einen Betrieb mit Linux, nginx und Docker um
  • Nachdem sich Speicher- und Leistungsgrenzen des Dell OptiPlex gezeigt hatten, erweiterte er im Mai 2022 auf einen gebrauchten Dell PowerEdge R720XD mit einer Struktur aus Proxmox und Ubuntu-Server-VMs
  • Das selbst entwickelte Dock’n’Roll bildet den schnellen Deployment-Workflow von Replit auf eigener Hardware und unter eigener Domain nach, doch das Homelab bringt neben Freiheit und Lernchancen auch praktische Grenzen wie Lärm, Stromverbrauch und Umzüge mit sich

Homelab im Zimmer und laufende Services

  • Varun betreibt zu Hause zwei Server
    • einen Dell OptiPlex auf dem Boden
    • einen Dell PowerEdge R720XD auf einem kleinen IKEA-Couchtisch
    • Die beiden Server sind mit roten und gelben Ethernet-Kabeln verbunden
  • Auf den Heimservern laufen sowohl experimentelle Projekte als auch Dienste mit echten Nutzern
    • eine selbst entwickelte Social-Media-Plattform mit mehreren Tausend Nutzern
    • das Echtzeit-Quizspiel für die Schule Quickz
    • eine Flipbook-ähnliche Plattform zum Erstellen und Teilen von Animationen als Demo-Instanz für das MYP Personal Project
    • Tools wie eine Suchmaschine für die Scratch-Community
    • Game-Server für Freunde
    • mehrere Instanzen von Plausible Analytics
    • ein Replit-ähnliches Tool zum Erstellen und Hosten experimenteller Projekte

Self-Hosting begann im Lockdown 2020

  • Der Ausgangspunkt war der Lockdown 2020, damals war Varun 13 Jahre alt
  • Zunächst begann er mit der Webentwicklung über statische HTML-Websites und baute bald komplexere Apps, die ein Backend benötigten
  • Frühe Web-Apps, Discord-Bots und Automatisierungsskripte hostete er auf Replit
  • Einen Minecraft-Server stellte er Freunden bereit, indem er den eigenen Computer dauerhaft eingeschaltet ließ
  • Der Grund für einen Heimserver statt Cloud war weniger Kostenersparnis als das Lernen des gesamten Stacks
    • nutzerseitiges Frontend
    • Backend und Datenbank
    • bis hin zum tatsächlichen Betrieb der Server, auf denen die Services laufen
    • Für seine Größenordnung hält er Cloud-Nutzung sogar potenziell für kosteneffizienter

Der erste Server: Dell OptiPlex und Windows 10 Pro

  • Über eBay besorgte er sich einen Dell OptiPlex mit i7-3770S und 8 GB RAM
  • Beim Versand von den USA in die Schweiz lieferte der Verkäufer zunächst die falsche RAM-Kapazität, und die Klärung dauerte mehrere Wochen
  • Aus Vertrautheit nutzte er anfangs weiterhin Windows 10 Pro als Server-Betriebssystem
  • Zu Hause gab es eine statische IPv4-Adresse, was das Hosting von Websites einfacher und stabiler machte
  • Alle Services lagen hinter Cloudflare, das kostenlos SSL, DNS und vermutlich DDoS-Schutz übernahm

Wechsel von Windows zu Ubuntu Server

  • Damals hatte der Betrieb eines Windows-10-Servers für Varun einige Vorteile
    • Er war bereits an Windows gewöhnt
    • Er konnte in einer Umgebung testen, die seinem persönlichen Desktop ähnelte
    • Zu Hause konnte er per RDP eine schnelle und hochwertige Verbindung nutzen
    • Auf dem von der Schule bereitgestellten Chromebook brauchte er webbasierten Zugriff und konnte daher Chrome Remote Desktop verwenden
  • Als Windows-Updates wiederholt Downtime verursachten und die Fensteranordnung jedes Mal neu gemacht werden musste, wechselte er im November 2020 zu Ubuntu Server
  • Vor dem Wechsel sorgte er sich, das Gefühl für den schnellen Gesamtüberblick über das System zu verlieren, passte sich Linux aber rasch an, weil er beim Schreiben von Code unter Windows bereits an die Kommandozeile gewöhnt war
  • Die frühe Linux-Konfiguration war einfach, brachte aber auch Risiken mit sich
    • ein dem Internet ausgesetztes nginx verarbeitete HTTPS-Traffic auf Port 443 mit einem selbst signierten Zertifikat und blockierte Anfragen, die nicht über Cloudflare kamen
    • mehrere Projekte liefen, die möglichst rund um die Uhr online sein sollten
    • eine einzelne MongoDB-Instanz wurde gemeinsam von den Projekten genutzt
    • mehrere Minecraft-Java-Server liefen darauf
    • um in der Schule auf den Server zuzugreifen, exponierte er webssh2, räumt aber selbst ein, dass das wahrscheinlich alles andere als sicher war
  • Die Installation von Third-Party-Software wurde durch Abhängigkeiten und zusätzliche apt-Repositories schnell komplex, und Docker wurde zum Werkzeug, das Installation und Betrieb vereinfachte
    • Third-Party-Software lief in Docker
    • selbst geschriebener Code lief direkt auf dem Server

Speichergrenzen und der Wechsel zum PowerEdge R720XD

  • Etwa ein Jahr später betrieb er Projekte mit realen Nutzern wie Quickz und seine selbst entwickelte Social-Media-Plattform
  • Während er in der Schule war, fiel der Server aus; beim Versuch, sich per SSH zu verbinden, erschienen Festplattenfehler, bevor das System schließlich komplett hängen blieb
  • Die Ursache war zu wenig Speicherplatz, und zu Hause gewann er durch das Löschen einiger Dateien Zeit
  • Der vorhandene Dell OptiPlex mit 8 GB RAM und i7-3770S kam mit der gestiegenen Last nicht mehr gut zurecht
  • Im Mai 2022 kaufte er von angespartem Bug-Bounty-Geld einen gebrauchten Dell PowerEdge R720XD
    • 3 × 3-TB-Laufwerke
    • 128 GB DDR3-RAM
    • zwei stromhungrige E5-2690-CPUs
  • Vor dem Kauf hatte er Platzbedarf, Lautstärke und Stromverbrauch nicht ausreichend bedacht; das Lärmproblem reduzierte er teilweise, indem er die iDRAC-Lüfterdrehzahl per nicht unterstütztem Hack auf 10 % fixierte
  • Der R720XD besitzt je zwei Netzteile, CPUs und NICs sowie iDRAC, das wie ein kleiner Computer zur Fernverwaltung funktioniert und sogar bei ausgeschaltetem Server erreichbar ist
  • Anfangs stand der Server auf einem Couchtisch neben dem Fernseher im Wohnzimmer, und Rack plus Montagematerial waren teurer als der Server selbst

Proxmox und Struktur für den Fernzugriff

  • Auf dem neuen Server entschied er sich für einen Hypervisor und setzte Proxmox ein
  • Die meisten Ressourcen wies er einer Ubuntu-Server-VM zu, und alle Services laufen nun sauber organisiert in Docker
  • Diese Struktur schafft Flexibilität, sodass später beim Umzug von Services nicht alles neu eingerichtet werden muss
  • Zusätzlich betreibt er eine Xubuntu-VM namens backdoor mit Chrome Remote Desktop
    • So kann er von überall auf eine komfortable Arbeitsumgebung im Heimnetz zugreifen
    • Er könnte auch ein VPN wie OpenVPN oder WireGuard einrichten, aber diese Methode funktioniert selbst auf eingeschränkten Geräten wie einem iPad und im öffentlichen Schul-WLAN
    • Außerdem sieht er es als Vorteil, sich keine Sorgen über Brute-Force-Versuche von Bots machen zu müssen

Dock’n’Roll: die Replit-Erfahrung selbst nachgebaut

  • Auch mit mehreren Servern blieb der schnelle Experimentier-Workflow von Replit etwas, das ihm fehlte
  • Replit eignete sich gut, um isolierte Apps für Einmalprojekte, Experimente und Demos schnell zu starten; die Stärke lag darin, Code in einer Web-IDE zu schreiben und ihn sofort im Web zu veröffentlichen
  • Replit war kostenlos, führte jedoch Funktionen zur Monetarisierung ein; inaktive Repls werden nach seinem Verständnis ohne Nutzer deaktiviert, und kostenloses öffentliches Hosting dynamischer Websites ist offenbar nicht mehr möglich
  • Um eigene Hardware und eine selbst kontrollierte Domain zu nutzen, baute Varun den Docker-basierten, self-hosted Replit-Klon Dock’n’Roll
  • Dock’n’Roll ist ein Single-User-Service
    • In der privaten Oberfläche dockn.varun.ch schreibt er Web-Apps
    • Die Ergebnisse sind sofort öffentlich unter *.varunbiniwale.com erreichbar
  • Die Komponenten sind wie folgt aufgebaut
    • ein mit ExpressJS gebautes Control Panel und eine Weboberfläche auf Basis des Monaco Editor von VSCode
    • ein Projekt-Start-Button, der über die Docker Engine API Images baut und Container startet
    • Projektmetadaten werden in Redis gespeichert
    • Port 80 jedes Containers wird über einen OpenResty-Reverse-Proxy, der per Lua-Plugin mit Redis kommuniziert, automatisch unter :project.varunbiniwale.com veröffentlicht
    • Dateien unter /persisted/ bleiben auch nach Container-Neustarts erhalten und können in der Weboberfläche eingesehen und bearbeitet werden
    • die Web-Admin-Oberfläche wird durch einen selbst entwickelten custom nginx auth proxy geschützt
  • Dock’n’Roll wird auch für Bug Hunting genutzt
    • Es hostet beliebige Werkzeuge zum Finden von Schwachstellen wie blind SSRF und XSS
    • Ein Beispiel ist die automatische Bilderzeugung unter yourip.varunbiniwale.com

Gegenwart des Homelabs und künftige Grenzen

  • Varun fasst zusammen, dass sein Homelab vielleicht etwas übertrieben sei, es aber eine Umgebung ist, die ihm gehört und die er mag
  • Wenn er nach dem Schulabschluss für ein Studium umzieht, wird er die Server wahrscheinlich nicht mitnehmen, und er möchte seinen Eltern auch nicht die Last aufbürden, die Hardware dauerhaft weiterlaufen zu lassen
  • Self-Hosting ist nicht für alle geeignet, aber wer gerne tüftelt und bereit ist, die Folgen zu tragen, kann ein kleines Self-Hosting-Setup durchaus ausprobieren
  • Durch den eigenen Serverbetrieb hat er viel gelernt und empfindet Freiheit darin, einen Ort zu haben, an dem Tools und Projekte unter seiner eigenen Kontrolle laufen
  • Dieses Setup verursacht manchmal Stress und ist vielleicht nicht der praktischste Weg, hat ihm aber viele Fähigkeiten vermittelt, die er auf anderem Weg nur schwer gelernt hätte

1 Kommentare

 
GN⁺ 2023-12-23
Hacker-News-Kommentare
  • Ich bin auch 16 und habe ein kleines Homelab :)
    Früher habe ich alle Dienste in der Cloud betrieben, aber als ich zu Hause eine 1G/1G-Leitung bekam und entdeckte, dass Charity-Shops ausgemusterte Unternehmenshardware oder Hardware vom Schrottplatz günstig verkaufen, beschloss ich, selbst physische Server zu betreiben.
    Derzeit lasse ich Proxmox auf 2 Maschinen und einem NAS mit 14 rotierenden Festplatten laufen und hoste darauf einen Minecraft-Server, persönliche Programmierprojekte, einen Schwachstellen-Scanner, Telegram-Bots, VPS für Freunde, virtuelle Maschinen für Android- und macOS-Builds, Storage, ein Machine-Learning-Schulprojekt mit einer kürzlich hinzugefügten 1050 Ti sowie die Infrastruktur für den CTF-Wettbewerb der Schule.
    Zur Einordnung: Ich bin in Italien.

    • Ich bin ebenfalls Italiener, habe mir mit 16 das Programmieren selbst beigebracht und bin jetzt 34. An dein Niveau kam ich damals natürlich bei Weitem nicht heran.
      Später habe ich Physik studiert, promoviert und als Postdoc zu neuronalen Netzen gearbeitet, aber am wichtigsten war mir immer, junge Menschen wie mein früheres Ich zu inspirieren. Deshalb bin ich dieses Jahr nach Italien zurückgekehrt und Gymnasiallehrer geworden.
      Ich bereite an der Schule auch einen Python-Kurs nach dem Unterricht vor; wenn du nicht weit von Mailand entfernt bist und Lust hast, mit Schülerinnen und Schülern zu sprechen, könntest du das ja in Betracht ziehen. Alles Gute für die Zukunft.
    • Das ist das wirklich Großartige am Internet. Wie hätten sich diese zwei 16-Jährigen sonst gefunden?
      Sie hätten wohl auf dieselbe Highschool gehen müssen.
    • Deine Eltern dürften einiges an Stromkosten tragen, um diese Geräte durchgehend laufen zu lassen. Umso mehr, wenn die Dienste kein Geld einbringen.
      So oder so: Applaus für eine Familie, die deine Interessen unterstützt.
    • Wirklich cool. Ich überlege auch, irgendwo eine alte Grafikkarte für Machine-Learning-Arbeiten einzubauen, muss aber erst herausfinden, wie :)
    • Ich frage mich, wer die Stromrechnung bezahlt. Bei zwei Servern klingt das nach ungefähr 50 bis 100 Dollar im Monat.
  • Als ich 2001 16 war, kaufte ich mir vom Geld aus meinem Sommerjob Herbert Schildts „Teach Yourself C“, eine Grafikkarte und einen Sony Trinitron.
    Gegen Ende von Kapitel 5 fing Herb an, seltsam über mehrdimensionale Arrays zu reden, und als ich sah, dass das nächste Kapitel von Pointern handelte – also wortwörtlich Magie und Unsinn –, war ich überwältigt und entschied mich für Plan B: Rockstar werden. Programmieren war zu schwer.
    Das Gelernte nutzte ich, um Programme auf meinen TI-82 zu laden und bei Mathearbeiten zu schummeln.
    Ein paar Jahre später riet mir im ersten College-Semester ein Studienberater, mein Hauptfach um ein Semester aufzuschieben und mehrere Kurse zu belegen, die mich interessierten. Das war wirklich meine Rettung.
    Ich kaufte mein erstes Java-Buch und arbeitete mich hinein; es war viel zugänglicher als das C-Buch, und als ich zur ersten Vorlesung ging, hatte ich den gesamten Stoff des Kurses bereits gelesen.
    So begann eine Reise auf einem Weg, von dem ich dachte, ich hätte ihn einmal aufgegeben, und die nun seit über 15 Jahren andauert.
    Ich spiele immer noch Gitarre und habe Freude daran, aber ich weiß, dass mein Musiker-Ich nie besser werden wird als mein Techniker-Ich.

    • Pointer waren der Wendepunkt, der mich das Lernen und die Selbstverbesserung lieben ließ.
      Ich erinnere mich, dass beim C-Lernen als Teenager überall davor gewarnt wurde, dass es ab den Pointern seltsam und schwierig werde.
      Anfangs wirkten sie nur mysteriös, aber es waren Winterferien, und ich beschloss, so lange dranzubleiben, bis ich sie verstand. Ich weiß nicht mehr, ob es Stunden, Tage oder eine ganze Woche waren, aber in dem Moment, in dem es klick machte, war die Befriedigung enorm, und danach hatte ich das Gefühl, alles schaffen zu können.
      Ich habe einmal in einem Interview mit Hidetaka Miyazaki, dem Director der berüchtigt schwierigen Dark-Souls-Reihe, gelesen, dass er beim Gitarrespielen und beim Lernen von Barré-Akkorden eine ähnliche Erfahrung gemacht habe und dieses Gefühl der Befriedigung nach dem Überwinden einer großen Hürde in seine Spiele einfließen ließ.
      Ein wirklich starkes Gefühl.
    • Als ich Ende der 80er im Grundstudium war, haben mich C-Pointer eine Zeit lang sehr verwirrt, und die Lehrenden waren auch keine große Hilfe.
      Als ich schließlich begriff, dass Pointer einfach Speicheradressen sind, löste sich viel Verwirrung in ein einziges simples Konzept auf. Ich erinnere mich noch daran, wie sich das in meinem Kopf anfühlte.
      Viele meiner Kommilitonen machten ähnliche Erfahrungen, und nicht alle kamen darüber hinweg.
      Deshalb frage ich mich wieder: Warum fällt es Leuten so schwer, C-Pointer zu verstehen? Liegt es am Konzept, also der Indirektion, an der Notation mit & und *, daran, dass Arrays wie Pointer behandelt werden, oder an etwas anderem?
      Vor dem College hatte ich viel Zeit damit verbracht, mit peek- und poke-Befehlen VIC- und SID-Chips zu manipulieren und Assembler zu schreiben; als ich zum ersten Mal C begegnete, war dieser Hintergrund wohl nicht schlecht, auch wenn ich die Verbindung damals nicht sofort erkannte. Ich frage mich auch, was das heutige Gegenstück dazu wäre.
    • Ich erinnere mich, dass ich als Teenager niemanden hatte, mit dem ich über Programmieren reden konnte, auf Freenode herumhing und schließlich ##C entdeckte.
      Damals hatte ich zwar ein Grundgefühl für Programmiersprachen, war aber fast noch Anfänger, und ich fragte, warum mein Argument-Ausgeber in C nicht (null), sondern etwas völlig anderes ausgab, nämlich envp.
      Eine sehr freundliche Person im Channel führte mich geduldig dazu, die Grundlagen von Pointern zu verstehen; das ist etwa 16 Jahre her. Den Namen weiß ich nicht mehr, aber ich bin der Person dankbar, die mir damals geholfen hat.
    • Als ich in der Highschool K&R las, blieb ich bei dem Abschnitt hängen, in dem malloc implementiert wird.
      Bei Pointern blieb ich dran, weil sie nötig waren, um verkettete Listen zu verstehen; diese Datenstruktur habe ich in den 1980ern einmal benutzt und seitdem nie wieder.
    • Da ich mit dem Programmieren begonnen hatte, indem ich rohen Hexcode (Z80) und Oktalcode (PDP11) eingab, fühlte sich Speicherindirektion natürlich an, als ich zu C kam.
      Es hat eindeutig Vorteile, zu verstehen, wie eine CPU ganz unten funktioniert. Ob das für die meiste Programmierung heute unbedingt nötig ist, ist natürlich diskutabel.
  • Ich mag es, dass neben dem Absatz über teure Racks ein Server auf einem Ikea-Tisch steht. Ich frage mich, ob er den Lack Rack kannte: https://web.archive.org/web/20230131031301/https://wiki.eth0...

    • Kenne ich. Ich hatte nur noch keine Zeit, alle Maße zu nehmen und die passenden Schrauben und den passenden Tisch zu finden.
  • Ein interessanter Fakt: Als ich 16 war, war es für mich viel einfacher, einen Homeserver für 200 Dollar zu bekommen als einen Digital-Ocean-VPS für 5 Dollar.
    Der hiesige Online-Shopping-Dienst Allegro ist im Grunde eine Mischung aus Amazon und eBay und akzeptierte gegen eine kleine Gebühr bereitwillig Nachnahme.
    Wahrscheinlich musste man 18 sein, um sich zu registrieren, aber in Polen kümmerte sich in der Praxis niemand um solche Beschränkungen, und es gab keine Altersprüfung.
    Cloud-Dienste hingegen erforderten eine Debit- oder Kreditkarte, die man ohne elterliche Beteiligung entweder nicht bekommen konnte oder die schlicht unmöglich war.
    Man kann viel Schlechtes über Bitcoin und Kryptowährungen im Allgemeinen sagen, aber die Perspektive der Rechte von Jugendlichen kann gar nicht genug betont werden.

    • Das Mindestalter für die Anmeldung ist nicht 18, sondern 13.
      Und mit Zustimmung der Eltern kann auch ein 13-Jähriger ein kostenloses Bankkonto mit Debitkarte eröffnen, die für Online-Zahlungen funktioniert. Das ist auch nichts Neues; ich hatte so etwas schon vor 15 Jahren.
    • Heißt das, du bist nicht dafür, dass Eltern den Besitz ihrer Kinder kontrollieren?
  • Gut gemacht. Ich habe das Gefühl, dass immer weniger Menschen die Grundlagen von Hardware und Betriebssystemen lernen – manchmal auch mehr als nur die Grundlagen.
    Dieses Wissen ist auch bei der Arbeit mit PaaS sehr wertvoll. Meine Erfahrung mit IIS seit NT4-Zeiten und mit Apache seit 1.x-Zeiten hilft zum Beispiel enorm, wenn es darum geht, Probleme mit Azure Web Sites zu diagnostizieren.

    • Manche, die tatsächlich in der Branche arbeiten, wissen so etwas nicht.
      Als ich vor etwa zehn Jahren in einem Rechenzentrum arbeitete, musste ich bei einem Server Hardware wie RAM austauschen. Der Verantwortliche des Teams, das diesen Server nutzte, saß seit mehreren Jahren etwa 50 Yards vom Serverraum entfernt und fragte, ob er beim Austausch zusehen dürfe.
      Er sagte, er sei neugierig, weil er noch nie das Innere eines Servers gesehen habe; es klang sogar so, als hätte er noch nie das Innere eines Heim-PCs gesehen. Das war wirklich schockierend.
      Damals waren die Abläufe nicht einmal besonders streng; wenn man an irgendeinem Tag eine von Dutzenden Personen um eine Führung gebeten hätte, hätte man sie ohne Nachfragen bekommen. Aus den unterschiedlichsten Gründen standen auch rund um die Bürotrennwände Server herum.
      Er hatte bis zu diesem Tag einfach nie darüber nachgedacht.
    • Die meisten haben nicht einmal einen selbst zusammengebauten PC. Sie haben nur ein sehr geringes Gefühl für den inneren Aufbau und lesen auch nicht genug Hardware-News oder -Artikel.
      Auch so ein PC ist zwar kein professioneller Rack-Server, kann aber als Server genutzt werden und muss trotzdem konfiguriert werden.
      Dieses Grundverständnis und die Lernerfahrung gehen zunehmend verloren. Frontend-Entwickler, die kaum HTML und CSS kennen und nur React beherrschen, sind nicht mehr weit entfernt.
  • Ich war nicht 16, als ich gebrauchte Rackmount-Server entdeckte, aber ich war noch ziemlich jung, vermutlich 21.
    2012 hatte ich in Dallas, TX, einen schrecklichen Job für 30.000 Dollar im Jahr, ohne Krankenversicherung, praktisch am Existenzminimum.
    Für Experimente mit Video-Encoding brauchte ich etwas Leistungsfähigeres als meinen Laptop, hatte aber kein Geld für einen Computer, der schnell genug für das war, was ich machen wollte. Bis etwa 25 konnte ich auch nicht wirklich sparen.
    Aus einem Impuls heraus suchte ich auf Craigslist nach „schnellem und billigem Computer“ in verschiedenen Formulierungen und landete schließlich bei „server“.
    So fand ich heraus, dass man alte, aber immer noch brauchbare Rackmount-Dell-Server fast geschenkt bekommen konnte, und ein Verkäufer bot zwei Dell-Rack-Server mit 16 Kernen und 32 GB RAM für etwa 250 Dollar an.
    Ich konnte sie mir gerade so leisten, fuhr hin und holte sie ab – und das bestimmte meine berufliche Richtung für die nächsten 12 Jahre ziemlich stark.

    • Rackmount-Server haben versteckte Kosten. Eine davon ist, dass man neben einem Geräusch wie einem Drohnenschwarm sitzen muss; eine andere sind die Enterprise-Preise für Ersatzteile.
      Mit Dell hatte ich insgesamt ganz gute Erfahrungen, aber es kam auch vor, dass ich sofort die Backplane und andere Teile austauschen musste.
    • Um die Jahrtausendwende herum war ich auf Solaris-Vertragsarbeit spezialisiert, deshalb bestand mein Homelab damals hauptsächlich aus alter Sun-Enterprise-Hardware von eBay.
      https://en.wikipedia.org/wiki/Sun_Enterprise#Entry-level_ser...
      Ich hatte auch eine E450, ähnlich der hier: [https://en.wikipedia.org/wiki/File:SUN_Ultra_Enterprise_450....](https://en.wikipedia.org/wiki/File:SUN_Ultra_Enterprise_450.JPG)
      Außerdem hatte ich mehrere kleinere Geräte und Workstations, und wenn ich mich richtig erinnere, zeitweise auch eine E220R. Ich weiß nicht, was aus all dem alten Zeug geworden ist.
      Jedenfalls war es sehr nützlich für die Vorbereitung auf Gespräche mit potenziellen Kunden, also um bestimmte Technologien wieder aufzufrischen, und auch gut für allgemeine Entwicklung oder Packaging-Arbeiten.
    • Ich frage mich, ob es zum Beispiel einen Grund gab, nicht einfach zwei 8-Core-Desktops zu verwenden.
  • Wenn man nicht wirklich sehr viel I/O braucht, etwa SAS-/SATA-Speicher oder alte PCIe-Karten, ist es überraschend viel einfacher, große, laute und stromhungrige Server zu vermeiden.
    Mini-/Micro-Formfaktor-OEM-PCs in derselben Preisklasse haben meist deutlich neuere Hardware. Statt eines i7 der 3. Generation bekommt man vielleicht einen i5 der 8. Generation, und die Gesamtleistung ist viel besser.
    Hosting und Wartung sind ebenfalls viel einfacher: Man steckt das Gerät in der Nähe des ISP-Modems ein und vergisst es.

    • Ich habe eine alte HP-Elite-SFF-Maschine mit Skylake.
      Ohne Umbauten passen zwei 3,5-Zoll-Laufwerke und ein 2,5-Zoll-Laufwerk hinein, und dank der Luftführung, die die CPU-Abwärme direkt nach hinten ableitet, sowie eines Netzteils mit 80-Plus-Platinum-Effizienz ist sie als ständig eingeschaltete Maschine vom Preis-Leistungs-Verhältnis her sehr gut.
    • „Einstecken und vergessen“ war genau das, was ich mit 16 nicht wollte.
      Ich hatte auch einen Server, aber im HP-ML-Formfaktor, also weniger laut als eine Pizzaschachtel. ECC ist ebenfalls ziemlich wichtig, und echtes Hardware-RAID ist eine gute Lernerfahrung.
    • Wenn man wirklich viele SATA-Festplatten nutzen muss, sind mehrere R720XD schwer zu schlagen.
      Ich habe einen kleinen Haufen davon, und wenn man 1) eine CPU deaktiviert, 2) die verbleibende CPU mit Unterspannung betreibt und 3) per rohen IPMI-Byte-Sequenzen eine eigene Lüftersteuerung baut, sind sie tatsächlich gar nicht so laut und verbrauchen auch nicht so viel Strom.
      Das ist eine der besten Massenspeicherlösungen nach Kosten pro PB. Ich habe auch mehrere NUCs und Single-Board-Computer, aber deren Einsatzgebiet ist eindeutig ein anderes.
      Irgendwann werde ich mir ein oder zwei ausgemusterte Isilon-Cluster kaufen und die wahre Stufe des Massenspeichers erreichen. In meiner Freizeit mit Ceph zu kämpfen, ist mir zu lästig.
    • Ich war kurz davor, einen alten Skylake-Rechner zu verwenden, um OpnSense als Router laufen zu lassen.
      Stattdessen habe ich einen lüfterlosen Intel-N100-Mikrocomputer für 100 Dollar gekauft; der braucht nur 7 W und ist fast genauso schnell. Über die Stromersparnis wird er sich amortisieren.
      Und das, obwohl der i5-6600K nicht einmal besonders stromhungrig war.
    • Eine Zeit lang habe ich eine Kombination aus Intel-Mainboard und Atom-CPU als Dateiserver verwendet, musste aber schließlich upgraden. Atom-Chips waren wirklich nicht gut.
      Später bin ich auf einen Skylake-Pentium umgestiegen, und der lief viel besser.
  • Ich war früher auch so ein Kind. Ich hatte einen selbstgebauten High-End-PC; um die Zeit einzuordnen: Er kostete weit über 6.000 Dollar[0] und basierte auf einem gerade erschienenen 486DX50.
    Ich hatte das Mainboard mit der maximalen RAM-Menge bestückt, vermutlich 16 MB, aber meine Erinnerung ist etwas verschwommen. Dazu kamen eine Turtle-Beach-Wave-Table-Synth-Soundkarte und eine Grafikkarte, die auf einem 16-Zoll-CRT 1152x1024 ausgeben konnte.
    Mit zwei 9600er-Modems, später zwei 16,8K-Modems, betrieb ich eine mehrknotige BBS.
    Ohne die Erfahrungen mit diesem PC und dem 10 Jahre alten 8088 davor wäre ich wahrscheinlich kein Softwareentwickler geworden.
    Ich habe einmal für ein Nachbarskind einen Gaming-PC gebaut und in den folgenden vier Jahren beobachtet, wie es, ohne es selbst zu merken, zu einem sehr fähigen Nerd wurde.
    Wenn man Einstellungen optimiert, um in Spielen noch ein paar Frames mehr herauszuholen, sich mit Firmware-Updates, Grafikkartentreibern, Software-Updates und all dem Chaos herumschlägt, das der Satz „Ich will auf dem PC spielen“ mit sich bringt, sammelt man nebenbei eine Menge Wissen.
    Vier Jahre lang hatte ich nicht mit dem Kind gesprochen, bis ich es kürzlich wiedertraf, und ich war verblüfft. Als Erstes zog es einen Flipper Zero aus der Tasche und erzählte mir von all den verrückten Dingen, die es damit gemacht hatte.
    Es war so kompetent wie jeder Systemadministrator, mit dem ich je gesprochen habe, weiß aber selbst gar nicht, dass es diese Fähigkeiten besitzt.
    Es war eine so gute Erfahrung, dass ich auch meinem Sohn ein ordentliches Gaming-Notebook gekauft habe, damit er von der Konsole wegkommt, und im vergangenen Jahr ist dasselbe passiert.
    Dieses Jahr hat meine zwei Jahre jüngere Tochter so lange gedrängelt, bis ich ihr einen Desktop baue; sie bekommt also ein schönes Weihnachten und ein Jahr voller Lernen und Frust :)
    Ach ja, und unsere Familie hat dieses Jahr auch einen Flipper Zero gekauft. Wir können dem Nachbarskind ja nicht den ganzen Spaß allein überlassen.
    [0] Das Geld hatte ich damit zusammengespart, für andere Leute Computer zusammenzubauen.

    • Was mich nach 25 Jahren Software-Karriere immer noch wirklich erstaunt: In meinem Team besitzen so wenige Software Engineers einen eigenen Computer.
      Im aktuellen Team sind es weniger als die Hälfte. Ich dagegen bin der Sonderling, der neben dem Arbeitslaptop auch noch einen Gaming-PC, ein Gaming-Notebook und ein allgemeines MBP hat.
      Mein Sohn hat eine ähnliche Erfahrung gemacht. Er hat nie besonders großes Interesse daran gezeigt, Computer zu lernen, wollte aber beim PC-Bau helfen, und inzwischen ist er der Tech-Support für seine Freunde.
    • Wie viele auf HN habe auch ich eine ähnliche Geschichte.
      Ich habe jahrelang in meinem „Homelab“ mit 10BASE2-Koaxialkabeln herumgespielt, bis mir klar wurde, dass Leute mir tatsächlich Geld für mein Spielzeug-Gebastel bezahlen.
      Natürlich floss dieses Geld direkt wieder in Homelab-Spielzeug.
      Heute habe ich viele Freunde mit Kindern, einige davon Teenager. Eine Zeit lang hatte ich innerlich Sorgen, denn das technische Wissen dieser Kinder beschränkt sich darauf, nach dem WLAN-Passwort zu fragen und in Apps irgendwelche Quatschvideos anzusehen.
      Fragt man sie, was sie später werden wollen, sagen sie „Influencer“. Die technisch anspruchsvollste Handlung ist, den „Router“ neu zu starten, wenn das Internet nicht geht, und der zweite Diagnoseschritt ist, laut zu rufen, dass das Internet nicht geht.
      Es sind tolle Kinder, und ich will ihnen keinen Vorwurf machen, aber ich habe mir Sorgen gemacht, ob nach dem Verschwinden unserer Generation noch jemand das Licht anlassen kann.
      Zu unserer Zeit gab es hohe Einstiegshürden, um Computer zu benutzen und ins Internet zu kommen, aber das hatte auch den Vorteil, dass dadurch unglaublich viele technische Talente entstanden.
      Deshalb ist es wirklich schön zu hören, dass es immer noch Nerd-Kids gibt, die ins Innere schauen.
    • Ich bin ein paar Jahre später genau denselben Weg gegangen.
      Der Versuch, auf dem Gateway meiner Mutter Spiele zum Laufen zu bringen, führte dazu, dass ich meinen ersten PC mit einem Pentium D baute; daraus wurde ein Hobby, bei dem ich ständig auf eBay Hardware kaufte und verkaufte und Teile austauschte, und am Ende stand ein Elektrotechnikstudium.
      Ohne Videospiele und ohne das Herumbasteln an PCs und Overclocking hätte es dieses Elektrotechnikstudium nicht gegeben.
    • Ich bin neugierig, was für coole Dinge das Kind mit dem Flipper Zero gemacht hat.
    • Ich frage mich, wie alt die Kinder sind.
  • Glückwunsch. Als ich 16 war, hatte ich nur einen 486DX2-66, ein 28,8K-Modem und eine UPS
    Für andere Teenager und Menschen, die im Herzen Teenager sind und das hinbekommen wollen: Sucht auf eBay nach gebrauchten Enterprise-Servern. HP, Lenovo, Dell und Supermicro sind meist gute Marken zur Auswahl
    Vor dem Kauf solltet ihr zu dem konkreten Modell die Spezifikationsdokumente, Treiber und Firmware suchen, um sicherzustellen, dass es vollständig und nutzbar ist – oder sich zu vertretbaren Kosten vervollständigen lässt
    Wenn ihr vorhabt, mit XenServer oder VMware ESXi mehrere virtuelle Maschinen zu betreiben, solltet ihr vor dem Kauf in der Hardware Compatibility List (HCL) des Betriebssystems prüfen, ob es kompatibel ist
    1U-Server sollte man besser meiden. Sie sind kleiner als 2U und höher und müssen kürzere Lüfter sehr schnell drehen lassen, was sie lauter macht
    Die CPU sollte mindestens so schnell sein wie der Computer, den ihr bereits habt. Sonst wird daraus womöglich ein sehr teurer Briefbeschwerer oder ein großer „Raspberry PI“: https://www.cpubenchmark.net
    Bei AMD-CPUs in Servern von Dell, Lenovo und HP gibt es die Falle, dass sie vendor-locked sein können. Manchmal verkaufen Händler solche gesperrten CPUs allerdings sehr günstig, sodass es sich lohnen kann
    ECC RAM. Freunde lassen Freunde keinen Non-ECC-RAM fahren: https://cr.yp.to/hardware/ecc.html
    Nehmt lieber SSDs. Rotierende Festplatten sind für Storage da, nicht für das Betriebssystem: https://web.archive.org/web/20110831080738/http://buyafuckin...
    Wenn möglich, besorgt euch Hardware mit bereits lizenzierter Remote-Management-Funktion wie iLO oder iDRAC
    Wenn sie ankommt, ist sie vermutlich schmutzig und verkratzt; öffnet sie draußen und reinigt sie mit Druckluft
    Bonuspunkte: die Eltern überzeugen, in der Garage ein 19-Zoll-Patchpanel und ein Half-Rack zu installieren :]

    • Diese Ratschläge sind allesamt eher Nice-to-have. Mit einem alten Desktop oder Laptop lässt sich dasselbe problemlos machen
      Ich betreibe seit Langem ein Homelab und habe statt gebrauchter Server-Hardware zu kaufen oder zu suchen Rackmount-Systeme genutzt, die mit alten Desktop-Komponenten bestückt waren. Zwingend nötig ist das nicht
      ECC RAM ist nützlich, wenn man günstig daran kommt und die CPU es unterstützt, aber meiner Erfahrung nach wird das als Problem etwas übertrieben
      Allerdings stimme ich zu, dass man 2U- oder 3/4U-Geräte kaufen sollte. Dort passen deutlich größere Lüfter hinein, und dadurch werden sie leiser
  • Als Teenager Anfang der 90er war das Schockierendste an meinem ersten Computer die Erkenntnis, dass jeder Computer ein Server ist
    Ein Computer musste keinen Rack-Formfaktor haben und nicht teuer sein. Man brauchte nur Winsock und TCP/IP, das war alles. Mein Computer war wie jeder andere Computer im Internet
    Deshalb finde ich diesen Beitrag zwar cool, würde mir aber wünschen, dass die Hardware weniger betont wird: Um eine Node-basierte App zu betreiben und im Internet anzubieten, spielt die Hardware kaum eine Rolle
    Man braucht auch keine statische IP; man muss nur dynamisches DNS herausfinden :)

    • Anders gesagt: In der Hochphase des P2P-Filesharings hatten die meisten 16-Jährigen tatsächlich einen Server im Zimmer stehen
    • Das bringt mich dazu, die Geschichte des ersten deutschen Online-Routenplaners für die Bahn wiederfinden zu wollen
      Es war ein Beitrag des Entwicklers selbst; in den 90ern, als die Deutsche Bahn noch nicht online war, lagen die Fahrplaninformationen immerhin auf CD-ROM vor
      Jemand nahm die Daten von dieser CD-ROM und baute ein Tool, das auf Abfragen nach einer Route zwischen zwei Bahnhöfen antwortete
      Die Art der Abfrage war interessant: Man schickte eine E-Mail an seine Uni-Adresse, und der „Server“ – in Wirklichkeit ein PC in einer Zimmerecke – holte alle fünf Minuten E-Mails ab, verarbeitete die Anfrage und schickte das Ergebnis per E-Mail zurück
      Leider sind Google und DDG inzwischen nutzlos geworden, und als ich diese Geschichte zuletzt finden wollte, hat es wirklich lange gedauert
    • Für solche Zwecke bevorzuge ich Nicht-Server-Maschinen gegenüber Server-Maschinen
      Moderne Single-Board-Computer können ebenfalls völlig ausreichende Homeserver sein und sind viel kleiner, leiser, günstiger und verbrauchen weniger Strom
    • Eines der coolsten Technikdinge, die ich als Teenager bekam, war ein übrig gebliebener alter Desktop
      Zuerst installierte ich FreeBSD darauf, später Linux, und es war unglaublich, zu Hause meine eigene Unix-Maschine zu haben
      Sie war nicht leistungsstark und hatte weder viel Arbeitsspeicher noch viel Speicherplatz, aber sie gehörte mir und ich konnte damit machen, was ich wollte
      Ich ließ IRC-Bots darauf laufen und betrieb einen Webserver mit meinen chaotischen Perl-Skripten. Nachdem ich eine Netzwerkkarte eingebaut hatte, diente sie auch als Einwahlrouter für zu Hause
      Beim Herumbasteln an dieser Maschine habe ich unglaublich viel gelernt, und die Fähigkeit, vim zu beenden, verdanke ich wohl ihr
    • Als ich 1999 zum ersten Mal Open-Source-Software veröffentlichte, hostete ich sie direkt auf meiner Desktop-Linux-Maschine über den Kabelmodemanschluss meiner Wohnung und dynamisches DNS
      Ich stellte sie auf Freshmeat[1] ein und saß beim Abendessen auf dem Sofa, während ich zusah, wie die Apache-Logs vorbeiscrollten. Das war eines der großartigsten Gefühle meiner Karriere
      [1] https://en.wikipedia.org/wiki/Freecode