Home ORDIX AG             Dienstleistung             Trainingsshop    Kunden / Referenzen Aktuelles    Kontakt
Home  Pfeil  ORDIX News  Pfeil  4/2009  Pfeil  Betriebssysteme
suche: 
Der Artikel richtet sich an Unix- und Windows-System-
administratoren.

Glossar

CIFS
Common Internet File System. Von Microsoft entwickeltes Protokoll zum Zugriff auf Dateien über ein TCP/IP-basiertes Netzwerk.
FCP
Die technische Grundlage für jedes SAN (Storage Area Network) ist der "Fibre Channel-Protokoll-Standard“, richtig bezeichnet als "Fibre Channel Physical and Signaling Interface“. Fibre Channel ist kein Kabel-Typ, nicht zu verwechseln mit Fiber (= Glasfaser). Das Fibre Channel Protokoll kann auch über Kupferleitung mit elektrischen Signalen übertragen werden. Trotzdem hat sich der Begriff Fibre Channel auch für (LWL-) Kabel, Geräte und Verbindungen eingebürgert.
iSCSI
Das internet Small Computer System Interface ist ein Verfahren, welches die Nutzung des SCSI-Protokolls über TCP ermöglicht.
NFS
Network File System. NFS ermöglicht den dateibasierten Zugriff auf Dateien über ein TCP/IP-Netzwerk.


Open Systems SnapVault (ossv)
als Sicherungsmethode für das Betriebssystem

Die Artikelreihe "Oracle auf NetApp" erläutert, welche Vorteile die Benutzung von NetApp Storage bieten kann. In diesem Beitrag behandeln wir – ohne Berücksichtigung von Datenbanken – wie NetApp Filer eine Möglichkeit des Systembackups bieten können. Die Sicherung des Betriebssystems wird üblicherweise einer Software wie TSM, Networker oder Netbackup mit entsprechendem Hardwarebackend (Tape-Libraries) zur Aufgabe gemacht. Diese Systeme bieten die Möglichkeit von inkrementellen oder kompletten Backups und zeitpunktgenauen Rücksicherungen (Point-in-time Recoveries). Ähnliche Eigenschaften bietet auch ein Produkt von Network Appliance: Open Systems SnapVault.

Processing package instance <ossv> from </tmp/ossv>
OSSV (sparc) 2.6.1 NetApp
OSSV 2_6_1_2009APR08
Have you read and agreed to the terms of the license? (y = yes, n = no, d = display license) (y n d) [d] : y
Please enter the path where you would like the SnapVault directory to be created [/usr/snapvault] : /opt/snapvault
Enter the User Name to connect to this machine via the NDMP protocol : sv_user (Beispiel)
Please enter the password to connect to this machine via the NDMP protocol : Confirm password: (Das Passwort erhält man auf dem Filer mit ndmpd password sv_user) password ********
Enter the NDMP listen port [10000] :
Enter the hostname or IP address of the SnapVault secondary storage system(s) allowed to backup this machine. Multiple hostnames or IP addresses must be comma seperated. > : nearstore (Beispiel)
An dieser Stelle ist, bevor die <ENTER> Taste gedrückt wird, wegen eines Bugs im Installation-Skript, ein zweites Fenster auf dem System zu öffnen, um im Verzeichnis /tmp/install* (* ist ein bei jeder Installation unterschiedlicher Platzhalter) die leere Datei ndmp_password mit den Rechten 666 anzulegen.

…
Check Succeeded
Installation appears valid
Installation of  was successful.
Abb. 1: SnapVault-Installation am Beispiel eines Solaris 10 Betriebssystems.

abort
Einen laufenden Datentransfer abbrechen
destinations
Ausgabe der definierten SnapVault-Beziehung (Ziele)
help
Hilfe
release
Aufheben einer SnapVault-Beziehung
restore
Restaurieren von Daten
status
Aktueller Status der SnapVault-Beziehung
service
Dienste auf dem Unix Client starten/stoppen Status abfragen
diag
Fehlercodes abfragen
Abb. 2: Bedienung von SnapVault auf dem Unix Client.
 
snapvault start -S clientname:/ nearstore:/vol/ossv_clientname/backup
(Starten des SnapVaultbeziehung)
snapvault status ossv_clientname clientname:/ nearstore:/vol/ossv_clientname/backup Snapvaulted 00:26:56 Idle (Überprüfen des SnapVault Status)
snapvault snap sched -x ossv_clientname daily_backup 90@6@mon-fri (Einrichten des täglichen Backups)
/vol/ossv_clientname -sec=sys,ro=clientname (Zeile in der /etc/exportfs)
nearstore.domain.net:/vol/ossv_clientname/backup/.snapshot/.snapshot - /backup nfs - yes ro,bg,vers=3,proto=tcp,hard,intr,wsize=32768,rsize=32768 (Zeile in der /etc/vfstab)
Abb. 3: Befehlszeilen auf nearstore.

Einleitung

In vielen IT-Landschaften haben sich mittlerweile Architekturen durchgesetzt, in denen Storage über Hardware von NetApp gestellt wird. Das angebundene Storage kann über Protokolle wie NFS, CIFS, iSCSI oder FCP von Unix- und Windows-Systemen gleichermaßen genutzt werden. Selbst Datenbanken wie Oracle werden auf diese Weise performant betrieben.

Wie in der Artikelreihe "Oracle auf NetApp“ vorgestellt, sind Snapshots ein schnelles Mittel, um Online oder Offline Backups selbst großer Datenbanken in kurzer Zeit anzufertigen.

Der Snapshot basiert im Wesentlichen auf einer Sicherung des root-Inodes des aktiven Dateisystems zu einem bestimmten Zeitpunkt und beansprucht zunächst keinen Platz. Er friert allerdings den Zustand des aktiven Dateisystems ein. Erst wenn es Veränderungen an den Blöcken des Dateisystems gibt, werden die modifizierten Blöcke nicht mehr gelöscht und nehmen somit im Snapshot "echten“ Platz ein.

SnapVault

Die nächste – entscheidende – Zutat zur Erstellung eines Backups ist das Vorhandensein eines SnapVault Servers. Diese von NetApp "NearStore“ genannte Anwendung besteht im Wesentlichen aus einem Filer, der jedoch mit langsamen Platten ausgestattet ist und als günstiger Massenspeicher Verwendung findet.

Auf die NearStore werden die Daten des Quell-Volumes übertragen (Einrichtung der SnapVault-Beziehung). Automatisiert werden danach Snapshots auf die NearStore übertragen und dort nach Maßgabe des SnapVault Scheduling für einen gewählten Zeitraum aufbewahrt. Diese beispielsweise täglichen Snapshots bilden die Grundlage der täglichen "inkrementellen“ Sicherung des gewählten Volumes.

Open Systems SnapVault

Der beschriebene Prozess funktioniert üblicherweise aber nur zwischen zwei Filer-Systemen der Firma NetApp. Unsere Aufgabe ist es hingegen, für das Backup der Betriebssystemdateien zu sorgen, die auf den Platten der SUN-, IBM- oder anderer Hardware liegen und lokal verwaltet werden. Die Funktionsweise des Primary Filers (der die Daten an den Secondary Filer, die Nearstore, sendet) muss also von einer Software simuliert werden. Dies übernimmt Open Systems SnapVault. Die Software muss zunächst von NetApp [2] heruntergeladen werden.

Download und Installation

Am Beispiel des Betriebsystems Solaris 10 wird die Installation und Konfiguration der Software hier exemplarisch vorgeführt.

Das Softwarepaket ossv_solaris_v2.6.1.tar.Z wird von der NetApp-Webseite [2] heruntergeladen. Dort erhält man auch die dazu passende Anleitung zur Installation und zum Betrieb der Software in PDF-Form. Ein entsprechend berechtigter Account zum Download ist allerdings notwendig.

Die Datei kann in einem temporären Verzeichnis /tmp_path abgelegt und mit uncompress ossv_solaris_v2.6.1.tar.Z und tar –xvf ossv_solaris_v2.6.1.tar in das Verzeichnis /tmp_path/ossv entpackt werden. Die Installation erfolgt über pkgadd –d /tmp_path/ossv ossv. Die folgende Ausgabe finden Sie in Abbildung 1. Die erwarteten Eingaben sind rot markiert.

Die Software ist nun installiert und die Prozesse svlistener, svcmgr sowie /opt/snapvault/bin/svpmgr sind gestartet. Die Konfiguration auf dem Client ist abgeschlossen. Mit dem Utility /opt/snapvault/bin/svconfigurator kann die Konfiguration überprüft und verändert werden.

Lizenzierung

Zur Benutzung von ossv müssen entsprechende Lizenzen auf dem SnapVault Filer aktiviert sein:

  1. sv_unix_pri: Damit ein Unix-Rechner als Primary Filer behandelt werden kann.
  2. sv_ontap_sec: Damit der Filer als Secondary Filer handelt.

Nach der Lizenzierung muss auf dem Filer ein Volume eingerichtet werden, das die zu sichernden Daten aufnimmt:

Auf nearstore: vol create ossv_clientname aggr0 20g

Eine automatische Erstellung von Snapshots auf diesem Volume muss ausgeschaltet werden:

Auf nearstore: snap sched ossv_clientname 000

Starten des initialen Level 0 Backups

Der initiale Datentransfer wird mit dem Befehl snapvault gestartet. Er erwartet die Angabe der Datenquelle (Primary Filer) und den Speicherort in Form eines Volumes mit einem zu definierenden Qtree (siehe hierzu Abbildung 3 "Starten des SnapVault-Beziehung“).

Durch Angabe von "/“ als zu sichernden Pfad wird das gesamte root-Dateisystem auf den Filer übertragen. Dabei wird von SnapVault selbsttätig analysiert, welche Verzeichnisse unter "/“ tatsächlich lokal vorhanden sind. Über NFS eingehängte Dateisysteme oder virtuelle Dateisysteme (/tmp, /proc, …) werden nicht gesichert. Der Backup-Pfad wird im Beispiel durch die Angabe des Qtrees/backup vervollständigt. Der Erfolg der Sicherung erscheint durch Ausgabe d es SnapVault-Status auf dieses Volume (siehe hierzu Abbildung 3 "Überprüfen des SnapVault-Status“).

Die initiale Level 0 Sicherung ist somit vorhanden.

Einrichten einer täglichen Sicherung

Nach der initialen Sicherung sollen täglich inkrementelle Sicherungen per Snapshot erstellt werden. Auf dem Filer ist dafür der Befehl snapvault snap sched zuständig (siehe hierzu Abbildung 3 "Einrichten des täglichen Backups“).

Das Kommando sorgt für eine Aktualisierung der Spiegelbeziehung zwischen dem Betriebssystem und dem Sicherungsvolume wochentags um 06:00 Uhr. Die erstellten Sicherungen werden auf der Nearstore für 90 Tage vorgehalten.

Restore von Dateien

Prinzipiell gibt es zwei Möglichkeiten, um gesicherte Daten wieder auf das ursprüngliche Unix-System zu transferieren: ndmpcopy und NFS.

Es ist jedoch mit ndmpcopy nicht möglich, einzelne Dateien zurückzusichern. Nicht möglich bedeutet, dass bei normalen Filer-Systemen wahlweise einzelne Dateien oder das gesamte File-System restored werden kann. Es können lediglich keine Wildcards verwendet werden. Ein gangbarer Weg ist es, das Sicherungsvolume einer Maschine per NFS freizugeben und an dieser einzuhängen. So kann sichergestellt werden, dass alle inkrementellen Sicherungen zu jeder Zeit zugänglich sind.

Es ist wichtig zu verstehen, dass mit der hier vorgestellten Methode nur lauffähige Systeme zurückgesichert werden. Vollständig zerstörte, nicht mehr bootfähige Systeme können über diesen Weg nicht wiederhergestellt werden. Um die Freigabe des Volumes für das Unix-System zu erreichen, wird in der /etc/exports auf dem Filer folgende Zeile eingetragen (siehe hierzu Abbildung 3 "Zeile in der /etc/exportfs“) und der Befehl exportfs –a ausgeführt.

Auf dem Unix-System kann das Verzeichnis /backup angelegt und die Zeile (siehe hierzu Abbildung 3 "Zeile in der /etc/vfstab“) in der /etc/vfstab eingetragen werden. Mit mount/backup hängt man das Verzeichnis ein. Unter /backup/daily_backup.X befinden sich die erstellten Sicherungen, wobei X die Anzahl der Tage angibt, die das Backup zurückliegt. Die Dateien können im Anwendungsfall einzeln kopiert oder per rsync verzeichnisweise transferiert werden.

Bedienung von SnapVault auf dem Unix Client

Sämtliche Schreibzugriffe auf den SnapVault Filer können nur vom Filer selbst gestartet werden, nicht vom Unix Client. Der auf dem Unix-System implementierte SnapVault-Befehl besitzt daher nur einen stark eingeschränkten Bedienungsumfang (siehe Abbildung 2).

Fazit

In einer Umgebung, die ohnehin auf Filern von NetApp basiert und NearStore-Systeme für die massenhafte Langzeitspeicherung von Daten einsetzt, ist die Nutzung von ossv als kostengünstige Alternative zum Backup mit separater Soft- und Hardware anzusehen.

Dr. Uwe Bechthold (info@ordix.de).