, , , , , ,

Proxmox – Sicherung von VMs und Container auf Synology NAS – RaspberryMatic, ioBroker, node-RED

Über meine Artikel zum Thema RaspberryMatic auf einem Proxmox Server habe ich euch ja schon einige Vorteile aufgezeigt. Heute geht es um die Möglichkeit alle unter Proxmox laufenden VMs (virtuelle Maschinen wie RaspberryMatic, ioBroker, usw.) im laufenden Betrieb auf einer Synology NAS zu sichern, Die ist automatisch ohne weitere Software wie ioBroker möglich und man ist dadurch schnell in der Lage, eine gesamt VM bei Problemen wiederherzustellen. Ein weiterer positiver Effekt ist die Tatsache, dass die lokale Festplatte des Servers (in meinem Fall ein Intel NUC) nicht mit den Backups vollgeschrieben wird. Wie ihr dies einfach mit NFS (Network File System) realisieren könnt, beschriebe ich euch in diesem Artikel.

Was ist NFS (Network File System)

Mit der fortschreitenden Verbreitung der Client-Server-Architektur musste das folgende Problem gelöst werden: Wie kann man die auf dem Server liegenden Dateien auf einer NAS im Netzwerk sichern? Alle Rechner verfügen unter Umständen über unterschiedliche Betriebssysteme oder auch über unterschiedliche Netzwerktopologien. NFS, das Network File System, löst diese Anforderungen, vor allem für die Unix/Linux-Umgebung.

Prinzipieller Datenaustausch

Wie es in der Unix/Linux-Welt üblich ist, werden Internet-Standards per Request of Comment (RFC) veröffentlicht. Bei NFS handelt sich um einen Internet-Standard, der die Verfahren in einem verteilten Dateisystem regelt. Während das seit vielen Jahren verwendete NFS-Protokoll (NFSv3) den Client-Rechner authentisiert, ändert sich das mit der Version NFSv4.x grundlegend. Hier muss sich der Benutzer authentifizieren.

Sowohl Proxmox wie auch Synology unterstützen die NFS Version NFSv4.x und somit ist es einfach möglich Daten innerhalb des Netzwerkes zu verschieben oder wie in unserem Beispiel die VM und Container Daten auf einer Synology NAS zu speichern.

Das hat viele Vorteile gegenüber der Verwendung von FTP, wie beispielsweise bei der Sicherung eurer CCU oder ioBroker über den ioBroker BackupIT. Wie ihr das sehr einfach einrichten könnt, erfahrt ihr in den weiteren Absätzen.

Definitionen auf der Synology NAS

In diesem Abschnitt zeige ich euch, was ihr auf eurer Synology NAS definieren müsst.

  • Über Systemsteuerung>Dateidienste bitte NFS aktivieren, sowie die NFSv4-Unterstützung aktivieren. Anschließend Übernehmen klicken;
  • Dann über Systemsteuerung>Gemeinsame Ordner einen neuen Ordner erstellen;
  • Unter Basisinformationen einrichten die Felder Name und Beschreibung eingeben. Zusätzlich die Haken bei Papierkorb aktivieren und Zugriff auf ausschließlich Administratoren beschränken herausnehmen;
  • Verschlüsselung habe ich nichts ausgewählt;
  • Anschließend die Einstellungen bestätigen;
  • Eine Vergabe von Berechtigungen auf Benutzerebene ist bei NFS nicht erforderlich;
  • Unter NFS-Regeln erstellen die IP-Adresse des Proxmos Servers eintragen, sowie die anderen gezeigten Eingaben tätigen und mit OK bestätigen;
  • Damit sind bereits alle Aktivitäten auf der Synology NAS abgeschlossen.

Definitionen auf dem Proxmox Server

In diesem Abschnitt könnt ihr nachschauen welche Aktivitäten ihr auf dem Proxmox Server durchführen müsst:

  • Über Rechenzentrum>Storage bitte den Punkt Hinzufügen NFS auswählen. In dem sich dann öffnenden Fenster folgende Eingaben durchführen:
    • ID: Den Namen eingeben, den wir für den freigegebenen Ordner auf der NAS ausgewählt haben. Muss übereinstimmen, sonst bekommt ihr einen Berechtigungsfehler;
    • Server: Die IP-Adresse eurer Synology NAS eintragen;
    • Wenn ihr alles richtig gemacht habt, könnt ihr unter Export das entsprechende Volume auswählen;
    • Inhalt: Hier das Backup Format auswählen – Empfehlung: VZDump backup file;
    • Max Backups: Die maximale Anzahl gespeicherte Sicherungen eintragen. (Ich habe mal 7 eingetragen. Kann jederzeit geändert werden;
    • Bei Erweitert einen Haken setzen, um dann die NFSv4 auszuwählen. Damit stimmt es mit den Definitionen auf der NAS überein;
    • Zum Abschluss Hinzufügen klicken.
  • Im nächsten Screenshot findet ihr das neu hinzugefügte Volume;
  • Über Rechenzentrum>Backup bitte einen neuen Backup-Job erstellen. In dem sich dann öffnenden Fenster folgende Eingaben durchführen:
    • Storage: neues NAS Laufwerk eintragen;
    • Wochentag: Tage eintragen an denen der Backup-Job laufen soll. In meinem Fall täglich;
    • Startzeit: Uhrzeit eintragen, an dem der Backup-Job starten soll;
    • Auswahlmodus: Auswählen, welche VMsund Container gesichert werden sollen. Meine Empfehlung wäre hier Alle, weil damit automatisch auch neu erstellte VMs oder Container gesichert werden;
    • Die restlichen Felder auf dem Standard Werten belassen und Job anlegen.
  • Im letzten Screenshot seht ihr meine beiden Backup-Jobs. Einen aktivierten auf dem NAS Laufwerk und den älteren deaktivierten auf dem lokalen Laufwerk auf dem Proxmox Server (Intel NUC).
  • Mir Abschuss dieser Eingaben ist alles fertig und eure auf dem Proxmox definierten VMs und Container werden nun täglich auf dem NAS gesichert. In meiner Installation wären das RaspberryMatic, ioBroker, Conbee und NodeRed.

Vorteile dieser Backup Methode

Wenn ihr eure VMs und Container innerhalb eurer Proxmox Installation auf diese Art und Weise sichert, so hat dies aus meiner Sicht einige Vorteile anderer Backup-Verfahren gegenüber:

  • Sicherung ohne zusätzliche Software wie beispielsweise ioBroker;
  • Sicherungen können direkt im Proxmox Server verwaltet und durchgeführt werden;
  • Sicherung erfolgt auf einer NAS, was höhere Datensicherheit gewährleistet;
  • Ein NAS hat deutlich mehr Speicherplatz wie ein lokales Laufwerk innerhalb des Servers;
  • Auch das Zurückspielen der Sicherungen funktioniert direkt über den Proxmox Server;
  • Mit diesem Backup und dem Restore werden nicht nur die Daten (beispielsweise RaspberryMatic) gesichert, sondern auch die gesamte Konfiguration der VM (virtuellen Maschine);
9 Kommentare
  1. Martin
    Martin sagte:

    Hab hier nur die kleine Erweiterung zum Thema, bei mir liefen da die Backups der Container nicht an.

    Zitat: (von https://blogoverflow.de/)
    Anpassungen:

    Im dem Zusammenhang, dass neu erstellte LXC Container standardmäßig im unprivileged Modus laufen, kommt es vor, dass eine Fehlermeldung auftritt. Die Fehlermeldung verhindert, dass das soeben eingerichtete Backup auf die eingebundene NFS Freigabe zugreifen kann. Stattdessen wird der Vorgang aufgrund einer fehlenden Berechtigung abgebrochen.

    1. Um diesen Fehler zu korrigieren, muss die Datei im Ordner /etc/vzdump.conf angepasst werden. Dazu rufen wir die Shell unseres Proxmox Servers auf und öffnen die entsprechende Datei mit unserem Editor, z.B. nano.

    2. Dort kommentieren wir die vorhandene Zeile wie folgt aus und ergänzen den Inhalt:

    # vzdump default settings
    tmpdir: /tmp
    #tmpdir: DIR

    3. Die restlichen Einstellungen belassen wir unverändert und schließen anschließend den Editor.

    Antworten
  2. Ben
    Ben sagte:

    Reicht es bei VMs die Sicherung als Snapshot zu machen oder wird zum komplett wieder herstellen ein Stop Backup benötigt?
    Z.b. im Falle eines SSD Defekts im Intel NUC?

    Antworten
  3. Beat H.
    Beat H. sagte:

    hallo Alex,
    backup läuft – aber wie ist das mit dem Restore? insbes. auf einem zweiten Reserve-Proxmox-Rechner mit anderen Laufwerk- und Ram-Grössen – wird da die Einstellung des Backups übernommen, und falls ja, lässt sich das nachträglich ändern bzw. anpassen? Was muss man in dem Fall beachten? Wie muss der Zweit-Rechner vorbereitet werden?

    Antworten
  4. Norbert Becker
    Norbert Becker sagte:

    Hallo und einen guten Tag,
    Ich benutze auch Proxmox und sichere meine LXC-Container auf ein Synology-NAS mit NFS-Freigabe. Meine Frage ist, ich habe in einen LXC-Container ein Laufwerk in ein Verzeichnis gemountet. Das möchte ich aber nicht mitsichern , sondern nur den Container. Per Umount kann ich zwar das Laufwerk entfernen, aber es wird trotzdem mitgerichteter. Kann ich irgendwo im Backup-Job eine Ausnahme zufügen, die mir das Verzeichnis immer ausschließt?
    Vielen Dank.
    Gruß
    Norbert Becker

    Antworten
  5. Alex
    Alex sagte:

    Hallo und ein Dankeschön für diesen Artikel.
    Ich habe auf diese Weise schon vor einer Weile begonnen, die VMs zu sichern. Allerdings klappt es mit den Containern nicht. Diese müssen anscheinend zuvor gestoppt werden, damit das Backup auf diese Weise durchläuft.

    Gibt es hierfür eine Lösung? Odre ist das bei mir eher die Ausnahme?

    Antworten
    • Werner
      Werner sagte:

      Hallo Alex,

      die Antwort auf dein Problem ist ziemlich komplex. Es liegt in erster Linie mal daran, das man in einem unprivilegiertem LXC Container NFS nicht aktivieren kann. Das geht über Optionen>Features lediglich in einem priviligiertem LXC Container. Einen nicht privilegierten LXC Container kannst du folglich nur auf einem Lokalen Laufwerk sichern.

      Dann hängt sehr stark mit der IT-Sicherheit zusammen und zu diesem Thema habe ich dir hier mal zwei interessante Links angehängt. Ich selbst arbeite lieber mit VMs, auch wenn es sicherlich Vorteile für LXC Container. Die Verwendung der Resourcen auf meinem Intel NUC liegt auch mit VMs in einem so niedrigen Prozentsatz, das ich lieber bei virtuellen Maschinen bleibe. Aber das ist meine persönliche Einstellung.

      https://qastack.com.de/unix/181341/what-are-benefits-and-downsides-of-unprivileged-containers
      https://qastack.com.de/unix/177030/what-is-an-unprivileged-lxc-container

      Ich hoffe das hilft dir ein wenig weiter.

      Gruss
      Werner

      Antworten
      • Joe
        Joe sagte:

        Hallo Werner,
        Container sichern ist eigentlich auch ganz einfach.
        Öffne zunächst über die Shell des Proxmox-Hosts die Konsole und gebe den folgenden Befehl ein:

        nano /etc/vzdump.conf

        In der Datei fügen wir unter der Zeile „#tmpdir: DIR“ eine neue Zeile mit „tmpdir: /tmp“ ein.
        Mit der Änderung legen wir das temporäre Verzeichnis auf den Ordner /tmp um.

        Jetzt kann man auch unprivilegierte Container im Snapshot sichern.

        VG

        Antworten

Hinterlasse einen Kommentar

An der Diskussion beteiligen?
Hinterlasse uns deinen Kommentar!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert