The Cloud #10: Backup, Synchronisation und Ausfallsicherheit

In vorangegangenen Beiträgen habe ich desöfteren Online-Storage Dienste wie Dropbox, Google Drive usw. vorgestellt.

diese Dienste lassen sich in zwei verschiedenen Varianten nutzen:

  • als Synchronisationsdienst oder
  • als Backupdienst

Synchronisation ist kein Backup, beide gehören aber zusammen

Eine Synchronisation bedeutet einfach nur, dass zwei Daten an zwei verschiedenen Orten identisch bleiben, auch wenn ich an einem Ort etwas ändere. Wichtig ist, dass die realisierte Synchronisationslösung mehrdirektional funktioniert, das bedeutet, egal an welchem der Datenstandorte etwas geändert wird, es wird auf den anderen Standort übertragen.

Wichtig ist, zu realisieren, dass man beides braucht und warum. Sehen wir uns ein Beispiel an.

wir haben eine junge duale Studentin, die an ihrer Bachelorarbeit schreibt. Am Wochenende ist sie zu Hause und schreibt an ihrem Desktop-PC, unter der Woche schreibt sie entweder an ihrem privaten Notebook im Studentenwohnheim oder im Betrieb auf ihrem Desktop-Arbeitsplatz. Sie hat also als erstes das Problem, dass sie Daten an drei verschiedenen Standorten liegen hat, die sie irgendwie zusammenführen muss.

Es gibt „manuelle“ Synchronisationslösungen, die berühmteste ist der USB-Stick, der die Hin- und Herschubsung der Daten realisiert.

Solche manuellen Synchronisationslösungen sind aber riskant. Man kann die Synchronisation vergessen und den STick über Tage liegen lassen. In dieser Zeit kann man ihn entweder ganz verlieren oder er kann beispielsweise auf einmal das letzte Wochenende vor der Abgabe im Büro des Unternehmens eingesperrt sein. Da bleibt dann nur neu schreiben, wenn man den Abgabetermin nicht verpassen will.

Nehmen wir jetzt einmal an, dass unsere Studentin das Problem auf die Art und Weise löst, dass sie ihre Daten im dropbox-Synchronisationsordner speichert. An allen drei Stadnorten hat sie einen Online-Zugang und kann somit auf ihren Dropbox-Ordner zugreifen, und hat somit immer die aktuelle Datei auf allen drei Standorten verfügbar.  Da sie Dropbox als Desktopanwendung installiert hat, geschieht der Synchronisationsvorgnag automatisch, sie muss die Datei nicht manuell hochladen. Problem gelöst, sie kann nichts vergessen und übers Wochenende dumm dastehen.

Davon, dass die Dateien nun aber auf der Dropbox liegen, ist noch lange kein Backup geschafft. Gehen wir kurz mal folgendes Szenario durch: das ist, wenn die Studentin aus Versehen die Bachelorarbeit mit einer leeren Datei überschreibt, weil sie in einem zweiten Tab ihres Textverarbeitungsprogramms ein leeres Dokument hat, den Tab aus Versehen aktiviert und unter Datei… speichern die Datei überschreibt – die Datei wird auf den Dropbox-Ordner synchronisiert und ist jetzt als aktuelle Datei im Dropbox abgelegt.

Das ist an sich noch kein großes Problem. Es gibt diverse Absicherungen dafür Im anderen Tab sollte schließlich die Datei noch geöffnet sein und könnte erneut gespeichert sein (worauf wir uns aber nicht verlassen wollen), und Dropbox selbst bringt ein Revisionssystem mit, mit der man in der Weboberfläche die letzten Versionen der Datei wieder aufrufen kann: Problem gelöst. Wir verlassen uns in diesem Fall auif das Revisionssystem von Dropbox. aber diese Backuplösung ist nicht vollständig, sie schützt uns nicht vor dem, was passiert, wenn jemand speziell unseren Dropbox-Account hackt, sich die Daten kopiert und dann unseren Account auflöst, um uns zu schaden. Und was ist, wenn ein findiges Hackerteam allgemein den Service Dropbox.com hackt und dort die daten kompromittiert oder die Zugangsdaten aller User für die Öffentlichkeit zugänglich macht?

Obwohl wir die Datei also zwischen drei verschiedenen Arbeitsplätzen synchronisieren, wären diese Szenarieren unser Ende. wir könnten zwar eine alte Version der Datei in den anderen zwei Rechnern finden, welche die Dropbox-Änderung noch nicht synchornisiert haben und die Datei daher noch auf dem lokalen Dropbox-Ordner gespeicher thaben, aber an die aktuelle version kommen wir wohl nicht wieder heran.

Deswegen ersetzt eine Synchronisationslösung keine Backuplösung.

Jetzt umgekehrt: warum ersetzt eine Backuplösung keine Synchronisationslösung? wenn wir schließlich die Dateien backupen, müssen wir doch lediglich das Backupmedium zum anderen Ort mitnehmen, um an zwei Orten gleichzeitig mit den Daten arbeiten zu können.

Ok, gehen wir das mal durch. Unsere Studentin schreibt zu Hause an ihrer Bachelorarbeit und kopiert diese zusätzlich zur lokalen Festplatte auf einen USB-Stick, den sie mit in die Arbeit nimmt. Dort macht sie Änderungen. Jetzt vergisst sie den USB-Stick auf der Arbeit, in der er übers Wochenende eingesperrt ist. Dass das blöd ist, leuchtet ein, oder? Und das ist passiert, obwohl ein Backup gemacht wurde.

Die Quintessenz daraus ist, dass Backup nicht ohne Synchronisation geht und umgekehrt. Das einzig sinnvolle System ist, nach jeder Synchronisation zusätzlich automatisch ein Backup durchzuführen und dabei sicherzugehen, dass ein Backup auch dann durchgeführt ist, wenn eine Synchronisation unnötig ist, weil die Daten an allen standorten aktuell sind. Beispiel: Nach jeder Synchronisation usnerer Bachelorarbeit mit Dropbox kopieren wir die jetzt aktuelle Version zusätzlich auf einen lokalen Ordner auf ein Network Attached Storage, (beisiepislweise per FTP), für den wir ein anderes Passwort verändern als für unser Dropboxkonto. Auch beim Backup rutschen wir also wieder in das Thema Sicherheit rein, da ein Eindringling mit unserem Dropbox-Passwot sonst auch auf die NAS kommen würde.

Doch nur, weil Synchronisation und Backup nicht dasselbe sind, heißt das nicht, dass man zwei verschiedene Produkte kaufen muss oder einen hohen Aufwand hat, es gibt durchaus Lösungen, wie sowohl Synchronisation als auch Backup in einem ermöglichen. Es war aber wichtig zu verstehen, dass es zwei verschiedene Prozesse sind, die einander nicht ersetzen können.

Ausfallsicherheitslösungen haben nichts mit Synchronisation oder Backup zu tun

Oftmals herrscht das Falschdenken, dass Lösungen der Ausfallsicherheit eine Lösung zur Synchronisation und des Backups ersetzen können. Das ist falsch. Lösungen zur Ausfallsicherheit haben zwei Zwecke:

  • einen Dienst am laufen zu halten, der wichtig ist und dessen Ausfall schmerzhaft ist. Das gilt beispielsweise für Services, mit denen Unternehmen Geld machen, etwa Datenbank- und Webserver des Online-Shops Amazon. In unserer privaten Heimumgebung könnte dies der lokal laufende Webserver eines freiberuflers sein, der mit Webdesign sein Geld verdient, oder etwa die Dienste auf unserem Network Attached Storage (NAS), mit der wir beispielsweise Musik auf unserer Party streamen. Eine Party ohne Musik wäre nicht mehr das wahre.
  • Datenverlust WÄHREND der Erstellung von Daten zuvorzukommen. Er Ausfallsicherheit schützt aber nicht vor Datenverlust durch Sicherheitseinbrǘche und Datenklau, oder vor datenverlust durch Anwenderfehler (versehentliches Überschreiben), ebensowenig durch zahlreiche Möglichkeiten von Datenverlust durch höhere Gewalt (Feuer, Wasser, Diebstahl)

Ausfallsicherheit verhindert also nur, dass wir Daten verlieren, während wir an ihnen arbeiten. So müssen wir etwa kein Photoshop-Projekt verlieren, während wir es bearbeiten, oder die letzten 50 Seiten unserer Bachelorarbeit, die wir erstellt haben, ohne zwischendrin zu speichern.

sie sorgen einfach dafür, dass unter bestimmten Umständen, wei beispielsweise bei einem Stromausfall oder dem Ausfall einer Festplatte, wir noch die Zeit dazu haben, weiterzuarbeiten, bis die Daten gesichert sind. Beispiel: Während wir an unserer Bachelorarbeit schreiben und die ersten 150 Seiten reintippen, fällt auf einmal der Strom aus, bei dem nicht nur der PC ausgeht, sondern auch eine Festplatte ausfällt. dank unserer USV (unterbrechungsfreien Stromversorgung) am Desktop-PC oder dank dem Akku in unserem Notebook bleibt der Rechner trotz Stromausfall an, und dank unserem RAID1 können wir die Datei sichern, obwohl eine unserer zwei Festplatten ausgefallen ist. DAs schützt usn aber nicht gegen den Ausfall des Hardware-RAID-Controllers, im Falle dessen Ablebens keine der beiden Platten mehr ansprechbar wäre.

Es macht also durchaus Sinn, über derartige Lösungen nachzudenken. In gewissem Maße sind solche Ausfallsicherheitslösungen nur für Power-User interessant oder für Unternehmen und können für den Otto-normalverbraucher durch andere Maßnahmen ersetzt werden. Beispielsweise lässt sich der hier beschriebene Datenverlust auch verhindern, indem man die AutoSpeicherFunktion von microsoft Word anlässt, und somit das Programme alle paar Minuten auf unser Laufwerk speichert. Damit hätten wir zumindest den Stromausfall überlistet. Das Festplattenversagen würde uns alelrdings trotzdem treffen. und auch wenn wir die Word-Datei in unseren Dropbox-Synchornisationsordner speichern lassen, so ist die Datei dann doch erst dann sicher, wenn sie auch zu Dropbox.com hochgeladen wurde (also ein grüner Haken neben der gerade frisch gespeicherten .docx-Datei steht). Solange die Datei nämlich noch nicht synchronisiert wurde, liegt sie noch auf der physikalischen Festplatte, die gerade ausgefallen ist. Es kann bei einer größeren Bachelorarbeit schon mal ein paar Minuten dauern, bis eine solche Datei mit Dropbox.com synchronisiert ist. Außerdem gibt es natürlich auch Datenschutzbedenken, ob man einem externen Storage-Anbieter seine Bachelorarbeit anvertrauen möchte. Man sieht also, auch als Privatperson kommt man nicht vollends drumrum, über Ausfallsicherheitsmaßnahmen nachzudenken. Sinnvolle Gedanken sind:

  • RAID zum Schutz vor Festplattenausfall
  • eine USV oder ein Notebook mit Akku zum Schutz vor Stromausfall. Eine USV schützt zusätzlich vor Spannungsspitzen, was Notebook-Akkus nur begrenzt leisten können
  • Power-User wie beispielsweise Freiberufler überlegen sich vielleicht noch redundante Netzteile an ihrem Desktop-PC oder Heimserver. Es kommt häufiger mal vor, dass auf einem Desktop-Rechner das Netzteil abraucht. Für notebooks sollte man sich zumindest ein Ersatz-Netzteil zulegen, falls es ausfällt, damit man das Notebook noch weiter laden kann.

Davon, dass die Kiste weiter läuft, ist aber noch lange nichts synchronisiert und nichts gebackupt. Wenn jetzt der nächste Gau kommt, bzw. der Akku der USV ausläuft und der strom nicht schon wieder da ist, dann gehen die Daten trotzdem verloren. Wir müssen die daten also noch vom Unfallort wegbringen. Desweiteren gibt es noch andere Szenarieren wie versehentliches oder Löschen/Überschreiben, Datendiebstahl oder Feuer.

Backuplösungen

Skripten

Dateien alleine lassen sich per Skripte einfach zwischen verschiedenen Datenträgern zunächst einmal hin und her kopieren und somit schonmal die erste Stufe eines Backups herstellen. solche Backups werden unter Windows in Batch-Datei (Endung .bat) geschrieben und unter Linux als shellskript (Endung .sh).  Sie können ergänzt werden durch Skriptsprachen, – diese bringen erweiterte Funktionen mitbeispielsweise das automatische Umbenennen der Backupdaten mit Datumsangaben, was jedoch die normale Linux shell auch schon kann. Beispiele sind Windows Power shell für Windows, KiXtart für Windows oder Perl für Linux (Perl geht auch unter Windows, aber ist dort nicht favoirsiert). Wissen über die Kommandozeile des Betriebssytems ist also notwendig, wird aber hier im speziellen nicht behandelt.

Proprietäre Backuptools

Die meisten lösungen bieten proprietäre Backuptools in Form einer grafischen Oberfläche, eines kommandozeilentools oder einer eigenen Skritpsprache, beispiele:

  • Das Datenbankverwaltungssystem MySQL liefert das kommandozeilentool mysqldump mit. Dieses kommandozeilentool kann von einem der oben genannten Skripte aufgerufen werden, so dass das Kommandozeilentool dann ein Backup von der Datenbank macht
  • das Datenbankmanagement-webfrontEnd PHPMyAdmin liefert eine grafische Weboberfläche, mit deren Hilfe man per Mausschubserei ein Backup der Datenbank durchführen kann. automatisieren lässt sich ein solcher vorgang mit den weiter unten erläuterten GUI-Skriptsprachen.
  • mit Hilfe der Skriptsprache ADSI ist es möglich, Windows Active Directory Einträge, die auf einem Windows Server liegen, zu sichern.

Hier hilft nur, sich über die Möglichkeiten der Lösung zu informieren, die diese mitliefert.

GUI-Skriptsprachen

GUI-Skriptsprachen ermöglcihen zusätzlich zu kommandozeilenbasierten Befehlen der zuerst angesprochenen simplen Skriptsprachen, auch aktionen auf einer grafischen Oberfläche, wie beispielsweise Mausklicks, Minimeren und maximieren oder Schließen von Festern oder einfache Tastendrücke auf der Tastatur zu simuleiren. Somit kann man beispielsweise Backups über PHPMyAdmin, die per Mausklicks durchgeführt werden, automatisieren. Berühmte Skriptsprachen dieser Art werden meist nur für Windows genutzt, da die Linuxcommunity ausschließlich auf kommandozeilenorientiertes Skripting setzt. Beispiele von GUI-Skritsprachen aus der Windows-Welt sind AutoIt und AutoHotkey.

Zeitplanung

Die drei oben genannten Lösungen (Skripte, GUI-Skripte und proprietäre Tools) automatisieren nun bestimmte Backupvorgänge. Jetzt müssen wir es noch hinkriegen, diese Lösungen zeitgesteuert in regelmäßigen Zeitabständen ablaufen zu lassen. Dazu gibt es unterschiedliche LÖsungen. Unter Windows steht uns das grafische Systemsteuerungselemetn „Geplante Tasks“ und das kommandozeilentools „schtask.exe“ zur Verfügung. Unter Linux erledigen wir solche Sachen über den Daemon crond und seine Konfigurationsdatei /etc/crontab.

Online-Storages

eine gute Alternative sind mittlerweile Online-Storages. Allerdings nicht die kostenlosen Lösungen die zwischen 2 und 5 GB Speihcerplatz bieten. Das ist selbst für Privatanwender mittlerweile zu wenig. Urlaubsfotos, urlaubsvideos, Steuerdaten, Rechnungen usw. verschlucken heutzutage schon mindestens 100 GB. für solche kapazitäten muss man allerdings zahlen. Ich persönlich empfehle in diesem Sinne Strato HiDrive

Online-Disk-Sharing

„Backup is for pussies. You simply upload your stuff to FTP and let the world back it up for you“

Dieser Spruch mag vielleicht auf daten wie beispielsweise öffentlcih zugänglich Ebooks zu treffen,aber die meisten unserer Daten sind privat und somit nicht für die Öffentlichkeit bestimmt. Dennoch gibt es Online-Lösungen, die statt Cash speihcerplatz miteinander teilen. Das Prinzip der idee ist: man teilt auf einem permanent laufenden Rechner, also am besten auf einem stromsparenden Server wie etwa einer NAS, einen Teil seiner Festplatte und stellt diesem der Weltöffentlichkeit zur Verfügung, um dort verschlüsselte Datenbackups abzulegen. Das bedeutet fremde Leute können dort ihre Daten backupen, man selbst kann aber nicht sehen, was sie darauf ablegen, da die Daten verschlüsselt sind. Dafür erhält man dadurch Speicherplatz anderer Leute, auf die man wiederum eigene Daten ablegen kann. der vorteil ist: Man speichert die Daten auf einem fernen Ort, der abgeschieden ist und daher unempfindlich gegen Hochwasser, Feuer oder Diebstahl ist. Man hilft sich also gegenseitig. eine solche Lösung ist beispielsweise Symform.

Synchronisationslösung

kommandozeilenbasierte tools

unter Windows wären da etwa RoboCopy, rSyncBackup, HardLinkBackup oder allSync.exe zu nennen.

Unter Linux sind die beiden tools rsync oder Unison zu nennen

GUI-Tools

unter windows sind zu empfehlen:

GUIrobocopy, FreeFileSync, Duplicati, Synkron, grsync, Rsnapshopt , Syncovery und Unison, microsoft Syntoy. bis auf das grafische Robocopy gibt es diese  auch allesamt für Linux und wären somit plattformübergreifend einsetzbar. Die Linux Distribution Mandriva bringt außerdem noch Mandriva SyncItAll

Zeitplanung

siehe Backups

Versionskontrolle sind keine Synchronisationslösungen

Einige würden vielleicht auf die idee kommen, dass Versionskontrollsysteme wie beispielsweise Git, Subversion, Visual Source safe oder Team Foundation Server ebenfalls als synchronisationsdienst tauglich wären. Aber sie sind in der Regel dafür überdimensioniert bzw. sogar ungeeignet. Sie eigneen sich lediglcih für das abgleichen von Änderungne zwischen textbaiserten Dateien, aber für das Synchronisieren von Binärdateien liefern sie unnötigen Datenballast.

Advertisements

Über dafrk

IT Consultant in den Bereichen SAP, SAP HANA, Internet of Things, Digital Transformation und IT Security
Dieser Beitrag wurde unter Uncategorized veröffentlicht. Setze ein Lesezeichen auf den Permalink.

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s