Saya memiliki instance EC2 menjalankan server web yang menyimpan file yang diunggah pengguna ke S3. File ditulis sekali dan tidak pernah berubah, tetapi kadang-kadang diambil oleh pengguna. Kami kemungkinan akan mengakumulasikan sekitar 200-500GB data per tahun. Kami ingin memastikan data ini aman, terutama dari penghapusan tidak disengaja dan ingin dapat memulihkan file yang dihapus tanpa alasan apa pun.
Saya telah membaca tentang fitur versi untuk bucket S3, tetapi sepertinya saya tidak dapat menemukan apakah pemulihan dapat dilakukan untuk file tanpa riwayat modifikasi. Lihat dokumen AWS di sini pada versi:
http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectVersioning.html
Dalam contoh-contoh itu, mereka tidak menunjukkan skenario di mana data diunggah, tetapi tidak pernah dimodifikasi, dan kemudian dihapus. Apakah file yang dihapus dalam skenario ini dapat dipulihkan?
Kemudian, kami pikir kami dapat mencadangkan file S3 ke Glacier menggunakan manajemen siklus hidup objek:
http://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html
Tapi, sepertinya ini tidak akan bekerja untuk kita, karena objek file tidak disalin ke Glacier tetapi dipindahkan ke Glacier (lebih tepatnya sepertinya itu adalah atribut objek yang diubah, tetapi toh ...).
Jadi sepertinya tidak ada cara langsung untuk mencadangkan data S3, dan mentransfer data dari S3 ke server lokal mungkin memakan waktu dan dapat menimbulkan biaya transfer yang signifikan dari waktu ke waktu.
Akhirnya, kami pikir kami akan membuat ember baru setiap bulan untuk berfungsi sebagai cadangan penuh bulanan, dan menyalin data ember asli ke yang baru pada Hari 1. Kemudian menggunakan sesuatu seperti duplikat ( http://duplicity.nongnu.org/ ) kami akan menyinkronkan ember cadangan setiap malam. Pada akhir bulan kami akan meletakkan isi ember cadangan di penyimpanan Gletser, dan membuat ember cadangan baru menggunakan salinan ember asli yang baru ... dan ulangi proses ini. Sepertinya ini akan berhasil dan meminimalkan biaya penyimpanan / transfer, tetapi saya tidak yakin apakah duplikat memungkinkan transfer bucket ke bucket secara langsung tanpa membawa data ke klien pengendali terlebih dahulu.
Jadi, saya kira ada beberapa pertanyaan di sini. Pertama, apakah versi S3 memungkinkan pemulihan file yang tidak pernah dimodifikasi? Apakah ada cara untuk "menyalin" file dari S3 ke Glacier yang saya lewatkan? Bisakah duplikasi atau alat lain mentransfer file antara bucket S3 secara langsung untuk menghindari biaya transfer? Akhirnya, apakah saya jauh dari sasaran dalam pendekatan saya untuk mencadangkan data S3?
Terima kasih sebelumnya atas segala wawasan yang bisa Anda berikan!
Memperbarui
Amazon baru-baru ini mengumumkan bahwa versi sekarang berfungsi dengan aturan siklus hidup