محمد نصیری
بنیانگذار انجمن تخصصی فناوری اطلاعات ایران ، هکر کلاه خاکستری ، کارشناس امنیت اطلاعات و ارتباطات

تفاوت VMotion و Storage VMotion در چیست؟ به زبان ساده

تفاوت VMotion و Storage VMotion چیست؟ قبلا در توسینسو در خصوص قابلیتی به نام VMotion در نرم افزار مجازی سازی VMware بصورت مفصل صحبت کردیم ، اما شاید بد نباشد که بدانید ما قابلیت دیگری به نام Storage VMotion نیز داریم که به آن SVMotion هم گفته می شود و در بسیاری اوقات با قابلیت VMotion اشتباه گرفته می شود. در این مطلب در انجمن تخصصی فناوری اطلاعات ایران می خواهیم بصورت کلی تفاوت هایی که بین این دو نوع VMotion وجود دارند را بیان کنیم . در نظر داشته باشید که هر دو تکنولوژی VMotion و SVMotion برای پیاده سازی Fault Tolerance و همچنین بالا بردن انعطاف پذیری VM ها در شبکه طراحی شده اند اما دو محصول کاملا متفاوت از هم هستند و فقط در برخی از موارد تشابه هایی با هم دارند.

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

قبل از اینکه بصورت کامل در خصوص VMotion و تفاوت آن با SVMotion توضیح دهیم اول بیایید یک نگاه ساده به مجازی سازی داشته باشیم. مجازی سازی به اجرا کردن چندین ماشین مجازی درون یک ماشین فیزیکی گفته می شودو هر کدام از این ماشین های مجازی برای خود یک پردازنده ، هارد دیسک ، حافظه RAM و کارت شبکه دارند و شما این قابلیت را دارید که یک یا چندین ماشین مجازی را بدون اینکه به ماشین های مجازی دیگر لطفه ای وارد شود خاموش و یا روشن کنید.

تفاوت VMotion و Storage Vmotion

VMware VMotion چیست؟

قبلا در مقاله ای جداگانه بصورت مفصل در انجمن تخصصی فناوری اطلاعات ایران در خصوص VMotion توضیحاتی ارائه کردیم اما بهتر است امروز با تعریف ساده تری این قابلیت را توضیح دهیم. VMware VMotion یک نرم افزار است که برای مدیریت کردن تعداد زیادی ماشین مجازی که بر روی سرورهای فیزیکی متعددی در شبکه قرار گرفته اند طراحی شده است. VMotion بصورت دائمی وضعیت ماشین های مجازی شبکه را مانیتور می کند و در صورت نیاز به آنها بصورت داینامیک منابع را اختصاص می دهد.

برای مثال اگر وب سایت www.tosinso.com در سروری قرار داشته باشد و به یکباره به دلیل برگزاری یک سری امتحانات بین المللی آنلاین ترافیک آن به شدت افزایش پیدا کند ، VMotion بصورت خودکار به این ماشین مجازی مقداری RAM اختصاص می دهد تا ماشین مجازی در هنگام سرویس دهی دچار مشکل نشود. اما کار مهمتری که VMotion انجام می دهد و ما آن را با این قابلیت می شناسیم این است که VMotion می تواند سرورهای فیزیکی را نیز مانیتور کند و از همه جالبتر اینکه می تواند ماشین های مجازی موجود در سرورهای سخت افزاری مختلف را بین این سرورها جابجا کند و در واقع VM ها را بین Host های مختلف جابجا کند. اگر سرور فیزیکی شما Fail شود ، براحتی سرور وب سایت شما به سرور دیگری منتقل می شود و از سرویس دهی باز نمی ماند.

تصویر قابلیت VMotion

مهمترین نکته در خصوص نحوه انتقال VM در VMotion این است که فرآیند انتقال ماشین های مجازی بین Host ها بدون بروز کوچکترین Downtime ای انجام می شود و به همین دلیل مشتریان و کاربران وب سایت کوچکترین تغییری در سرویس دهی احساس نخواهند کرد.یک نکته ای که در اینجا ممکن است مبهم به نظر برسد این است که آیا واقعا همه فایل هایی که برای یک Virtual Machine وجود دارد در فرآیند VMotion به سرور دیگری منتقل می شود یا خیر ؟ پاسخ خیر است ، زمانیکه شما از VMotion استفاده می کنید از یک دستگاه SAN storage به عنوان Shared Storage به جای استفاده از Local Hard Disk های سرورها استفاده می کنید.

اگر فرض را بر این بگیریم که این SAN Storage به همه سرورها معرفی شده باشد ، این فقط فایل های تنظیمات VM و محتویات RAM ماشین مجازی است که روی سرورهای Host ما قرار دارد و هارد دیسک های مجازی همگی بر روی SAN Storage قرار دارند بنابراین در VMotion ما هارد دیسک های مجازی را منتقل نمی کنیم بلکه فقط فایل های تنظیمات مانند VMX و همچنین محتویات فعلی RAM ماشین مجازی را به سرور دیگری منتقل می کنیم و با وجود داشتن و متصل شدن سرور جدید به SAN Storage و دسترسی پیدا کردن به هارد دیسک مجازی مجددا سرور قادر به سرویس دهی خواهد بود اما فراموش نکنید که در این حالت هارد دیسک مجازی منتقل نشده است.

VMware Storage VMotion چیست؟

قابلیت Storage VMotion تقریبا از نظر مفهوم کاری شبیه به VMotion عمل می کند و برای منتقل کردن ماشین های مجازی بین سرورهای فیزیکی مورد استفاده قرار می گیرد اما نکته مهم در این است که در Storage VMotion این فایل سیستم و هارد دیسک های مجازی هستند که به همراه تمامی مخلفات یک ماشین مجازی به سرور دیگر منتقل می شوند. در پیاده سازی VMotion تنها وجود یک SAN Storage کفایت می کرد اما برای راه اندازی Storage VMotion معمولا به دو یا بیشتر از دو عدد SAN Storage نیاز است و فایل های ماشین های مجازی از یک Storage به Storage دیگر توسط فرآیند Storage VMotion منتقل می شوند. انجام این فرآیند نیز مانند فرآیند VMotion هیچگونه تاثیری در سرویس دهی به کاربران نخواهد داشت و آنها این تغییر را احساس نمی کنند.

مراحل انجام شدن فرآیند Storage VMotion

مکانیزم کاری Storage VMotion با استفاده از کپی کردن اطلاعات Metadata مربوط به VM به Storage دیگر شروع می شود که این اطلاعات در Home Directory قرار دارند. سپس نرم افزار با استفاده از قابلیتی به نام Changed Block Tracking یا CBT فایل های دیسک مجازی را به محل جدید منتقل می کند ، CBT برای مطمئن شدن از صحت و کامل بودن انتقال هارد دیسک های مجازی استفاده می شود و همزمان عملیات Replication نیز برای اطمینان از تمام و کمال بودن داده ها انجام می شود. زمانیکه فرآیند انتقال هارد دیسک مجازی با موفقیت انجام شد ماژول CBT مجددا برای یک کپی دیگر از اطلاعات هارد دیسک قبلی از سرور قبلی می گیرد تا در صورت به وجود آمدن تغییرات جدید بلوک های داده تغییرات جدید به Storage جدید منتقل شوند.

بعد از اینکه کپی از اطلاعات هارد دیسک بصورت تمام و کمال انجام شد و فرآیند Sync نیز تمام شد. ماشین مجازی قبلی در حالت Suspend قرار می گیرد و محل جدید هارد دیسک به آن معرفی می شود. قبل از اینکه ESXi ماشین مجازی را از حالت Suspend به حالت Resume در بیاورد برای آخرین بار یکبار دیگر فرآیند Replication نیز انجام می شود و در نهایت فایل های Home Directory و دیسک قبلی از محل قبلی حذف شده و در محل جدید اجرا می شوند. کل این فرایند برای کاربران و حتی خود VM نا محسوس است و کسی از این انتقال مطلع نخواهد شد.

قابلیت Storage VMotion استفاده های متعددی دارد که شامل منتقل کردن دیسک های مجازی از SAN Storage قدیمی به دستگاه SAN Storage جدید ، استفاده شدن به عنوان یک Load Balancer و حتی منتقل کردن دیسک های مجازی از Local Hard Disk های سرورها به SAN Storage ها را نیز می تواند انجام دهد ، برای مثال زمانیکه شما می خواهید SAN Storage خود را تعمیر کنید و نمی خواهید سرویس دهی شما قطع شود از این روش می توانید استفاده کنید. البته امکان استفاده از هارد دیسک برای پیاده سازی Storage VMotion را من در جایی شنیده ام که وجود دارد اما امتحان نکردم ،از دوستانی که در این زمینه کار کرده اند درخواست دارم در صورت تمایل تجربیات خود در این زمینه را در ادامه مطرح کنند.


محمد نصیری
محمد نصیری

بنیانگذار انجمن تخصصی فناوری اطلاعات ایران ، هکر کلاه خاکستری ، کارشناس امنیت اطلاعات و ارتباطات

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

نظرات