پیغام needs snapshot consolidation, but all automatic snapshot consolidation attempts have failed در نرم افزار Veeam Backup

پیغام "needs snapshot consolidation, but all automatic snapshot consolidation attempts have failed" که در نرم‌افزار Veeam نمایش داده میشه، مربوط به VMware vSphere هست و به این معنیه که یکی از ماشین‌های مجازی (VM) در حالت نیاز به consolidation هست، ولی تلاش‌های خودکار برای انجام اون ناموفق بودن.

 

Consolidation Snapshot یعنی چی؟

وقتی روی یک VM در VMware یک snapshot گرفته میشه، تغییرات جدید در فایل‌های مجزایی ذخیره میشن. وقتی اون snapshot حذف میشه، VMware باید این تغییرات رو دوباره با دیسک اصلی ادغام (consolidate) کنه. اگه این فرآیند درست انجام نشه یا قطع بشه، VM در حالت "needs consolidation" باقی می‌مونه.

 

چرا این اتفاق می‌افته؟

 

برخی از دلایل رایج:

وجود Snapshotهای یتیم یا خراب (Orphaned/Corrupt snapshots)

کمبود فضای دیسک

فایل‌های قفل‌شده (Locked VMDK files)

مشکل در عملکرد VMware Tools یا vCenter

قطع شدن بک‌آپ در حین انجام عملیات Snapshot توسط Veeam

 

راه‌حل‌های پیشنهادی:

1. بررسی وضعیت VM از vSphere

وارد vSphere Client شو.

روی VM راست کلیک کن و گزینه Snapshot > Consolidate رو انتخاب کن.

اگه خطا داد، متن خطا رو بررسی کن.

 

2. فضای دیسک رو بررسی کن

فضای datastore مربوط به VM رو چک کن. اگه جا کم باشه، ممکنه consolidation نتونه انجام بشه.

 

3. فایل‌های قفل‌شده (Locked files)

ممکنه فایل‌های .vmdk قفل شده باشن. با دسترسی SSH به هاست ESXi و استفاده از دستوراتی مثل:

vmkfstools -D /vmfs/volumes/datastore/VM_name/VM_disk.vmdk

میشه بررسی کرد که کدوم هاست یا پروسه فایل رو قفل کرده.

 

4. خاموش کردن VM و انجام دستی Consolidation

اگه نشد، VM رو خاموش کن و مجدد عملیات Consolidate رو انجام بده.

 

5. بررسی لاگ‌ها

لاگ‌های vCenter یا Veeam Backup رو بررسی کن برای اطلاعات بیشتر.

SwapFile در ESXi

تو VMware ESXi، فایل swap (که معمولاً برای VMها ساخته میشه) به صورت خودکار ایجاد میشه وقتی که ماشین مجازی (VM) حافظه‌ی بیشتری از چیزی که اختصاص داده شده لازم داره یا تنظیمات خاصی باعثش بشه. حالا کنترل حجم swapfile چند نکته داره:


۱. مفهوم پایه

* حجم swapfile معمولاً برابر با تفاوت بین مقدار RAM رزرو شده و مقدار total RAM تخصیص‌یافته به VM هست.

* اگر Reservation روی حافظه‌ی VM صفر باشه، فایل swap به اندازه‌ی کل RAM تخصیص داده شده ساخته میشه.

* اگر Reservation کامل (مثلاً برابر با مقدار RAM تخصیص داده شده) باشه، هیچ فایل swap ایجاد نمیشه.


۲. چطور کنترلش کنی؟

برای کم کردن حجم swapfile باید Memory Reservation برای VM تنظیم کنی.


مراحل کار از vSphere Client:

وارد vSphere Client شو.

روی VM مورد نظر راست کلیک کن ➔ Edit Settings.

تو بخش Memory:

گزینه‌ی Reservation رو تغییر بده.


Reservation رو نزدیک یا برابر با مقدار RAM ماشین بگذار (هرچی Reservation بیشتر باشه، swap کمتر یا صفر میشه).


ذخیره کن و VM رو ریستارت کن (بعضی وقت‌ها لازمه تا تغییرات اعمال بشه).


۳. نکته مهم

اگر Reservation رو بالا ببری، باید مطمئن باشی که هاست ESXi واقعاً این مقدار حافظه‌ی فیزیکی آزاد رو داره، وگرنه ممکنه VM روشن نشه یا مشکلاتی پیش بیاد.


اینکار ممکنه باعث بشه vSphere DRS یا HA هم رفتار متفاوتی داشته باشن (مخصوصاً توی کلاسترهای بزرگ).

نحوه حذف بکاپ از Veritas Backup Exec

How to Remove Backup sets in Veritas Backup Exec

من برای تهیه بکاپ از نرم افزار Veritas Backup Exec استفاده می کنم اما بعد از مدتی هارد اکسترنالی که برای این کار گذاشته بودم کامل پر شد و هیچ Job ی اجرا نمیشد.

بخاطر همین مجبور شدم تا بصورت دستی بکاپ های قدیمی رو حذف کنم.

حالا میخوام این تجربه ی کوچک رو با شما به اشتراک بذارم....


باید مراحل زیر رو به ترتیب انجام بدین:

1) مطمئن باشید که برنامه Veritas Backup Exec بسته هست. حالا روی آیکن کلیک راست کنید و Run As Administrator رو کلیک کنید.

2) حالا تب Storage رو انتخاب کنید.

3) از لیست Storageها، Storageی قبلا درست کردین و اطلاعات داخل اون ذخیره میشه رو انتخاب و دابل کلیک کنید.

4) از پنجره ی باز شده و منوی سمت چپ گزینه ی Backup Sets رو انتخاب کنید تا لیست تمام بکاپ های گرفته شده رو ببینید.

5) هر نسخه ای رو مد نظرتون هست رو انتخاب کنید و روش کلیک راست کنید و گزینه ی Expire رو بزنید.

6) از پنجره ی باز شده OK رو انتخاب کنید.

7) کار تمومه...


فقط دقت کنید اگه حجم فایل بکاپ تون زیاد باشه کمی طول میکشه تا حذف بشه.

پنجره GroupPolicy

روی کامپیوتر کلاینت برای Local Security Policy از دستور gpedit.msc استفاده می شود

روی سرور Active Directory برای Group Policy Management از دستور gpmc.msc استفاده می شود

دستور Remote Desktop و قطع کردن Session کاربر دیگر

با استفاده از Run دستور mstsc /admin را اجرا کنید

تا کاربر دیگر را از سیستم بیرون انداخته و بتوانید به سیستم Login کنید.

ریست کردن DNS سیستم

با استفاده از دستور زیر میتونیم DNS سیستم رو دوباره راه اندازی کنیم:

ipconfig /flushdns