[GELÖST] ZFS-Transfer von ZVOL bricht bei SSH ab

Alle weiteren Dienste, die nicht in die drei oberen Foren gehören.
Antworten
Mpenzi
Beiträge: 65
Registriert: 26.07.2023 09:49:02

[GELÖST] ZFS-Transfer von ZVOL bricht bei SSH ab

Beitrag von Mpenzi » 08.10.2023 10:27:31

Hallo Leute,

ich benötige Eure Perspektiven und Erfahrungen. Ich bin gerade soweit, dass ich auf einem neuen Proxmox-Server 8.0.4 die VM's des alten Proxmox-Server 7.4-15 zu kopieren.
Auf beiden Servern habe ich eine Partition mit ZFS angelegt und beide enthalten das ZSF-Pool "zp_100".
Alter Server:

Code: Alles auswählen

zfs list
NAME                   USED  AVAIL     REFER  MOUNTPOINT
zp_100                1.69T  3.16T       96K  /zp_100
zp_100/vm-101-disk-1   175G  3.31T     19.9G  -
zp_100/vm-102-disk-1   175G  3.31T     20.4G  -
zp_100/vm-103-disk-1   286G  3.31T      131G  -
zp_100/vm-104-disk-0   161G  3.31T     6.70G  -
zp_100/vm-104-disk-1   238G  3.31T     83.4G  -
zp_100/vm-105-disk-0   169G  3.31T     14.6G  -
zp_100/vm-106-disk-0   294G  3.30T      139G  -
zp_100/vm-107-disk-0   228G  3.31T     72.8G  -
Ich möchte vor allem 102, 104, 105, 106 auf die neue Proxmox-Installation bekommen. Alles Andere ist schnell aus den vorhandenen Backups neuinstalliert.
Dazu stoppe ich die jeweilige VM mit

Code: Alles auswählen

qm shutdown 104
etc.
Dann starte ich den Stream, um via SSH das jeweilige ZVOL auf die andere Maschine zu kopieren:

Code: Alles auswählen

zfs zp_100/vm-106-disk-0 | ssh -p Port x.x.84.66 zfs receive -F zp_100/vm-106-disk-0
Das läuft dann etwa 10, 20 Minuten, dann bricht die Verbindung ab.
Auf dem neuen Proxmox-Server sieht es dann so aus

Code: Alles auswählen

zfs list
NAME                   USED  AVAIL     REFER  MOUNTPOINT
zp_100                 182G  7.68T       96K  /zp_100
zp_100/vm-101-disk-0   155G  7.83T       56K  -
zp_100/vm-102-disk-1  20.4G  7.68T     20.4G  -
zp_100/vm-104-disk-0  6.70G  7.68T     6.70G  -
Wie Ihr seht müssten 104 statt 6.7G 161G haben und bei 102 wurden es immerhin 20.4G anstatt 175G. Was kann ich machen, dass sich die ZVOLs komplett transferieren lassen?

Viele Grüße und Dank

MPenzi
Zuletzt geändert von Mpenzi am 09.10.2023 11:58:45, insgesamt 1-mal geändert.

chrbr
Beiträge: 551
Registriert: 29.10.2022 15:53:26

Re: ZFS-Transfer von ZVOL bricht bei SSH ab

Beitrag von chrbr » 08.10.2023 11:09:12

Muss man nicht erst einen Snapshot erzeugen? Den kann man dann mit zfs send verschicken. Siehe https://docs.freebsd.org/en/books/handb ... s-zfs-send

Benutzeravatar
debilian
Beiträge: 1200
Registriert: 21.05.2004 14:03:04
Wohnort: 192.168.43.7
Kontaktdaten:

Re: ZFS-Transfer von ZVOL bricht bei SSH ab

Beitrag von debilian » 08.10.2023 11:18:34

zfs braucht eine Menge an Arbeitsspeicher, wie sieht der denn bei dir aus?
-- nichts bewegt Sie wie ein GNU --

chrbr
Beiträge: 551
Registriert: 29.10.2022 15:53:26

Re: ZFS-Transfer von ZVOL bricht bei SSH ab

Beitrag von chrbr » 08.10.2023 13:20:03

debilian hat geschrieben: ↑ zum Beitrag ↑
08.10.2023 11:18:34
zfs braucht eine Menge an Arbeitsspeicher, wie sieht der denn bei dir aus?
Der aktuelle Rechner hat 8GB, andere aber 4GB oder weniger. Was wirklich viel RAM brauche ist De-Dupilication, das verwende ich aber nicht. Wenn man wenig RAM hat sollte man den Speicher für ARC beschränken.

Benutzeravatar
bluestar
Beiträge: 2346
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: ZFS-Transfer von ZVOL bricht bei SSH ab

Beitrag von bluestar » 08.10.2023 14:35:18

Vermulich hat dein Kopiervorgang die Snapshots einfach weggelassen. Bei zfs send sollte der Parameter -R das Problem umgehen

Mpenzi
Beiträge: 65
Registriert: 26.07.2023 09:49:02

Re: ZFS-Transfer von ZVOL bricht bei SSH ab

Beitrag von Mpenzi » 08.10.2023 16:29:50

debilian hat geschrieben: ↑ zum Beitrag ↑
08.10.2023 11:18:34
zfs braucht eine Menge an Arbeitsspeicher, wie sieht der denn bei dir aus?
Vielen Dank für die Antworten.

Also der alter Proxmox-Server hat

Code: Alles auswählen

 free -mh
              gesamt       benutzt     frei      gemns.  Puffer/Cache verfügbar
Speicher:       62Gi        55Gi       2,8Gi        21Mi       4,4Gi       6,2Gi
Swap:           59Gi       8,4Gi        51Gi
Der Neue

Code: Alles auswählen

free -mh
               total        used        free      shared  buff/cache   available
Mem:           125Gi       5.0Gi       1.6Gi        70Mi       120Gi       120Gi
Swap:             0B          0B          0B

Mpenzi
Beiträge: 65
Registriert: 26.07.2023 09:49:02

Re: ZFS-Transfer von ZVOL bricht bei SSH ab

Beitrag von Mpenzi » 08.10.2023 16:35:40

chrbr hat geschrieben: ↑ zum Beitrag ↑
08.10.2023 11:09:12
Muss man nicht erst einen Snapshot erzeugen? Den kann man dann mit zfs send verschicken. Siehe https://docs.freebsd.org/en/books/handb ... s-zfs-send
Wäre ein Snapsoot nicht zu klein, um eine gesamte VM zu reproduzieren?
Und unter diesem Link wird ein ganze Pool gesichert und reproduziert. Der ist ist insgesamt viel größer als eine VM. Wäre das nicht das gleiche Problem?

Mpenzi
Beiträge: 65
Registriert: 26.07.2023 09:49:02

Re: ZFS-Transfer von ZVOL bricht bei SSH ab

Beitrag von Mpenzi » 08.10.2023 16:49:28

bluestar hat geschrieben: ↑ zum Beitrag ↑
08.10.2023 14:35:18
Vermulich hat dein Kopiervorgang die Snapshots einfach weggelassen. Bei zfs send sollte der Parameter -R das Problem umgehen
Leider klappt das nicht:

Code: Alles auswählen

# zfs send -R zp_100/vm-104-disk-0 | ssh -p Port x.x.84.66 zfs receive -F zp_100/vm-104-disk-0
Error: Unsupported flag with filesystem or bookmark.
cannot receive: failed to read from stream

chrbr
Beiträge: 551
Registriert: 29.10.2022 15:53:26

Re: ZFS-Transfer von ZVOL bricht bei SSH ab

Beitrag von chrbr » 08.10.2023 16:56:21

Genauso funktioniert es auch mit den datasets für die VM. Ich nehme dein Beispiel von oben mit Modifikationen.

Code: Alles auswählen

zfs snapshot zp_100/vm-101-disk-0@backup
erzeugt einen Snapshot, den man mit

Code: Alles auswählen

zfs zp_100/vm-106-disk-0@backup
verschicken kann. Bei dem zweiten Teil

Code: Alles auswählen

| ssh -p Port x.x.84.66 zfs receive -F zp_100/vm-106-disk-0
bin ich mir mit den Optionen von receive nicht sicher. In dem Link ist weiter unten eine Beschreibung, wie man Backups über ssh verschickt. Siehe https://docs.freebsd.org/en/books/handb ... s-send-ssh. Da wird allerdings ein Dataset inklusive untergeordneter Datasets rekursiv behandelt. Die -r und -R aus dem Link brauch man in deinem Fall nicht.

Mpenzi
Beiträge: 65
Registriert: 26.07.2023 09:49:02

Re: ZFS-Transfer von ZVOL bricht bei SSH ab

Beitrag von Mpenzi » 08.10.2023 17:08:50

Was bedeutet das "@backup" am Ende? Wofür steht das?

chrbr
Beiträge: 551
Registriert: 29.10.2022 15:53:26

Re: ZFS-Transfer von ZVOL bricht bei SSH ab

Beitrag von chrbr » 08.10.2023 17:52:32

Mpenzi hat geschrieben: ↑ zum Beitrag ↑
08.10.2023 17:08:50
Was bedeutet das "@backup" am Ende? Wofür steht das?
Oh, das hätte ich natürlich schreiben sollen. Der Kringel @ zeigt, dass es sich um einen Snapshot handelt. Etwas Ähnliches sind Bookmarks, da ist es dann das Doppelkreuz #. Der Rest "backup" ist nur ein Name, der den Snapshot kennzeichnet. In der Praxis nimmt man gerne das Datum. Das ergibt dann etwas wie

Code: Alles auswählen

chris@thinkpad ~> zfs list -t snapshot|head -n 8
NAME                                       USED  AVAIL     REFER  MOUNTPOINT
tank/data@2023-09-02                       226K      -     86.2M  -
tank/data@2023-09-24                        40K      -     87.6M  -
tank/data@2023-10-04                      1.46G      -     1.55G  -
tank/data/Archiv@2023-09-24                 33K      -      807M  -
tank/data/Archiv@2023-10-04                 17K      -      807M  -
tank/data/Dokumente@2023-09-24              47K      -     77.8M  -
tank/data/Dokumente@2023-10-04              39K      -     78.1M  -
...

Mpenzi
Beiträge: 65
Registriert: 26.07.2023 09:49:02

Re: ZFS-Transfer von ZVOL bricht bei SSH ab

Beitrag von Mpenzi » 08.10.2023 18:08:28

Dank für den Hinweis. Ich mache mich jetzt mal an die Umsetzung.

Es sieht schon einmal so aus, dass sich etwas tut :THX:

Mpenzi
Beiträge: 65
Registriert: 26.07.2023 09:49:02

Re: ZFS-Transfer von ZVOL bricht bei SSH ab

Beitrag von Mpenzi » 09.10.2023 10:56:26

Okay,

ich habe jetzt folgende Befehle abgesetzt

Code: Alles auswählen

snapshot zp_100/vm-104-disk-0@2023-10-08
zfs snapshot zp_100/vm-104-disk-1@2023-10-08

Code: Alles auswählen

zfs send -v zp_100/vm-104-disk-0@2023-10-08 | ssh -p Port x.x.84.66 zfs receive zp_100/vm-104-disk-0
zfs send -v zp_100/vm-104-disk-1@2023-10-08 | ssh -p Port x.x.84.66 zfs receive zp_100/vm-104-disk-1
Auf dem neuen Server sehe ich

Code: Alles auswählen

zfs list
NAME                   USED  AVAIL     REFER  MOUNTPOINT
zp_100                26.6G  7.83T       96K  /zp_100
zp_100/vm-104-disk-1  83.4G  7.83T     19.9G  -
gegenüber alt

Code: Alles auswählen

zfs list
NAME                   USED  AVAIL     REFER  MOUNTPOINT
zp_100                1.69T  3.16T       96K  /zp_100
zp_100/vm-104-disk-1   238G  3.31T     83.4G  -
Und mit

Code: Alles auswählen

qm start 104
startet die VM und im Prinzip ist alles Ok.
Ich verstehe allerdings nicht den Unterschied von 238GB (alt) zu 83.4GB (neu). Auch in der neuen VM sehe ich

Code: Alles auswählen

# df -h
Filesystem                      Size  Used Avail Use% Mounted on
udev                             1,5G     0   1,5G   0% /dev
tmpfs                            298M  960K   297M   1% /run
/dev/sda1                     133G  68G  59G  54% /
tmpfs                            1,5G   0   1,5G   0% /dev/shm
tmpfs                           5.0M     0  5.0M   0% /run/lock
/dev/sda6                    1,7G  76K  1,6G  1% /tmp
/dev/sda5                    9,1G  5.0G  3,7G   58% /var
tmpfs                            298M  60K   298M  1% /run/user/1000
tmpfs                            298M  60K   298M  1% /run/user/1001
Das verstehe ich nicht. Denn warum zeigt mir das Root-System weniger Speicherplatz im ZVOL als die VM tatsächlich kann? Sind da Daten verloren gegangen? Und wenn ja, wie kann ich die rüber retten? Denn den alten Server will ich anders nutzen und neuinstallieren.

Grüße
MPenzi

Mpenzi
Beiträge: 65
Registriert: 26.07.2023 09:49:02

Re: ZFS-Transfer von ZVOL bricht bei SSH ab

Beitrag von Mpenzi » 09.10.2023 11:26:09

Okay, ich glaube, ich sehe die Antwort bei REFER: 19.9G bzw. REFER: 83.4G. Aber sind die VM's dann immer bis zu den konfigurierten 150GB nutzbar?

Benutzeravatar
bluestar
Beiträge: 2346
Registriert: 26.10.2004 11:16:34
Wohnort: Rhein-Main-Gebiet

Re: ZFS-Transfer von ZVOL bricht bei SSH ab

Beitrag von bluestar » 09.10.2023 13:49:51

Mpenzi hat geschrieben: ↑ zum Beitrag ↑
09.10.2023 11:26:09
Okay, ich glaube, ich sehe die Antwort bei REFER: 19.9G bzw. REFER: 83.4G. Aber sind die VM's dann immer bis zu den konfigurierten 150GB nutzbar?
Post doch mal ein paar Ausgaben von dem alten Server:

Code: Alles auswählen

zfs get compressratio zp_100/vm-104-disk-1
zfs get referenced zp_100/vm-104-disk-1
zfs get volsize zp_100/vm-104-disk-1
zfs get usedbydataset zp_100/vm-104-disk-1
zfs get  usedbysnapshots zp_100/vm-104-disk-1
Damit wir mal einen Überblick bekommen, wie die Volumes bei dir überhaupt angelegt sind.

Mpenzi
Beiträge: 65
Registriert: 26.07.2023 09:49:02

Re: [GELÖST] ZFS-Transfer von ZVOL bricht bei SSH ab

Beitrag von Mpenzi » 09.10.2023 15:39:32

Das wären die Ausgaben am alten Server:

Code: Alles auswählen

zfs get compressratio zp_100/vm-104-disk-1
NAME                  PROPERTY       VALUE  SOURCE
zp_100/vm-104-disk-1  compressratio  1.08x  -

zfs get referenced zp_100/vm-104-disk-1
NAME                  PROPERTY    VALUE     SOURCE
zp_100/vm-104-disk-1  referenced  83.4G     -

zfs get volsize zp_100/vm-104-disk-1
NAME                  PROPERTY  VALUE    SOURCE
zp_100/vm-104-disk-1  volsize   150G     local

zfs get usedbydataset zp_100/vm-104-disk-1
NAME                  PROPERTY       VALUE   SOURCE
zp_100/vm-104-disk-1  usedbydataset  83.4G   -

zfs get  usedbysnapshots zp_100/vm-104-disk-1
NAME                  PROPERTY         VALUE     SOURCE
zp_100/vm-104-disk-1  usedbysnapshots  207M
und hier die am Neuen:

Code: Alles auswählen

zfs get compressratio zp_100/vm-104-disk-1
NAME                  PROPERTY       VALUE  SOURCE
zp_100/vm-104-disk-1  compressratio  1.08x  -

zfs get referenced zp_100/vm-104-disk-1
NAME                  PROPERTY    VALUE     SOURCE
zp_100/vm-104-disk-1  referenced  83.4G     -

zfs get volsize zp_100/vm-104-disk-1
NAME                  PROPERTY  VALUE    SOURCE
zp_100/vm-104-disk-1  volsize   150G     local

zfs get usedbydataset zp_100/vm-104-disk-1
NAME                  PROPERTY       VALUE   SOURCE
zp_100/vm-104-disk-1  usedbydataset  83.4G   -

zfs get  usedbysnapshots zp_100/vm-104-disk-1
NAME                  PROPERTY         VALUE     SOURCE
zp_100/vm-104-disk-1  usedbysnapshots  49.2M     -
Jedenfalls vielen Dank bis hierher, denn die VM's laufen auf dem neuen Proxmox.

Antworten