Schlagwort-Archive: backup

MSSQL Database Backup auf Synology DS

NAS als Backup Medium werden immer beliebter, flexible Anwendung und die Integration über iSCSI und Netzwerk Shares sind Vorzüge die teure LTO Tapes (Linear Tape Open) nicht bieten können, letztlich kommen Magnetbänder nur noch für die Langzeitarchivierung zum Einsatz. Nicht zuletzt ist die Wiederherstellung mit Backups von NAS Speicher rasch und einfach vollziehbar.

MS_SQL_Server_Logo

In diesem Beispiel wird beschrieben wie eine MS SQL Datenbank auf die Freigabe eines Synology NAS gesichert wird.

Die Freigabe muss für ein AD DS Benutzer mit dem Privileg schreiben eingerichtet sein, damit die automatische Sicherung des Maintenance Plan aus dem SQL Management Studio die Datenbank auf der NAS Freigabe direkt erstellen kann.

SQL Server Management Studio
SQL Server Management Studio

Zunächst werden die zu selektierenden Datenbanken auf Integrität geprüft.

Check Database Integrity Task
Check Database Integrity Task

Die ausgewählten Datenbanken werden auf den UNC Pfad \\10.10.10.10\data\SQLBackup geschrieben. Die IP ist hier die des NAS, data die Freigabe welche im DSM unter Gemeinsame Ordner erstellt wurde, SQLBackup das Verzeichnis in dieses unser Backup kommt. Im Feld Backup file extension muss bak stehen, bei *.bak oder .bak wird kein Backup Image angelegt.

Backup Database Task
Backup Database Task

Nun wird der Verlauf mit den Logs auf 5 Tage begrenzt.

History Cleanup Task
History Cleanup Task

Zuletzt werden ebenfalls die angelegten Backup Images auf 5 Tage begrenzt, ansonsten der NAS Speicher irgendwann volllaufen würde.

Maintenance Cleanup Task
Maintenance Cleanup Task

Die Anzahl Backup Images kann nach bedarf und verfügbarer Kapazität des NAS ausgelegt werden.

Die gewünschte Backup Rotation definieren wir, damit der Job zu den gewünschten Zeiten ausgeführt wird.

Job Schedule Properties
Job Schedule Properties

Hinweis
Es empfiehlt sich hinsichtlich günstiger Festplatten das NAS mit RAID1 anzulegen. Ebenfalls können über den USB Port am NAS weitere Sicherungen angelegt werden, diese mittels Externer USB Festplatten an weiter beliebigen Orte deponiert werden können, über die Synology Zusatz App Time Backup lassen sich zeitgesteuerte Kopien auf Externen Festplatten anlegen.

VM sicherung mit ghettoVCB für ESXi

Virtuelle Maschinen Backup 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.

ESXi-Shell

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/

ghettoVCB-ESXi-WinSCP

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

NFS Berechtigungen
DSM NFS Berechtigungen

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

NFS_store

Der NFS Speicher des NAS wird eingebunden.

NFS_store1

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.

vSphereClient
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

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

und die VM Konfiguration für homer 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/homer

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

vi /var/spool/cron/crontabs/root

crontab wieder starten

bei ESXi5.0

Testen ob der Script tut was er soll.

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

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

ab ESXi 5.1 und höher wird /etc/rc.local.d/local.sh genutzt.

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

in both the backup and restore scripts.

Troubleshooting

Wird ein ERROR protokolliert liegt dies oft daran das vor der ersten Snapshot Sicherung eine Konsolidierung gemacht werden sollte.

Snapshot Konsolidieren
Snapshot Konsolidieren

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

Tip!

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

 

MySQL Server Backup auf Synology DS

Im folgenden wird in wenigen Schritten beschrieben wie die MySQL Datenbank auf die Synology Diskstation gesichert wird. Das auf dem Linux host gesicherte Wordpress wird anschliessend mit scp auf die DS übertragen.

Auf dem NAS wird der SSH und SFTP Daemon aktiviert.

SSH Aktivieren
SSH Aktivieren
SFTP Aktivieren
SFTP Aktivieren
SFTP Port
SFTP Port

Auf dem Linux host als root mit „su -“ oder „sudo su -“ anmelden und aus dem bash shell die folgenden Dateien zu erzeugen.

Wobei PASSWORD dein MySQL Passwort ist, 10.1.1.2 ist hier die IP der Synology DS, „volume1“ ist in der regel die erste Partition und „backup“ ist unser angelegtes Backup Verzeichnis.

Nun auf dem Linux host ein RSA Schlüsselpaar erzeugen, damit wird beim kopieren mit scp auf die DS kein Passwort verlangt.

Im Verzeichnis /root/.ssh/ wurde nun ein Privater und ein Öffentlicher Schlüssel erzeugt:

Der Öffentliche Schlüsssel id_rsa.pub wird nun auf unsere DS kopiert und im Pfad /root/.ssh/ in die Datei authorized_keys zu liegen kommen, hierbei wird das root Passwort gepromptet.

Fertig! nun wird wenn alles klappt um 00:00 Uhr dein Backup erstellt und automatisch (ohne Passwort Prompt) auf die Diskstation transferiert.

Dieses Howto wurde auf CentOS GNU/Linux gemacht, mit Debian sollten ebenfalls keine Anpassungen nötig sein, andernfalls wäre dein Kommentar mit deiner disto jederzeit willkommen.

Der System crontab liegt in /etc/crontab, Du kannst auch den Befehl crontab -e verwenden oder das durch run-parts angelegte cron.daily Verzeichnis als Batch Folder nehmen.