Persistensi Data EC2 Amazon

25

Menurut FAQ Amazon EC2 , ketika sebuah instance dihentikan, data tersebut hilang. Langkah apa yang bisa saya ambil untuk menyimpan data jika instance saya di-reboot? Saya telah mencari ke dalam EBS dan S3 - apakah ini berguna untuk menyimpan database yang aktif? Seberapa sering instance di-reboot?

Kyle Cronin
sumber
2
Catatan sidenote tentang terminologi: perhatikan bahwa mengakhiri sebuah instance berbeda dari sekadar me - reboot- nya. Menghentikan tisu penyimpanan instance saat reboot tidak (lihat misalnya stackoverflow.com/questions/637790/… ). Jadi Anda tidak bermaksud me-reboot :)
Jonik

Jawaban:

25

Seperti yang dikatakan orang lain, EBS - Elastic Block Storage. Saya menggunakannya sendiri sekarang dirilis ke masyarakat umum. Lebih baik dari S3 pada banyak poin:

  • EBS cepat . Lebih cepat daripada tunggangan lokal, menurut Amazon.
  • EBS dipasang sebagai perangkat yang tepat . Tidak seperti S3, yang Anda perlukan logika akses oject S3 kustom dalam kode Anda, atau middleware (JungleDisk, ElasticDisk, dkk) yang menghadirkan masalah dan biaya mereka sendiri
  • EBS mudah dicadangkan . Amazon memberikan satu kemampuan untuk mengambil bidikan jepretan, yang disimpan di S3
  • EBS bersifat portabel di antara instance - volume dapat dilepas dari satu instance, dan dilampirkan ke instance lainnya
  • Perangkat EBS bahkan dapat dihubungkan secara RAID untuk meningkatkan keandalan

Pengalaman saya dengan EBS sejauh ini merupakan hal paling positif tentang AWS yang saya tangani hingga saat ini.


Pembaruan: Sementara pengalaman saya dengan EBS positif, yang lain mengalami masalah. Sangat khusus, EBS tidak mengimplementasikan fsync () dengan benar. Ted Dziuba memiliki beberapa kata menarik tentang ini di posting blognya Amazon - Tujuan Nyeri : Mitos 2: Arsitektur Akan Menyelamatkan Anda dari Kegagalan Cloud

Ini semakin menghibur dengan Amazon Elastic Block Store, yang, seperti yang ditemukan oleh administrator Reddit, akan dengan senang hati menerima panggilan ke fsync (), dan berbohong kepada wajah Anda, mengatakan bahwa data telah ditulis ke disk, ketika mungkin tidak memiliki telah.

Stu Thompson
sumber
EBS terkadang cepat, kadang lambat. Meretas banyak volume secara bersamaan sangat membantu.
ceejayoz
4

EBS pasti akan berfungsi untuk database, dan merupakan salah satu contoh dalam Deskripsi EBS Amazon . "Amazon EBS sangat cocok untuk aplikasi yang membutuhkan database ..."

EBS akan bekerja seperti perangkat blok (pikirkan hard disk), memberi Anda kebebasan luas dan kenyamanan menggunakannya. S3 secara konseptual lebih seperti FTP yang sangat cepat, dengan API khusus. Anda dapat menggunakannya sebagai bagian dari database, tetapi database standar tidak berjalan di atasnya (belum?).

Anda akan ingin meninjau deskripsi kinerja Amazon (EBS> S3), daya tahan (S3> EBS) dan harga (tergantung).

Joshdan
sumber
2

Seperti disebutkan dalam jawaban lain, EBS adalah solusi standar untuk penyimpanan disk yang persisten dan nyaman. Itu harus menjadi pilihan default Anda. Memang, tipe instance EC2 yang lebih baru menggunakannya secara default, atas penyimpanan instance orisinal yang tidak bertahan lama.

Namun, ketika mempertimbangkan kegigihan, Anda juga perlu mempertimbangkan ketersediaan (menghindari waktu ketika data tidak tersedia) dan daya tahan (menghindari kehilangan data) untuk data Anda.

EBS mencakup kasus penggunaan dasar, tetapi perlu diingat:

  • S3 dirancang untuk daya tahan yang lebih tinggi daripada EBS. Sederhananya, mereka menyimpan lebih banyak salinan data Anda, dan mengklaim ketahanan 99,999999999% sangat tinggi untuk S3 (lihat FAQ S3). Probabilitas numerik aktual di sini (yang begitu tinggi membuat invasi Mars terlihat lebih mungkin) tidak sepenting fakta bahwa AWS telah mempertaruhkan reputasi mereka pada daya tahan S3 dan memiliki catatan yang sangat baik di sini. Hal yang sama tidak berlaku untuk EBS.
  • Sementara Amazon tidak akan memberikan statistik ini secara langsung, banyak orang percaya penyimpanan instan secara historis menawarkan ketersediaan yang lebih tinggi daripada EBS.

Pemadaman AWS baru-baru ini, seperti kegagalan multi-hari yang parah pada tahun 2011 dan yang lainnya pada tahun 2012 , memberikan beberapa ilustrasi tentang kompleksitas EBS dan risiko kecil namun tidak dapat diabaikan dari pemadaman dan kehilangan data.

Intinya: Untuk memastikan Anda tidak akan kehilangan data, simpan cadangan data di S3 . Jepretan EBS adalah cara mudah untuk melakukan ini untuk EBS. Jika ketersediaan tinggi sangat penting, pertimbangkan juga menggunakan penyimpanan instan di beberapa zona ketersediaan (selain, atau bukannya, EBS).

cemburu
sumber
0

Kedengarannya seperti jika Anda khawatir kehilangan data, maka Anda memerlukan EBS yang disebutkan di atas . Ada sedikit intro di sini .

Saya pribadi belum melihatnya lebih dari ini sejauh ini, saya hanya menggunakan S3 untuk cadangan saat ini.

Scott Bennett-McLeish
sumber