AFS Backup und Recover nicht nur für (Legato) NetWorker Wolfgang Friebel, DESY 28.9.2006 1
Backup Inhalt Schematischer Ablauf Volle und inkrementelle Backups Backup auf Disk Backup auf Tape Recover Recover von Volumes Recover von Files 28.9.2006 2
Konzeptionelle Entscheidungen Backup nur in Einheiten von Volumes Backup vorzugsweise von.backup Volumes Benutzung von vos dump für Backup Dreistufiger Backup Fahrplan (Schedule) zur Minimierung des Datenvolumens Zwischenspeicherung der Volume Dumps auf Disk aus Effizienzgründen (vorerst) keine Datenkompression 28.9.2006 3
Backup schematischer Ablauf 1. Tägliche Erzeugung von.backup volumes mit Bordmitteln von AFS, nicht im Backup Prozess 2. Dump der Volumes gemäß Schedule auf Disk Volle und inkrementelle Dumps mit vos dump 3. Löschen alter Dumps bei hohem Füllstand der Disk garantierte konfigurierbare Verweildauer auf Disk (z.b. 7 Tage) 4. Tägliches Backup der neuen Dumps auf Tape Realisiert mit NetWorker, inkrementelle Backups der Filesysteme, auf denen Volume Dumps liegen 28.9.2006 4
Volle und inkrementelle Backups Volle volume Dumps (vos dump ohne time Parameter) Hohes Datenvolumen Kurze Rückspeicherzeit von Tape für volle Volumes Inkrementelle Dumps evtl. viele Files zur Rekonstruktion eines Volumes nötig Kompromiss durch mehrstufiges Konzept Volle Dumps, Level1 dumps, inkrementelle Dumps zu Level1 Steuerung durch Tabelle im Konfigurationsfile Beispiel: [dump_schedule] ^group 1 7 111 ^project 2 1w 12w ^user 1 7 50 1. Muster für volume Namen (regexp) 2. Abstand in Tagen zwischen inkrementellen Dumps (zum vorigen Dump) 3. Abstand in Tagen zu letztem vollen oder vorigen L1 Dump 4. Abstand in Tagen zwischen vollen Dumps 28.9.2006 5
Backup auf Disk Für jedes Volume Suche nach letztem Dump Geht in der Regel schnell, da normalerweise auf Disk Falls nicht, dann im Backup Index verzeichnet (relativ schnell) Datum und Level des letzten Dumps im Filenamen kodiert, ausserdem Timestamp auf Filesystem bzw. Im Backup Index Mit diesen Angaben Bestimmung, ob und wie Volume Dump zu erfolgen hat Bildung des Filenamens aus Volume Name Dump Level und Dump Zeit Volle und inkrementelle Dumps in verschiedene Directories, um getrennte Tapes für verschiedene Levels zu haben Löschen alter Dumps bei Platzmangel auf Disk 28.9.2006 6
Backup auf Disk (2) Prozedur realisiert in Skript afs_voldump Läuft täglich Warnung wenn keine oder alte.backup Volumes vorhanden Liefert Statistik über Zahl der Dumps, Datenvolumen und Transferraten (summarisch und pro Level) Dadurch Optimierung des Backups durch gleichmäßige Verteilung des Datenvolumens möglich (Änderung der Konfiguration) 28.9.2006 7
Output von afs_voldump Started at Fri Sep 22 03:00:10 2006 Ended normally after 1774 seconds No backup volume for testsuite, use RW volume for dump Volumes Volsize Filesize Backuptime Transferrate Errors ---------------------------------------------------------------------------- Total 275 87.55G 14.33G 1695 8.46M/s 0 Full dumps 10 7.63G 7.55G 497 15.19M/s 0 Level 1 22 7.28G 1.90G 157 12.10M/s 0 Incremental 243 72.64G 4.88G 1041 4.69M/s 0 ============================================================================ amafs/b 2 1.82G 135.00M 4 33.75M/s 0 iole1/a 1 503.48M 1.02M 1 1.02M/s 0 remus/ca 53 8.50G 879.21M 297 2.96M/s 0 remus/cb 62 12.32G 1.19G 321 3.70M/s 0 remus/cc 47 6.71G 848.55M 172 4.93M/s 0 remus/cd 3 1.40G 12.86M 16 803.56k/s 0 remus/ce 2 324.99M 3.31M 2 1.66M/s 0... romulus/ae 5 2.13G 222.30M 23 9.67M/s 0 romulus/ba 1 844.55M 46.74M 4 11.68M/s 0 romulus/bc 2 762.65M 30.70M 14 2.19M/s 0 romulus/ea 2 959.55M 556.89M 80 6.96M/s 0 zyklop1/a 10 11.63G 2.06G 86 24.00M/s 0 zyklop17/a 1 348.01M 61.18M 1 61.18M/s 0 zyklop18/a 2 754.24M 28.12M 0 28.12M/s 0 zyklop2/a 1 251.99M 2.60M 1 2.60M/s 0 zyklop5/a 2 477.22M 11.90M 0 11.90M/s 0 zyklop6/a 6 13.92G 5.92G 197 30.03M/s 0 zyklop8/a 1 236.28M 41.44M 1 41.44M/s 0 ---------------------------------------------------------------------------- 28.9.2006 8
Backup auf Tape Diskpool mit Volume Dumps wird auf Tape gesichert Kann je nach Diskkapazität und garantierter Verweildauer täglich oder seltener erfolgen Inkrementelle NetWorker Backups liefern genau gewünschtes Resultat (nur neue Dumps bzw. Files gelangen auf Tape) Networker braucht intern mindestens ein volles Backup, sowie später weitere volle Backups, um Bänder mit veralteten Daten freigeben zu können (bei uns ca. 2 mal jährlich, konfigurierbar) Lösung ist nicht spezifisch für Networker Keine AFS Metadaten gehen verloren, z.b. ACL s in Dumps Beliebiges anderes Backup Tool oder HSM sollte nutzbar sein Nur aktuelle Dumpfiles sind zu sichern (Standardaufgabe) 28.9.2006 9
Recover Benötigte Informationen Volume Name und Backupdatum, zu dem Recover erfolgt Daraus eindeutige Bestimmung aller für Recover nötigen Filenamen Im günstigsten Fall alle Files noch auf Disk, damit alle Informationen vorhanden Sonst Konsultation des Backup Index (je nach Software) oder Benutzung einer eigenen Datenbank Wir benutzen Backup Index + kein Aufbau einer separaten Datenbank + Benutzung der NetWorker Mechanismen - Abhängigkeit von Backup Software 28.9.2006 10
Alle Files sind auf Disk Recover von Volumes Schnelle Wiederherstellung des Volumes mit vos restore unter neuem Namen Keine Abhängigkeit von NetWorker Einige / alle Files sind auf Tape Rückspeicherung der notwendigen Files auf Disk (Standardaufgabe für jegliche Backup Software) Danach Wiederherstellung des Volumes von Files auf Disk Wiederholte Zurückspeicherung nach kurzer Zeit geht schnell Volume erhält neuen Namen und wird für Benutzer gemountet Alte wiederhergestellte Volumes werden regelmäßig gelöscht Keine Sicherheitsmaßnahmen nötig, da alle Rechte in den Volumes so wieder hergestellt werden wie zur Backup Zeit 28.9.2006 11
Recover von Files In der Regel genügt Angabe eines Filenamens Volume Name wird extrahiert, falls Elemente des Pfades noch existieren und im gleichen Volume wie das File sind Ist Volume Name nicht aus angegebenem Pfad ableitbar, muss er zusätzlich angegeben werden Recover Prozedur: Bestimmung aller nötigen Dumpfile Namen wie bei Volume Recover Suche nach dem File im jüngsten Dumpfile und Recover Falls nicht vorhanden, Suche im nächsten Dumpfile Sobald ein Dumpfile nicht auf Disk, Restore aller noch fehlenden Dumpfiles von Tape Weitere Suche nach File, Restore File oder Fehlermeldung Prozedur im Skript afs_recover realisiert 28.9.2006 12
Recover von Files Die Suche in Dumpfiles erfolgt durch korrektes Verarbeiten der Filestruktur mit einem perl Skript Sämtliche File Metadaten (UNIX und AFS Directory ACL s) werden mit extrahiert Einhaltung der Sicherheit: Extrahierung erfolgt auf geschütztem Server User authentisiert sich gegenüber Server Server entscheidet anhand UNIX mode bits und AFS ACL s ob File an Client zu transferieren ist Bei erfolgreicher Prüfung erfolgt Speicherung an originale Stelle, evtl Umbenennung (file -> file.r) Prozedur ebenfalls im Skript afs_recover enthalten 28.9.2006 13
Beispiele für Recover > time arcx recover /afs/ifh.de/user/f/friebel/.zshrc Recovering file into /afs/ifh.de/user/f/friebel/.zshrc.r 0.08s user 0.10s system 1% cpu 10.259 total > time arcx recover user.friebel Not creating recover volume, backup volume will be mounted Volume is now mounted at /afs/ifh.de/user/f/friebel/recover Volume and mount point will be removed tomorrow. 0.14s user 0.02s system 31% cpu 0.509 total > time arcx recover 20060915 /afs/ifh.de/user/f/friebel/.zshrc Recovering file into /afs/ifh.de/user/f/friebel/.zshrc.r.r 0.14s user 0.01s system 0% cpu 18.724 total > arcx recover 20060915 /afs/ifh.de/user/a/ahaupt/.zshrc friebel has no rights to read.zshrc, exiting 28.9.2006 14
Erweiterungsmöglichkeiten Graphisches User Interface nicht geplant, da recover selten benutzt wird Recover mehrerer Files oder Directories bringt wenig Nutzen, dafür Volume recover in der Regel gut Optimierung des Recovers von Tape Zusammenfassung und Sortierung von Bandoperationen Ist bereits im Funktionsumfang von NetWorker Kompression der Dumpfiles Ja, wenn wir in Platzprobleme im Backup Diskpool laufen Adaption auf andere Backup Systeme Freiwillige? 28.9.2006 15
Zusammenfassung Vorgestelltes Backup Konzept in weiten Teilen unabhängig von vorhandener Backup Lösung Aktuelle Prozeduren seit ca. 1 Jahr im Einsatz Wird zirka 1 mal pro 10 Tage und 500 User benutzt Extrem seltene Supportanfragen seitens der User Stabil arbeitende Lösung mit geringen Anforderungen an Administration Hält Vergleich mit anderen vorgestellten Konzepten (z.b. in AFS best practices Workshop) stand Bisher kein Einsatz ausserhalb unserer AFS Zelle 28.9.2006 16
Fragen? 28.9.2006 17