Anfängerfrage zur Erstkonfiguration (Netzwerk, Storage, lvm-thin, SWAP)

PVEPeta

Well-Known Member
Oct 6, 2017
31
2
48
48
Hallo zusammen,

ich bin Neueinsteiger beim Thema Proxmox PVE und habe nur einige Vorkenntnisse mit Virtualisierung durch VMware vSphere ESXi. Wobei ich da auch weit entfernt bin wirklich zu wissen wovon ich rede…:D

Ich habe bereits mit Hilfe Forums- und Internetsuche versucht, die ersten Schritte mit PVE zu machen, doch leider scheitere ich bisweilen mit (hoffentlich banalen) Problemen. Sorry, falls ich bei er Suche Beiträge übersehen oder missverstanden haben sollte.

Einige Infos kurz zu meiner Konfiguration:

Als Router/Gateway betreibe ich seit kurzem eine OPNsense Firewall mit
- DHCP-Server (IP/24 Bereich, IP x.x.x.2-99 fix, IP x.x.x.x.100-254 dynamisch)
- DNS-Resolver bzw. DNSmasq
- die Auflösung aller hosts.local im LAN per nslookup auf die IP und hosts.local, ping auf IP und hosts.local funktionieren

Für den PVE hab ich einen HPE Proliant Microserver Gen8 Xeon, 16GByte ECC Ram
- 1TB HDD am onboard AHCI Controller
- 4TB Hardware RAID-6 HPE P222 (Battery+Cache)
- 2 NICs

Ich benötige nun Hilfe bei

(1) der sauberen Netzwerkkonfiguration. PVE bekommt bei der Standardinstallation eine IP vom DHCP aus dem dynamischen Bereich, der Zugriff per WebGUI auf die IP klappt, Zugriff auf die .local Adresse nicht. nslookup auf die IP und .local klappt entsprechend nicht, lediglich der ping auf die IP. Gleiches Ergebnis bei Installation mit IP aus dem fixen Bereich.

Ich gehe davon aus, dass PVE nicht für DHCP-Betrieb ausgelegt ist? Aber auch bei manuell vergebener fixer IP bekommt der DNS-Resolver bzw. DNSmasq anscheinend nicht den .local hostname übergeben. Den DNS Eintrag beim DNS-Resolver/DNSmasq zu überschreiben habe ich noch nicht probiert, ebenso wie die fixe Zuweisung einer IP Anhand der MAC-Adresse der NICs. Zumal in /etc/network/interfaces die NICs auf "auto" stehen und eine zusätzliche "bidge vmk0" o.ä. (ich bin leider nicht vor Ort und hab den korrekten Namen parat) auftaucht.

(2) der Konfiguration des Storages. Das PVE OS installiere ich auf die 1TB HDD am onboard Controller. Dieser gibt die HDD per AHCI durch, ich würde PVE dann auf eine ZFS Volumen installieren. Soweit kein Problem. Der Hardware RAID Controller kann leider kein AHCI bzw. IT Mode, um die HDDs an PVE durchzureichen. Also bleib es ein Hardware RAID-6.

Ich möchte das RAID-6 für die VMs, Images etc. verwenden, empfohlen wird dazu LVM-thin. Ein LVM Volumen hab ich nach diverser Anleitungen hinbekommen (GPT Initialisierung, Partitionierung bzw. Erstellung eines physical volumes, volume group mit fdisk/pvcreate) und ich kann in der WebGUI das von mir benannte Storage als LVM hinzufügen. Wie geht das mit einem LVM-thin Storage? Dort muss zwingend noch ein thin-pool definiert sein. Wie leg ich den an bzw. worauf muss ich achten? Mein Wunsch ist, dass komplette RAID-6 für die VMs, Images etc. zu verwenden.

Für ein paar Denkanstöße bin ich mehr als dankbar…:)
 
Last edited:
(1) der sauberen Netzwerkkonfiguration. PVE bekommt bei der Standardinstallation eine IP vom DHCP aus dem dynamischen Bereich, der Zugriff per WebGUI auf die IP klappt, Zugriff auf die .local Adresse nicht. nslookup auf die IP und .local klappt entsprechend nicht, lediglich der ping auf die IP. Gleiches Ergebnis bei Installation mit IP aus dem fixen Bereich.

Für deine .local-Adresse brauchst du einen DNS-Server (in diesem Fall DNSMASQ DNS von OPNSense). Normalerweise (so mach ich das) bekommen PVE-Server immer eine feste IP. Du solltest dir in diesem Zusammenhang dir deinen DNS-Server ansehen, dort liegt irgendwo eine Fehlkonfiguration vor.
NSLOOKUP auf die IP geht nicht, da du eine Reverse-Zone (addr-in.arpa). Gleichzeitig handelt es sich dort um einen PTR-Eintrag. Den DNS-Resolve

Eine feste IP Adresse kannst du leicht über das Webinterface vergeben. Unter deinem Hostnamen links, findest du den Bereich Netzwerk oder Network. Dort kannst du die IP-Adresse im vmbr0 anpassen (erfordert einen Reboot).

(2) der Konfiguration des Storages. Das PVE OS installiere ich auf die 1TB HDD am onboard Controller. Dieser gibt die HDD per AHCI durch, ich würde PVE dann auf eine ZFS Volumen installieren. Soweit kein Problem. Der Hardware RAID Controller kann leider kein AHCI bzw. IT Mode, um die HDDs an PVE durchzureichen. Also bleib es ein Hardware RAID-6.

Der Proliant Gen8 Microserver kann AHCI. Ich habe monatelang im AHCI-Modus gearbeitet. Du kannst entweder AHCI- oder den RAID-Controller verwenden. Die Einstellung versteckt sich im BIOS. Dort steht jetzt der Name des RAID-Controllers (SmartArray ...).Beides gleichzeitig geht nicht.
Solltest du dich für ZFS entscheiden, empfehle ich mehr RAM oder ZFS weniger RAM zur Verfügung zu stellen (s. Link: PVE Wiki, ZFS on Linux, Limit ZFS Memory Usage; https://pve.proxmox.com/wiki/ZFS_on_Linux#_limit_zfs_memory_usage). Ansonsten könnte es schwierig werden, sauber VM's darauf laufen zu lassen.

Mit LVM-Thin Storage habe ich bisher keine Erfahrungen. Am besten dazu mal im Forum suchen. Dort gibt es mit Sicherheit eine Anleitung.
 
Ich habe nun den HPE Proliant Microserver Gen8 onboard RAID Controller deaktiviert und den AHCI Modus aktiviert. Die angeschlossene 1TB HDD dient nun als Installationsdisk für PVE. Formatiert habe ich diese mit dem PVE Installer als ZFS Raid-0.

Weiterhin habe ich eine static IP zugewiesen und den host.local definiert und die gleichen Parameter bei DNSmasq meiner OPNsense registiert. Ping auf IP, nslookup auf IP und host.local laufen nun sauber.

Jetzt bleibt noch die Sache mit dem Storage auf dem HPE P222 RAID-6 (Hardware-Raid). Wobei ich überlege, mir einen LSI 9211-4i/8i zu besorgen und diesen dann im IT-mode zu betreiben und die 4 HDDs (des noch Hardware Raid-6) an PVE durchreiche und dort als ZFS Raid-2 (3?) Pool zu betreiben.

Wie sind da die generellen Erfahrungen/Empfehlungen?
 
Eine Platte im ZFS macht keinen Sinn, zieht grad nur die Performance runter. Eine Platte, heist EXT4. Und ja mit den anderen 4 HDD's einfach ein einen ZFSpool erstellen und als Storage in PVE einhängen. Durchreichen oder so brauchst das natürlich nicht. Wichtig natürlich wie schon oben beschrieben. ZFS muss die Platten direkt sehen. Ne Cache SSD würd ich dir bei 4 HDDs auf jeden Fall empfehlen. Ansonsten bis bei 4 Platten mit nem HW-Raid und 1GB Cache gefühlt schneller.
Ich persönlich möchte nichts mehr anderes als ZFS verwenden. Die Features sind der Hammer. Braucht halt mehr Power. Kommt halt auch immer auf die Anforderungen drauf an die man hat. :)
 
Ich hab meinen HP Microserver Gen8 nun etwas umkonfiguriert. Ausgestattet ist er nun mit einen LSI 9211-8i, IT-mode. Der onboard Raid/SATA Controller des HP Microserver Gen 8 ist komplett deaktiviert.

An einem der beiden internen Ports habe ich eine 2,5 WD RED, diese ist noch nicht konfiguriert (partitioniert/formatiert) und wird lediglich bei Proxmox in der Node Übersicht unter Disks gelistet. Diese HDD steht noch zur freien Verfügung.

Am anderen internen Port habe ich vier 3,5 WD RED angeschlossen. Dank IT-mode stehen sie PVE direkt zur Verfügung und ich hab PVE auf ein RaidZ-2 aus den vier 3,5 WD RED mit dem Installer automatisch installiert. Das System läuft soweit ohne Probleme.

Was mir aber etwas störend auffällt sind die deutlich zu höhrenden regelmäßigen Zugriffsgeräusche des RaidZ-2 Volumen im 3 Sekunden Takt, auch wenn keine VM läuft. Ich denke das ist normal und liegt an SWAP bzw. TEMP bzw. LOG-files, die PVE ständig schreibt. Ich überlege, ob ich das PVE System doch auf die einzelne noch verfügbare 2,5 WD RED installiere (diese ist wirklich leise und kaum hörbar) und die vier 3,5 WD RED als RAIDZ-2 Storage für die VM, BACKUP, ISO etc. verwende. Doch dann würde ich die Vorteile des ZFL RaidZ-2 Volumes für das System aufgeben.

Wäre es denn möglich, nur die SWAP, TEMP und LOG-files auf die einzelne 2,5 WD RED auszulagern?
 
Last edited:
ZFS arbeitet immer ein wenig, das Umstellen würde dir da nicht helfen. RaidZ2... ohne CacheSSD ist schon hart, aber wenn es für dich von der Performance reicht, technisch natürlich vollkommen ok. Der Vorteil ist natürlich hohe Datensicherheit mit Z2. Mach mal nen Performancecheck mit
Code:
pveperf /poolname
Swap würd ich sowieso nie auf ZFS machen oder so ich hier gleich abschalten, sofern genug RAM zur Verfügung steht. Temp und Log kannst natürlich auch auslagern. Also einfach nen eigenen Mountpoint für die Dinge.
 
ZFS arbeitet immer ein wenig, das Umstellen würde dir da nicht helfen. RaidZ2... ohne CacheSSD ist schon hart, aber wenn es für dich von der Performance reicht, technisch natürlich vollkommen ok. Der Vorteil ist natürlich hohe Datensicherheit mit Z2. Mach mal nen Performancecheck mit
Code:
pveperf /poolname
Swap würd ich sowieso nie auf ZFS machen oder so ich hier gleich abschalten, sofern genug RAM zur Verfügung steht. Temp und Log kannst natürlich auch auslagern. Also einfach nen eigenen Mountpoint für die Dinge.

Ich habe eine freie 2,5 HDD mit 1TB. Muss diese partitioniert werden mit jeweils eigener Partition für swap, temp, log usw.? Welche Größen? Dateisystem ext4? Müssen diese Partitionen dann bestimmte Namen, Eigenschaften, Dateinsysteme haben? Wie weise ich PVE die Partitionen dann jeweils für log, temp usw. als mountpoints zu?

Oder kann die 2,5 HD komplett als ext4 Volumen verwenden mit entsprechnden Ordnern für swap, temp etc.?

Sorry für die unbeholfenen, doofen Fragen…Da ich noch sehr wenig Erfahrungen im Allgemeinen mit Unix/Linux/BSD Systeme habe muss ich ein paar Grundsätze erfragen zum Vorgehen beim Auslagern der verschiedenen logs, swaps und temps…o_O
 
Oder kann die 2,5 HD komplett als ext4 Volumen verwenden mit entsprechnden Ordnern für swap, temp etc.?
Kannst du auch machen. Mehr Partitionen die wie gewünscht formatieren und einhängen. Für Swap natürlich auch ne eigene Partition. Für Logs und Temp kannst natürlich auch nur Ordner machen.
Das ganze dann in die FSTAB werfen, Logs usw. verschieben und gut ists.
Deutsch ZFS Doku: https://deepdoc.at/dokuwiki/doku.php?id=server_und_serverdienste:linux_zfs
 
Wie finde ich heraus, wo PVE aktuell swap, temp und logs etc. hin legt? Ich hab mal etwas mit # swapon bzw. # swapoff experimentiert und herausgefunden, dass PVE auf dem zfs Volumen (welches zugleich auch Installationsvolumen ist) ein swap hat. Mich stört der permanente HDD Zugriff alle 2-3 Sekunden, obwohl keine VM und nur lediglich PVE läuft.
 
> Mich stört der permanente HDD Zugriff alle 2-3 Sekunden, obwohl keine VM und nur lediglich PVE läuft.
Der PVE-system logt regelmäßig im Systemlog (/var/log/*) seine Aktivität, ein solche Verhältnis ist zu erwarten von den meisten Betriebsystemen.
 
> Mich stört der permanente HDD Zugriff alle 2-3 Sekunden, obwohl keine VM und nur lediglich PVE läuft.
Der PVE-system logt regelmäßig im Systemlog (/var/log/*) seine Aktivität, ein solche Verhältnis ist zu erwarten von den meisten Betriebsystemen.

Also, mich stört natürlich nicht der Zugriff alle 2-3 Sek. an sich, wohl aber dieses absolut immer im gleichen Takt deutlich hörbare, monotone klack-klack Geräusch…:rolleyes:

Wäre es denn möglich dem System mal testweise zu sagen, leg die log files /var/log/* auf eine alternative HDD? Und wie mache ich noob das?:)
 
In dem fall wurde ich einfach PVE in einem kleinem SSD neu installieren.
 
  • Like
Reactions: fireon
In dem fall wurde ich einfach PVE in einem kleinem SSD neu installieren.
…und das RaidZ-2 der 4 WD Red dann als Storage für die VM, Backup, ISO etc. verwenden? Hmm, ja, an sowas dachte ich auch schon als Plan B.

Mich würde auch einfach mal nur interessieren, woher die permanenten Zugriffsgeräusche kommen. Hab da schon ne kleine Reise hinter mir mit nem Hardware Raidcontroller mit Raid-60 aus 4 WD RE Enterprise HDD, die HDDs dann durch die 5400rpm REDs ersetzt und nun den LSI 9211 HBA und RaidZ-2 unter PVE. Und bei aller Rumbastelei - unter anderem auch VMware vSphere, wo das OS auf ner MicroSD lag - bleibt eines immer konstant - die regelmäßigen Festplattenzugriffe im 2-3 Sekunden Takt. Ich hab noch nen zweiten HP Gen 8 Microserver mit NAS4free und ebenfalls nen RaidZ-2 als Storage, da höre ich im IDLE rein gar nichts. Da ist allerdings das OS als schlankes embedded empfohlenerweise auf ner Micro SD installiert, da dieses komplett im RAM liegt.
 
Ich hab nun PVE auf die 2,5 HDD (zfs Raid-0) installiert. Die vier 3,5 HDDs habe ich als zpool zfs Raid-10 angelegt und als STORAGE für die VMs eingebunden. Es ist nun eine herrliche Ruhe. :)

Nun zu meinem nächsten Problem: Ich möchte gerne ein Verzeichnis für die Backups/Iso einhängen. Dazu hab ich einen Ordner BAK auf dem zpool unter /dev/zvol/<POOL NAME>/BAK angelegt. Diesen hab ich per GUI auch eingebunden. Leider steht diesem Ordner nur 8GB Volumen zur Verfügung (der zpool hat 4TB). Was mache ich falsch??

Edit: Ich denke ich hab die Lösung gefunden: Statt eines Ordners unter /dev/zpol/<POOL NAME> muss ein zfs dataset (in meinem Fall hier BAK) auf dem zpool erstellt werden mit #zfs create /<POOL NAME>/BAK , das lässt sich dann als Verzeichnis in der PVE gui einbinden und für backup, Iso etc. verwenden.
 
Last edited:

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!