[SOLVED] Klonen und Imagevergrößerung in Echtzeit

BrotherJ

Active Member
Sep 14, 2019
31
2
28
32
Hallo zusammen,

ist es möglich, in Promox ein produktives VM-Image zu klonen bzw. zu vergrößern, während das VM-System online also im Betrieb ist?
Hintergrund ist, dass das ein Mailserver ist, den ich erweitern will, weil das Image zu klein wird. Aber der Mailserver.Betrieb sollte nicht zulange aussetzen.
Also das im laufenden Betrieb zu machen fände ich klasse.

Grüße

BrotherJ
 
Ja natürlich, das geht Online. Ob du dein Filesystem auch online vergrößern kannst, kommt auf deine Konfiguration an, und wo die Daten liegen. Poste doch mal deine VMconfig (qm config <vmid>) um was für einen Mailserver handelt es sich? Was für ein OS, wie ist er partitioniert? Jede Partition eine eigene virtuelle HDD?...
 
Ja natürlich, das geht Online. Ob du dein Filesystem auch online vergrößern kannst, kommt auf deine Konfiguration an, und wo die Daten liegen. Poste doch mal deine VMconfig (qm config <vmid>) um was für einen Mailserver handelt es sich? Was für ein OS, wie ist er partitioniert? Jede Partition eine eigene virtuelle HDD?...

Guten Morgen,

anbei die VM-Konfiguration:
# qm config 100
bootdisk: sata0
cores: 6
ide2: local:iso/debian-9.5.0-amd64-netinst.iso,media=cdrom
memory: 6144
name: PostfixDovecot-Server
net0: virtio=8A:19:6C:EF:1A:22,bridge=vmbr1
numa: 0
onboot: 1
ostype: l26
sata0: zp_100:vm-100-disk-1,cache=writethrough,size=1000G
scsihw: virtio-scsi-pci
smbios1: uuid=228436ae-19cd-4ba1-8009-977288bc0dfc
sockets: 2
Das OS der VM ist wie Du siehst Debian-Linux. Ich habe nur eine Partition innerhalb der VM erstellen lassen, weil ich nicht wusste, wie groß /var werden wird. Als Mailserver ist Postfix zusammen mit Dovecot-IMAP im Einsatz.
Auf der VM sieht es so aus:

Code:
# mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,nosuid,relatime,size=3045732k,nr_inodes=761433,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=611376k,mode=755)
/dev/sda1 on / type ext4 (rw,relatime,errors=remount-ro,data=ordered)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/lib/systemd/systemd-cgroups-agent,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpu,cpuacct)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_cls,net_prio)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=30,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=3135)
mqueue on /dev/mqueue type mqueue (rw,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
tmpfs on /run/user/1000 type tmpfs (rw,nosuid,nodev,relatime,size=611372k,mode=700,uid=1000,gid=1000)

Wenn Du jetzt von virtualisierter HD als Partition sprichst, komme ich auf die Idee, "/var" generell der VM mit der ID 100 als genügend große virtuelle Partition zur Verfügung zu stellen, wenn ich weiß wie das realisiert werden kann.
Nichtsdestotrotz bin an meiner ursprünglichen Frage interessiert.

Vielen Dank

BrotherJ
 
Hallo,

ich denke, man sollte von vorne Anfangen.

Aber mittlerweile ist dass ganze sehr komplex geworden und ich musste feststellen, dass ohne ein Testsystem sich man auf einem sehr dünnem Eis bewegt.


Ich stelle einfach mal ein paar Fragen.

1, wieviele Leute nutzen diesen Mailsever
2, ruft dieser bei deinem Webhoster alle Mails ab oder ist das der einzige
3, ZFS oder ext4 ?
4 zvol qcow2 oder raw? man kann hier das qcow2 erneut einlesen, so werden alle freie Blöcke wieder freigegeben
5, Arbeitest du mit deinem Postfix mit Disk Quota
6. werden alle Anhänge auf einem anderen Server gelagert

Ist dein Mailserver für ein Unternehmen, oder geht es eher in den privaten Bereich?

Ich bin erstaunt darüber, welche Funktionalitäten machbar sind. Es ist so gut wie alles möglich.

Lange Rede, ich kann Dir hier keinen Tipp geben, da ich auch deine Sicherung oder Hardware nicht kenne.
Angefangen über ZFS oder NFS und zusätzlich auf den Servern teilweise mit Veracrypt verschlüsselt.

Dass alles unter einen Hut zu bringen, ist nicht so einfach,

Sorry, aber da kann ich nicht helfen.

lieben gruß
 
1, wieviele Leute nutzen diesen Mailsever
13 Domains greifen mit 99 Accounts zu.

2, ruft dieser bei deinem Webhoster alle Mails ab oder ist das der einzige
Nein, das ist kein Relay-Mailgateway, sondern der zuständige Mail-Server für jede der 13 Domains.

3, ZFS oder ext4 ?
ZFS auf dem Image-Pool und ext4 die einzelnen VM's intren.

4 zvol qcow2 oder raw? man kann hier das qcow2 erneut einlesen, so werden alle freie Blöcke wieder freigegeben
Ich nehme mal an qcow2. Wo kann ich das einsehen?

5, Arbeitest du mit deinem Postfix mit Disk Quota
Ich nicht, aber Einige der 99 Accounts.

6. werden alle Anhänge auf einem anderen Server gelagert
Nein

Ist dein Mailserver für ein Unternehmen, oder geht es eher in den privaten Bereich?
Das scheint so ein Mischmasch zu sein. Jedenfalls der Server selber ist ein Hobby vom Betreiber. Ich bin nur zur Hilfe gezogen wurden.
dass ohne ein Testsystem sich man auf einem sehr dünnem Eis bewegt.
Manchmal wirst Du halt mit der Realität konfrontiert, da kannst Du kein Testsystem aufsetzen.
 
Last edited:
Jedenfalls habe ich heute Vormittag diese VM
Code:
# qm config 100
bootdisk: sata0
cores: 6
ide2: local:iso/debian-9.5.0-amd64-netinst.iso,media=cdrom
memory: 6144
name: PostfixDovecot-Server
net0: virtio=8A:19:6C:EF:1A:22,bridge=vmbr1
numa: 0
onboot: 1
ostype: l26
sata0: zp_100:vm-100-disk-1,cache=writethrough,size=1000G
scsihw: virtio-scsi-pci
smbios1: uuid=228436ae-19cd-4ba1-8009-977288bc0dfc
sockets: 2
versucht zu klonen. Gerade eben sehe ich in der GUI den Eintrag
stopped: clone failed: mirroring error: VM 100 not running

Die Postfix-VM hatte sich aufgehängt was sie so noch nie gemacht hatte.
Das hier war noch dabei:
Code:
drive-sata0: transferred: 1000904589312 bytes remaining: 73368338432 bytes total: 1074272927744 bytes progression: 93.17 % busy: 1 ready: 0
drive-sata0: transferred: 1000971698176 bytes remaining: 73301229568 bytes total: 1074272927744 bytes progression: 93.18 % busy: 1 ready: 0
drive-sata0: transferred: 1000979038208 bytes remaining: 73293889536 bytes total: 1074272927744 bytes progression: 93.18 % busy: 1 ready: 0
drive-sata0: transferred: 1001008398336 bytes remaining: 73264529408 bytes total: 1074272927744 bytes progression: 93.18 % busy: 1 ready: 0
drive-sata0: transferred: 1001060827136 bytes remaining: 73212166144 bytes total: 1074272993280 bytes progression: 93.18 % busy: 1 ready: 0
drive-sata0: transferred: 1001104867328 bytes remaining: 73168125952 bytes total: 1074272993280 bytes progression: 93.19 % busy: 1 ready: 0
drive-sata0: transferred: 1001188753408 bytes remaining: 73084239872 bytes total: 1074272993280 bytes progression: 93.20 % busy: 1 ready: 0
drive-sata0: transferred: 1001192947712 bytes remaining: 73080045568 bytes total: 1074272993280 bytes progression: 93.20 % busy: 1 ready: 0
drive-sata0: transferred: 1001272639488 bytes remaining: 73000484864 bytes total: 1074273124352 bytes progression: 93.20 % busy: 1 ready: 0
drive-sata0: transferred: 1001353379840 bytes remaining: 72919875584 bytes total: 1074273255424 bytes progression: 93.21 % busy: 1 ready: 0
drive-sata0: transferred: 1001422585856 bytes remaining: 72850669568 bytes total: 1074273255424 bytes progression: 93.22 % busy: 1 ready: 0
drive-sata0: transferred: 1001443557376 bytes remaining: 72829698048 bytes total: 1074273255424 bytes progression: 93.22 % busy: 1 ready: 0
drive-sata0: transferred: 1001458237440 bytes remaining: 72815017984 bytes total: 1074273255424 bytes progression: 93.22 % busy: 1 ready: 0
drive-sata0: transferred: 1001495986176 bytes remaining: 72777269248 bytes total: 1074273255424 bytes progression: 93.23 % busy: 1 ready: 0
drive-sata0: transferred: 1001579872256 bytes remaining: 72693514240 bytes total: 1074273386496 bytes progression: 93.23 % busy: 1 ready: 0
drive-sata0: transferred: 1001641738240 bytes remaining: 72631975936 bytes total: 1074273714176 bytes progression: 93.24 % busy: 1 ready: 0
drive-sata0: transferred: 1001700458496 bytes remaining: 72573386752 bytes total: 1074273845248 bytes progression: 93.24 % busy: 1 ready: 0

drive-sata0: transferred: 1003873107968 bytes remaining: 70402048000 bytes total: 1074275155968 bytes progression: 93.45 % busy: 1 ready: 0
drive-sata0: transferred: 1003942313984 bytes remaining: 70332907520 bytes total: 1074275221504 bytes progression: 93.45 % busy: 1 ready: 0
drive-sata0: transferred: 1004011520000 bytes remaining: 70263832576 bytes total: 1074275352576 bytes progression: 93.46 % busy: 1 ready: 0
drive-sata0: transferred: 1004052414464 bytes remaining: 70222938112 bytes total: 1074275352576 bytes progression: 93.46 % busy: 1 ready: 0
drive-sata0: transferred: 1004072337408 bytes remaining: 70203015168 bytes total: 1074275352576 bytes progression: 93.47 % busy: 1 ready: 0
drive-sata0: transferred: 1004080726016 bytes remaining: 70194626560 bytes total: 1074275352576 bytes progression: 93.47 % busy: 1 ready: 0
drive-sata0: transferred: 1004098551808 bytes remaining: 70176866304 bytes total: 1074275418112 bytes progression: 93.47 % busy: 1 ready: 0
drive-sata0: transferred: 1004136300544 bytes remaining: 70139117568 bytes total: 1074275418112 bytes progression: 93.47 % busy: 1 ready: 0
drive-sata0: transferred: 1004196069376 bytes remaining: 70079414272 bytes total: 1074275483648 bytes progression: 93.48 % busy: 1 ready: 0
drive-sata0: transferred: 1004232769536 bytes remaining: 70042714112 bytes total: 1074275483648 bytes progression: 93.48 % busy: 1 ready: 0
drive-sata0: transferred: 1004264226816 bytes remaining: 70011256832 bytes total: 1074275483648 bytes progression: 93.48 % busy: 1 ready: 0
drive-sata0: transferred: 1004357550080 bytes remaining: 69917933568 bytes total: 1074275483648 bytes progression: 93.49 % busy: 1 ready: 0
drive-sata0: transferred: 1004405784576 bytes remaining: 69869699072 bytes total: 1074275483648 bytes progression: 93.50 % busy: 1 ready: 0
drive-sata0: transferred: 1004458213376 bytes remaining: 69817335808 bytes total: 1074275549184 bytes progression: 93.50 % busy: 1 ready: 0
drive-sata0: transferred: 1004473942016 bytes remaining: 69801607168 bytes total: 1074275549184 bytes progression: 93.50 % busy: 1 ready: 0
drive-sata0: transferred: 1004510642176 bytes remaining: 69764907008 bytes total: 1074275549184 bytes progression: 93.51 % busy: 1 ready: 0
drive-sata0: transferred: 1004524273664 bytes remaining: 69751275520 bytes total: 1074275549184 bytes progression: 93.51 % busy: 1 ready: 0
drive-sata0: transferred: 1004555730944 bytes remaining: 69719818240 bytes total: 1074275549184 bytes progression: 93.51 % busy: 1 ready: 0
drive-sata0: transferred: 1004576702464 bytes remaining: 69698912256 bytes total: 1074275614720 bytes progression: 93.51 % busy: 1 ready: 0
drive-sata0: transferred: 1004594528256 bytes remaining: 69681086464 bytes total: 1074275614720 bytes progression: 93.51 % busy: 1 ready: 0
drive-sata0: transferred: 1004603965440 bytes remaining: 69671649280 bytes total: 1074275614720 bytes progression: 93.51 % busy: 1 ready: 0
drive-sata0: transferred: 1004616548352 bytes remaining: 69659066368 bytes total: 1074275614720 bytes progression: 93.52 % busy: 1 ready: 0
drive-sata0: transferred: 1004633325568 bytes remaining: 69642289152 bytes total: 1074275614720 bytes progression: 93.52 % busy: 1 ready: 0
drive-sata0: transferred: 1004672122880 bytes remaining: 69603491840 bytes total: 1074275614720 bytes progression: 93.52 % busy: 1 ready: 0
drive-sata0: transferred: 1004687851520 bytes remaining: 69587959808 bytes total: 1074275811328 bytes progression: 93.52 % busy: 1 ready: 0
drive-sata0: transferred: 1004717211648 bytes remaining: 69558599680 bytes total: 1074275811328 bytes progression: 93.53 % busy: 1 ready: 0
drive-sata0: transferred: 1004768591872 bytes remaining: 69507219456 bytes total: 1074275811328 bytes progression: 93.53 % busy: 1 ready: 0
drive-sata0: transferred: 1004843040768 bytes remaining: 69432836096 bytes total: 1074275876864 bytes progression: 93.54 % busy: 1 ready: 0
drive-sata0: transferred: 1004904906752 bytes remaining: 69371297792 bytes total: 1074276204544 bytes progression: 93.54 % busy: 1 ready: 0
drive-sata0: transferred: 1004915392512 bytes remaining: 69360812032 bytes total: 1074276204544 bytes progression: 93.54 % busy: 1 ready: 0

drive-sata0: transferred: 1008328507392 bytes remaining: 65951170560 bytes total: 1074279677952 bytes progression: 93.86 % busy: 1 ready: 0
 
Hallo,

also die Aussage

"Manchmal wirst Du halt mit der Realität konfrontiert, da kannst Du kein Testsystem aufsetzen.

stimmt nicht so ganz.

Du kannst mit der UFW auf deinem Server mit nur einer NIC ein Testsytem aufsetzten "auf ganz anderes SIBNETZ"
Dann richtest du dir einen Zentyal Server mit DNS und DHCP ein und gut ist es.

Sei bitte nicht entäuscht,

"
ich nehme mal an qcow2. Wo kann ich das einsehen?
"
IM Webgui unter Hardware!

"Das scheint so ein Mischmasch zu sein. Jedenfalls der Server selber ist ein Hobby vom Betreiber. Ich bin nur zur Hilfe gezogen wurden. "

kenne ich :)
wenn du den Mischmasch nicht durchblickst, würde ich die Finger davon Lassen!

Mann/Frau möchte ja helfen, aber selbst wenn das eine Problem gehoben ist, kommen neue dazu.

Hobby vom Betreiber, :):):):):)NETT! dann sollte es sein Hobby bleiben
Aber so macht er sein Hobby zu deinem.

Sorry, ich wollte jetzt Dir nicht auf die Füsse treten,

ich bin schon etlichen Jahren in der EDV, ob es TYPO3, Bacula, Nexcloud, Windows oder Debian und Ubuntu geht und dann noch SEAFILE mit Veracrypt und so weiter,

lass Dir nur einen RAT geben, setzte dich hin, Bau Dir eine Testsystem auf.

Aber die Aussage "aber Einige der 99 Accounts "

Liebes Proxmoxforum, was haltet Ihr davon?


liebe Grüße
 
Sieht jetzt nach default aus. Kein CentOS, gut, ext4 lässt sich online erweitern. Laut deiner VMconfig hast du den Zpool (Dataset verwendet) ansonsten ist die Erweiterung qcow2 dabei. Das wäre in Verbindung mit ZFS sehr sehr böse. Cow auf Cow, geht nicht gut.

Wie würde ich das machen. Ganz einfach. Backup erstellen (falls keines da ist) virtuelle HDD vergrößert in Proxmox. Dann rein in die VM. "apt install gparted xauth". Danach in die VM einloggen mit "ssh root@bla -XY" gparted starten. HDD mit der Maus größern ziehen "anwenden" fertig. Hab ich hier schon 100mal gemacht. Ging immer ganz normal und dauerte gerade mal 1 Minute. Wichtig an der Stelle. Schlag dich nicht mit der CMD beim Partition oder Filesystem vergrößern herum, das macht nur Kopfweh. Damit das geht: "immer eine Partition auf einer virtuellen HDD".
 
Danke für die Informationen. Liest sich nur sehr kryptisch.
Sieht jetzt nach default aus. Kein CentOS, gut, ext4 lässt sich online erweitern. Laut deiner VMconfig hast du den Zpool (Dataset verwendet) ansonsten ist die Erweiterung qcow2 dabei. Das wäre in Verbindung mit ZFS sehr sehr böse. Cow auf Cow, geht nicht gut.
Was wäre denn in Verbindung mit ZFS sehr böse? In Deinem vorgehenden Satz hast Du mindestens 2 Möglichkeiten - worauf beziehst Du Dich explizit mit Deiner Aussage?
Wie würde ich das machen. Ganz einfach. Backup erstellen (falls keines da ist) virtuelle HDD vergrößert in Proxmox.
Backup von was? Vom Image selbst - das wäre Klonen - oder das ohnehin existierende Voll- und inkrement. System-Backup?
Von welcher virtueller HDD sprichst Du hier? An dieser Stelle gibt es keine zusätzliche HDD.

Dann rein in die VM. "apt install gparted xauth". Danach in die VM einloggen mit "ssh root@bla -XY" gparted starten.
Jetzt wird es für mich total konfus: Rein und zusätzlich SSH-Login, was nun? Und vor allem, willst Du jetzt von der laufenden VM, auf der VM selbst gparted ausführen oder vom KVM-Host aus?
HDD mit der Maus größern ziehen "anwenden" fertig. Hab ich hier schon 100mal gemacht. Ging immer ganz normal und dauerte gerade mal 1 Minute. Wichtig an der Stelle. Schlag dich nicht mit der CMD beim Partition oder Filesystem vergrößern herum, das macht nur Kopfweh. Damit das geht: "immer eine Partition auf einer virtuellen HDD".
Klingt verdammt nach Microsoft. Also erstmal vielen Dank für die Infos, aber nachspielen wollte ich das nach diesem Howto lieber nicht. Das ist mir zu mehrdeutig.
 
Backup ist nicht klonen. Am besten ein Testsystem aufsetzen und erstmal bisschen üben. Oder meine persönliche Empfehlung, so lange Du kein Geld dafür bekommst (viel Geld) und Du keine Versicherung hast LASS DIE FINGER DAVON!
 
Sorry, das ist wirklich der falsche Tipp. Ich möchte das schaffen, mich interessiert das. Ich werde jetzt garantiert nicht hinschmeissen.
 
Verstehe mich nicht falsch, ich will Dich da nicht an kacken. Aber wenn das in die Hose geht dann wird Dein Freund wohl kaum weiter Dein Freund bleiben. Das ist ein Mega Freundschaftsdienst den Du da vor hast. Und das anscheinend ohne große Linuxkenntnisse. Denn wie man ein Filesystem unter Linux vergrößert ist eigentlich beinahe Basiswissen.


VM runter fahren und im WebGui unter Hardware bei der VM Disk resize machen.
Danach die VM wieder starten und die Partition sofern nur eine vergrößern und dann das Filesystem anpassen.

Je nach dem was Du da genau hast ist es leicht oder schwieriger. Also LVM oder mehrere Partitionen wo alle angepasst werden sollen und mehrere Partitionen wo zum Glück nur die letzte von vergrößert werden sollen.
Im schlimmsten Fall musst du die VM mit einem Boot Image starten und das ganze von ausserhalb vergrößern.

Du siehst ohne Basis und sogar erweitertes Wissen wirst Du das offene Herzen sowas von kaputt bekommen. Daher übe im Testsystem. Mache ein Backup der Maschine und spiele es in einem Testsystem mit Proxmox ein. Baue Dir eines auf.
Ich habe 1,5 Jahre gebraucht um meine gesamte Netzwerkinfrastruktur auf Proxmox zu migrieren. Davon lief 1 Jahr eine Testumgebung mit einer 1:1 Kopie des Livesystems.


Grüße
 
Belassen wir es bitte dabei. ich bin schon längst von dieser Image-Vergrößerung via Proxmox-Klon (als Sicherheit) plus einem anschliessenden Resize des Originalimages abgekommen. Einfach, weil dieses Klonen bereits scheiterte. Es war nicht meine Entscheidung Proxmox zu verwenden, sondern die des Vorgängers. Ich bevorzuge reinstes KVM mit Qemu.
Ich brauche lediglich mehr Platz für die Mailpostfächer unter Dovecot. Das mache ich jetzt besser mit einer virtuellen Festplatte, die an die VM durchreiche und dort die Mails drauflege.
Das scheint mir der bessere Weg zu sein, als diese Horrorszenarien mit Versicherungen etc. Vielleicht besteht momentan keine Zeit zum Üben? Sondern das Ding muss flutschen.

Besten Dank

BrotherJ
 

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!