Snapshot-Laeufe gegen cfs-Sperren des Storages absichern
Auf einem echten Host schlugen Snapshots reihenweise mit
"cfs-lock 'storage-NAME' error: got lock request timeout" fehl.
Ursache: 'pvesh create .../snapshot' lief mit dem allgemeinen
Kommando-Zeitlimit von 60s. Genau so lange wartet Proxmox aber auf den
Storage-Lock. Lief der Aufruf in unser Zeitlimit, ging es mit der naechsten
VM weiter, waehrend der Task noch lief - und die naechste VM scheiterte
dann an derselben Sperre. Eine VM konnte so einen ganzen Lauf umwerfen.
* Snapshot-Aktionen laufen jetzt mit dem langen task_timeout statt mit dem
kurzen Zeitlimit fuer Lesezugriffe.
* Ohne UPID in der Antwort wird ersatzweise gewartet, bis der Gast nicht
mehr gesperrt ist, statt sofort weiterzumachen.
* Sperr-Fehler gelten als voruebergehend und werden 'retries'-mal mit
'retry_delay' Abstand wiederholt; echte Fehler wie "storage does not
support snapshots" nicht.
* Neu: 'pause_between' fuer eine Pause zwischen zwei Gaesten.
Ausserdem: Kommentare hinter einem Wert ("retries = 2 # ...") wurden nicht
abgeschnitten und machten die Konfiguration ungueltig - das eigene
Beispiel war davon betroffen. 'description' bleibt bewusst unangetastet,
damit ein '#' in der Beschreibung erhalten bleibt.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
8f1bf037cd
commit
e9aeaf9e62
@@ -28,6 +28,17 @@ log_level = INFO
|
||||
# Maximale Wartezeit auf einen einzelnen Snapshot-Task in Proxmox.
|
||||
task_timeout = 15m
|
||||
|
||||
# Proxmox sperrt beim Anlegen eines Snapshots kurz das Storage
|
||||
# ("cfs-lock 'storage-NAME'"). Ist es gerade belegt, laeuft der Task nach 60s
|
||||
# in "got lock request timeout". Solche Faelle sind voruebergehend - pvesnap
|
||||
# versucht es dann noch einmal:
|
||||
retries = 2 # zusaetzliche Versuche je Snapshot
|
||||
retry_delay = 60s # Wartezeit vor dem naechsten Versuch
|
||||
|
||||
# Pause zwischen zwei Gaesten. Bei vielen VMs auf demselben Storage nimmt das
|
||||
# Druck vom Storage-Lock; 0 = ohne Pause.
|
||||
pause_between = 0s
|
||||
|
||||
# yes = beim Dienststart sofort einen Durchlauf machen,
|
||||
# no = auf den naechsten regulaeren Termin warten.
|
||||
run_on_start = no
|
||||
@@ -35,6 +46,10 @@ run_on_start = no
|
||||
# yes = nichts wirklich anlegen/loeschen, nur protokollieren.
|
||||
dry_run = no
|
||||
|
||||
# Hinweis: Hinter jedem Wert darf ein Kommentar stehen ("keep_time = 7d # …").
|
||||
# Einzige Ausnahme ist "description" - dort bleibt die Zeile unveraendert
|
||||
# stehen, damit ein '#' in der Beschreibung erhalten bleibt.
|
||||
#
|
||||
# Beschreibung, die an jedem Snapshot haengt (in der Proxmox-Oberflaeche
|
||||
# sichtbar). Platzhalter:
|
||||
# {group} {group_slug} {vmid} {name} {node} {type} {pool} {tags}
|
||||
|
||||
Reference in New Issue
Block a user