دلایل VMDK Lock و راه حل رفع کردن آن

تمامی ادمین های مجازی سازی به صورت قطعی تا به حال با خطاهای VMDK Lock مواجه شده اند.

در این مطلب آموزشی به دلایل اتفاق افتادن این مشکل و راه حل های آن می پردازیم.

به صورت کلی VMDK Lock باعث می شود مشکلات زیر برای شما اتفاق بیافتد :

  • عدم توانایی روشن کردن ماشین مجازی
  • عدم توانایی در جابجایی ماشین مجازی vMotion
  • عدم توانایی تغییرات در سخت افزار ماشین مجازی
  •  …

دلایل اتفاق افتادن VMDK Lock

سرور های ESXi برای اینکه از تغییرات همزمان توسط چند کاربر بر روی یک ماشین مجازی جلوگیری کنند از مکانیزم VMDK Lock استفاده می کنند تا فایل ماشین مجازی خراب نشوند.

در برخی از موارد ممکن بعد از انجام عملیات بر روی ماشین مجازی این فایل Lock پاک نشود و یا به اصطلاح هارد ماشین مجازی آزاد نشود ، که طبق راحی که در این آموزش براتون میگم به راحتی می تونید درستش کنید.

فایل هایی که توسط هاست ESXi قفل می شوند به شرح زیر است :

  • vswp.*
  • Flat.vmdk-*
  • Iteration-delta.cmdk-*
  • vmx.*
  • VMXF.*
  • log.*

انواع VMDK Lock

نوع صفر :  : No Lock

ماشین مجازی فاقد Lock می باشد.

نوع اول  :  Mode 1 : Exclusive

ماشین مجازی بر روی یک هاست روشن است و هاست فایل هارد ماشین مجازی را Lock کرده است.

نوع دوم : Mode 2 : Read-Only

یک Lock با قابلیت Read Only می باشد.( مانند زمانی که یک ماشین مجازی Snapshot می گیرد و فایل اصلی VMDK آن لاک می شود)

نوع سوم : Mode 3 : Multi-Writer

یک Lock از مدل Multi Writer  ( مانند زمانی از Mscs یا FT استفاده می کنیم)

روش های پیدا کردن VMDK Lock

شرکت VMware از ورژن ESXi 5.5 به بعد دستوری را وارد Shell کرده که با استفاده از آن می توانید MAC هاستی که هارد VMDK ماشین شما را لاک کرده پیدا کنید .

برای زدن دستور باید به هاستی که الان ماشین مجازی شما بر روی آن قرار دارد SSH یا Shell بزنید و سپس کامند زیر را وارد کنید :

vmfsfilelockinfo -p /vmfs/volumes/LUN-2/VM1/VM1_1-000001-delta.vmdk -v 192.168.1.10 -u administrator@vsphere.local

راهنما :

P- : به معنای Print

V- : به معنای vCenter

U- : به معنای Username

خروجی این کامند مانند زیر خواهد بود :

vmfsflelockinfo Version 1.0
Looking for lock owners on “VM1_1-000001-delta.vmdk”
“VM1_1-000001-delta.vmdk” is locked in Exclusive mode by host having mac address xx:xx:xx:xx:xx:xx
Trying to make use of Fault Domain Manager
———————————————————————-
Found 0 ESX hosts using Fault Domain Manager.
———————————————————————-
Could not get information from Fault domain manager
Connecting to 192.168.1.10 with user administrator@vsphere.local
Password: xXxXxXxXxXx
———————————————————————-
Found 3 ESX hosts from Virtual Center Server.
———————————————————————-
Searching on Host 192.168.1.178
Searching on Host 192.168.1.179
Searching on Host 192.168.1.180
MAC Address : xx:xx:xx:xx:xx:xx

Host owning the lock on the vmdk is 192.168.1.180, lockMode : Exclusive

Total time taken : 0.27 seconds.

همانطور که می بینید هاستی که هارد ماشین مجازی را Lock کرده است سرور 192.168.1.180 می باشد..

حال که متوجه شدیم کدام هاست VMDK Lock را فعال کرده است، باید Process ای که Lock را برقرار کرده است را پیدا کنیم .

با استفاده از کامند زیر می توانید آن Process را پیدا کنید :

 lsof | egrep ‘Cartel|VM1_1-000001-delta.vmdk

خروجی این کامند به صورت زیر خواهد بود :

Cartel | World name | Type | fd | Description
36202 vmx FILE 80 /vmfs/volumes/556ce175-7f7bed3f-eb72-000c2998c47d/VM1/VM1_1-000001-delta.vmdk

عددی که برای شما قرمزش کردم cartel ID ماشینی هست که دیسک شما رو قفل کرده است.

مرحله آخر :

باید لیست Cartel ID  همه ماشین های مجازیتون داشته باشید تا از روی این ID  ماشین را پیدا کنیم.

کامند لیست کردن ماشین های مجازی :

~ # esxcli vm process list

خروجی :

Alternate_VM27
World ID: 36205
Process ID: 0
VMX Cartel ID: 36202
UUID: 56 4d bd a1 1d 10 98 0f-c1 41 85 ea a9 dc 9f bf
Display Name: Alternate_VM27
Config File: /vmfs/volumes/556ce175-7f7bed3f-eb72-000c2998c47d/Alternate_VM27/Alternate_VM27.vmx
Alternate_VM20
World ID: 36207
Process ID: 0
VMX Cartel ID: 36206
UUID: 56 4d bd a1 1d 10 98 0f-c1 41 85 ea a5 dc 94 5f
Display Name: Alternate_VM20
Config File: /vmfs/volumes/556ce175-7f7bed3f-eb72-000c2998c47d/Alternate_VM20/Alternate_VM20.vmx

حال که این Cartel ID را پیدا کردیم می توانیم نام ماشینی که این دیسک را لاک کرده بیابیم.

در این مثال نام ماشین را سبز کردیم تا به راحتی آن را مشاهده کنید.

نظرات