در این مقاله قصد داریم راجب یکی از قابلیت های مجازی سازی سرور یعنی Snapshot صحبت کنیم . در این مقاله توضیحاتی راجب اینکه Snapshot چیست داده شده سپس روش کار اسنپ شات و همچنین آموزش گرفتن Snapshot در VMware پوشش داده شده است پس با ما همراه باشید.
به گرفتن یک عکس از محتویات و تنظیمات ماشین مجازی یا به عبارت دیگر گرفتن یک بک آپ از ماشین مجازی اسنپ شات snapshot میگویند.
باید در نظر داشته باشید که اسنپ شات Snapshot برای بکاپ گیری روش مناسبی نیست و برای مواقعی به کار میرود که شما خطر ریسک بالایی در اضافه کردن مورد جدیدی بر روی سیستم عامل موجود بر روی ماشین مجازی دارید و نیاز است که اگر بعد از تغییرات مشکلی برای سیستم پیش آمد به راحتی به مرحله قبل از تغییرات بازگردید.
برای مثال Restore Point سیستم عامل ویندوز نیز برای همین منظور به کار میرود وقتی که نیاز است درایوری بر روی سیستم عامل نصب شود ویندوز قابلیت این را دارد که از تنظیمات کنونی بک آپ تهیه کرده و در صورت مشکل احتمالی قابلیت بازگشت به مرحله قبل را برای شما فراهم کند.
روش کار اسنپ شات در محیط مجازی به این صورت است که Virtual Disk اصلی ماشین مجازی شما به حالت Read Only یا فقط خواندنی قرار میگیرد و بلافاصله یک دیسک جدید با همان حجم ایجاد میشود و تغییرات جدید درون آن به اصطلاح دلتا دیسک قرار میگیرد.
به دلیل اینکه اسنپ شات ها باعث افزایش فضای دیسک میشوند معمولا پیشنهاد میشود که آنها را برای بیشتر از چند روز نگهداری نکنید چون کارایی سرور و ماشین مجازی شما را پایین میآورد.
دقت داشته باشید اسنپ شاتی که به مدت طولانی نگه داشته شود به زمان زیادی برای پاک شدن نیز نیاز دارد چون باید قبل اینکه آن دلتا دیسک پاک شود تمام اطلاعات آن وارد دیسک اصلی شود و اگر تغیرات زیادی روی دلتا دیسک نسبت به دیسک اصلی به وجود امده باشد طبیعتا زمان زیادی برای پاک شدن نیاز دارد.
به عمل کپی کردن اطلاعات دلتا دیسک ها درون دیسک اصلی که در هنگام پاک کردن اسنپ شات رخ میدهد به اصطلاح Consolidate میگویند.
این عمل به صورت خودکار انجام میگیرد که البته گزینه ای هم وجود دارد که وقتی اسنپ شاتی با مشکل مواجه شد بتوانید به صورت دستی این کار را انجام دهید.
این آموزش به صورت کلی است و در ESXI و همچنین درون vCenter و درون VMware workstation نیز به صورت مشابه عمل میکند.
در قسمت بعد باید نامی برای Snapshot مورد نظر انتخاب کنید. و اگر توضیحات خاصی مدنظر شماست در قسمت Description وارد نمایید.
در این قسمت دو گزینه موجود است که میتوانید انتخاب کنید:
با انتخاب گزینه Snapshot the virtual machine’s memory علاوه بر محتویات هارد ماشین مجازی و تنظیمات آن از محتویات موجود درون حافظه RAM ماشین مجازی هم اسنپ شات گرفته میشود به عبارتی دیگر از دیتاهای برنامههایی که در حال اجرا درون حافظه Memory هستند هم کپی تهیه شده و درون فایلی ذخیره میگردد و زمانی که ما عمل Revert را انجام دادیم آن ماشین مجازی روشن و با همان حالت قبل بالا میآید.
با انتخاب گزینه Quiesce guest file system در هنگام گرفتن اسنپ شات از فایل های باز نیز کپی تهیه میشود .
این گزینه معمولا برای نرم افزار هایی مانند Veeam Backup یا دیگر دیگر نرم افزارها کاربرد دارد. به عبارتی این نرمافزار ها وقتی میخواهند از یک ماشین مجازی بک آپ بگیرند ابتدا یک اسنپ شات گرفته و از آن استفاده میکنند و بعد از اتمام کار آن اسنپ شات به طور اتوماتیک پاک میشود.
در این بخش با زدن دکمه Delete All تمام اسنپ شات ها پاک میشوند و تمام دلتا دیسکهایی که ایجاد شده اند درون دیسک اصلی ماشین مجازی کپی خواهند شد.
همانطور که قبلا هم بیان کردیم سرعت پاک شدن اسنپ شات ها با قدمت آن ها رابطه عکس دارد به عبارتی دیگر هر چقدر طول عمر اسنپ شات ها بالاتر باشد و اطلاعات زیادی روی آنها ذخیره شده باشد سرعت پاک شدن و Consolidate آن نیز پایین تر خواهد بود.
یک نکته دیگر اینکه زمانی که میخواهید همه اسنپ شات ها را پاک کنید دقت داشته باشید که درون همان اسنپ شاتی قرار داشته باشید که آخرین تغییرات در آن وجود دارد چون اگر شما عمل Revert به اسنپ شات خاصی را انجام داده باشید و اقدام به پاک کردن همه اسنپ شات ها با گزینه Delete All کنید اطلاعات موجود درون اسنپ شات های بعدی از بین خواهد رفت.
وقتی از منوی Manage Snapshot ، اسنپ شات خاصی را انتخاب میکنید و گزینه Delete را میزنید فقط همان اسنپ شات پاک شده و محتویات آن در دلتا دیسک قبلی کپی خواهد شد.
باید توجه داشته باشید که وقتی شما یک اسنپ شات جدید میگیرید و اسنپ شات قبلی شما همچنان وجود دارد آن اسنپ شات قبلی به حالت Read only و یا فقط خواندنی تبدیل میگردد.
با توجه به فایل ها متوجه میشوید که بعد از گرفتن اسنپ شات فایل app-01a-000001.vmdk ایجاد شده است این همان دلتا دیسک میباشد که تا وقتی اسنپ شات پاک نشود و یا اسنپ شات جدیدی گرفته نشود تمام تغییرات ماشین مجازی روی آن ذخیره خواهد شد.
فایل app-01a.vmdk نیز هارد اصلی ماشین مجازی میباشد که در حال حاضر به حالت فقط خواندنی تبدیل شده است.
درون شکل دو فایل دیگر هم وجود دارند که مربوط به اسنپ شات هستند.
فایل app-01a-snapshot2.vmsn تنظیمات ماشین مجازی را ذخیره کرده است.
فایل app-01a-snapshot2.vmsn وقتی ایجاد میشود که شما گزینه Snapshot the virtual machine’s memory را در هنگام گرفتن اسنپ شات انتخاب کرده باشید و درون این فایل همانطور که گفته شد محتوای موجود درون memory یا همان RAM در هنگام گرفتن اسنپ شات ذخیره میگردد.
حال به این تصویر دقت کنید این حالتی است که اسنپ شات پاک شده و ماشین مجازی اسنپ شاتی ندارد و همانگونه که مشاهده میکنید ماشین مجازی از فایل vmdk اصلی خود استفاده میکند.