Intel NUC, Proxmox und ioBroker
In diesem Artikel zeige ich Dir, wie Du auf einem Intel NUC die Virtualisierungssoftware Proxmox und ioBroker installierst und welchen Vorteil Du davon erhälst.
In diesem Artikel werden wir gemeinsam auf einem Intel NUC die Virtualisierungssoftware Proxmox installieren und eine virtuelle Maschine für ioBroker anlegen.
Als ich vor einigen Jahren meine ersten Erfahrungen mit ioBroker sammeln durfte, habe ich zu Beginn aus Kostengründen einen einfachen Raspberry Pi mit SD-Karte als Basis für ioBroker verwendet. Damals noch ein Pi 3 mit 1 GB Arbeitsspeicher. Mit der Zeit kam ich häufig an die Grenzen vom Pi. Neue Smart-Home Hardware (Aktoren und Sensoren) und somit auch neue ioBroker Adapter trieben das System immer weiter Richtung 1 GB Speicherauslastung. Zudem hatte ich während der Zeit einmal einen SD-Kartenfehler und somit einen Totalausfall der Smart-Home Steuerung. Mit dem Backup und einer neuen SD-Karte konnte zwar relativ schnell ein neues System aufgesetzt werden, die Angst vor einem erneuten Crash war aber immer vorhanden. Und dann war es wieder soweit ,der nächste Crash, die nächste defekte SD-Karte 🙁
Meine Entscheidung stand schon länger fest, also wurde jetzt eine neue Hardware-Basis angeschafft und ioBroker darauf installiert. Ich habe mich für ein Intel NUC Mini-PC entschieden. Auf diesem System soll die ioBroker Software und später auch andere Lösungen wie z.B. Grafana auf virtuellen Maschinen installiert werden. Als Virtualisierungslösung soll Proxmox eingesetzt werden. Ich kann somit mehrere virtuelle Maschinen auf dem Intel NUC betreiben.
Vorteile von virtuellen Maschinen:
- Mehrere Maschinen auf einem Host (produktiv, test, …)
- Einfaches Backup
- Snapshots zur Sicherung von Ständen
- Klonen von Maschinen
Proxmox ist eine sehr mächtige Virtualisierungslösung. Neben den oben gezeigten Vorteilen gibt es aber auch einen Nachteil. Du musst Dich mit der Materie beschäftigen und einarbeiten. Zudem benötigst Du dazu bereits gute Linux-Kenntnisse. Alles in allem aber machbar und Du lernst viel dazu. Ich kann es nur jedem empfehlen, der auch Spaß an diesem Thema hat 🙂
Hier nun die von mir verwendete Hardware:
Mit dem oben gezeigten Intel NUC System sind 8 GB Arbeitsspeicher maximal einsetzbar. Für eine normale Verwendung mit 2-3 Linux Maschinen sollte das eigentlich ausreichend sein. In meinem Fall laufen aktuell zwei Maschinen mit 4 und 2 GB Arbeitsspeicher. Im Zweifel könnte ich also nochmals eine 2 GB Maschine hinzufügen. Wem das nicht reicht, sollte gleich auf ein größeres System wechseln.
Zum Thema Arbeitsspeicher gibt es ja die altbekannte Weisheit:
Nach dem der Intel NUC ausgepackt und aufgebaut wurde, habe ich das System zunächst an einem Monitor angeschlossen und im BIOS kontrolliert ob die Hardware ordnungsgemäß erkannt wurde.
Zudem musst Du im Bios im Bereich Boot und Secure Boot die Option Secure Boot deaktivieren, da sonst ein Booten vom USB-Stick nicht möglich ist. Im folgenden Bildschirmfoto siehst Du die markierte Einstellung. Die folgenden Screenshots wurden abfotografiert und sind daher von der Qualität leider nicht gut :-/
Nach dem unser Host-System nun aufgebaut wurde, können wir uns nun die Proxmox-Installation in Form einer ISO-Datei von der Proxmox Webseite herunterladen und auf den USB-Stick flashen. Dazu öffnet Du zunächst die Proxmox Webseite unter:
https://www.proxmox.com/de/downloads
Ich habe hier die Version Proxmox VE 6.2 als ISO Installer heruntergeladen und auf meinem Windows-System gespeichert.
Im nächsten Schritt müssen wir unseren USB-Stick vorbereiten. Ich habe hierzu die Sofware Etcher heruntergeladen und installiert. Die Software kann hier heruntergeladen werden:
Nach dem Start von Etcher wählen wir im ersten Schritt über die Schaltfläche Select image die heruntergeladene Proxmox ISO-Datei aus.
Im nächsten Schritt wählst Du hier den USB-Stick aus, auf den das ISO geflasht werden soll. Gestartet wird der Flash-Vorgang dann über die Schaltfläche Flash!.
Der Flash-Vorgang lief bei mir ca. 3 Minuten. Nach dem Flashen könnt ihr den USB-Stick über Windows entfernen und am Intel NUC einstecken.
Nach dem wir den USB-Stick nun erfolgreich geflasht haben, können wir nun den USB-Stick in den Intel NUC einstecken und mit der Installation von Proxmox beginnen. Drücke hierzu während dem Start mehrmals die Taste F10 um in den Bootmanager zu gelangen. Hier wählst Du nun den USB-Stick aus.
Jetzt startet automatisch die Proxmox Installation. Im ersten Schritt wählst Du hier den gelb markierten Punkt „Install Proxmox VE“ aus und bestätigst mit der Enter-Taste. Du kannst zu diesem Punkt auch schon eine Maus und Tastatur an den Intel-NUC anschließen.
Wie üblich muss nun die Endbenutzer-Lizenz (EULA) bestätigt werden. Klicke dazu auf die Schaltfläche I Agree unten rechts.
Im nächsten Schritt wählst Du die Festplatte aus, auf der wir die Proxmox Virtualisierungssoftware installieren möchten. In meinem Fall verwende ich die oben verlinke SSD-Festplatte mit ca 500 GB.
Hier sollten bereits die Länder, Zeitzonen und Tastatur-Layout-Einstellungen korrekt eingestellt sein. Falls nicht, einfach wie im Screenshot gezeigt anpassen.
Für die spätere Anmeldung an der Konfiguration setzen wir hier ein Kennwort sowie eine E-Mail Adresse. Bitte verwende hier Deine E-Mail Adresse, da Du später Informationen Benachrichtigungen per E-Mail erhälst (z.B. für fehlerhafte Backups).
Im nächsten Schritt treffen wir die Netzwerk-Einstellungen. Hierzu musst Du die IP-Adresse, die Netmask, das Gateway sowie die DNS-Server an Dein Netzwerk anpassen. Wähle hier auf jeden Fall eine feste IP-Adresse, die sich nicht im DHCP-Bereich befindet.
Abschließen bekommst Du nochmals eine Übersicht mit allen Einstellungen und Eingaben angezeigt. Mit der Schaltfläche Install wird dann die Installation von Proxmox gestartet und durchgeführt.
Nach dem die Installation durchgeführt wurde, können wir nun mit der Konfiguration beginnen. Hierzu öffnen wir nun einen Browser und geben die Proxmox IP-Adresse mit dem Port 8006 im Browser ein. Wichtig ist hier, dass Ihr HTTPS nutzt und dann wie im Bild gezeigt eine Ausnahme hinzufügt.
Jetzt startet die Proxmox Administrationsoberfläche. Mit dem vorher in der Installation definierten Kennwort für den Root-Benutzer können wir uns hier nun an Proxmox anmelden und mit der Konfiguration des Hosts beginnen sowie die erste virtuelle Maschine installieren. Ich habe hier noch die Sprache auf Deutsch umgestellt.
Die Administration ist sehr übersichtlich und klar aufgebaut. In der linken Baumansicht wird das „Rechenzentrum“ mit unserem Proxmox Host dargestellt. Auf der rechten Seite sehen wir verschiedene Details zu unserem System sowie den angelegten virtuellen Maschinen. Unterhalb wird ein Log mit den Aufgaben dargestellt.
Bevor wir uns nun eine virtuellen Server für ioBroker anlegen, müssen wir zunächst Templates definieren. Dazu wechseln wir oben links von Server-Ansicht auf Ordneransicht. In der Ordneransicht klicken wir nun auf den Ordner Storage – local (proxmox). In der mittleren Navigation klickst Du auf den Bereich Inhalt. Über die Schaltfläche Templates kannst Du nun aus einer Liste das gewünschte Template auswählen. Im Listen-Bereich System findest Du verschiedene Linux-Versionen, die hier bereits als Template zur Verfügung stehen. So kannst Du sehr schnell eine neue virtuelle Maschine anlegen. Ich habe mich hier für Ubuntu-19.10-standard entschieden.
Nach dem Herunterladen des Templates wird in der Ausgabe TASK OK im Log angezeigt.
Im nächsten Schritt erstellen wir nun unsere virtuelle Maschine. Proxmox unterscheidet hierbei zwei Arten von virtuellen Maschinen:
- VM
- CT (LXC-Container)
Bei einer VM wird eine komplette virtuelle Maschine mit eigenem Kernel installiert. Bei LXC-Containern wird der Kernel des Hostsystems verwendet. Dies spart Arbeitsspeicher und ist für viele Anwendungen ausreichend. Die Container werden trotzdem isoliert voneinander betrieben und verhalten sich ansonsten gleich wie eine VM (eigene IP-Adresse, eigener Speicher, etc.).
Für die ioBroker Installation habe ich mich daher für einen LXC-Container entschieden. Über die Schaltfläche Erstelle CT legen wir uns nun unseren Container für ioBroker an.
Im ersten Schritt definieren wir hier eine CT ID. Diese Nummer muss eindeutig definiert werden. Ich habe hier die ID 100 gewählt. Als Hostname habe ich hier einen sprechenden Namen iobroker-produktiv für die virtuelle ioBroker Umgebung verwendet. Um später weitere ioBroker Instanzen hinzufügen zu können, habe ich den Zusatz „produktiv“ angehängt. Weiter wird hier wieder ein Kennwort für den Container festgelegt.
Im nächsten Schritt wählen wir nun das Template für den LXC Container aus dem entsprechenden Storage. In meinem Beispiel hier wähle ich das Ubuntu Template aus dem Storage local.
Die bereiche Root-Disk, CPU und Speicher sind eigentlich klar und überspringe ich daher. Ich habe als Speichergröße hier 4GB gewählt. In meinem Fall sind aktuell nur 8GB Gesamtspeicher vorhanden.
Im nächsten Schritt definieren wir noch die Netzwerk-Schnittstelle des LXC Containers. Hierzu wählen wir den eth0 Name aus. Die IP-Adresse hier wieder unbedingt auf Statisch setzen und eine IP-Adresse außerhalb des DHCP-Bereichs wählen. Zudem hier noch das Gateway festlegen. Die IPv6 habe ich hier auf DHCP belassen, da ich intern nur IPv4 Adressen nutze.
Nach der Konfiguration wird die virtuelle Maschine nun gestartet und ist bereit für den nächsten Schritt – die ioBroker Installation.
Im Bereich Rechenzentrum – LXC Container – 100 (iobroker-produktiv) können wir nun die Konsole öffnen und hier die Installation von ioBroker beginnen. Die Maschine ist nun vollständig erstellt und konfiguriert.
Die ioBroker-Installation habe ich hier nicht extra beschrieben, da hier eine perfekte Anleitung von ioBroker vorhanden ist. Hier geht es weiter zur Installation:
https://www.iobroker.net/#de/documentation/install/linux.md
Ich hoffe euch gefällt dieser Artikel. Über Kommentare unterhalb des Artikels oder per E-Mail freue ich mich wie immer. Wenn Dich weitere Themen rund um ioBroker und Proxmox interessieren, dann lass es mich gerne wissen.
Hallo Matthias,
interessanter Artikel. In noch noch etwas entfernter Zukunft könnte ich mir vorstellen ioBroker auch darauf umzustellen, das eröffnet noch ein paar interessante Szenarien.
Hierzu noch ein paar Fragen:
– von was für Performanceunterschieden im Verhältnis zu RPi3 oder 4 zu dem Beispiel NUC kann hier gesprochen werden
– was wäre in etwa der Mehrverbrauch an Strom
– wie würde dann zum Beispiel die Homematic-Hardware (jetzt habe ich das ioBroker/Pi-VCCU- Image auf einem RPi über das ELV RPI-RF-Mod) angebunden (über die USB-Platine von Alexander Reinert???) oder wie sieht es mit dem Phoscon/deconz-Zigbee-Stick aus?
Viele Grüße
Mark
Huhu,
kannst du was zu der Last und zu deinen nun im Einsatz befindenden VM/LXC Container (OS, Speicher, genutzt für Nextcloud,..usw) schreiben?
Was macht die Performance des Proxmons .. reicht der 4005 CPU?
LG
Hallo,
gem. Intel Spec (https://ark.intel.com/content/www/de/de/ark/products/126135/intel-nuc-kit-nuc7cjyh.html) unterstützt dieser NUC max 8 GB RAM. Das spricht eigentlich gegen diese Hardware, oder?
Hallo,
für ioBroker und 1-2 andere Maschinen (nicht Windows!) reicht mit diese Hardware-Variante vollkommen aus. Von daher kann ich Deine Frage so nicht mit ja oder nein beantworten. Es kommt immer auf den Anwendungsfall an.
Naja ich hatte halt die Aussage oben im Artikel im Ohr: “ Es sind zwar nur 8GB, kann später aber noch problemlos erweitert werden. Ich würde euch hier mindestens 16GB empfehlen“
Danke für die Info, das stimmt natürlich. Ich werde das gleich berichtigen
Hallo Matthias
Ich möchte mir gerne einen NUC zulegen (geplante Softwareinstalltion erstmal Proxmox + ioBroker). In dem Bereich gibt es zahlreiche Anbieter und unzählige Möglichkeiten bei der Wahl der Hardwarekomponenten. Kannst du mir weiterhelfen wie eine vernünftige Konfiguration aussehen kann und welcher Anbieter mit einem vernünftigen Preis/Leistungsverhältnis zu empfehlen ist. Ich danke schon mal im Voraus für deine Tipps und Anregungen.
Viele Grüße
Joachim
Hallo Joachim,
wichtig ist auf jeden Fall der Hauptspeicher. Ich würde daher auf jeden Fall einen NUC mit mindestens 8GB oder besser 32GB empfehlen. Ansonsten gibt es auf Amazon ganz gute Angebote, da kann man eigentlich nicht wirklich viel falsch machen. Dann Proxmox herunterladen und los geht es 🙂
LG Matthias
Danke für die Anleitung!
Ich nutze – RFLINK – mit Nuc und Proxmox und IOBroker.
Hier muss noch der USB-Port durchgereicht werden.
Mir hat am besten diese Anleitung geholfen,
https://forum.proxmox.com/threads/lxc-usb-passthrough-zwave-stick.30058/
nur das ich
– aus ttyACM0 => ttyUSB0 machen musste
– das conf Verzeichnis ist statt /etc/pve/nodes/proxmox01/lxc/ => das hier: /etc/pve/nodes/pve/lxc ist.
Danach muss man noch die Berechtigung setzen:
chmod o+rw /dev/ttyUSB0
Ist aber nach dem Reboot wieder zurückgesetzt.
Deswegen:
nano /etc/udev/rules.d/50-myusb.rules
Das folgende einfügen:
KERNEL==”ttyUSB[0-9]*”,MODE=”0666″
KERNEL==”ttyACM[0-9]*”,MODE=”0666″
Quelle: https://askubuntu.com/questions/112568/how-do-i-allow-a-non-default-user-to-use-serial-device-ttyusb0
Grüße
Chris
Bis zur Installation des iobrokers komme ich.
Wenn ich allerdings die Konsole aufrufe, bekomme ich nur einen schwarzen Bildschirm ohne Eingabeprompt, wobei kurz „Connected“ erscheint.
Wenn ich lange genug warte und z.B. ls eingebe, kommt die Aufforderung für das Passwort, was aber falsch ist. Danach bekomme ich den normalen Login, was dann auch klappt.
Über ein reguläres Terminal kann ich mich allerdings nicht mit den Daten anmelden. Oder läuft ssh beim iobroker nicht?
Hallo Matthias,
ich komme aus der Windowswelt und möchte mir einen NUC mit dem ioBroker installieren.
Mit meinen „reduzierten“ Linux Wissen, ist das eine sehr gute Beschreibung.
DANKE!!!
Ich möchte den NUC über WLAN ins Netz einbinden und habe als Management Interface wifi ausgewählt.
Leider fehlt mir die Stellen, wo ich für das WLAN meine SSID und Passwort mitteilen kann.
Oder ist als Management Interface „nur“ das Ethernet Interface benutzbar,
Oder „nur“ nutzbar, wenn es lokal im Linux Terminal definiert wird?
Beste Grüße aus Altlandsberg
Klaus.
Hallo Klaus, da ich mich derzeit selbst mit dem Thema beschäftige (Umzug ESXI auf Proxmox) für meinen NUC, kann ich dir nur raten kein Wifi zu verwenden. Die Performance und Latenz ist über WLAN leider nicht zufriedenstellend und im Proxmox Wiki wird hiervon auch abgeraten. Da der NUC so klein ist, habe ich diesen beim Router stehen und direkt per Kabel verbunden.