Dieser Artikel stammt aus einem früheren, persönlichen Blog und ist nicht Teil des Leistungsangebots der blaumedia GmbH. Er wird hier aus archivarischen Gründen bereitgestellt.

Vor wenigen Wochen habe ich meinen langersehnten oDroid H2 von Hardkernel erhalten. Der kleine Formfaktor des Boards ist ideal für einen Homeserver geeignet und bietet dank der x86 Plattform vom Intel Celeron J4105 deutlich besseren Software-Support als ein ARM-Prozessor. Ich bin zwar ein großer Unterstützer der ARM Plattform, aber der H2 hat nochmals deutlich mehr Bumms als oDroids aktuelles ARM Angebot, weshalb dieser schlussendlich zu meinem Main-Home-Server wurde. Auf meinem Server bei Hetzner unterteile ich Komponenten, die nicht auf einer Maschine zu finden sein sollten, in verschiedene virtuelle Maschinen, um nochmal einen zusätzlichen Layer an Sicherheit zu haben. So wird zum Beispiel mein Mail- und Webserver strikt voneinander getrennt und sogar unter verschiedenen IP-Adressen ausgeliefert, obwohl es auf der selben Hardware läuft. Ein ähnliches Konzept würde ich gerne auf meinem oDroid H2 umsetzen. In diesem Beitrag erkläre ich euch, wie ihr auf eurem oDroid H2 virtuelle Maschinen betreibt – egal, ob Windows- oder Linux-VM. Dabei helfen wird uns bei dem oDroid H2 Proxmox; eine kostenlose VM-Management Software für Debian, die über ein Web-Interface steuerbar ist.

Einkaufsliste

Mein oDroid H2 Setup sieht wie folgt aus:

  • oDroid H2
  • oDroid H2 Steckernetzteil
  • oDroid H2 Gehäuse Typ 1
  • NVMe M2 Festplatte (WD Black 500 GB)
  • 2x WD Red 3,5" 4 TB Festplatte
  • 16 GB Arbeitsspeicher (HyperX Impact DDR4 2400 MHz CL14)

Wenn man Virtualisierung bei dem oDroid H2 unter Betracht zieht, sollte man an genügend Arbeitsspeicher denken! Virtuelle Maschinen haben immer einen leichten Overhead, da komplette Betriebssysteme für sich gestartet werden. Die Grenzen sind beim oDroid H2 nicht bei 16 GB gesetzt – es gibt wohl Testberichte, dass ohne Probleme auch 32 GB damit laufen.

Hostsystem: Debian Buster (10) installieren

Nachdem ihr die M2 Festplatte und die RAM-Riegel beim oDroid eingesetzt habt, machen wir uns nun daran Debian Buster auf dem kleinen Gerät zu installieren. Um bootfähige USB-Sticks zu installieren nutze ich gerne balenaEtcher. Proxmox stellt ein eigenes fertiges Debian 10-Image bereit, bei dem Proxmox vorinstalliert ist. Im Netz scheinen aber mehrere Leute damit Probleme aufgrund von UEFI zu haben, weshalb ich Debian und anschließend Proxmox einzeln installiere.

balenaEtcher Flash Vorgang

Anschließend Strom, HDMI, Tastatur, LAN und den eben geflashten USB-Stick an den oDroid H2 anschließen. Nun auf den Power Knopf auf dem Board drücken, damit es bootet.

Debian 10 Installation auf dem oDroid H2

Wählen wir nun "Install" aus, gehen wir die Installationsschritte wie folgt durch:

  1. Sprache einstellen (inkl. Land & Tastatur-Layout)
  2. Netzwerkeinstellungen
  3. Root-Passwort & Benutzer konfigurieren
  4. Festplatten partitionieren
  5. Netzwerk-Mirror konfigurieren
  6. Bei der "Software Selection" nur "standard system utilities" und "openssh server" anwählen
  7. Den GRUB boot manager auf die Festplatte installieren
  8. Neustart

Proxmox auf dem oDroid H2 installieren und einrichten

Nun geht es daran Proxmox auf den oDroid H2 zu bekommen. Als erstes müssen wir mit ip addr show die IP des oDroids herausfinden, diese IP Adresse hinterlegen wir dann zum im Debian-Setup definierten Hostnamen in der /etc/hosts Datei.

IP Adresse mit ip addr show ermitteln Den Hostnamen zur IP Adresse weiterleiten

Um nun die Installation zu beginnen, gebt folgende Befehle als root nacheinander ein:

echo "deb http://download.proxmox.com/debian/pve buster pve-no-subscription" > /etc/apt/sources.list.d/pve-install-repo.list
wget http://download.proxmox.com/debian/proxmox-ve-release-6.x.gpg -O /etc/apt/trusted.gpg.d/proxmox-ve-release-6.x.gpg
chmod +r /etc/apt/trusted.gpg.d/proxmox-ve-release-6.x.gpg
apt update && apt full-upgrade -y
apt install proxmox-ve postfix open-iscsi sudo -y
apt remove os-prober -y

Anschließend könnt ihr das Web-Interface von Proxmox unter https://IP_ODROIDH2:8006 aufrufen.

NAT-Netzwerkonfiguration des Hosts für Proxmox

Damit die virtuellen Maschinen auch aufs Internet zugreifen können, müssen wir in den Netzwerkeinstellungen des oDroid H2 eine Bridge erzeugen. Dazu öffnen wir mit sudo nano /etc/network/interfaces die Netzwerkeinstellungen und fügen folgendes ein:

auto vmbr0
iface vmbr0 inet static
    address 10.0.0.1
    netmask 255.255.255.0
    bridge_ports none
    bridge_stp off
    bridge_fd 0
    post-up echo 1 > /proc/sys/net/ipv4/ip_forward
    post-up sysctl -w net.ipv6.conf.all.forwarding=1
    post-up iptables -t nat -A POSTROUTING -s '10.0.0.0/24' -o enp3s0 -j MASQUERADE
    post-down iptables -t nat -F

Windows VM auf dem oDroid H2 einrichten

Zuerst die Windows ISO herunterladen und unter /var/lib/vz/template/iso ablegen. Im Proxmox Web Interface "Create VM" wählen mit folgenden Einstellungen:

Windows 10 ISO herunterladen
  • OS: Windows 10 ISO, Type: Microsoft Windows
  • System: SCSI Controller: VirtIO SCSI, Qemu Agent aktivieren
  • Hard Disk: Bus SCSI/0, Cache: Write back
  • CPU: 4 Cores
  • Memory: 8192 MiB, Minimum 4096 MiB, Ballooning aktiviert
  • Network: Bridge vmbr0, Model VirtIO

Zusätzlich VirtIO Treiber CD als zweites Laufwerk hinzufügen. Im Windows-Setup die Treiber von vioscsi, NetKVM und Balloon laden. Nach der Installation virtio-win-gt-x64.exe und qemu-ga-x86_64.exe installieren. Netzwerk manuell konfigurieren: IP 10.0.0.2, Subnet 24, Gateway 10.0.0.1.

Ein weiteres Laufwerk zur Proxmox VM hinzufügen VirtIO Treiber CD als Laufwerk hinzufügen Proxmox VM via noVNC anzeigen Guest Agent und Treiber für die Proxmox Windows VM installieren

Linux (Debian Buster/10) VM auf dem oDroid H2 einrichten

Debian 10 Netinst-ISO herunterladen und unter /var/lib/vz/template/iso ablegen. VM mit ähnlichen Einstellungen wie Windows erstellen, aber OS Type: Linux. Bei der Netzwerkkonfiguration im Debian-Installer manuell konfigurieren: IP 10.0.0.2, Netmask 255.255.255.0, Gateway 10.0.0.1. Nach dem Setup apt-get install qemu-guest-agent installieren.

Debian VM ohne Internet-Verbindung