Hintergrund
Vor ca. 3 Wochen (Stand April 26) habe ich einen Teil meiner Smart Home Geräte von HomeKit auf Home Assistant (HA). Es läuft soweit stabil, allerdings kommt der RPi mit seinem 1 GB RAM an seine Grenze. Deshalb habe ich einen Mini PC bestellt mit 8 GB RAM und einer 256 GB SSD. Es steht in dieser Konfiguration nur ein RAM Update an, ansonsten sollte der Mini PC ausreichend sein. Hier die Konfiguration:
Fujitsu Q558 Mini PC – Intel i3-9100 8GB RAM + 256GB SSD m.2
Er wird über LAN angebunden und bekommt sand heute, keine „Sendeeinheiten“, da das Haus sehr gut abgedeckt ist.
Vorbereitung:
Der Mini PC soll mit PROXMOX laufen. Dadurch sollten sich einige Vereinfachungen -wie die Backup und Test Strategie- realisieren lassen. Zum flashen des Geräts wird ein USB-A Stick benötigt, von dem gebootet werden kann. Am Mac habe ich es so gemacht:
PROXMOX Download: https://www.proxmox.com/en/downloads

Festplatten Dienstprogramm:
Bestehenden Stick löschen.

Dann im Terminal schauen wie der Stick gemountet ist und das Image per dd auf dem Stick erstellen:
diskutil list /dev/disk0 (internal, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *1.0 TB disk0 1: Apple_APFS_ISC Container disk2 524.3 MB disk0s1 2: Apple_APFS Container disk3 994.7 GB disk0s2 3: Apple_APFS_Recovery Container disk1 5.4 GB disk0s3 /dev/disk3 (synthesized): #: TYPE NAME SIZE IDENTIFIER 0: APFS Container Scheme - +994.7 GB disk3 Physical Store disk0s2 1: APFS Volume Macintosh HD 12.5 GB disk3s1 2: APFS Snapshot com.apple.os.update-... 12.5 GB disk3s1s1 3: APFS Volume Preboot 8.7 GB disk3s2 4: APFS Volume Recovery 1.3 GB disk3s3 5: APFS Volume Data 395.7 GB disk3s5 6: APFS Volume VM 5.4 GB disk3s6 /dev/disk4 (disk image): #: TYPE NAME SIZE IDENTIFIER 0: +16.0 TB disk4 /dev/disk5 (external, physical): #: TYPE NAME SIZE IDENTIFIER 0: GUID_partition_scheme *15.7 GB disk5 1: EFI EFI 209.7 MB disk5s1 2: Microsoft Basic Data PROXMOX 15.5 GB disk5s2 /dev/disk6 (synthesized): #: TYPE NAME SIZE IDENTIFIER 0: APFS Container Scheme - +16.0 TB disk6 Physical Stores 1: APFS Volume Backups von MacBook Air 404.3 GB disk6s1 bash-3.2$ diskutil unmountDisk /dev/disk5 Unmount of all volumes on disk5 was successful bash-3.2$ sudo dd if=Public/proxmox-ve_9.1-1.iso of=/dev/rdisk5 bs=1m Password: 1747+1 records in 1747+1 records out 1831886848 bytes transferred in 171.905820 secs (10656340 bytes/sec) bash-3.2$ sync bash-3.2$ diskutil eject /dev/disk5 Disk /dev/disk5 ejected
Desweiteren muss bedacht werden, dass der Mini PC nur einen DisplayPort als Ausgang hat. Das ist zwar kein Problem für den späteren Dauer-Betrieb, für das Aufsetzen ist es aber Problematisch, da PROXMOX unter bestimmten Voraussetzungen BIOS Einstellungen benötigt und die kann man nur mit einem Monitor und Tastatur durchführen. Deshalb habe ich mir einen günstigen HDMI – Displayport Adapter bestellt.
Nachdem der Mini PC geliefert wurde, habe ich als erstes geprüft ob der PC startet und sich im Netz einbucht. Das tat er, sodass ich mit dem Einbau der speicher-Riegel weitermachen konnte. Dann noch ein erfolgreicher Start-Versuch und es sah so aus:


Dann den PROXMOX-USB-Boot-Stick einstecken und mit F12 booten:

Der 4. Eintrag ist der Boot-Stick!

Hier nun die ersten Schritte mit der Konfiguration:

Installation (wichtigste Parameter)
Filesystem: ext4
Disk: /dev/nvme0n1
Hostname: proxmox
IP: 192.168.2.50/24
Gateway: 192.168.2.1
DNS: 192.168.2.1
Proxmox erreichbar unter:
https://192.168.2.50:8006
Proxmox Initial Setup
No-Subscription Repo aktiviert
echo „deb http://download.proxmox.com/debian/pve bookworm pve-no-subscription“ > /etc/apt/sources.list.d/pve-no-subscription.list
apt update && apt upgrade -y
Enterprise Repo deaktiviert (manuell korrigiert)
→ .sources Files bereinigt
Subscription Popup entfernt
sed -i „s/data.status !== ‚Active’/false/g“ /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js
systemctl restart pveproxy
Netzwerk-Konfiguration
cat /etc/network/interfaces
auto lo iface lo inet loopback iface nic0 inet manual auto vmbr0 iface vmbr0 inet static address 192.168.2.50/24 gateway 192.168.2.1 bridge-ports nic0 bridge-stp off bridge-fd 0
Ergebnis:
-
Bridge vmbr0 korrekt aktiv
-
VMs können direkt ins LAN
Home Assistant VM – erster erfolgloser Ansatz
Methode
-
Import .qcow2 (OVA)
Problem
-
VM bootete nicht sauber
-
Netzwerk (DHCP) funktionierte nicht
Entscheidung: Neu aufsetzen mit RAM Image.
Home Assistant VM – finaler Aufbau
VM 102 erstellt (GUI)
Konfiguration
|
Parameter |
Wert |
|---|---|
|
BIOS |
OVMF (UEFI) |
|
Machine |
q35 |
|
CPU |
host |
|
Cores |
2 |
|
RAM |
4096 → später 8192 |
|
Disk |
32 GB (SCSI) |
|
Controller |
VirtIO SCSI |
|
Network |
VirtIO + vmbr0 |
Disk-Import (Durchbruch)
Image erstellt mit:
wget https://github.com/home-assistant/operating-system/releases/download/17.1/haos_generic-x86-64-17.1.img.xz
unxz haos_generic-x86-64-17.1.img.xz
Image direkt auf LVM schreiben
dd if=haos_generic-x86-64-17.1.img of=/dev/pve/vm-102-disk-2 bs=4M status=progress conv=fsync
Das war der Gamechanger.
VM Konfiguration final
qm set 102 --scsi0 local-lvm:vm-102-disk-2 qm set 102 --boot order=scsi0 qm set 102 --scsihw virtio-scsi-pci qm set 102 --cpu host qm set 102 --vga std
Home Assistant OS bootet korrekt.
Netzwerk-Fix
Problem
-
VM bekam keine IP
Ursache
-
falsche Kombination aus:
-
BIOS (UEFI vs SeaBIOS)
-
Image-Typ
Lösung
-
-
Verwendung des generic RAW Images
-
Standard VirtIO Netzwerk
Migration Home Assistant
Backup erstellen (alte Instanz)
Alte IP Adresse merken! Das wird später die neue und man muss nichts umkonfigurieren.
Auswahl:
-
Einstellungen ✅
-
Verlauf ✅
-
Medien ✅
-
Share ✅
-
Apps: ALLE ✅
Restore in neuer VM
-
Backup hochgeladen
-
Wiederherstellung durchgeführt
Ergebnis: komplette Umgebung übernommen!
IP Migration (kritischer Schritt)
Vorgehen
-
Raspberry Pi ausschalten (IP: 192.168.2.213)
-
In Unifi: VM → feste IP zuweisen: 192.168.2.213
-
VM reboot
Keine Änderungen in Integrationen im HA notwendig! Die Unterbrechung war unter 2 min!
MQTT / Geräte Problem
Symptom
-
Raffstore reagiert nicht
Ursache
-
MQTT Session nicht sauber nach Migration
Lösung
MQTT Integration in HA neu laden: sofort wieder funktionsfähig
Storage Cleanup
Entfernt Reste von VM Versuchen:
qm destroy 100 --destroy-unreferenced-disks 1 qm destroy 101 --destroy-unreferenced-disks 1 qm unlink 102 --idlist unused1
Ergebnis: Thin Pool Nutzung: ~9%
Snapshot
erstellt:
clean_migration_ok: erstellen ohne RAM
Optimierung
Autostart
qm set 102 --onboot 1
RAM Upgrade for Home Assistant
qm set 102 --memory 8192
Backup-Strategie
Proxmox Backup Job
-
Storage: local
-
Mode: snapshot
-
Compression: zstd
-
Retention: z. B. keep-last 3
Gesamtfazit
Technisch erreicht
-
Ablösung Raspberry Pi
-
stabile Virtualisierung
-
saubere Netzwerk-Integration
-
vollständige Migration ohne Datenverlust
Architektur jetzt
Mini PC (Proxmox) └── VM: Home Assistant OS └── MQTT └── Automationen └── Raffstore Steuerung (Pi extern, siehe Projekte)
Vorteile
-
deutlich höhere Performance
-
saubere Trennung Infrastruktur / Anwendung
-
Backup & Snapshot möglich
-
erweiterbar (weitere VMs / Container)
