Nachdem wir nun unseren Server ersteingerichtet haben, ist es an der Zeit mal Speicher hinzuzufügen. Damit ist nicht gemeint, dass physischer Speicher (RAM, Festplatte etc.) eingebaut wird, sondern dass dem System Speicherorte bekannt gemacht werden.

Dazu melden wir uns mit dem Browser unserer Wahl an der Adresse https://IP-unseres-Servers:8006 an und stellen als erstes die Sprache auf German:

Wir werden dann noch darauf hingewiesen, dass wir keine gültige Subscription haben:

Das ist etwas, mit dem Privatanwender leben müssen – das sollte aber zu verschmerzen sein. Falls es jemanden stört: Die Enterprise-Lizenzen kosten ab €90 pro CPU-Sockel pro Jahr; ich persönlich brauche das sicherlich nicht.

Die Oberfläche ist dann – sehr grob gesagt – in zwei Teile unterteilt: Links sehen wir unser „Rechenzentrum“, darunter in einer Baumansicht alle Server, die zu diesem Rechenzentrum gehören. Proxmox lässt sich wohl recht einfach clustern (ich habe das noch nicht ausprobiert, kann also nichts dazu sagen, wie leicht das wirklich ist). Da ich nur diesen einen Server habe, wird auch nur der eine angezeigt. Im rechten Bereich sehen wir dann Details zu unserem Rechenzentrum oder den einzelnen Servern.

Diese Unterteilung macht durchaus Sinn: So ist es möglich, SAN-Speicher für alle Server anzubinden; wenn dann ein Node meines Clusters ausfällt, übernimmt der andere mit einer kurzen Verzögerung – ohne dass da noch ein Admin irgendwas händisch machen muss; so werden Downtimes (die im Enterprise-Umfeld ja durchaus Geld kosten können) möglichst kurz gehalten…

Deshalb finden wir die Speicherübersicht auch im Knoten „Rechenzentrum“:

Hier sehen wir auch, dass es verschiedene Speicherarten gibt. Diese Unterteilung macht auch Sinn: Die ISO-Images müssen nicht über ein warpfähiges SAN angebunden werden – ob ein Betriebssystem in 5 Minuten installiert ist oder in 5:12 Minuten, dürfte in 99,9% aller Fälle egal sein. Die virtuellen Maschinen selber sollten schon flott angebunden und einigermaßen ausfallsicher sein. Ähnlich ist es mit den Containern: Die Vorlagen dafür müssen nicht zwangsweise doppelt und dreifach gesichert werden, die Container selbst schon…

Wenn wir nun einen neuen Speicherort hinzufügen wollen, ist das nicht weiter schwer – im Vorfeld müssen wir überlegen, um welche Art Speicher es sich handelt und was da rein soll. In meinem Fall ist das ganz einfach: Ich habe ein NAS, auf dem ich einen NFS-Share vorbereitet habe, in dem die Vorlagen für Container abgelegt werden sollen. Also klicke ich auf „Hinzufügen à NFS“:

Die anderen Speicherarten sind für mich nicht weiter relevant – ZFS ist zwar irgendwie cool, aber auch sehr hungrig (ich hatte mal gelesen, dass es pro TB Speicher 1GB RAM braucht). iSCSI ist auch nett, aber im privaten Umfeld eher nicht so das, was man regelmäßig nutzt. Ich denke, für mich wird am ehesten NFS infrage kommen (CIFS ist auch noch eine Option, aber wer will schon Windows-Freigaben nutzen, wenn er komplett mit Linux unterwegs ist).

Ein Sonderpunkt ist hier „Proxmox Backup Server“ – dazu werde ich mich in einem der nächsten Teile etwas konkreter äußern.

Nach einem Klick auf „NFS“ wird also eine Eingabemaste angezeigt, in der ich einige Kleinigkeiten angeben muss:

Ein sehr charmantes Feature: Trägt man bei Server die IP-Adresse bzw. den Servernamen des NFS-Hosts ein, werden in dem Dropdown darunter alle NFS-Exports angezeigt, die der Server sehen kann.

Bei NFS ist das nämlich so: Ich kann die Freigaben (das ist der unter Windows geläufige Name, unter Unix / Linux heißen die Ordner, die ich freigeben will, Exports) so einrichten, dass nur bestimmte Geräte (das wird über die IP-Adresse festgelegt) Zugriff erhalten. Ich kann also beispielsweise sagen: „Auf den Export export1 hat nur der Client 192.168.1.1 Zugriff“ oder „alle Clients aus dem Netz 192.118.1.1/24“ oder nur die IP-Adressen 1,2,3 und 4… Über die Benutzer- und Gruppenrechte kann ich dann steuern, wer Dateien in diesem Export lesen und schreiben darf.

Wenn ich den entsprechenden Export ausgewählt habe, kann ich darunter seinen Inhalt festlegen:

In diesem Fall will ich, dass da die Container-Templates abgelegt werden. Klickt man dann auf Hinzufügen, wird der Speicher eingebunden und links in der Baumansicht angezeigt; wenn man dann noch den Mauszeiger darauf „ablegt“ und kurz wartet, wird sein Status angezeigt (hat alles geklappt, ist er verfügbar):

Damit ist dieser Teil abgeschlossen. Um noch kurz zu demonstrieren, wie das mit dem Speicher funktioniert, laden wir mal eine ISO-Datei hoch (ich weiß: didaktisch seltsam, die ganze Zeit über Container-Templates zu schreiben und dann auf einmal mit ISO-Dateien zu kommen, aber den ISO-Speicher hatte ich schon hinzugefügt, bevor ich die Screenshots für diesen Teil brauchte).

Wir klicken also links auf unseren ISO-Speicher und rechts auf ISO-Images und dann auf Hochladen:

In dem Fenster, das dann angezeigt wird, wählen wir eine ISO-Datei aus. Kleiner Hinweis: Die Datei wird unter dem Namen integriert, den sie hat (Leerzeichen werden durch Unterstriche ersetzt) – es empfiehlt sich daher, die Dateinamen vor dem Upload anzupassen. Möglich wäre beispielsweise folgendes Schema: OS-Name_Version_Ausprägung_Architektur – würde konkret etwas bedeuten wie „Ubuntu_20.04.2_Server_x64.iso“ (oder entsprechend „Ubuntu_20.04.2_Desktop_x86.iso“). Das hilft, die Übersicht zu behalten (wobei das bei einer Handvoll ISOs nicht das Problem sein dürfte).

Nach einem Klick auf „Hochladen“ wird die Datei hochgeladen – je nach Netzwerkanbindung dauert das ein paar Sekunden mehr oder weniger:

Ist der Upload komplett, wird die ISO-Datei im Speicher angezeigt und kann fortan für die Erstellung virtueller Maschinen genutzt werden. Wie das geht, folgt in einem der nächsten Teile…