NVP-vProxy: Backup der virtuellen Maschine schlägt mit der Meldung "Virtuelle Maschine konnte nicht für Backup gesperrt werden" fehl
Summary: NVP-vProxy-Backups (NetWorker VMware Protection) schlagen fehl, da der vProxy die virtuelle Maschine zu Beginn des Backupworkflows nicht sperren kann. Bei einem vorherigen Backupvorgang blieben VM-Sperrattribute erhalten, nachdem während der Ausführung ein Problem aufgetreten war. Die veraltete Sperre verhindert, dass neue Backupvorgänge auf der betroffenen VM gestartet werden. ...
Symptoms
Die NVP-Integration verwendet eine vProxy-Appliance, um VM-Backups durchzuführen. Ein Backup schlägt zu Beginn des Workflows mit einer Meldung fehl, die darauf hinweist, dass ein anderer vProxy-Vorgang aktiv ist.
Das vProxy-Backupprotokoll zeigt den Fehler bei der Sperre an:
YYYY/MM/DD HH:MM:SS INFO: [@(#) Build number: 43] Another vProxy operation is active on VM vm-XXX: {Operation:Backup StartTime:YYYY-MM-DDTHH:MM:SSZ Proxy:[VPROXY_NAME] SessionId:4cf6f76c-ef6c-435d-880c-77fbaf49e17d}
YYYY/MM/DD HH:MM:SS ERROR: [@(#) Build number: 43] Failed to lock Virtual Machine for backup: Another vProxy operation is active on VM vm-XXX: {Operation:Backup StartTime:YYYY-MM-DDTHH:MM:SSZ Proxy:[VPROXY_NAME] SessionId:4cf6f76c-ef6c-435d-880c-77fbaf49e17d}.
Derzeit wird kein anderer Backup- oder Wiederherstellungsvorgang auf der VM ausgeführt. Die Sperre ist veraltet von einem vorherigen fehlgeschlagenen Backup.
Cause
Der vProxy-Backupworkflow legt zu Beginn jedes Backups nutzerdefinierte VM-Attribute fest. Diese Attribute verhindern mehrere vProxy-Vorgänge auf derselben VM. Der Workflow entfernt die Attribute, wenn das Backup abgeschlossen ist.
Wenn bei einem vorherigen Backup während der Ausführung ein Problem aufgetreten ist, werden die Attribute möglicherweise nicht entfernt. Die veraltete Sperre bleibt bestehen und blockiert alle neuen Backupvorgänge auf der VM.
Die beteiligten nutzerdefinierten VM-Attribute sind EMC vProxy-Sitzung und Letzter EMC vProxy.
Resolution
Es stehen zwei Methoden zur Verfügung, um die veraltete VM-Sperre zu löschen.
Methode 1 – Heben Sie die Sperre mit dem Dienstprogramm vmconfig auf
- Öffnen Sie eine SSH-Sitzung zu einer der vProxy-Appliances. Authentifizieren Sie sich als Root.
- Laden Sie die vProxy-Umgebungsvariablen:
source /opt/emc/vproxy/unit/vproxy.env - Fragen Sie den VM-Sperrstatus ab, um zu bestätigen, dass die Sperre aktiv ist:
/opt/emc/vproxy/bin/vmconfig -v <vcenter_fqdn> -u '<vcenter_user>' -p '<vcenter_password>' -c "info" -l moref -k <vm_moref> - Die Ausgabe zeigt Backup Locked: true an, wenn die Sperre aktiv ist.
- Setzen Sie die Backupsperre zurück:
/opt/emc/vproxy/bin/vmconfig -v <vcenter_fqdn> -u '<vcenter_user>' -p '<vcenter_password>' -c "reset-backup" -l moref -k <vm_moref> - Fragen Sie die VM erneut ab, um zu bestätigen, dass die Sperre aufgehoben wurde:
/opt/emc/vproxy/bin/vmconfig -v <vcenter_fqdn> -u '<vcenter_user>' -p '<vcenter_password>' -c "info" -l moref -k <vm_moref> - Die Ausgabe sollte Backup Locked: false anzeigen.
- Wiederholen Sie das Backup für die betroffene VM.
Methode 2 – Aufheben der Sperre mit dem vSphere Web Client
- Melden Sie sich beim vSphere Web Client an.
- Navigieren Sie zur betroffenen virtuellen Maschine.
- Bearbeiten Sie die nutzerdefinierten Attribute für die VM.
- Entfernen Sie die Werte für die folgenden Attribute:
- EMC vProxy-Sitzung
- Letzter EMC vProxy
- Speichern Sie die Änderungen und wiederholen Sie das Backup.
Additional Information
Ausgabebeispiel:
myvproxyname:~ # /opt/emc/vproxy/bin/vmconfig -v vCenter_name.domain.com -u myProxyUser@vsphere.local -p myProxyPassword -c "info" -l moref -k vm-96
VM Config
vCenter: "vCenter_name.domain.com", User: "myProxyUser@vsphere.local", Password: "myProxyPassword", Lookup Mode: "moref", Lookup Key: "vm-96", Command: "info"
Logged into vCenter 'vCenter_name.domain.com'.
Connected to session on vCenter 'vCenter_name.domain.com' Version '6.5.0 build-8307201, API:6.5', Uuid:5b106da3-cb53-48e6-af57-7ac1d5154ab6.
Found virtual machine "virtualmachine_name.domain.com" with MORef "vm-96".
Name: "virtualmachine_name.domain.com".
CBT Enabled: true.
Migration Enabled: true.
Backup Locked: true.
Disconnected from session on vCenter 'vCenter_name.domain.com'.
Logged out from vCenter 'vCenter_name.domain.com'.
myvproxyname:~ # /opt/emc/vproxy/bin/vmconfig -v vCenter_name.domain.com -u myProxyUser@vsphere.local -p myProxyPassword -c "reset-backup" -l moref -k vm-96
VM Config
vCenter: "vCenter_name.domain.com", User: "myProxyUser@vsphere.local", Password: "myProxyPassword", Lookup Mode: "moref", Lookup Key: "vm-96", Command: "reset-backup"
Logged into vCenter 'vCenter_name.domain.com'.
Connected to session on vCenter 'vCenter_name.domain.com' Version '6.5.0 build-8307201, API:6.5', Uuid:5b106da3-cb53-48e6-af57-7ac1d5154ab6.
Found virtual machine "virtualmachine_name.domain.com" with MORef "vm-96".
Clearing EMC vProxy Session lock for virtual machine "virtualmachine_name.domain.com" "vm-96", locked by "{Operation:Backup StartTime:2018-07-31 09:36:31.487334906 -0700 PDT Proxy:myvproxyname SessionId:test-lock}".
Set custom attribute 'EMC vProxy Session' value for object vm-96 to ''.
Backup lock is cleared.
Initializing VDDK...
Migration is already enabled.
De-initializing VDDK libraries.
Disconnected from session on vCenter 'vCenter_name.domain.com'.
Logged out from vCenter 'vCenter_name.domain.com'.
myvproxyname:~ # /opt/emc/vproxy/bin/vmconfig -v vCenter_name.domain.com -u myProxyUser@vsphere.local -p myProxyPassword -c "info" -l moref -k vm-96
VM Config
vCenter: "vCenter_name.domain.com", User: "myProxyUser@vsphere.local", Password: "myProxyPassword", Lookup Mode: "moref", Lookup Key: "vm-96", Command: "info"
Logged into vCenter 'vCenter_name.domain.com'.
Connected to session on vCenter 'vCenter_name.domain.com' Version '6.5.0 build-8307201, API:6.5', Uuid:5b106da3-cb53-48e6-af57-7ac1d5154ab6.
Found virtual machine "virtualmachine_name.domain.com" with MORef "vm-96".
Name: "virtualmachine_name.domain.com".
CBT Enabled: true.
Migration Enabled: true.
Backup Locked: false.
Disconnected from session on vCenter 'vCenter_name.domain.com'.
Logged out from vCenter 'vCenter_name.domain.com'.
myvproxyname:~ #