Reise nach K8s - VMs und Netzwerk
Ich verwende die Anleitung von Mojabi Rafi auf medium.com, um den ersten Kubernetes Cluster auf VirtualBox zu erstellen. Warum ausgerechnet auf VirtualBox? Erstens ist es für mich organisatorisch bequem, alles auf meinem PC am Laufen zu haben und zweitens hat das komplette selber Bauen bei mir den grössten Lerneffekt.
Zur Dokumentation verwende ich Publii und draw.io.
Alles läuft auf meinem Windows 11 PC. Für alle Zwecke verwende ich den Ordner C:\K8s. So habe ich die Dokumentation, die ISOs, die VMs mal am selben Ort.
Netzwerkdesign
Im Oracle VirtualBox Netzwerkmanager erstelle ich ein Host-Only-Netzwerk, damit die Nodes untereinander kommunizieren können. Für das NAT-Netzwerk verwende ich das Bestehende.
Netzwerk | Range | Interface |
Host-only-Netzwerk | 192.168.60.0/24 | eth1/enp0s8 |
NAT-Netzwerk | VirtualBox DHCP | eth/0enp0s3 |
VMs unter VirtualBox
Linux Distribution wählen
Ich wähle Ubuntu Server 24.10. Warum nicht Talos? Weil ich ein Betriebssystem verwenden will, dass ich kenne. Ich kann es später bestimmt mit optimierten Distributionen noch einmal versuchen.
VMs erstellen
Nicht vergessen, vor jeglichen VM-Versuchen die Virtualisierung im BIOS einzuschalten (AMD-V).
Die unbeaufsichtigte Installation überspringen lassen. Ansonsten folgende Werte verwenden.
Hostname | NAT-Netzwerk | Host-Only Netzwerk | Sizing |
master-1 | DHCP | 192.168.60.11 | CPU: 2 Cores, Memory: 2 GB, Disk: 8 GB |
worker-1 | DHCP | 192.168.60.21 | CPU: 2 Cores, Memory: 2 GB, Disk: 8 GB |
worker-2 | DHCP | 192.168.60.22 | CPU: 2 Cores, Memory: 2 GB, Disk: 8 GB |
worker-3 | DHCP | 192.168.60.23 | CPU: 2 Cores, Memory: 2 GB, Disk: 8 GB |
Bei der Installation von Ubuntu die Variante Ubuntu Server (minimized) verwenden und ausser OpenSSH sonst nichts installieren.
Bei der Netzwerkkonfiguration des Interfaces, welches nicht eine IP von DHCP erhält (Host-Only-Netzwerk) die vorgemerkte IP angeben, aber keinen Gateway etc. setzen.
Fazit
Bereit sind die VMs.
Probleme
Nach der Ubuntu-Installation dauert der VM-Boot lange
Die VM bootet bis zu folgender Linie, verweilt dort dann ewig:
systemd-networkd-persistent-storage.service - Enable Persistent Storage in systemd-networkd.
Dasselbe hier;
Job systemd-networkd-wait-online.service/start running (1min 36s / no limit)
Ursache scheint, dass einer der Netzwerkadapter in VirtualBox auf Angeschlossen an: nicht angeschlossen gewechselt hat. Bei mir der Host-Only-Adapter. Sobald dieser wieder richtig konfiguriert ist, bootet die VM ultraschnell.
Der VM-Boot dauert immer noch lange
Dieses Mal wartet der Bootprozess hier:
Begin: Loading essential drivers ...
Ursache scheint VirtualBox zu sein. Entweder abwarten oder VM ganz kurz pausieren. Tritt willkürlich auf.
Beim VM-Start erscheint ein Fehler
Und zwar wenn ich master-1 und worker-1 gleichzeitig startem zeigt worker-1 diesen Fehler.
VirtualBoxVM.exe - Fehler in Anwendung
Die Ausnahme "unknown software exception" (0x80000003) ist in der Anwendung an der Stelle 0x00007FFD63C4272F aufgetreten.
Klicken Sie auf "OK", um das Programm zu beenden.
Wenn ich den Fehler bestätige und worker-1 noch einmal starte, klappt alles tiptop. Noch gestern konnte ich alle 4 VMs gleichzeitig problemlos innerhalb 22s starten. Ursache unbekannt.