Sichern Sie AWS EFS auf S3

7

Ich habe verzweifelt versucht, einen Weg zu finden, um mein AWS EFS-Dateisystem auf S3 zu sichern, kann aber scheinbar keinen finden.

Es gibt mehrere EC2-Instanzen, die alle Zugriff auf das erwähnte EFS haben. Um den Datenverkehr zu reduzieren, habe ich bereits versucht, eine Lambda-Funktion zu starten, die SSHs an die EFS-Instanzen sendet und "aws s3 sync ..." ausführt. Leider scheint SSHing von Lambda Services keine gute produktionsreife Lösung zu sein.

Ich habe auch versucht, DataPipeline anzupassen, aber das Starten zusätzlicher Instanzen nur für Backups scheint ebenfalls ein Problem zu sein.

Gibt es nicht eine einfache Möglichkeit, EFS in S3 zu sichern?
Anregungen geschätzt.

Wahtye
quelle

Antworten:

7

Eigentlich denke ich, dass S3 Sync das ist, was Sie wollen. Vielleicht Cron auf den EC2-Instanzen einrichten und S3 Sync auf diese Weise aufrufen? Verwenden Sie auch ECS? Ich habe einen Cron-Container, der die Arbeit ziemlich gut macht. Für diejenigen, die mit AWS CLI ( https://aws.amazon.com/cli/ ) nicht vertraut sind, lautet die Syntax für S3 Sync wie folgt:

aws s3 sync /path/to/source/ s3://bucket/destination/
Mistersleep
quelle
1
Was ist mit platzenden Credits? Die Floppy-ähnliche E / A auf einem großen EFS-Volume macht diese Synchronisierung unerträglich, oder?
Rtrigoso
2
  1. Sichern Sie EFS mit einem Tool wie Attic , um eine komprimierte, inkrementelle, de-duplizierte Sicherung auf einer EC2-Instanz zu erstellen.
  2. Verwenden Sie S3FS oder die S3-API, um diese Dateien in S3 hochzuladen. Persönlich verwende ich ein Dropbox-Upload-Skript, das auch gut funktioniert.

Beachten Sie, dass Attic in dem von Ihnen angegebenen Intervall ausgeführt wird, jedoch nur die von Ihnen angegebenen Prüfpunkte beibehalten. Beispielsweise haben Sie möglicherweise tägliche Sicherungen, die jedoch erst nach dem ersten Monat und nach dem ersten Jahr jährlich gespeichert werden. Aus diesem Grund werden Dateien aus dem Speicher gelöscht. Wenn Sie die Dateien nicht aus Ihrem Repository löschen, wird dies nicht schaden, aber Sie werden mehr Speicher als erforderlich verwenden. Aus diesem Grund ist eine Synchronisierung der Attic-Sicherungsdateien möglicherweise besser als eine Kopie.

Tim
quelle
Ich habe gelesen, dass S3FS für eine Produktionsumgebung nicht stabil genug ist. Wir müssen darüber nachdenken, direkt über s3 api auf s3 zu speichern.
Wahtye
Es gibt auch s3tools.org/s3cmd-sync und eine Vielzahl anderer Optionen. Die tatsächlichen AWS-Befehle werden jedoch wahrscheinlich zuverlässiger sein.
Tim
1
@wahtye s3fs ist in der Tat ein bisschen empfindlich. Ich verwende eine ältere Version davon in der Produktion, um S3 als Sicherungsspeicher für meinen ProFTPd-Server verwenden zu können, würde ihm jedoch niemals vertrauen, um Sicherungen zu erstellen. Dafür verwende ich meinen eigenen Code, der äußerst umständlich ist und alle Funktionen nutzt, die S3 zur Gewährleistung der Datenintegrität bietet, z. B. den Content-MD5Upload-Header. Wenn S3 einen Upload mit einer Nutzlast empfängt, die nicht mit dieser übereinstimmt, weigert er sich geradezu Speichern Sie den Inhalt. Eine traurige Anzahl von Bibliotheken und Dienstprogrammen scheint sich damit einfach nicht zu beschäftigen, da es technisch "optional" ist.
Michael - sqlbot