با توجه به مطالب عنوان شده در سری مقالات “بررسی VMware vSphere Virtual Volumes یا VVOLs” به بررسی مفهوم این تکنولوژی پرداختیم و در این مقاله نیز به بررسی نحوه عملکرد و معماری این تکنولوژی خواهیم پرداخت.
Virtual Volume یک معماریِ بسیار متفاوت و بهبود یافته نسبت به ذخیرهسازی منطقی (Storage Logical) ارائه میکند که امکان اجرای عملیات را در سطح ماشین مجازی فراهم نموده و همچنین از قابلیتهای Array به صورت Native بهره میبرد؛ با استفاده از Virtual Volume نیاز به آمادهسازی و مدیریت تعداد زیادی LUN یا Volume جهت دستیابی به سرویسها در سطح برنامههای کاربردی بر روی Host از بین میرود، بدین ترتیب قابلیت مدیریت زیرساخت vSphere از طریق کاهش سربار عملیاتی افزایش یافته و در عین حال سرویسهای دادهی مقیاسپذیر در هر یک از سطوح ماشین مجازی فعال میگردد.
Virtual Volume به پشتیبانی VMware و Vendorهای ارائه دهندهی Storage نیاز دارند. از دیدگاه VMware، عوامل کلیدی در ارائه Storageهای مبتنی بر نرمافزار شامل vSphere Virtual Volumes، vSphere Storage-Policy Based Management و (VASA (vSphere APIs for Storage Awareness میباشند.
از دیدگاه Vendorهای ارائه دهنده Storage نیز Array باید برای Virtual Volumes فعال شود و Vendorها باید یک vSphere API را برای ارائهدهندهی (VASA (Storage Awarenessعرضه نمایند که با نسخه 2 از APIهای VASA هماهنگ بوده و به منظور برقراری ارتباطات خارج از محدوده به کار میرود.
هنگامی که Admin Storage به تعریف قابلیتهای قابل استفاده Storage Array میپردازد، این قابلیتها با استفاده از APIهای VASA، در vSphere نشان داده شده و برای استفاده در دسترس مدیران vSphere قرار میگیرند. سپس Policyهای مربوط به Storage از مجموعه قابلیتهای ارائه شده برای Storage Array توسط مدیران vSphere ایجاد میشوند.
همچنین یک ساختار جدیدِ مسیر داده به نام Protocol Endpoint یا به اختصار PE، به منظور ایجاد مسیر مستقیم انتقال داده از Host به Storage اصلی ارائه شده است. به این ترتیب یک مسیر جدید برای ارتباطات API و Policy ایجاد میشود که برای هر یک از آنها مجزا بوده و به Vendorهای شخصی این امکان را میدهد تا قابلیت خودترمیمی مسیر داده را بسته به قابلیتهای خاص، سفارشیسازی نماید.
علاوه بر موارد ذکر شده، یک مجموعه جدید از مکانیسمهای ارتباطی و ساختارهای مدیریتی به منظور مدیریت، مانیتور و فعالسازی ویژگیها و قابلیتهای جدید ارائه شده توسط Virtual Volumes، عرضه گردیده است.
Protocol Endpoint یا به اختصار PE
Protocol Endpoint یک مکانیسم انتقال یا مجموعهای از Access Pointها محسوب میشود که کنترل دسترسی و ارتباطات را بین Hostهای ESXi و سیستمهای Storage Array فعال نموده و مدیریت میکند.
PE به عنوان بخشی از پیکرهی فیزیکی Storage محسوب شده و این قابلیت را دارد که مسیرهای داده را در صورت نیاز از ماشینهای مجازی به Virtual Volumes مربوطه ایجاد نماید. لازم به ذکر است که PE عملکردهای دسترسی مربوط به LUNهای امروزی را در خود دارد، بنابراین از تمام پروتکلهای استاندارد صنعتی پشتیبانی مینماید؛ در نتیجه، کاربر نهایی میتواند از Virtual Volumes بدون ایجاد خدشه در پیکربندی فعلی خود بهره گیرد. هدف Protocol Endpoint علاوه بر پشتیبانی از پروتکلهای فعلی، کمک به روند توسعه میباشد که بر خلاف LUNها که از سقف تعریف شدهای برای اتصال برخوردار است، امکان اتصال یک PE واحد به چندین Virtual Volume فراهم میباشد.
علاوه بر موارد ذکر شده، Protocol Endpoint با تمام پروتکلهای استاندارد صنعتی SAN و NAS سازگاری دارد. این پروتکلها عبارتند از:
- iSCSI
- NFS v3
- FC) Fiber Channel)
- FCoE) Fiber Channel over Ethernet)
در ضمن، تنظیم و پیکربندی Protocol Endpoint توسط مدیران Storage انجام میپذیرد.
مفهوم Storage Container یا به اختصار SC
Virtual Volumeها بر روی Containerهای Storage ایجاد میشوند؛ این Containerها در واقع ساختاری از Storageهای منطقی میباشند که توسط مدیران Storage تنظیم و تعریف شده و برای تعریف موارد زیر استفاده میشوند:
- اختصاص ظرفیت Storage و محدودیتهای آن
- تنظیمات Policy برایStorage بر مبنای قابلیتهای سرویس داده و بر اساس هر یک از ماشینهای مجازی
Storage Container یک ساختار کاملا منطقی در Array میباشد که میزان فضای تعریف شده توسط کاربر را برای مجموعهای از قابلیتها و ظرفیت Storage در نظر میگیرد و به عنوان یک Datastore مجازی برای vSphere ارائه خواهد شد.
بنابراین Admin Storage میتواند ظرفیت و قابلیتها را در قالب گروهبندیهای منطقی پیکربندی نماید. علاوه بر این، امکان تعامل Admin vSphere با Datastoreهای شناخته شده فراهم میگردد بدون آنکه نیازی به کسب دیدگاه نسبت به ساختارهای فیزیکی مربوط بهStorage Container باشد.
در این معماری، Storage Container در دسترسِ Host ESXi قرارگرفته و دارای رابطه یک به یک با Storage Containerهای ایجاد شده بر روی Storage Array میباشد. برای مثال در صورتی که کاربر سه Storage Container بر روی Array ایجاد نماید، به همین تعداد Datastore VVol مرتبط در اختیار خواهد داشت که برای استفاده در Hostهای متصل، در دسترسِ میباشد.
تنظیم و پیکربندی Storage Containerها نیز همچون PE توسط Storage Admin صورت میگیرد و سپس در هنگام افزودن Datastoreهای مجازی بهطور خودکار در vSphere شناسایی میشوند.
بررسی Vendor Provider یا به اختصار VP
Vendor Provider که با نام VASA Provider نیز در نظر گرفته میشود، یک Component نرمافزاری برای Storage محسوب میگردد که به عنوان یک سرویس Storage Awareness برای vSphere عمل میکند. Vendorهای ارائه دهندهی Storage به طور انحصاری به توسعهVP میپردازند.
Hostهای ESXi و vCenter Server به VP متصل شده و اطلاعاتی دربارهی توپولوژی، قابلیتها و وضعیتِ Storageهای فعلی ارائه مینمایند. سپس vCenter Server این اطلاعات را در اختیار Clientهای vSphere قرار داده و به این ترتیب قابلیتهایی را به نمایش میگذارد که مدیران میتوانند Policyهای ذخیره سازی در SPBM را بر طبق آنها شکل دهد.
Vendor Provider میتواند به شکل یک Appliance مجازی و یا مستقیما از جایگاه مدیریتِ Array به اجرا درآید. با استفاده از این روش، VP با قابلیتهای Array از طریق Storage APIهای vSphere مرتبط میگردد تا ویژگیها و قابلیتهای Storage Array را در برگیرد و آنها را از طریق APIهای VASA با هدف کاربرد برای هر یک از ماشینهای مجازی به صورت Granular به vSphere ارائه دهد.
VP عموما توسط vSphere Admin و به یکی از دو روش زیر تنظیم و پیکربندی میگردد:
- به صورت خودکار از طریق Plug-In Array Vendors
- به صورت دستی از طریق vCenter Server
بررسی Virtual Volume یا به اختصار VVol
Virtual Volume نوع جدیدی از ماشینهای مجازی محسوب میشود که به صورت Native در Storage Array ایجاد و ذخیره میگردد. VVol بر روی Storage Containerها ذخیره شده و به فایلها یا Objectهای ماشین مجازی مانند VM Swap، VMDKs و دیگر موارد مرتبط با آنها Map میشود.
Objectهای Virtual Volume در 5 نوع متفاوت وجود دارد که هرکدام در راستای یک فایل خاص و متفاوت ماشین مجازی فعالیت میکند.
- Config-VVol– VM Home، فایلهای مربوط به پیکربندی، Logها و غیره
- Data-VVol– معادل VMDKs
- Memory-VVol– Snapshotها
- Swap-VVol– VM memory swap
- Other-VVol– نوع کلیِ مختص راهکار (Solution Specific)