UNBLOG Tutorials

Suchen

Primäres Menü
Zum Inhalt springen

Donate

Support with advertising

Help

Hilfe

I AM

ICH

Impressum

Datenschutzerklärung

Imprint

Newsletter

Newsletter

Spende

Mit Werbung unterstützen

Stay in touch

Stay in touch

Suche nach:

Schlagwort-Archive: ghettoVCB free backing up VMs

The ghettoVCB script performs backups of virtual machines residing on ESXi servers using methodology similar to VMware’s VCB tool.

Synology HowTo

ghettoVCB Sicherung auf externe Synology Speicher kopieren

Home

21. 11. 2018 Don Matteo Schreibe einen Kommentar

Mit ghettoVCB gesicherte Images von virtuellen Maschinen auf externe Datenträger am Synology NAS kopieren. Eine Methode zur automatisierten Ausführung wird hier in diesem Post beschrieben.

Externe USB Festplatten wie WD MyPassport oder Tandberg RDX QuikStore Laufwerke mit Wechselplatten, eignen sich um Kopien anzulegen und an weitere Standorte zu deponieren, dies anhand mehrer Wechselplatten die in einer Rotation laufend ausgetauscht werden.

Dazu wird auf dem VMware Hypervisor als erstes die ghettoVCB Konfiguration für die Konvention der Vergabe der Verzeichnis-namen angepasst, anstelle der Ziel Verzeichnisse mit Datumsangabe, wird nun eine laufende Nummerierung erzeugt, hierzu ändert man im Script ghettoVCB.sh etwa bei Zeile 167 den Wert mit „0“:

VM_BACKUP_DIR_NAMING_CONVENTION="0"

Auf dem Synology NAS wird nach Aktivierung des SSH-Terminal Zugang, der Script für das kopieren der Images erstellt. Es sollen alle vmdk und vmx Dateien der letzten Sicherung aller gespeicherten VMs auf das externe Laufwerk kopiert werden. Kopiert wird mit -0 in quellen Angabe, mit -1 würde die vorletzte Sicherung kopiert, siehe Verzeichnisstruktur am ende.

mkdir /volume1/bin
echo "cp /volume1/data/*/*-0/*.vm* /volumeUSB1/usbshare" > /volume1/bin/copy2usb.sh

Bemerkung: das Verzeichnis bin wird unter volume1 angelegt, ansonsten der Script unter /usr/bin nach dem nächsten DSM Update nicht mehr vorhanden ist. In diesem Beispiel wird auf dem NAS das Volume wie üblich als volume1 verwendet, und data als Gemeinsamer Ordner, diese durch die tatsächlichen Namen ersetzen. Der Pfad zum externen Laufwerk /volumeUSB1/usbshare kann ebenfalls abweichen.

Der Script muss ausführbar gemacht werden:

chmod u+x /volume1/bin/copy2usb.sh

Nun in der Synology DSM Systemsteuerung zu Aufgabenplaner gehen.

Erstellen einer neuen Geplanten Aufgabe – Benutzerdefiniertes Skript wählen:

Die Aufgabe bearbeiten, bei Vorgang kann ein beliebig passender Name eingetragen werden:

Der gewünschte Zeitplan bearbeiten, es sollte ein Zeitpunkt gewählt werden, dieser nach beenden der ghettoVCB Sicherung gestartet wird:

Die Email zur Benachrichtigung und der Benutzerdefinierte Skript zur Ausführung eintragen:

Die Aufgabe ist nun mit den anderen Aufgaben eingetragen.

Die Verzeichnisstruktur auf dem NAS Speicher als Beispiel einer virtuellen Maschine (vmsrv) in einer Backup Rotation mit 3 Versionen (0-2).

+-- data
| +-- vmsrv
| +-- vmsrv-0
| | +-- vmsrv-vctk.vmdk
| | +-- vmsrv-flat.vmdk
| | +-- vmsrv.vmx
| +-- vmsrv-1
| | +-- vmsrv-vctk.vmdk
| | +-- vmsrv-flat.vmdk
| | +-- vmsrv.vmx
| +-- vmsrv-2
| +-- vmsrv-vctk.vmdk
| +-- vmsrv-flat.vmdk
| +-- vmsrv.vmx
|

ghettoVCB free backing up VMsSynology Network Attached StorageVMware ESXi Hypervisor

VMware Tutorials

VM sicherung mit ghettoVCB für ESXi

Home

9. 09. 2014 Don Matteo Ein Kommentar

VMware ESXi Backup von virtuellen Maschinen mit ghettoVCB

ghettoVCB von William Lam (@lamw) ist eine freie alternative zur Sicherung von virtuellen Maschinen. Das Skript erstellt Backups von virtuellen Maschinen auf ESX(i)3.5/4.x/5.x/6.x-Server mithilfe einer Methode ähnlich wie des VMware VCB-Tool.

Es werden Snapshots von laufenden virtuellen Maschinen gemacht und sichert diese danach, nach Fertigstellung werden die Snapshots wieder gelöscht bis zur nächsten Sicherung. Der einzige unterschied zu VMware VCB ist dass der Prozess auf dem ESXi-Host selbst ausgeführt wird, dabei werden wenig Ressourcen belegt. Die Backups werden über die Service-Konsole (Busybox Console) des Hypervisor gefahren, im Gegensatz zu der traditionellen Methode bei der die Backups eine virtuelle Maschine als VCB-Proxy nutzt.

Download ghettoVCB

Die ESXi-Shell und TSM-SSH muss aktiviert werden, dies geschieht über die ESXi direkt Console oder aus dem vSphere Client.

Nach dem download und entpacken, die Dateien mit WinSCP oder aus dem vSphere Client auf den ESXi-Host in ein Verzeichnis hochladen, hier ist es der Pfad
/vmfs/volumes/datastore1/ghettoVCB/

Als Backup Speicher wird eine Synology RackStation NAS genutzt, dabei könnte es auch eine DiskStation sein, es wird der NFS Datenspeicher gemountet dieser auf dem NAS als NFS Freigabe bereitgestellt wurde.

DSM NFS Berechtigungen

Der NFS Export des NAS wird aus dem vSphere oder vCenter gemountet, hierzu geht man auf: Konfiguration – Speicher – Speicher hinzufügen.

Der NFS Speicher des NAS wird eingebunden.

Im Feld Server wird die IP Adresse des NAS eingetragen, im Feld Ordner der absolute Pfad der NFS Freigabe, bei der Synology RackStation ist dies in der regel /volume1 gefolgt vom Name der Freigabe. Als Datenspeichername wird der Name des NAS eingetragen, dieser Name muss in der Konfigurationsdatei, ghettoVCB.conf bei VM_BACKUP_VOLUME identisch sein.

vSphere NFS Datenspeicher

Der NFS Speicher wird gemountet.

Ab ESXi 6 wird der vSphere Web Client genutzt, im Navigator geht man zu Speicher und Neuer Datenspeicher.

Der Datenspeicher Assistent wird geöffnet.

NFS-Datenspeicher mounten wählen.

Auf weiter gehen und im letzten Fenster den Assistenten beenden.

Das NAS wird als NFS Datenspeicher gemountet und steht bereit.

Nun den crontask anhalten mit

# /bin/kill $(cat /var/run/crond.pid)

Eine Datei anlegen mit den VMs die gesichert werden sollen.
vi /vmfs/volumes/datastore1/ghettoVCB/vms.cfg

DEBIAN
UBUNTU
FPBX16

und die VM Konfiguration wo die Backup Rotation definiert wird, dies ermöglicht eine unterschiedliche Backup Rotation, wird keine Konfiguration angelegt, gelten die Werte in der ghettoVCB.conf.

vi /vmfs/volumes/datastore1/ghettoVCB/DEBIAN

VM_BACKUP_VOLUME=/vmfs/volumes/NAS
DISK_BACKUP_FORMAT=thin
VM_BACKUP_ROTATION_COUNT=5
POWER_VM_DOWN_BEFORE_BACKUP=0
ENABLE_HARD_POWER_OFF=0
ITER_TO_WAIT_SHUTDOWN=4
POWER_DOWN_TIMEOUT=5
SNAPSHOT_TIMEOUT=15
ENABLE_COMPRESSION=0
VM_SNAPSHOT_MEMORY=0
VM_SNAPSHOT_QUIESCE=0
VMDK_FILES_TO_BACKUP="all"

crontab beschreibbar machen und Backup um 22:01 Täglich ausführen.

chmod +w /var/spool/cron/crontabs/root

vi /var/spool/cron/crontabs/root

/bin/echo "01 22 * * * /vmfs/volumes/datastore1/ghettoVCB/ghettoVCB.sh -f /vmfs/volumes/datastore1/ghettoVCB/vms.cfg > /vmfs/volumes/datastore1/ghettoVCB/ghettoVCB-backup-$(date +\%s).log" >> /var/spool/cron/crontabs/root

crontab wieder starten

crond

bei ESXi5.0

/bin/busybox crond

Testen ob das Script tut was es soll.

cd /vmfs/volumes/datastore1/ghettoVCB/
./ghettoVCB.sh -f vms.cfg -d dryrun

cronjob persistent machen, damit nach dem nächsten Reboot wieder alles läuft.

chmod +w /etc/rc.local.d/local.sh

Die Datei rc.local editieren, vi /etc/rc.local.d/local.sh

#!/bin/sh

# local configuration options

# Note: modify at your own risk! If you do/use anything in this
# script that is not part of a stable API (relying on files to be in
# specific places, specific tools, specific output, etc) there is a
# possibility you will end up with a broken system after patching or
# upgrading. Changes are not supported unless under direction of
# VMware support.

# Note: This script will not be run when UEFI secure boot is enabled.

/bin/kill $(cat /var/run/crond.pid)
chmod +w /var/spool/cron/crontabs/root
/bin/echo "01 22 * * * /vmfs/volumes/datastore1/ghettoVCB/ghettoVCB.sh -f /vmfs/volumes/datastore1/ghettoVCB/VM.txt > /vmfs/volumes/datastore1/ghettoVCB/ghettoVCB-backup-vm.log" >> /var/spool/cron/crontabs/root
crond

exit 0

Die Sicherung der konfigurierten VMs wird nun zur definierten Zeit starten, dabei wird nicht die Zeit der Konsole berücksichtigt, sondern die die Zeit die im vSphere Client angezeigt wird.

VMware esxi 5.5 support for ghettovcb.sh
Fixed the script by changing

case "${ESX_VERSION}" in
5.0.0|5.1.0) VER=5; break;;
4.0.0|4.1.0) VER=4; break;;
3.5.0|3i) VER=3; break;;
to
case "${ESX_VERSION}" in
5.0.0|5.1.0|5.5.0) VER=5; break;;
4.0.0|4.1.0) VER=4; break;;
3.5.0|3i) VER=3; break;;

in both the backup and restore scripts.

Troubleshooting

Wird ein ERROR protokolliert, liegt es oft daran das vor der ersten Snapshot Sicherung keine Konsolidierung gemacht wurde.

info: ERROR: error in backing up of "/vmfs/volumes/datastore1/guestvm/guestvm.vmdk"

info: ERROR: Unable to backup guestvm due to error in VMDK backup!

info: ###### Final status: ERROR: No VMs backed up! ######

Snapshot Konsolidieren aus dem vSphere oder vCenter, dies vor der ersten ghettoVCB Sicherung ausführen.

Snapshot Konsolidieren

TIP!

Zur Wiederherstellung von Dateien oder Verzeichnisse aus virtuellen Festplatten, aus VMDK Snapshots, kann 7-Zip nützlich sein, das vorgehen wird hier beschrieben.

ghettoVCB free backing up VMsSynology Network Attached StorageVMware ESXi Hypervisor

ads

Popular Posts

5
(30)

How to Install Midnight Commander on Synology NAS

5
(9)

How to Install Nano on Synology NAS

4.9
(15)

Midnight Commander Installation auf Synology NAS

4.9
(19)

Nagios Monitoring mit Raspberry Pi

4.9
(24)

How to Fix UniFi Controller log4j vulnerability

4.8
(11)

Linux Mint MATE-Desktop und Cinnamon-Desktop

4.8
(78)

Windows Blickpunkt Reparieren

4.8
(32)

Outlook Drucken ist nicht möglich

4.7
(10)

Master Browser Lookup

4.7
(10)

Windows IPv4 anstatt IPv6

Categories

DevOps Tutorials

Linux Howto

Synology HowTo

Sysadmin Tutorials

VMware Tutorials

Windows Tutorials

Windows Services

Business Intelligence

Exchange Services

WordPress Tutorials

Workaround

Howto Tutorials

Howto Tutorials (EN)

Sprachen

Your IP

94.31.80.166

Meta

Anmelden

Feed der Einträge

Kommentare-Feed

Archive
Archive

Monat auswählen
Mai 2023
April 2023
März 2023
Februar 2023
Januar 2023
Dezember 2022
November 2022
Oktober 2022
September 2022
August 2022
Juni 2022
Mai 2022
April 2022
März 2022
Februar 2022
Januar 2022
Dezember 2021
November 2021
Oktober 2021
September 2021
August 2021
Juli 2021
Juni 2021
Mai 2021
April 2021
Februar 2021
Januar 2021
Dezember 2020
November 2020
Oktober 2020
September 2020
August 2020
Juli 2020
Juni 2020
Mai 2020
April 2020
Februar 2020
Januar 2020
Dezember 2019
November 2019
September 2019
August 2019
Juli 2019
Juni 2019
Mai 2019
April 2019
März 2019
Februar 2019
Januar 2019
Dezember 2018
November 2018
Oktober 2018
September 2018
August 2018
Juli 2018
April 2018
März 2018
Februar 2018
Januar 2018
Dezember 2017
November 2017
Oktober 2017
September 2017
August 2017
Juli 2017
Juni 2017
Mai 2017
April 2017
März 2017
Februar 2017
Januar 2017
Dezember 2016
Oktober 2016
September 2016
August 2016
Juli 2016
Juni 2016
Mai 2016
April 2016
Januar 2016
Dezember 2015
November 2015
Oktober 2015
September 2015
August 2015
Juni 2015
April 2015
März 2015
Februar 2015
Januar 2015
Dezember 2014
November 2014
Oktober 2014
September 2014

Tag Cloud

AnyDesk

Apache Webserver

bash Bourne-again shell

fail2ban Intrusion Prevention System

FortiGate Appliance

FortiGate Firewall

GNU/Linux

Google Chrome Browser

How to OpenSSH

KeePass

KeePass Manager

Kopano Groupware

Kopano Open-Source-Groupware

Linux How to

Microsoft Edge Browser

Microsoft Exchange Server

Microsoft Windows 11

MySQL Datenbank

OpenSSH Secure Shell

OpenSSL Verschlüsselung

OpenVPN

OpenVPN

Outlook Client

Outlook Workaround

Postfix Mail Transfer Agent

PowerShell Framework

PowerShell Programming language

Printer Management

PuTTY free SSH Client

SSL Zertifikat

Synology DiskStation RackStation

Synology Network Attached Storage

Ubuntu Linux-Distribution

VBScript - Visual Basic Script

Verschlüsselung

VMware ESXi Hypervisor

VMware vSphere

VPN Connectivity

VPN Tunnel, virtuelles Privates Netzwerk

Windows 10

Windows Print Spooler

Windows Terminal

Windows Terminal Howto

Windows Tutorial

WordPress

Latest comments

asheroto bei How to Upgrade PHP on Debian 9 10 11

Don Matteo bei Launch AnyDesk from KeePass

Juan bei Launch AnyDesk from KeePass

Ben bei TR-069 CWMP Provisioning on ISC-DHCPD

Don Matteo bei TR-069 CWMP Provisioning on ISC-DHCPD

Share

Social

YouTube

Twitter

LinkedIn

Links

Email

Github

Stack Exchange

THINK UNBLOG

Knowledge Network for Tutorials, Howto's, Workaround, DevOps Code for Professionals.
UNBLOG Newsletter Subscribe.

THINK UNBLOG | Impressum | Datenschutzerklärung |
Powered by UNBLOG © 2014 - 2023 A-Enterprise GmbH

Die mobile Version verlassen