یکی از دغدغههای اصلی هنگام کار با ماشینهای مجازی، امکان بازگشت به وضعیت قبلی سیستم است؛ بهخصوص وقتی قصد تست نرمافزار جدید، نصب آپدیت یا تغییر تنظیمات حساس را داریم. در چنین شرایطی، قابلیت Snapshot مثل یک نقطهی بازیابی (Restore Point) عمل میکند و وضعیت فعلی ماشین مجازی (دیسک، تنظیمات و حتی حافظه در حال اجرا) را ذخیره میکند. با کمک Snapshot میتوان در صورت بروز مشکل، سیستم را دقیقاً به همان وضعیت قبل بازگرداند. در این مطلب به نحوه Snapshot گرفتن از ماشین مجازی در VMWare، Hyper V و VirtualBox میپردازیم.
البته باید توجه داشت که Snapshot با Backup تفاوت دارد؛ اسنپشات بیشتر برای تست و بازگردانی سریع استفاده میشود و برای نگهداری بلندمدت یا حفاظت از دادهها، همیشه به بکاپ کامل نیاز است.
اهمیت SnapShot در کار با سرور
تصور کنید روی یک سرور مجازی ایران مشغول تست نرمافزار یا اجرای پروژه هستید. در چنین محیطی معمولاً بهصورت روزمره تغییرات زیادی اتفاق میافتد و اگر مشکلی رخ دهد، اختلال مستقیم روی سرویس شما ایجاد میشود. اینجاست که Snapshot مثل یک شبکه ایمنی عمل میکند؛ کافی است قبل از هر تغییر مهم، یک Snapshot بگیرید تا در صورت بروز خطا، با چند کلیک سیستم را به عقب برگردانید.
از طرف دیگر، اگر شما در حال مدیریت یک سرور اختصاصی ایران هستید، اهمیت Snapshot حتی بیشتر میشود. چون در سرور اختصاصی معمولاً سرویسهای حیاتی سازمانی، دیتابیسهای مهم یا اپلیکیشنهای پرکاربرد اجرا میشوند و هر ثانیه downtime میتواند هزینهساز باشد. استفاده از Snapshot در چنین سروری کمک میکند پیش از بهروزرسانیهای سیستمی یا تغییرات زیرساختی، یک نقطه بازیابی مطمئن داشته باشید و ریسک خرابی یا قطعی سرویس به حداقل برسد.
تفاوت Hyper-V، VMWare و VirtualBox
ویژگی / هایپروایزر | VMware (vSphere/Workstation) | Hyper-V (Checkpoint) | VirtualBox |
---|---|---|---|
نام قابلیت | Snapshot | Checkpoint | Snapshot |
زمان گرفتن Snapshot | VM روشن یا خاموش | VM روشن یا خاموش | ترجیحاً خاموش (یا Saved state) |
ذخیره RAM | بله (اختیاری) | بله (درصورت روشن بودن VM) | خیر (فقط وضعیت دیسک و تنظیمات) |
هماهنگی فایلسیستم (Quiesce) | بله (با VMware Tools) | بخشی از Hyper-V Integration Services | خیر |
فایلهای ایجادشده | VMDK Delta + Metadata | AVHDX + BIN/VSV + Metadata | VDI/VHD Snapshot + Metadata |
کاربرد اصلی | تست تغییرات، آپدیت، Rollback سریع | تست، توسعه، سناریوهای موقتی | تست نرمافزار، آموزش، بازگشت سریع |
محدودیتها | زیاد بودن Snapshot باعث کندی عملکرد و رشد دیسک | استفاده طولانی باعث افزایش حجم AVHDX و افت کارایی | در حالت روشن ممکن است ناپایدار شود |
بازیابی (Restore) | از Manage Snapshots انتخاب و بازگردانی میشود | از بخش Checkpoints انتخاب و اعمال میشود | از تب Snapshots انتخاب و Restore میشود |
مناسب برای | محیطهای سازمانی و دیتاسنتری | ویندوز سرور و توسعه روی ویندوز | تست سیستمعاملها و محیطهای آموزشی |
آموزش Snapshot گرفتن از ماشین مجازی در VMWare در 4 گام
در اولین بخش مقاله سراغ آموزش گرفتن اسنپ شات در vmware در چند گام سریع و ساده خواهیم رفت.
برای شروع، وارد vCenter یا vSphere Web Client شوید و به سراغ ماشین مجازی موردنظر بروید.
پس از یافتن VM، روی آن کلیک راست کرده یا از منوی Actions گزینه Snapshots و سپس Take Snapshot را انتخاب کنید.
یک پنجره برای شما باز میشود که در آن باید:
- نامی برای اسنپشات بنویسید، مانند «Before installing software package».
- توضیح اختیاری (Description) درباره دلیل گرفتن اسنپشات و وضعیت فعلی VM اضافه کنید.
در همان پنجره میتوانید گزینههای پیشرفته زیر را فعال کنید:
- Snapshot the virtual machine’s memory: برای ذخیره وضعیت حافظه RAM در لحظه اسنپشات.
- Quiesce guest file system: با کمک VMware Tools، فایلسیستم VM را فریز میکند تا دادهها در حالت سازگار ذخیره شوند.
پس از انتخاب گزینهها، دکمه Take Snapshot را بزنید. طی چند ثانیه، اسنپشات شما ساخته میشود و در فهرست اسنپشاتهای VM ظاهر میشود.
برای مشاهده اسنپ شات کافیاست روی ماشین مجازی راست کلیک کرده و گزینه Manage Snapshot را انتخاب کنید. اسنپ شات با نام منتخب شما برایتان ظاهر میشود.
آموزش Snapshot گرفتن از ماشین مجازی در Hyper-V
قابلیت گرفتن Snapshot در Hyper-V با ساخت یک چک پوینت عملی خواهد شد. این قابلیت به شما این امکان را میدهد تا وضعیت فعلی یک ماشین مجازی را ذخیره کرده و درصورت نیاز، به همان حالت بازگردید. برای ایجاد یک Checkpoint، مراحل زیر را دنبال کنید:
مرحله اول: اجرای Hyper-V Manager
ابتدا نرمافزار Hyper-V Manager را باز کنید.
در این مرحله میتوانید یک فایل جداگانه به اسم checkpoint ایجاد کنید تا فایلها در آن قرار گیرد و کارتان برای مدیریت آن سادهتر شود.
مرحله دوم: انتخاب ماشین مجازی و ایجاد Checkpoint
در این مرحله از Snapshot گرفتن از ماشین مجازی با Hyper-V، ماشینی را که قصد دارید از آن Snapshot بگیرید، انتخاب کرده و روی آن راستکلیک کنید. از منوی راستکلیک، گزینه Checkpoint را انتخاب کنید تا Hyper-V فرآیند ساخت Snapshot را آغاز کند.
مرحله سوم: بررسی فایلهای background
حین ایجاد Checkpoint، Hyper-V چند فایل کلیدی در background تولید میکند:
- فایل AVHDX: دیسکی ایجاد میشود که از این پس تغییرات جدید ماشین به جای دیسک اصلی (VHDX) روی این فایل ذخیره خواهد شد.
- فایلهای حافظه (درصورت روشن بودن ماشین): اگر ماشین مجازی روشن باشد، فایلهای .BIN (برای RAM) و .VSV (برای وضعیت سختافزار مجازی) ایجاد میشوند.
- فایل پیکربندی یا متادیتا: شامل اطلاعات تنظیمات و وضعیت کلی ماشین مجازی برای بازیابی دقیق در آینده.
مرحله چهارم: بررسی موفقیتآمیز بودن عملیات
پس از چند لحظه، در بخش Checkpoints زیر ماشین مجازی، میتوانید Snapshot جدید را مشاهده کنید.
Export و Import کردن ماشین مجازی همراه با Checkpoint
برای تهیه نسخه پشتیبان یا انتقال ماشین مجازی به سیستم دیگر شما میتوانید از بخش Action روی گزینه Export کلیک کرده و مسیر ذخیرهسازی فایلهای Export (شامل فایلهای VHD/VHDX، فایل تنظیمات و Checkpoints) را مشخص کنید.
برای بازیابی یا کپی ماشین روی یک سیستم دیگر نیز، کافیاست گزینه Import Virtual Machine را از بخش action انتخاب کنید.
مسیر فولدری که فایلهای Export را در آن ذخیره کردید، انتخاب کرده و به مرحله بعدی بروید.
ماشین مجازی مورد نظر را از لیست فایلهای Export انتخاب کنید.
حالا سه نوع Import را میتوانید انتخاب کنید:
- Register in-place: فایلها در همان مسیر اولیه باقی میمانند و ماشین با همان ID ثبت میشود. این گزینه برای زمانی مناسب است که قبلا ماشین حذف شده باشد.
- Restore the virtual machine: فایلها کپی میشوند و ID ثابت میماند؛ اگر ماشین اصلی موجود نباشد، نیاز به حذف قبلی ندارد.
- Copy the virtual machine: فایلها کپی میشوند و برای ماشین جدید یک ID جدید ساخته میشود، بهطوریکه بتوان این ماشین را به همان هاست چندین بار import کرد. این گزینه برای کلون از Snapshot این گزینه مناسب است.
در ادامه مراحل Import در آموزش گرفتن Snapshot در Hyper-V ، میتوانید مسیر جدیدی برای ذخیرهسازی فایلهای پیکربندی و دیسکهای ماشین مجازی انتخاب یا از مسیر پیشفرض استفاده کنید.
پس از انتخاب گزینهها و تایید نهایی، Hyper-V ماشین مجازی را با تمام مشخصات و Checkpointها وارد محیط کاری میکند. حالا میتوانید ماشین جدید را اجرا، تغییر نام یا تنظیمات آن را ویرایش کنید، بدون اینکه تاثیری روی نسخه اصلی داشته باشد.
توجه: Checkpoint ها ابزار مناسبی برای تست، نصب نرمافزار یا اعمال تغییرات حساس هستند، اما استفاده بلندمدت از آنها را توصیه نمیکنیم؛ زیرا ممکن است باعث افزایش حجم دیسک و کندی عملکرد شود.
آموزش Snapshot گرفتن از ماشین مجازی در VirtualBox
اکنون سراغ ماشین مجازی با هایپروایزر VirtualBox میرویم.
اگر با مفاهیم ماشین مجازی و هایپروایزرها آشنایی ندارید، پیشنهاد میکنیم مقاله مجازی سازی چیست را بخوانید.
مرحله اول: انتخاب ماشین مجازی
ابتدا نرمافزار VirtualBox را باز کرده و ماشین مجازی مورد نظر خود را از لیست سمت چپ انتخاب کنید. توجه داشته باشید که ماشین باید در وضعیت خاموش (Powered Off) یا متوقف (Saved) باشد.
مرحله دوم: باز کردن پنجره Snapshots
پس از انتخاب ماشین، از نوار بالای نرمافزار روی تب Snapshots کلیک کنید. این بخش وضعیتهای ذخیرهشده ماشین مجازی را نمایش میدهد. روی آیکون دوربین یا گزینه Take کلیک کنید. با این کار پنجرهای برای وارد کردن اطلاعات Snapshot باز خواهد شد.
مرحله سوم: نامگذاری Snapshot
در این پنجره، یک نام مشخص و توصیفی برای Snapshot خود وارد کنید (برای مثال: before install x). درصورت تمایل میتوانید توضیحی کوتاه نیز در بخش Description بنویسید.
مرحله چهارم: ذخیره Snapshot
روی دکمهی OK کلیک کنید تا Snapshot ذخیره شود. اکنون این وضعیت بهعنوان یک نقطه بازیابی در پنل Snapshots نمایش داده خواهد شد. در این قسمت از آموزش گرفتن Snapshot در VirtualBox برای مشاهده لیست اسنپ شاتها به بخش virtualbox manager بروید.
پس از کلیک روی منوی همبرگری، روی snapshot بزنید. لیست اسنپ شاتهای ایجاد شده را خواهید دید.
بازگردانی (Restore) یک Snapshot در VirtualBox
گاهی در روند کار با ماشین مجازی، همهچیز طبق برنامه پیش نمیرود و نیاز دارید به نقطه امن قبلی بازگردید. اینجاست که قابلیت بازگردانی Snapshot در VirtualBox به کمکتان میآید. برای بازگشت به یک Snapshot قبلی، مراحل زیر را دنبال کنید:
مرحله اول: خاموش کردن ماشین مجازی
برای بازگردانی اسنپشات، ماشین مجازی شما باید خاموش باشد. اگر ماشین هنوز روشن است، ابتدا آن را ببندید.
مرحله دوم: انتخاب گزینه خاموشی کامل
در هنگام بستن پنجره ماشین مجازی، پنجرهای ظاهر میشود که چند گزینه در اختیار شما قرار میدهد. گزینه Power off the machine را انتخاب کنید تا ماشین بهطور کامل خاموش شود.
مرحله سوم: ورود به بخش Snapshots
پس از خاموش شدن ماشین، به پنجره اصلی VirtualBox (VirtualBox Manager) برگردید. ماشین مجازی مورد نظر را انتخاب کرده و به تب Snapshots بروید. اگر آن را نمیبینید، از نماد منو (سهخط افقی یا آیکون همبرگر) برای باز کردن آن استفاده کنید.
مرحله چهارم: انتخاب Snapshot مورد نظر
در این بخش، لیست Snapshotهایی را میبینید که قبلا ذخیره کردید. Snapshot دلخواهی را که میخواهید به آن بازگردید انتخاب کرده و روی گزینه Restore کلیک کنید.
مرحله پنجم: تصمیمگیری درباره ایجاد Snapshot جدید
در پنجرهای که باز میشود، از شما پرسیده میشود که آیا مایل هستید قبل از بازگردانی، یک Snapshot جدید از وضعیت فعلی ماشین ایجاد شود یا نه.
- اگر میخواهید وضعیت فعلی حفظ شود، تیک گزینه Take a snapshot of the current state را فعال بگذارید.
- اگر مطمئن هستید که به وضعیت فعلی نیازی ندارید، تیک را بردارید و مستقیم به بازگردانی بروید.
مرحله ششم: تایید و انجام بازگردانی
پس از زدن دکمه Restore، وضعیت ماشین مجازی به حالت همان Snapshot انتخابی برمیگردد. توجه داشته باشید بازگردانی بهصورت کامل زمانی اعمال میشود که شما بار دیگر ماشین را روشن کنید.
جمعبندی
در این مطلب آموزش Snapshot گرفتن از ماشین مجازی در vmware، Hyper-V و VirtualBox را بررسی کردیم. چه در VMware باشید، چه در VirtualBox یا Hyper-V، با اسنپ شات میتوانید هر لحظه از وضعیت ماشین مجازی را ثبت کرده و به آن برگردید. این قابلیت، بهویژه هنگام نصب آپدیتهای سیستمی، تست نرمافزارهای جدید یا دستکاری تنظیمات حساس مثل بستن کمربند ایمنی قبل از رانندگی است. البته فراموش نکنید اسنپشات، جایگزین بکاپ نیست! فایل اسنپشات در واقع فقط یک لاگ تغییرات محسوب میشود و نیاز است هوشمندانه از آن استفاده کنید.