معرفی انواع ساختار Virtual Disk

حتما با ساختارهای مجازی سازی کار کرده اید و به ویژه با نرم افزار مجازی ساز VMware ESXi، زمانیکه شما می خواهید در این سیستم عامل توسط ابزار VSphere Client یک Virtual Machine ایجاد کنید، این ابزار برای VM شما یک Virtual Hard Disk ایجاد می کند. این Virtual Hard Disk یا هارد دیسک مجازی روی هارد دیسک سرور شما که به عنوان Datastore معروف است در قالب یک فایل با پسوند VMDK ذخیره سازی می شود. VMDK مخفف Virtual Machine Disk می باشد. فرمت و قالبی که شما برای Virtual Disk خود در نظر می گیرید بسیار در کارایی سیستم شما تاثیر خواهد داشت. ما می خواهیم در این مقاله در خصوص انواع Virtual Disk ها و مزایا و معایب هر کدام صحبت کنیم، زمانیکه شما می خواهید یک Virtual Disk ایجاد کنید یکی از سه حالت زیر را می توانید انتخاب کنید:

  • Thin Provisioned
  • Thick Provisioned Lazy Zeroed
  • Thick Provisioned Eager Zeroed

Thin Provisioned در ساختار دیسک های مجازی به چه معناست؟

از مزایای ایجاد کردن Thin Provisioned می توان به سرعت بالای ایجاد (Faster Provision) و اشغال فضای دیسک بر اساس بالا رفتن میزان فضای مورد نیاز VM اشاره کرد. در کنار این مزایا، معایبی نیز به Thin Provisioned وارد است که از جمله آنها می توان به کاهش کارایی VM با توجه به Overhead ای که Metadata ها بر روی VM دارند و همچنین Overhead ای که فرآیند های نوشتن بر روی دیسک برای این ساختار ایجاد می کنند، اشاره کرد. از طرفی اگر ظرفیت VM شما به اندازه ای بالا برود که از Provision در نظر گرفته بیشتر شود، باعث ایجاد Downtime و اشغال زیاد منابع VM خواهد شد. از همه مهمتر اینکه شما اگر دیسک های مجازی خود را در حالت Thin Provisioned قرار دهید، دیگر نمی تواند از امکانات Clustering در ساختار مجازی سازی خود استفاده کنید. زمانیکه VSphere یک دیسک Thin Provisioned ایجاد می کند فقط مقدار کمی Metadata در Datastore ذخیره می کند. در این حالت هیچگونه فضایی بصورت یکباره از Datastore گرفته نمی شود، زمانیکه فرآیند نوشتن بر روی دیسک انجام می شود، VSphere ابتدا اطلاعات مربوط به Metadata ای که مربوط به فایل VMDK است را بروز می کند و در نهایت بلوک های جدیدی از داده را از Datastore دریافت و در آن اطلاعات را می نویسد. این عملیات در محل هایی که فرآیند های نوشتن و خواندن زیادی انجام می شود باعث بالا رفتن Overhead می شود.

Thin Provision ها دارای پایین ترین کارایی از نظر سیستم در بین سه حالت و قالب دیسک هایی هستند که در VMware وجود دارد. البته در کنار همین معایب در محیط هایی که محدودیت استفاده از فضا دارند، این نوع دیسک بسیار کاربردی است. دیسک های Thin Provisioned قابلیتی دارند که شما می توانید تا زمانیکه فضای واقعی دیسک شما پر نشده است از فضای مجازی موجود بر روی دیسک استفاده کنید. برای مثال شما اگر 10 عدد VM داشته باشید که هر کدام از آنها به 50 گیگابایت فضا نیاز داشته باشند اما فضای Datastore شما تنها 100 گیگابایت باشد، شما می توانید هر 10 عدد VM را با ظرفیت 50 گیگابایت ایجاد و راه اندازی کنید. در این حالت به یکباره فضا از Datastore دریافت نمی شود و به مرور زمان با اضافه شدن حجم داده ها به VM ها تا مرز 100 گیگابایت، شما می توانید از همه VM های خود همزمان استفاده کنید. اینکار باعث کاهش هزینه ها می شود، برعکس Thick Provision که به یکباره با در نظر گرفتن فضا ، همه فضا را به یکباره از Datastore می گیرد.

Thick Provision Lazy Zeroed در ساختار دیسک های مجازی به چه معناست؟

از مزایای ایجاد کردن Thick Provisioned Lazy Zeroed سرعت بیشتر ایجاد (Faster Provision) نسبت به Thick Provision Eager Zeroed است. این نوع دیسک های مجازی کارایی بهتری نسبت به Thin Provisioned دارند اما به نسبت سرعت ایجاد شدن آنها از Thin Provision کمتر است. همچنین از دیگر معایب این نوع دیسک های مجازی، کارایی و سرعت پایینتر نسبت به Thick Provisioned Eager Zero می باشد. این نوع دیسک های مجازی همانند Thin Provisioned قابلیت Clustering را پشتیبانی نمی کنند. زمانیکه VSphere یک دیسک از این نوع ایجاد می کند، حداکثر اندازه ای که می تواند به فایل VMDK اختصاص دهد را به یکباره به آن می دهد اما دیگر هیچ کاری انجام نمی دهد. با دسترسی پیدا کردن به هر قسمت از بلوک های دیسک VSphere ابتدا بلوک را آماده و داده ها را در آن می نویسد. سرعت و کارایی دیسک های مجازی که از نوع Thick Provisioned Lazy Zeroed هستند به دلیل ایجاد کردن Overhead در دیسک ها از Thick Provisioned Eager Zeroed کمتر است. بصورت خلاصه بعد از اینکه دیسک بصورت Lazy Zeroed ایجاد شد فضای متناسب با آن از Datastore گرفته می شود اما فضا پاکسازی نمی شود، به محض اینکه شما بخواهید داده ای به این دیسک اضافه کنید، فضا نیز ابتدا پاکسازی می شود و سپس داده های شما نوشته می شود که این به نوعی دوباره کاری برای VSphere ایجاد خواهد کرد.

Thick Provisioned Eager Zeroed در ساختار دیسک های مجازی به چه معناست؟

از مزایای ایجاد کردن Thick Provisioned Eager Zeroed این است که در میان سایر دیسک های مجازی بهترین کارایی را به خود اختصاص می دهد. Overwrite کردن فضای خالی دیسک با صفر، باعث کاهش ریسک های امنیتی بر روی این نوع دیسک های مجازی می شود. از همه مهمتر اینکه با استفاده از این نوع دیسک شما می توانید از قابلیت های Clustering ای مانند Microsoft Cluster Server و یا VMware Fault Tolerance استفاده کنید. تنهای عیبی که می شود به این نوع دیسک گرفت زمان طولانی تر نسبت به سایر دیسک ها برای ایجاد شدن یا Provision Time بالاتر می باشد. زمانیکه VSphere یک دیسک از نوع Provisioned Eager Zeroed ایجاد می کند، حداکثر مقدار فضای ممکن برای دیسک را به یکباره به فایل VMDK اختصاص می دهد؛ سپس تمامی فضاهایی که بر روی دیسک وجود دارند را صفر می کند. برای مثال اگر شما یک فایل VMDK را بصورت Thick Provisioned Eager Zeroed ایجاد کنید و 80 گیگابایت فضا برای آن در نظر بگیرید.

VSphere بلافاصله از دیسک شما 80 گیگابایت می گیرد و به فایل VMDK اختصاص می دهد و تمامی فضای 80 کیگابایت را با صفر پر می کند. زمانیکه تمامی فضاهای خالی با صفر پر شدند، Thick Provisioned Eager Zeroed مطمئن می شود که در هنگام نوشتن اطلاعات داخل دیسک هیچگونه ریسک امنیتی به وقوع نمی پیوندد. Thick Provisioned Eager Zeroed Disk ها از بهترین کارایی در تمامی فایل های VMDK برخوردارند. زمانیکه قرار است داده ای بر روی دیسک های Eager Zeroed انجام شود، VSphere تنهای کاری که باید بکند نوشتن اطلاعات است و هیچ کار اضافی لازم نیست انجام شود، همین امر باعث برتری این نوع دیسک نسبت به Thin Provisioned و Lazy Eager شده است. بصورت خلاصه زمانیکه دیسکی از نوع Eager Zeroed در نظر گرفته می شود همان ابتدا تمامی فضا از Datastore گرفته می شود و به دیسک داده می شود و تمامی فضا در همان لحظه با استفاده از بیت های صفر پاکسازی می شود و دوباره کاری موقع نوشتن اطلاعات ایجاد نمی شود.

نویسنده : محمد نصیری
منبع : انجمن تخصصی فناوری اطلاعات ایران