Nach Backup mit Snapshot manchmal Fehler

corin.corvus

Active Member
Apr 8, 2020
132
13
38
37
Moin,

hat jemand eine Idee, was das verursachen kann? Das ist nach dem Backup. Tritt tatsächlich nur alle paar Woche mal bei verschiedenen VMs auf.
brave_ruqE7bgHVp.jpg

Freue mich über Ideen.

LG
 
Also ein Snapshot ist kein Backup. Aber es können ab diesem Zeitpunkt die Datenänderungen rückgängig gemacht werden. Spannend ist die Ausgabe zfs list <pool> -r da kann man die Größe des belegten Snapshotspeichers sehen.
zfs trim <pool> schon gemacht?
 
Naja es gibt Backups im Snapshot Modus. Das meine ich. Die vms werden beim Backup also weder suspended, noch runtergefahren.

Zfs ist nur zu 20gb belegt von 1000gb.
Details kann ich leider erst später senden, bin gerade nicht am PC.
 
Es gibt da einen Bug mit iothread Flag, es sieht so aus, als sei das dein Problem. Der Bug sollte zwischenzeitlich behoben sein, du müsstest mal updaten.
 
Es gibt da einen Bug mit iothread Flag, es sieht so aus, als sei das dein Problem. Der Bug sollte zwischenzeitlich behoben sein, du müsstest mal updaten.
Wann gab es den Bug und wann kamen die Patches? Habe eine Benachrichtigung drin, die mir meldet, sobald neue Updates da sind. Security Updates werden automatisch täglich installiert.
Jeden Donnerstag patche ich die Server, wenn es Patches gibt inkl. Neustart.

Dann können wir eingrenzen, ob das schon erledigt ist.

Abgesehen davon: Die VMs, die da drauf waren, hatten kein IOThread. Habe nur 2 VMs mit IOThread laufen und da hatte ich bisher noch keine Probleme.
 
zfs trim <pool> schon gemacht?
Den Befehl kennt mein Proxmox nicht.

Code:
root@N-4:~# zfs trim
unrecognized command 'trim'
usage: zfs command args ...
where 'command' is one of the following:

        version

        create [-Pnpuv] [-o property=value] ... <filesystem>
        create [-Pnpsv] [-b blocksize] [-o property=value] ... -V <size> <volume>
        destroy [-fnpRrv] <filesystem|volume>
        destroy [-dnpRrv] <filesystem|volume>@<snap>[%<snap>][,...]
        destroy <filesystem|volume>#<bookmark>

        snapshot [-r] [-o property=value] ... <filesystem|volume>@<snap> ...
        rollback [-rRf] <snapshot>
        clone [-p] [-o property=value] ... <snapshot> <filesystem|volume>
        promote <clone-filesystem>
        rename [-f] <filesystem|volume|snapshot> <filesystem|volume|snapshot>
        rename -p [-f] <filesystem|volume> <filesystem|volume>
        rename -u [-f] <filesystem> <filesystem>
        rename -r <snapshot> <snapshot>
        bookmark <snapshot|bookmark> <newbookmark>
        program [-jn] [-t <instruction limit>] [-m <memory limit (b)>]
            <pool> <program file> [lua args...]

        list [-Hp] [-r|-d max] [-o property[,...]] [-s property]...
            [-S property]... [-t type[,...]] [filesystem|volume|snapshot] ...

        set [-u] <property=value> ... <filesystem|volume|snapshot> ...
        get [-rHp] [-d max] [-o "all" | field[,...]]
            [-t type[,...]] [-s source[,...]]
            <"all" | property[,...]> [filesystem|volume|snapshot|bookmark] ...
        inherit [-rS] <property> <filesystem|volume|snapshot> ...
        upgrade [-v]
        upgrade [-r] [-V version] <-a | filesystem ...>

        userspace [-Hinp] [-o field[,...]] [-s field] ...
            [-S field] ... [-t type[,...]] <filesystem|snapshot|path>
        groupspace [-Hinp] [-o field[,...]] [-s field] ...
            [-S field] ... [-t type[,...]] <filesystem|snapshot|path>
        projectspace [-Hp] [-o field[,...]] [-s field] ...
            [-S field] ... <filesystem|snapshot|path>

        project [-d|-r] <directory|file ...>
        project -c [-0] [-d|-r] [-p id] <directory|file ...>
        project -C [-k] [-r] <directory ...>
        project [-p id] [-r] [-s] <directory ...>

        mount
        mount [-flvO] [-o opts] <-a | filesystem>
        unmount [-fu] <-a | filesystem|mountpoint>
        share [-l] <-a [nfs|smb] | filesystem>
        unshare <-a [nfs|smb] | filesystem|mountpoint>

        send [-DLPbcehnpsVvw] [-i|-I snapshot]
             [-R [-X dataset[,dataset]...]]     <snapshot>
        send [-DnVvPLecw] [-i snapshot|bookmark] <filesystem|volume|snapshot>
        send [-DnPpVvLec] [-i bookmark|snapshot] --redact <bookmark> <snapshot>
        send [-nVvPe] -t <receive_resume_token>
        send [-PnVv] --saved filesystem
        receive [-vMnsFhu] [-o <property>=<value>] ... [-x <property>] ...
            <filesystem|volume|snapshot>
        receive [-vMnsFhu] [-o <property>=<value>] ... [-x <property>] ...
            [-d | -e] <filesystem>
        receive -A <filesystem|volume>

        allow <filesystem|volume>
        allow [-ldug] <"everyone"|user|group>[,...] <perm|@setname>[,...]
            <filesystem|volume>
        allow [-ld] -e <perm|@setname>[,...] <filesystem|volume>
        allow -c <perm|@setname>[,...] <filesystem|volume>
        allow -s @setname <perm|@setname>[,...] <filesystem|volume>

        unallow [-rldug] <"everyone"|user|group>[,...]
            [<perm|@setname>[,...]] <filesystem|volume>
        unallow [-rld] -e [<perm|@setname>[,...]] <filesystem|volume>
        unallow [-r] -c [<perm|@setname>[,...]] <filesystem|volume>
        unallow [-r] -s @setname [<perm|@setname>[,...]] <filesystem|volume>

        hold [-r] <tag> <snapshot> ...
        holds [-rHp] <snapshot> ...
        release [-r] <tag> <snapshot> ...
        diff [-FHth] <snapshot> [snapshot|filesystem]
        load-key [-rn] [-L <keylocation>] <-a | filesystem|volume>
        unload-key [-r] <-a | filesystem|volume>
        change-key [-l] [-o keyformat=<value>]
            [-o keylocation=<value>] [-o pbkdf2iters=<value>]
            <filesystem|volume>
        change-key -i [-l] <filesystem|volume>
        redact <snapshot> <bookmark> <redaction_snapshot> ...
        wait [-t <activity>] <filesystem>
        zone <nsfile> <filesystem>
        unzone <nsfile> <filesystem>

Each dataset is of the form: pool/[dataset/]*dataset[@name]

For the property list, run: zfs set|get

For the delegated permission list, run: zfs allow|unallow


Hier die List Ausgabe. Habe aktuell alle VMs da runtergezogen und nur noch die Replikationen laufen. Wichtig: Das ist jetzt einer der Produktivnodes, wo das gestern noch mal passiert ist. Der Testnode, von dem ich oben sprach mit den 20gb von 1000, ist das nicht.
root@N-4:~# zfs list ZFS-01 -r
NAME USED AVAIL REFER MOUNTPOINT
ZFS-01 1.26T 507G 96K /ZFS-01
ZFS-01/vm-131-disk-0 15.6G 517G 5.45G -
ZFS-01/vm-131-disk-1 34.5G 533G 9.12G -
ZFS-01/vm-131-disk-2 41.8G 533G 16.4G -
ZFS-01/vm-132-disk-0 17.4G 517G 7.11G -
ZFS-01/vm-132-disk-1 26.9G 533G 1.10G -
ZFS-01/vm-132-disk-2 45.5G 533G 19.8G -
ZFS-01/vm-132-disk-3 499G 765G 241G -
ZFS-01/vm-132-disk-4 299G 662G 144G -
ZFS-01/vm-133-disk-0 17.0G 517G 6.73G -
ZFS-01/vm-133-disk-1 37.9G 533G 12.1G -
ZFS-01/vm-133-disk-2 35.4G 533G 9.60G -
ZFS-01/vm-134-disk-0 16.7G 517G 6.38G -
ZFS-01/vm-134-disk-1 41.7G 533G 15.9G -
ZFS-01/vm-134-disk-2 43.3G 533G 17.5G -
ZFS-01/vm-203-disk-0 27.1G 527G 6.75G -
ZFS-01/vm-301-disk-0 17.8G 517G 7.45G -
ZFS-01/vm-302-disk-0 74.4G 559G 22.8G -
 
Alles klar, Updates habe ich gerade nachgezogen. Ich teste dann mal, auch wenn ich aktuell skeptisch bin, dass das der Fehler ist. IO Thread hatte ich wie gesagt nicht im Einsatz auf den bisher betroffenen Maschinen.
 
Nun habe ich dem zu Antworten? Nein.
Aber man sollte wissen, dass bei Flash Speichern die Blöcke i.a. nicht freigeben werden, ohne den TRIM Befehl an das Device.
Der Test besteht darin sich mit der Materie der Befehle über die Man-Pages zu befassen und die Hintergründe zu verstehen.
Also alles nur Grundlagenwissen.
Liefert ein
$zpool get autotrim
den Status "on" zurück, dann führt die Nutzung der SSD/ Flashspeicher zu weiteren IOP und zu Verzögerungen in der Befehlsausführung. Einige schreiben auch von schnellerer Alterung der SSD/ Flashspeicher.
Somit benötigt man eine andere Strategie.
Man kann sich die "Auslastung" auch über
$ df --inode <mount>
ansehen.
Wenn IFrei mehr zu "0" degeneriert, dann wird es Zeit.
 
Kriegst nen Slowclap von mir. Magst du dann in Zukunft in anderen Beiträgen rumtrollen? :) Ich suche nach Lösungen, nicht nach irgendwelchen Tests.

Weder der "test", noch deine jetzige Erklärung hat mich in irgendeiner Weise weitergebracht außer, dass ich schon vorher und auch nach deinen Befehlen nun weiß: das ist nicht das Problem.

Denn ich hatte bei betroffenen Maschinen die Hardware bei den Problemnodes komplett entfernt, gegen jeweils 2 nagelneue SSDs getauscht und ein neues ZFS-Laufwerk erstellt, welches keine 2 Monate alt ist. Das habe ich gemacht, weil der Verdacht bei meinen Testnodes direkt bei den älteren und weitaus kleineren SSDs lag. Dann habe ich alles nach Proxmox Standard belassen und diverse Replikationen drauf gepackt und 2 TestVMs darauf laufen lassen. Egal ob bei 20, 40 oder 70% Belegung tritt das Problem auf. Sporadisch und es ist keine Kausalität zu erkennen zwischen der Menge an Daten auf dem Pool.

Code:
root@N-4:/# df --inode /ZFS-01
Filesystem         Inodes IUsed      IFree IUse% Mounted on
ZFS-01         1013453382     6 1013453376    1% /ZFS-01

root@N-4:~# zpool get autotrim
NAME    PROPERTY  VALUE     SOURCE
ZFS-01  autotrim  off       default
 

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!