Ich arbeite für eine kleine Marketingfirma, die auch Webdesign und -entwicklung betreibt. Wir hosten alle unsere Webdesign- und Entwicklungskunden auf einem dedizierten Server bei Hostgator. Wir haben einen dedizierten Server mit RAID 1 konfigurierten Festplatten. Wir führen auch wöchentliche Backups durch, die über cPanel automatisiert und von einer automatisierten FTP-Software lokal heruntergeladen werden.
Heute diskutierten wir darüber, was wir tun würden, wenn Hostgator einen katastrophalen Ausfall hätte. Es könnte sein, dass der Server explodiert ist, Hostgator schwerwiegende Netzwerkprobleme hatte, das FBI einen seiner berühmten "take every server we see" -Razzien durchführte usw. Grundsätzlich jedes Szenario, in dem ein längerer Ausfall zu erwarten ist. Wir haben es dann auf die nächste Stufe gebracht und uns gefragt, was wir tun würden, wenn Hostgator einen längeren Ausfall hätte und wir nicht auf unsere lokalen Backups zugreifen könnten. Dies könnte an Feuer, Überschwemmungen usw. liegen. Ich weiß, dass die Wahrscheinlichkeit groß ist, dass unser Server für längere Zeit nicht erreichbar ist und unsere lokalen Dateien gleichzeitig nicht erreichbar sind, aber alles, was es braucht, sind nur zweischlechte Dinge passieren und das ist, wo wir stehen würden. (Wenn Sie jemals einen platten Reifen bekommen haben und feststellen, dass Ihr Reserverad platt ist oder fehlt, wissen Sie, wie einfach es ist, wenn zwei schlimme Dinge gleichzeitig passieren).
Selbstverständlich möchten wir auf Ereignisse vom Typ "Worst-Case-Szenario" vorbereitet sein, da dies uns mit ziemlicher Sicherheit aus dem Geschäft bringen würde. Meine beiden Fragen lauten also:
Was können wir tun, um auf einen längeren Ausfall von Hostgator vorbereitet zu sein? In einem idealen Szenario sind die Websites unserer Kunden und hoffentlich auch E-Mails schnell wieder einsatzbereit.
Was würde ein robuster Sicherungsplan beinhalten, damit niemals wichtige Daten verloren gehen? Eine ideale Lösung wird automatisiert.
Sie können davon ausgehen, dass die Kosten bei Ihren Antworten keine Rolle spielen. Je günstiger eine Lösung ist, desto besser.
Antworten:
Ich würde vorschlagen, dass Sie:
Spiegeln Sie den gesamten Inhalt und die Konfiguration Ihres Hauptservers automatisch auf einen sekundären Sicherungsserver in einem vollständig separaten Netzwerk in einem anderen Rechenzentrum. Verwenden Sie RSync, FXP, cPanel voodoo oder eine andere Methode, um die Synchronisierung zu automatisieren.
Verwenden Sie die DNS-Failover-Umschaltung, um den Datenverkehr automatisch an den Sicherungsserver weiterzuleiten, falls der Hostgator-Server nicht mehr reagiert.
Dies bedeutet, dass Sie ständig ein "heißes" Backup haben, das auf das Schlimmste wartet, und nicht ein "kaltes" Backup, das manuelle Eingriffe und viel Herumwirbeln und Panik erfordert. Dies bedeutet auch, dass Ihre Kunden nie erfahren werden, dass ihre Website vor Ihnen ausgefallen ist, was für alle Beteiligten ärgerlich sein kann.
Sie können Failover-DNS mit einem Anbieter wie DNS Made Easy einrichten . Für jede von Ihnen gehostete Domain würden Sie bis zu fünf Sicherungs-IP-Adressen einrichten, eine für jeden Ihrer Sicherungsserver. Sobald das erledigt ist ...
DNS Made Easy überprüft Ihren primären Server alle zwei bis vier Minuten und leitet den Datenverkehr an die sekundäre IP-Adresse weiter, wenn keine Antwort erkannt wird.
DNS Made Easy überprüft weiterhin den Primärserver. Wenn das Problem auftritt, wird der Datenverkehr zum ersten Server umgeleitet oder - wenn Sie es vorziehen - in der Sicherungskopie aufbewahrt, während Sie den Fehler diagnostizieren und den primären Server reparieren.
Natürlich erhöht diese Lösung Ihre Betriebskosten, die Sie auf irgendeine Weise an die Kunden weitergeben müssen. Wenn Sie sich jedoch in einer Branche befinden, in der Sie aufgrund von Ausfallzeiten aus dem Geschäft geraten, lohnt es sich wahrscheinlich, für einen weitgehend redundanten Server zu zahlen es für dieses eine Mal rettet es die Firma.
Darüber hinaus:
Duplizieren, duplizieren, duplizieren
Je mehr unabhängige Backups Sie haben, desto besser. Ich speichere Remote-Backups auf einer lokalen Festplatte, die auf einer externen Festplatte gespiegelt ist, in Dropbox, einem Git-Repository und einem Remote-FTP-Konto. Gehen Sie kein Risiko ein. Dupliziere so viel du kannst. Wenn Sie von einer manuellen Sicherung wiederherstellen müssen, ist es besser, eine Auswahl von fünf als eine Auswahl von eins zu haben. Paranoia wird unterschätzt.
Üben Sie, die Sicherungen manuell wiederherzustellen
Wenn Sie noch nie versucht haben, eine Ihrer Sicherungen wiederherzustellen, woher wissen Sie, dass sie funktionieren? Es lohnt sich, Notfallübungen durchzuführen, um zu sehen, was passieren würde, wenn Ihre automatisierten Verfahren fehlschlagen.
UPDATE: Einige andere Dienste, die ich kürzlich entdeckt habe und die in Bezug auf die Sicherung der Site, die Wiederherstellung nach einem Katastrophenfall und die Aufrechterhaltung der Betriebszeit erwähnenswert sind:
Insbesondere Cloudflare scheint nützlich zu sein, um Ausfallzeiten zu vermeiden und die Reaktionsfähigkeit der Website im Allgemeinen zu verbessern.
quelle
Die Notfallwiederherstellung kann eine große Aufgabe sein, insbesondere wenn mehrere Server, Standorte und Datenbanken betroffen sind. Zwei wichtige Elemente, die bei der von Ihnen ausgewählten Lösung berücksichtigt werden müssen, sind die Wiederherstellungszeitziele (RTOs) und die Wiederherstellungspunktziele (RPOs).
RTO ist im Wesentlichen die Erwartung, wie lange es dauern sollte, bis die Websites wieder verfügbar sind. Wenn Sie eine RTO von ein oder zwei Minuten (oder weniger) haben, sollten Sie eine Lösung in Betracht ziehen, die dem entspricht, was Nick vorgeschlagen hat, und die eine Echtzeitreplikation Ihrer Dateien und Daten in ein sekundäres Rechenzentrum und ein automatisches Failover von DNS beinhaltet, das dies könnte Dies kann mit einem kostenpflichtigen Dienst oder mit Hardware in beiden Rechenzentren (z. B. dem BIG-IP Global Traffic Manager) erfolgenvon F5 Networks. Dies kann teuer werden, hängt jedoch weitgehend von der Beantwortung der Frage "Was sind die Kosten für Ausfallzeiten?" Ab. Wenn Ihre RTO ein paar Stunden oder sogar ein paar Tage dauert, können Sie Disaster Recovery-Verfahren in Betracht ziehen, die möglicherweise mehr manuelle Eingriffe erfordern, z. B. das Einschalten von Servern, das Wechseln von DNS usw. Mühsam, aber auf jeden Fall kostengünstig, wenn Ihre RTO dies zulässt.
RPO ist im Grunde genommen, wie oft Sicherungen durchgeführt werden und wie viele Daten Sie im Katastrophenfall verlieren möchten. Wenn Änderungen an Inhalten und / oder Daten häufig vorkommen, beträgt der RPO möglicherweise einige Minuten oder Stunden und es handelt sich möglicherweise um Echtzeitreplikationen oder Hochfrequenzsicherungen. Wenn sich der Inhalt nicht so oft ändert oder Sie Kunden haben, denen es nicht unbedingt wichtig ist, dass sie einige Tage lang Daten verlieren, können Ihre Backups seltener durchgeführt werden.
Wie ich bereits sagte, stimme ich vielem zu, was Nick zu sagen hatte. Eine andere Alternative, die Sie in Betracht ziehen könnten, ist die Nutzung von Cloud-basierten Diensten von einem der größeren Cloud-basierten Anbieter wie Rackspace oder Amazon. Insbesondere diese beiden Anbieter verfügen über eine massive Infrastruktur, um mit nahezu allen Katastrophen fertig zu werden. Bei einer Cloud-Site oder einem Cloud-Server (von Rackspace verwendete Begriffe) haben Sie den Vorteil, dass Sie auch skalieren können und sich nicht unbedingt um die physische Hardware kümmern müssen.
In Rackspace stehen außerdem benutzerdefinierte Optionen zur Verfügung, mit denen Sie Ihre Infrastruktur mischen können, indem Sie eine Kombination aus Cloud-Servern, physischen Servern und Cloud-Dateien als Teil Ihrer Lösung verwenden. Ein hybrider Ansatz kann je nach Kundenbedürfnissen in Betracht gezogen werden, wenn Sie keinen einheitlichen Ansatz wählen möchten.
Wenn es hilft, gibt es auf der Rackspace-Site auch eine Seite für die Notfallwiederherstellung, die hier zu finden ist . (Auch für die Aufzeichnung, ich bin nicht mit Rackspace verbunden, habe aber ihre Dienste in der Vergangenheit verwendet).
Hoffe das hat geholfen.
EDIT : Dachte, dies könnte helfen, wenn Sie Cloud-Lösungen evaluieren. Der Gartner Magic Quadrant-Bericht für Infrastruktur und als Service und Webhosting gibt Ihnen möglicherweise einen Einblick in andere Lösungsanbieter.
quelle
Eine vollständige Replikation des Servers in einer anderen Einrichtung eines anderen Hosting-Unternehmens scheint die naheliegendste Lösung zu sein.
Dateien können mit Tools wie rsync und unisono synchron gehalten werden. SQL-Backups können ebenfalls synchronisiert und dann per Skript in die Slave-Datenbank hochgeladen werden.
quelle
Stellen Sie sicher, dass Sie die Versionskontrolle für Ihren gesamten Code mit einem Quellcode-Repository (SVN oder GIT) ausführen. Verwenden Sie SVN oder GIT?
Sie können ein Konto (kostenlos oder kostenpflichtig) bei einem Drittanbieter-Repository wie Project Locker einrichten . Wenn Sie während der Arbeit Ihren gesamten Code versionieren, wird im Grunde alles in Ihrem Repository gesichert, das sich an einem dritten Speicherort befindet . Dadurch wird die Wahrscheinlichkeit, dass Sie alle Arbeiten auf einmal verlieren, weiter verringert (fast auf Null).
Sie können Ihre SVN-Commits / Checkouts entweder über die Befehlszeile oder über einen Client wie Versions (für Mac) oder TortoiseSVN (für Windows) ausführen.
quelle