Netboot-PXE-Server als LXC-Container

vorhergehende Artikel in: Linux Links Virtualisierung
18.09.2020

Ich habe meine IT-Infrastruktur modernisiert und nachhaltiger gemacht - keine Boot-CDs und keine USB-Sticks mehr für mich...

Nachdem ich erfahren habe, dass dnsmasq auch als Proxy arbeiten kann, wuchs in mir der Wunsch, einen eigenen PXE-Server aufzusetzen - das letzte Mal hatte ich mich mit Network-Boot beschäftigt, als ich Mittel und Wege suchte, alte Laptops einer Nachnutzung zuzuführen: dnsmasq als Proxy bedeutet, dass ein Rechner per DHCP um eine IP-Adresse nachsucht und ihm diese von einem DHCP-Server zugeteilt wird. Das kann zum Beispiel eine Fritz-Box oder auch ein OpenWrt-Router sein. dnsmasq sieht diese Kommunikation und schickt ein Paket hinterher, das den Client darüber informiert, dass ein Server bereitsteht, von dem er per Netzwerk booten könnte.

Dadurch muss man das bestehende Netzwerk nicht ändern - speziell ist keine Änderung des bestehenden DHCP-Servers notwendig - und kann trotzdem den Rechnern im Netzwerk neue Boot-Optionen eröffnen. Darunter fallen Möglichkeiten, über das Netzwerk neue Betriebssysteme zu installieren, Rettungssysteme wir Clonezilla, GParted oder Desinfec't zu starten oder einfach Live-Distributionen wie zum Beispiel Slax zu nutzen.

Seit der Ankunft von UEFI ist das ein wenig schwieriger geworden, weil ein PXE-Server heutzutage darauf vorbereitet sein muss, beides zu unterstützen. Aber mit Linux ist auch das kein Problem - man kann einen PXE-Server aufsetzen, der beide Systeme unterstützt - das ist genau das, was ich getan habe.

Die Tests wurden mit 6 verschiedenen Systemen durchgeführt:

  • KVM-Container (amd64, BIOS)
  • Physischer Rechner, Mainboard 2020 (amd64, BIOS)
  • Physischer Rechner, Mainboard 2012 (amd64, BIOS)
  • Physischer Rechner, Centrino, non-PAE (i686, BIOS)
  • Physischer Rechner, Schenker-Laptop ca. 2014 (amd64, UEFI)
  • Virtual Box VM (i686, BIOS)

Auf allen Testsystemen funktionierte die Erkennung des PXE-Systems fehlerfrei und die entsprechend passenden Bootoptionen wurden fehlerfrei ausgeführt.

Hier folgen einige Links, die mich bei der Einrichtung des Systems auf die richtige Fährte brachten:

Artikel, die hierher verlinken

Raspi booten übers Netz mit PXE und NFS

17.12.2020

Nach meinen Experimenten mit einem Rock64 war ein Raspi 3B+ für Experimente freigeworden - und in Vorbereitung meiner durch eben diesem Rock64 inspirierten Projektideen für diesen Winter wollte ich einiges ausprobieren - zuerst das Booten über das Netzwerk mit persistentem Speicher im Netz - so dass am Pi gar kein Massenspeicher mehr benötigt würde - weder als SD-Karte noch sonstwie.

Installation von Ubuntu 20.04 auf Raid-0

12.12.2020

Ich habe nach der erfolgreichen Arbeit an meinem PXE-Bootserver weitere Experimente folgen lassen - unter anderem habe ich für Debian als weitere Install-Option hinzugefügt. Weiterhin bietet der Server jetzt für Debian und Ubuntu 20.04 Automatik-Installationen an, die mit minimaler Nutzerinteraktion (Hostname und Passwort) auskommen

Alle Artikel rss Wochenübersicht Monatsübersicht Github Repositories Gitlab Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • Certstream, InfluxDB, Grafana und Netflix

    16.04.2019

    Nachdem ich vor kurzem über mein erstes Spielen mit dem certstream berichtete, habe ich weitere Experimente gemacht und die Daten zur besseren Auswertung in eine InfluxDB gepackt, um sie mit Grafana untersuchen zu können.

    Weiterlesen...

Neueste Artikel

  • Die sQLshell ist nun cloudnative!

    Die sQLshell hat eine weitere Integration erfahren - obwohl ich eigentlich selber nicht viel dazu tun musste: Es existiert ein Projekt/Produkt namens steampipe, dessen Slogan ist select * from cloud; - Im Prinzip eine Wrapperschicht um diverse (laut Eigenwerbung mehr als 140) (cloud) data sources.

    Weiterlesen...
  • LinkCollections 2024 III

    Nach der letzten losen Zusammenstellung (für mich) interessanter Links aus den Tiefen des Internet von 2024 folgt hier gleich die nächste:

    Weiterlesen...
  • Funktionen mit mehreren Rückgabewerten in Java

    Da ich seit nunmehr einem Jahr bei meinem neeun Arbeitgeber beschäftigt und damit seit ungefähr derselben Zeit für Geld mit Python arbeite, haben sich gewisse Antipathien gegenüber Python vertieft (ich kann mit typlosen Sprachen einfach nicht umgehen) - aber auch einige meiner Gründe, Python zu lieben sind ebenso stärker geworden. Einer davon ist der Fakt, dass eine Methode in Python mehr als einen Wert zurückgeben kann.

    Weiterlesen...

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muß damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen GitHub-Repositories findet man hier - meine öffentlichen GitLab-Repositories finden sich dagegen hier.