Linked Clone in Full Clone umwandeln – möglichst ohne Downtime

May 8, 2025
18
3
3
Hallo zusammen,

wir betreiben einen Proxmox-Cluster (3 Nodes) mit Ceph-Storage.
Mehrere der VMs wurden ursprünglich aus Templates als Linked Clones erstellt.
Diese VMs laufen inzwischen produktiv (hauptsächlich Plesk-Server).

Ich möchte diese VMs jetzt in Full Clones umwandeln, damit sie unabhängig vom Ursprungs-Template sind.
Da die VMs im Dauerbetrieb laufen, möchte ich das wenn möglich ohne oder mit sehr kurzer Downtime machen.

Wenn ich zum Beispiel aus der jeweiligen VM einen Klon erstelle, kann das schon mal mehrere Stunden dauern, in der die VM nicht erreichbar ist, da sie heruntergefahren wurde, damit die Daten auch konsistent sind.

Mich interessiert, wie man das am besten umsetzen würde.

Vielen Dank!
 
Naja, man kann Clones auch von Snapshots erstellen, aber damit kriegt man (logischerweise) nur den Zustand zum Zeitpunkt des Snapshots.

Was vermutlich (bitte vorher testen) gehen würde, wäre folgendes:

- Auf der VM Daten/Anwendung und Betriebssystem trennen und dafür jeweils eigene virtuelle Disks anlegen, z.B eine für /home unter Linux und eine für /opt (falls man die Anwendung da liegen hat) und /data (falls da die Daten liegen)
- Snapshot erzeugen, davon dann den clone machen, nach den clone die Anwendungs- und Datenplatten von der neuen VM entfernen (da wir da ja den neueren Stand haben möchten!)
- Nach Abschluß des Clones, alte VM runterfahren, die Daten- und Anwendungsplatten von der alten VM in die neue migrieren
- Neue VM in Wartungsmodus (bei Linux single-user-mode) starten, Platten passend einrichten, rebooten

Falls man noch kein passendes Setup dafür hat, müsste man erst neue Platten erzeugen und die entsprechenden zu übertragenden Verzeichnisse verschieben, das dürfte leider eine längere Downtime nach sich ziehen.

Wie groß sind denn eure VMs und was läuft darauf, dass ein clone mehrere Stunden dauert?
 
Hallo zusammen,

wir betreiben einen Proxmox-Cluster (3 Nodes) mit Ceph-Storage.
Mehrere der VMs wurden ursprünglich aus Templates als Linked Clones erstellt.
Diese VMs laufen inzwischen produktiv (hauptsächlich Plesk-Server).

Ich möchte diese VMs jetzt in Full Clones umwandeln, damit sie unabhängig vom Ursprungs-Template sind.
Da die VMs im Dauerbetrieb laufen, möchte ich das wenn möglich ohne oder mit sehr kurzer Downtime machen.

Wenn ich zum Beispiel aus der jeweiligen VM einen Klon erstelle, kann das schon mal mehrere Stunden dauern, in der die VM nicht erreichbar ist, da sie heruntergefahren wurde, damit die Daten auch konsistent sind.

Mich interessiert, wie man das am besten umsetzen würde.

Vielen Dank!
Wenn du die PBS Backups nutzt, da dauert das inkrementelle Backup nicht lang und du kannst direkt die VM per Live Restore wieder anstarten.
Was genau stört dich daran, dass die VMs derzeit von einem Golden Master Image arbeiten?
 
@Johannes S
Aktuell werden die betroffenen VMs für Plesk genutzt und sind zwischen 500GB und 1TB groß.

@Falk R.
An der Template-Nutzung stört mich, dass sehr VMs auf das gleiche "Master-Template" zugreifen. Wird das Template versehentlich verändert oder gelöscht, könnten alle verlinkten VMs unbrauchbar werden. Außerdem befürchte ich, dass durch den ständigen Zugriff auf Teile des Templates die Zugriffsrate über das Netzwerk sehr groß werden könnte.
 
  • Like
Reactions: Johannes S
An der Template-Nutzung stört mich, dass sehr VMs auf das gleiche "Master-Template" zugreifen. Wird das Template versehentlich verändert oder gelöscht, könnten alle verlinkten VMs unbrauchbar werden. Außerdem befürchte ich, dass durch den ständigen Zugriff auf Teile des Templates die Zugriffsrate über das Netzwerk sehr groß werden könnte.
Verändern kannst du das Template nicht mehr, da hat Proxmox schon extra eine Sicherung eingebaut. Löschen kannst du das Template über die GUI auch nicht, solange ein Clone existiert. Mit der Brechstange über die CLI geht alles, aber macht ja normal niemand.
Die Lesezugriffe sind genau so viel, wie sonst auch dediziert von den VMs auf ihre eigene Disks stattfinden würde. Wenn das gleiche Storage benutzt wird, gibt es keinen Unterschied, naja nicht ganz, wenn du ein Speicher mit Cachefunktion hast, hättest du vermutlich mehr Cache Hits und weniger Disk I/O.
 
Ich möchte diese VMs jetzt in Full Clones umwandeln, damit sie unabhängig vom Ursprungs-Template sind.
Da die VMs im Dauerbetrieb laufen, möchte ich das wenn möglich ohne oder mit sehr kurzer Downtime machen.
Wenn ich nichts falsch verstanden habe: Da die linked clones nur über die Disk Images mit dem Template verknüpft sind, könntest du die Disks der VMs (temporär) auf ein anderes Storage schieben (Disk Action -> Move Disk). Dadurch wird der gesamte Inhalt der Disk in das neue Image auf dem anderen Storage kopiert. Das passiert alles während die VM läuft. Die frage ist nur, ob du ein anderes Storage hast das groß genug ist.
 
Danke für die zahlreichen Antworten.

@aaron
Das ist eine interessante Idee. Muss es denn ein anderes Storage sein? Ich habe ja auch die Möglichkeit das gleiche Ceph-Storage auszuwählen. Würde das nicht genauso funktionieren?
 
Ich glaube nicht, dass wir ein Move Disk auf das gleiche Storage aktuell zulassen.
 
Bei einem Move auf das gleiche Storage, passiert nix.
Notfalls einen zweiten temporären Pool im ceph anlegen, worauf du moven kannst.