Disaster Recovery in einer Adobe Commerce Cloud-Umgebung
Disaster Recovery in Adobe Commerce Cloud
Im normalen Leben ist dies keine tägliche Routine, aber manchmal kann Ihr System abstürzen und Sie müssen über einen Wiederherstellungsprozess nachdenken.
Adobe Commerce Cloud (AC) verfügt von Haus aus über einen automatischen Sicherungsprozess. Wenn Sie also nach einer Meldung schnell handeln, haben Sie eine gute Chance, Ihr System fast vollständig wiederherzustellen.
"Die Cloud-Infrastruktur von Adobe Commerce bietet stündliche inkrementelle Backups, die das Dateisystem und die Datenbank der letzten 24 Betriebsstunden umfassen. Nach Ablauf der 24 Stunden werden die Backups nach folgendem Zeitplan erstellt:"
Weiterführende Informationen unter https://devdocs.magento.com/cloud/architecture/pro-architecture.html#backup-and-disaster-recovery
Klingt gut, oder?
Versuchen wir's!
Das klingt in der Theorie sehr gut, aber wie sieht dieser Prozess in der Praxis aus?
Deshalb haben wir beschlossen, einige Tests in einer unserer Umgebungen durchzuführen, um für reale Situationen gut vorbereitet zu sein.
Schritt 1 - "Ich habe alle Produkte gelöscht!"
Als Anwendungsfall haben wir einen realen Fall genommen, den wir mit einem unserer Kunden hatten: "Ich habe alle Produkte gelöscht, bitte helfen Sie mir".
Der Kunde ging also zum AC-Backend, wählte alle Produkte aus und klickte auf Löschen.
Aktion 1: Erstellen Sie ein Support-Ticket
Wir erstellten das folgende Support-Ticket über support.magento.com:
Hello Support-Team,
we've lost ritical data on Production environment and need to have latest Database backup.
How can we choose the backup-snapshot to be used for the recovery?
Is there any downtime of the system?
Kind regards,
Sad Client
Und die Antworten auf die letzten 2 Fragen waren:
Q: How can we choose the backup-snapshot to be used for the recovery?
A: We take backups every hour. The hourly backups are present for 24 hours and then it goes to the retention policy listed here. You just have to specify a time/date that you would like the backup from and let us know which backup you need ie. filesystem or database or both. We will then retrieve the closest available backup to the time specified and provide you with the relevant files on the corresponding cluster.
Q: Is there any downtime of the system?
A: There is no downtime in regards to retrieving the backup files as they are not kept on the clusters themselves. However, as this is a disaster recovery process, I am assuming there is downtime which has sparked the necessity for restoration efforts. If the store is not down already, you will have to place the store in maintenance mode when attempting to restore the database from the backup file provided.
… by Dominique Coelho
Die letzte Sicherung wird auf einem relevanten Cluster (in unserem Fall die Produktion) verfügbar gemacht. Technisch gesehen haben wir also vollen Zugriff auf die Dateien und die Datenbank des gesicherten Systems.
Der Speicherort der wiederhergestellten Dateien ist:
/mnt/recovery/
Schritt 2: Erforderliche Maßnahmen durchführen
Die durchzuführenden Aktionen hängen von der jeweiligen Situation und der Art der Daten ab, die Sie wiederherstellen möchten:
- Die DB ist abgestürzt und Sie möchten eine vollständige Wiederherstellung durchführen
- Einige Dateien wurden aus freigegebenen Ordnern entfernt und Sie müssen sie wiederherstellen
- Einige Fehler in einem Code, der das System zum Absturz gebracht hat, und Sie müssen einen früheren Zustand wiederherstellen
- Magento-Update rückgängig machen
- ... jeder andere Vorfall
In jedem Anwendungsfall kann es eine Reihe von Aktionen geben, die Sie ausführen müssen. Ich werde hier nicht zu sehr ins Detail gehen, da alle diese Aktionen für jeden Wiederherstellungsprozess recht ähnlich sind.
Schritt 3: Löschen Sie die Backups, nachdem Sie fertig sind
Vergessen Sie nicht, die Sicherungskopie zu löschen, wenn Sie fertig sind.
Fazit
Zusammenfassend würde ich sagen, dass der Wiederherstellungsprozess recht einfach ist, wenn man einige verlorene Informationen aus dem Backup wiederherstellen möchte, und gleichzeitig finde ich es recht kompliziert, wenn man eine vollständige Systemwiederherstellung durchführen möchte, denn dann muss man eine lange Liste von Aktionen durchführen. Ich würde eine "Feuer-und-Vergessen"-Lösung vorziehen.
Photo by Liza Pooor on Unsplash