Jadi saya kesulitan mencari tahu apa, khususnya perbedaan antara keduanya.
Seperti yang saya pahami, snapshot hanyalah cadangan dari disk drive, sedangkan AMI adalah cadangan dari seluruh sistem (atau contoh yang harus saya katakan), tetapi bukankah seluruh sistem secara teknis sepenuhnya berada di disk drive? dan jika itu masalahnya maka tidak ada perbedaan yang jelas dan saya kehilangan sesuatu?
sumber
Perbedaan utama adalah antara jenis layanan yang dirujuk. Snapshot adalah volume EBS tempat Anda dapat menyimpan status dan melakukan booting ulang dengan data yang sama pada titik waktu tertentu.
AMI serupa, tetapi untuk instans EC2 itu sendiri. Anda tidak dapat mengambil snapshot dari instance yang tidak didukung ebs, tetapi Anda dapat membuat AMI (image sistem) salah satunya.
Umumnya saya menggunakan snapshot EBS sebagai solusi cadangan untuk volume database dan saya menggunakan AMI untuk menyimpan konfigurasi instance
sumber
AMI dapat dibuat menggunakan snapshot. Misalnya, dengan menggunakan satu "snapshot" Anda dapat membuat beberapa AMI, katakanlah satu PV dan satu HVM AMI menggunakan snapshot yang sama.
Jadi, snapshot memiliki data sistem / OS. AMI adalah (snapshot + metadata mesin / perangkat keras).
sumber
Saya juga bingung dengan itu. Berikut cara termudah untuk memahaminya:
EBS Snapshot
sangat sering mewakili cadangan volume EBS tertentu, mungkin volume apa pun (Volume root, volume data, dll.)AMI
(Amazon Machine Image) adalah cadangan Seluruh instans EC2. Misalnya, dengan konfigurasi yang tepat dimungkinkan untuk membuat AMI yang menyertakan beberapa volume EBS.Sekarang, ini mungkin terdengar membingungkan, tetapi keduanya disimpan sebagai "EBS Snapshots".
Coba pikirkan seperti itu:
EBS Snapshot
hanyalah cadangan data.AMI
adalah representasi dari keadaan sistem pada waktu tertentu. Anda juga dapat melakukan boot dari itu.sumber
EBS Volume
adalah disk yang mendasari di belakang EC2.Snapshot
adalah cadangan waktu tertentuvolume
sementara AMI adalah cadangan seluruh instans EC2 yang mungkin memiliki beberapa volume yang terpasang, persis seperti mesin virtual.Dengan Packer , Anda dapat membuat image mesin otomatis termasuk AMI untuk EC2, file VMDK / VMX untuk VMware, ekspor OVF untuk VirtualBox, dll.
Jepretan dapat digunakan untuk mem-backup drive / volume. Ini adalah operasi pencadangan tambahan yang berarti setiap kali Anda mengambil snapshot dari suatu volume, ini hanya akan menambahkan perubahan baru yang ditambahkan / diperkenalkan ke volume sejak pencadangan terakhir Anda (bukan seluruh pencadangan), yang menghemat waktu, ruang, dan pada akhirnya biaya pencadangan .
Foto dapat digunakan di:
Cadangkan drive secara teratur
Ubah jenis volume, misalnya Anda memiliki lalu lintas atau membaca dan menulis dan perlu meningkatkan operasi IO sehingga Anda mengubah dari
gp2
menjadiio1
dengan yang lebih tinggiIOPs
AMI kustom dapat digunakan di:
Untuk pemulihan bencana jika instans EC2 yang sedang berjalan rusak dan tidak dapat berjalan tanpa alasan.
AMI perusahaan standar yang memiliki semua perangkat lunak prasyarat terinstal yang menyederhanakan proses penerapan (misalnya, dikonfigurasi untuk terhubung ke `Splunk, memiliki beberapa perangkat lunak pemantauan dan pengamatan yang diinstal, telah menginstal buruh pelabuhan, atau dikonfigurasi untuk menghubungkan Puppet atau Chef saat startup)
AMI dapat digunakan untuk menyebarkan aplikasi Anda di berbagai wilayah dengan mudah.
Tingkatkan server Anda ke spesifikasi yang lebih tinggi atau berbeda dengan semua perangkat lunak yang terpasang dan konfigurasinya
AMI dapat dibagikan secara publik di seluruh akun AWS.
sumber
Berikut adalah beberapa perbedaan lagi antara AMI dan Snapshots EBS:
1) AMI dapat diluncurkan dan berisi tautan ke perangkat root dan mungkin berisi tautan ke snapshot dari volume data lainnya.
2) Gambar data yang terdapat dalam AMI tidak mewakili titik waktu yang ditentukan dengan baik, kecuali jika instance di-boot ulang, sesuatu yang biasanya tidak dapat diterima untuk lingkungan produksi. Snapshot dapat diambil dengan cara yang konsisten karena titik waktunya yang tepat dapat dikontrol, jadi sebelum snapshot dimulai, dapat dipastikan bahwa semuanya "siap untuk cadangan".
3) AMI dapat dibuat dari snapshot perangkat root yang ada untuk Linux tetapi tidak untuk Windows.
sumber
Sesuai definisi yang diberikan oleh AWS,
AMI adalah template tempat Anda dapat memulai instans EC2. Snapshot EBS adalah salinan tingkat blok dari volume EBS. Volume EBS dapat berupa volume boot (yaitu berisi sistem operasi), atau volume data-only (misalnya berisi file database). Anda menggunakan RegisterImage untuk membuat AMI (dari snapshot).
Ini adalah dua konsep berbeda, diterapkan pada tingkat yang berbeda (volume EBS vs template EC2) Namun, ada beberapa ketergantungan di antara kedua konsep tersebut.
Untuk instans EC2 yang didukung EBS (yaitu instans EC2 yang melakukan boot dari volume EBS), AMI diimplementasikan sebagai Snapshot EBS dari volume boot + beberapa data meta (arsitektur mesin - 32 vs 64 bit -, jenis virtualisasi - HVM vs PV - dll ...)
Jadi, untuk instans EC2 yang didukung EBS, AMI adalah snapshot EBS + file XML. Anda bahkan dapat membuat AMI Anda sendiri berdasarkan snapshot dari volume boot yang Anda miliki.
sumber
Snapshots lebih murah untuk digunakan sebagai strategi cadangan, karena ketika Anda memiliki beberapa snapshot, Anda hanya membayar untuk satu backup penuh dan sisanya, pada dasarnya, hanya berbeda, dan biasanya jauh lebih kecil.
sumber
Anda dapat menganggap AMI sebagai template umum untuk mesin dengan OS dan komponen terinstal yang dipertahankan.
Snapshot dapat menyertakan semua yang dilakukan AMI, tetapi juga menyimpan data disk dari volume EBS.
Yang mana yang Anda putuskan untuk digunakan umumnya akan ditentukan oleh apakah instans Anda didukung EBS dan apakah Anda ingin membuat ulang mesin dengan semua data utuh atau hanya ingin template mesin generik.
sumber
Dari definisi yang disediakan oleh AWS, ini memperjelas perbedaannya - Amazon Machine Image (AMI) adalah templat yang berisi konfigurasi perangkat lunak (misalnya, sistem operasi, server aplikasi, dan aplikasi). Dari AMI, Anda meluncurkan sebuah instance, yang merupakan salinan AMI yang dijalankan sebagai server virtual di cloud. Sedangkan untuk Snapshots Anda dapat mencadangkan data pada volume EBS Anda ke Amazon S3 dengan mengambil snapshot point-in-time. Snapshot adalah cadangan tambahan, yang berarti hanya blok pada perangkat yang telah berubah setelah snapshot terbaru Anda yang disimpan. Saat Anda menghapus snapshot, hanya data eksklusif untuk snapshot itu yang dihapus.
sumber