Mengapa snapshot dianggap sebagai cadangan sementara bukan cadangan nyata?

27

Saya menggunakan VMware ESXi. Di tim kami, kami menggunakan untuk memberikan snapshot untuk cadangan jangka panjang.

Kemudian kami menghadapi masalah seperti memory spillover dan server terhenti.

Saya mulai membaca artikel VMware knowledgebase dan di mana-mana. Di mana-mana, disarankan untuk tidak memiliki snapshot untuk waktu yang lama.

Bahkan VMware menyarankan untuk menyimpan foto selama maksimal tiga hari.

Tetapi tim kami terus meminta kami untuk memiliki setidaknya dua snapshot permanen (sampai menghapus VM). Terkadang kita dapat menggunakan VM selama setahun).

  1. satu snapshot adalah untuk kondisi mesin baru. (Jadi ketika kami menyelesaikan pengujian suatu aplikasi, kami akan kembali ke keadaan baru dan menginstal aplikasi lain) (Jika saya tidak mengizinkannya, saya mungkin sering perlu meng-host VM.)

  2. Cuplikan berikutnya untuk menjaga VM dalam keadaan tertentu (mungkin mereka akan menemukan masalah dan mempertahankan keadaan itu untuk beberapa waktu. Atau mereka dapat menginstal prasyarat untuk aplikasi dan menjaga mesin siap untuk pengujian.)

Secara logis, kebutuhan mereka tampaknya adil. Tetapi jika saya mengizinkan itu, saya harus mengizinkan mereka untuk memegang snapshot untuk waktu yang lama. Kami tidak menggunakan VM kami sebagai server email atau server database.

Mengapa menyimpan foto untuk waktu lama memiliki efek buruk?

Mengapa snapshot dianggap sebagai cadangan sementara, bukan cadangan nyata?

Samselvaprabu
sumber

Jawaban:

33

Ketika VM memiliki snapshot aktif, I / O disk virtualnya tidak dilakukan pada file .VMDK aktual VM, tetapi disimpan tidak berubah, dan perubahan apa pun dalam VM ditulis ke file fisik yang berbeda; ini memungkinkan pemulihan kondisi VM sebelumnya, tetapi memiliki tiga efek samping penting:

  • Disk I / O untuk VM jauh lebih lambat.
  • File-file "delta" terus tumbuh dari waktu ke waktu, karena semakin banyak I / O disk dilakukan oleh VM.
  • Ketika snapshot dihapus, perubahan yang disimpan dalam file "delta" harus digabungkan kembali ke file .VMDK utama, dan ini sangat lambat dan memakan waktu jika snapshot telah aktif untuk waktu yang lama.

Memang lebih baik untuk tidak menyimpan foto aktif untuk waktu yang lama. Jika Anda memerlukan cadangan jangka panjang dari VM dalam keadaan tertentu, Anda bisa menyalin VM di tempat lain: ini tidak akan memiliki dampak kinerja pada VM, dan Anda akhirnya akan menggunakan lebih sedikit ruang disk daripada berapa lama- snapshot istilah akan terisi dari waktu ke waktu.

Juga, memiliki salinan VM yang disimpan di tempat yang berbeda akan benar-benar membantu Anda jika Anda kehilangan VM: snapshot disimpan bersama dengan VM milik mereka, dan hanya berguna jika VM tersedia; mereka benar-benar tidak berguna dalam kasus kehilangan data aktual (seperti kecelakaan datastore), dan dengan demikian tidak dapat digunakan sebagai cadangan nyata.

Berikut ini beberapa dokumentasi resmi tentang snapshot:

http://kb.vmware.com/selfservice/microsites/search.do?cmd=displayKC&externalId=1015180

Massimo
sumber
1
KB untuk mengkonfirmasi beberapa bulletpoints di atas, lihat baris 2 di bagian resolusi - kb.vmware.com/selfservice/microsites/…
Cold T
5

Beberapa format snapshot yang digunakan oleh vmware menurunkan kinerja seiring waktu karena mereka menyimpan lebih banyak data. Format "batas jarang" yang saya percaya masih merupakan default di versi terbaru tampaknya tidak memiliki properti ini (Anda melihat 3 membaca per baca, dan hingga 2 membaca atau 3 menulis per tulis, tetapi ini tidak t menjadi lebih buruk saat disk terisi). Jadi, saya tidak sepenuhnya yakin bahwa "tidak menyimpan snapshot sekitar untuk waktu yang lama" properti tentu saran yang benar setiap saat.

Satu hal yang saya perhatikan, penggabungan snapshot memakan waktu lama saat mereka menjadi besar. Tergantung pada kasus penggunaan Anda, ini mungkin atau mungkin tidak menjadi masalah.

Sejauh pertanyaan Anda yang lain, tentang "cadangan sementara", yah, itu mudah - cadangan dimaksudkan untuk bertahan dari hilangnya penyimpanan data primer. Karena snapshot dan asal disimpan bersama (dan snapshot tidak berguna tanpa gambar dasar), Anda kehilangan lot - karenanya snapshot sama sekali bukan cadangan.

womble
sumber
5

Saya tahu posting ini agak lama, tetapi pertanyaan dan poin yang diajukan masih sangat relevan.

Snapshots VMware jelas bukan cadangan. Efek samping yang lebih buruk yang saya alami pada saya dan banyak pelanggan, mereka menyimpan snapshot VMware berusia 6 bulan, host ESXi mengalami gangguan yang tidak direncanakan yang menyebabkan ESXi untuk reboot atau reboot diperlukan untuk menghapus gangguan. ESXi dipulihkan, VM di-boot dan semua data telah dikembalikan ke titik waktu pengambilan snapshot VMware.

Dalam skenario ini semua perubahan antara titik waktu di mana snapshot VMware diambil dan saat gangguan hilang begitu saja.

Jadi saran umum saya adalah mengambil snapshot VMware hanya untuk tujuan tertentu dan menghapusnya setelah mereka melayani tujuan itu.

http://kb.vmware.com/kb/1025279

Jay Ge
sumber
3

Sebagai solusi untuk permintaan tim Anda untuk gambar instalasi bersih atau keadaan tertentu, saya akan merekomendasikan menggunakan template. Template mengkloning VM (pada dasarnya hanya salinan) ke keadaan yang tidak dapat dinyalakan atau diubah, itu hanya dapat digunakan sebagai referensi untuk mengkloning salinan. Jadi misalnya, jika saya memiliki templat "Default Debian Install", dan tim server meminta tiga server baru, saya hanya membuat tiga klon baru, menyesuaikan, dan saya selesai.

Hal yang sama dapat dilakukan untuk skenario kedua Anda. Jika VM mencapai kondisi yang ingin Anda rujuk, buat templat. Sejak saat itu, kapan pun Anda perlu referensi, cukup tiru salinan lain.

Jim G.
sumber
1

Gagasan di balik sebuah snapshot lebih merupakan titik pemulihan sebelum Anda melakukan konfigurasi ulang VM (instal perangkat lunak baru, peningkatan besar, dll.). Jadi jika Anda menikmatinya, Anda dapat kembali ke titik di mana ia bekerja dan berjalan bersiul tanpa harus menyalahkan rekan kerja Anda :)

Dan ide umumnya adalah bahwa Anda akan bergabung di beberapa titik di masa depan (ketika Anda dapat menurunkannya untuk sementara waktu tanpa mempengaruhi pengguna Anda).

Bojan Markovic
sumber
1

Anda tidak boleh menyimpan snapshot vmware karena alasan yang sudah dijelaskan oleh orang lain di sini, tetapi yang dilakukan banyak orang adalah mengambil vmware snapsot dan setelah itu dilakukan dengan bersih (tergantung pada tamu apa snapshot itu benar-benar dilakukan) Anda ambil snapshot array penyimpanan Anda untuk mendapatkan dan kemudian Anda dapat mencadangkan / menyalin / mengarsipkan / dll snapshot itu. Setelah Anda membuat snapshot nyata pada array Anda, Anda harus menghapus snapshot vmware secepatnya.

pfo
sumber