مجازی سازی
مجازیسازی چیست؟
به زبان ساده، مجازی سازی را میتوان ایجاد یک نسخه مجازی از هر چیزی تعریف کرد. مجازیسازی، ایده و راهکاری خلاقانه و بسیار کاربردی برای ایجاد یک نسخه مجازی از دستگاههای ذخیرهسازی، سرورها، شبکهها و سایر منابعی است که زمانی تنها به شکل فیزیکی در دسترس کاربران قرار داشتند.
این فناوری از نرمافزارهایی برای شبیهسازی عملکرد سختافزار و ایجاد یک سیستم مجازی بهره میگیرد. به این ترتیب، ماهیت و ویژگیهای فیزیکی منابع محاسباتی از دید کاربران پنهان شده و ضمن ایجاد یک یا چند منبع مجازی، امکان استفاده کارآمدتر از منابع سختافزاری فراهم میشود.
اصطلاحات کاربردی در مجازی سازی
- هایپروایزرها (Hypervisor)
عنصر اصلی در پیادهسازی مجازی سازی، هایپروایزر است. هایپروایزر (Hypervisor) یک لایه نرمافزاری است که با نصب روی سختافزار، امکان راهاندازی ماشینهای مجازی را فراهم میکند. در واقع این نرمافزار، بهعنوان رابطی میان ماشین مجازی (VM) و سختافزار فیزیکی زیرساختی عمل کرده و اشتراک منابع فیزیکی را مدیریت میکند. همچنین هایپروایزر تضمین میکند که عملکرد ماشینهای مجازی، با تأثیر گذاشتن بر حافظه یا چرخههای محاسباتی، با یکدیگر تداخل نداشته باشند.
به طور کلی، دو نوع هایپروایزر وجود دارد:
- هایپروایزر نوع ۱ که با عنوان «Bare-metal» شناخته میشود. این نوع hypervisor با منابع فیزیکی زیرساختی مانند سرور، حافظه، فضای ذخیرهسازی و… در تعامل است و میتواند مانند سیستم عاملهای (OS) سنتی رفتار کند. استفاده از این هایپروایزر بیشتر در مجازیسازی سرور مشاهده میشود.
- هایپروایزرهای نوع ۲ را میتوان یک برنامه کاربردی برای اجرا در سیستمعاملهای موجود و دستگاههای endpoint دانست. این نوع از هایپروایزر، سیستمعاملهای جایگزین را روی سیستم کاربر نهایی اجرا کرده و از OS میزبان برای دسترسی به منابع زیرساختی سختافزاری و هماهنگ کردن عملکرد آنها بهره میگیرد؛ بنابراین کارایی بالا و عملکرد بهینهای دارد.
- ماشین مجازی یا VM
ماشین مجازی (Virtual Machine)، یک محیط مجازی است که به شبیهسازی یک سیستم فیزیکی، در قالب نرمافزار میپردازد. بنابراین، VM را میتوان برنامهای معرفی کرد که روی یک سیستمعامل اجرا میشود و از این طریق، یک کامپیوتر مجازی را در اختیار کاربران قرار میدهد. این ماشین مجازی ماهیت فیزیکی خود را پنهان میکند اما تمام منابع مورد نیاز برای یک کامپیوتر کامل را به کاربران خود ارائه میدهد. به این ترتیب، سیستمعامل میزبان به دریچهای برای استفاده از منابع فیزیکی یک سختافزار بزرگتر تبدیل میشود.
- ماشین میزبان (Host Machine):
ماشین میزبانیک دستگاه فیزیکی است که مجازیسازی در آن اتفاق میافتد. در واقع این ماشین، میزبان یک یا چند ماشین مجازی است و اجزای فیزیکی آن مانند حافظه و اجزای ذخیرهسازی و پردازش، در نهایت وظیفه برطرف ساختن نیازهای ماشینهای مجازی را بر عهده دارند؛ این منابع عمدتا از دید ماشینهای مجازی پنهان هستند. بنابراین نرمافزارهای مجازی سازی مانند هایپروایزرها روی این دستگاه نصب و راهاندازی میشوند.

مجازی سازی
نحوه کار مجازی سازی چگونه است؟
مجازیسازی یک فناوری است که در آن امکان مدیریت و بهرهگیری از منابع سختافزاری به شکل مشترک و از طریق نرمافزار فراهم میشود. یکی از کاربردهای اصلی فناوری مجازی سازی، در مجازی سازی سرور است که از یک لایه نرم افزاری به نام هایپروایزر برای شبیهسازی سختافزار مورد نیاز استفاده میکند. سختافزار مورد نیاز اغلب شامل حافظه CPU، ورودی/ خروجی (I/O) و ترافیک شبکه است که به شکل پویا میان تعدادی ماشین مجازی تخصیص داده میشود.
هایپروایزرها منابع فیزیکی را دریافت کرده و آنها را تفکیک میکنند تا در محیط مجازی قابل استفاده باشند. آنها میتوانند روی سیستم عامل قرار گرفته یا مستقیماً روی سختافزار نصب شوند که اکثر شرکتها از روش دوم برای مجازی سازی سیستمهای خود بهره میگیرند.
با کمک هایپروایزر، سیستمعامل ماشین مجازی، که در حالت عادی باید با سختافزار مورد نیازش تعامل داشته باشد، با نرمافزار شبیهسازی شده آن سختافزار در تعامل خواهد بود. اگرچه عملکرد این سیستمهای مجازی با عملکرد سیستمهای عادی برابر نیست، اما مفهوم مجازیسازی همچنان به رشد خود ادامه میدهد، زیرا اکثر سیستمهای عامل و برنامهها، از ظرفیت کامل سختافزاری خود استفاده نمیکنند.
مجازیسازی با حذف وابستگی به یک پلتفرم سختافزاری، منجر به ایجاد انعطافپذیری، کنترل و مدیریت بهتر منابع میشود.
اگرچه در ابتدا مجازی سازی برای سرورها در نظر گرفته شده بود، امروزه این مفهوم به برنامهها، شبکه، داده و دسکتاپ (VDI) نیز توسعه یافته است.
مراحل مجازی سازی را میتوان به شکل زیر تعریف کرد:
- هایپروایزرها منابع فیزیکی مورد نیاز را از منابع در دسترس خود جدا میکنند.
- منابع دریافت شده بر حسب نیاز، به ماشینهای مجازی مختلف تخصیص داده میشوند.
- کاربران با ماشین مجازی ایجاد شده کار کرده و به انجام محاسبه و پردازشهای خود میپردازند.
- در زمان اجرای ماشین مجازی، یک کاربر یا برنامه میتواند در صورت نیاز، درخواست خود برای منابع بیشتر را ارائه کند. هایپروایزر در پاسخ به این درخواست، به منابع فیزیکی درخواست داده و تغییرات ایجاد شده را ذخیره میکند. تمامی این فرایندها با سرعتی عادی و بدون متوجه شدن کاربر انجام میشوند.
انواع روشهای مجازی سازی
اکنونکه میدانید virtualization چیست، بهتر است با انواع مجازی سازی نیز آشنا شوید. همانطور که فناوری مجازیسازی به تکامل خود ادامه میدهد، روشهای مختلفی نیز برای استفاده از آن ایجاد میشود. در واقع شناخت راهکارهایی مانند مجازیسازی سرور و شبکه، به بسیاری از سازمانها کمک کرده تا از منابع خود به شکل بهینه بهره بگیرند. به طور کلی، مجازیسازی به انواع زیر تقسیم میشود:
- مجازی سازی سرور
مجازی سازی سرور را میتوان رایجترین نوع virtualization در بازار جهانی امروز دانست که شرکتهای معتبر و شناختهشدهای مانند Microsoft، VMware و Citrix بهترین نرمافزارها را برای اجرای آن در اختیار کاربران قرار میدهند. سرورها برای پردازش حجم بالایی از فعالیتها طراحی شدهاند و برای افزایش کارایی، پارتیشنبندی آنها باید بهگونهای باشد که اجزای سرور، به شکل بهینه، برای عملکردهای مختلف در سراسر سیستم مورد استفاده قرار بگیرند.
مجازیسازی سرور به معنای پنهان کردن منابع سرور (مانند تعداد و هویت سرورهای فیزیکی)، پردازندهها و سیستمهای عامل، از کاربران آن است. هدف از این کار، دور نگه داشتن کاربر از درک و مدیریت جزئیات پیچیده منابع سرور و در عین حال، سهولت اشتراکگذاری و استفاده از منابع و افزایش ظرفیت آن است.
- مجازی سازی شبکه
با مجازیسازی شبکه، شبکههای مجازی از سختافزار زیرین آن جدا میشوند. در واقع مجازیسازی شبکه، روشی برای ترکیب منابع موجود در یک شبکه، با استفاده از تقسیم پهنای باند به کانالهایی است که از یکدیگر مستقل هستند و میتوانند به سرور یا دستگاهی خاص، تخصیص داده شوند.
مجازیسازی شبکهها، پیچیدگی واقعی شبکه را در بخشهای کوچکتر قابل مدیریت پنهان کرده و در نهایت عملکرد بهتر و پایدارتری را ایجاد میکند. همچنین با تخصیص و توزیع هرچه بهتر منابع، تعداد مؤلفههای فیزیکی مورد نیاز مانند سوئیچ، روتر، سرور، کابل و هاب را کاهش میدهد.
- مجازی سازی ذخیرهسازی (Storage Virtualization)
علاوه بر مجازیسازی سرور و شبکه، نوع دیگری از Virtualization نیز وجود دارد که با عنوانهای مجازیسازی استوریج، مجازیسازی ذخیرهسازی و مجازیسازی I/O شناخته میشود. مجازیسازی ذخیره سازی شامل گروهی از سرورها است که توسط یک سیستم ذخیرهسازی مجازی مدیریت میشود.
در واقع این سیستم، ذخیرهسازی را از منابع متعدد مدیریت کرده و آن را بدون توجه به تفاوت سختافزاری میان سیستمهای هاست، به عنوان یک منبع ذخیرهسازی واحد در نظر میگیرد. این شیوه مجازیسازی، انجام کارهای پشتیبانی، بایگانی و بازیابی را آسانتر میکند.
- مجازی سازی برنامه
مجازیسازی برنامه (Application Virtualization)، یکی دیگر از انواع مجازی سازی در سالهای اخیر است که اپلیکیشن را از سیستمعامل و سختافزاری که روی آن اجرا میشود، جدا میکند. در این حالت، کاربر نهایی معمولاً به برنامههای مجازیسازی شده روی یک تین کلاینت (Thin client) دسترسی دارد؛ درحالیکه برنامه روی یک سرور دیتاسنتر متصل به اینترنت اجرا میشود. به این ترتیب، اجرای برنامههایی که نیازمند نسخههای قدیمیتر سیستمعامل هستند یا ممکن است سایر منابع سیستم را تحت تاثیر قرار دهند، آسانتر میشود.
- مجازی سازی دسکتاپ (VDI)
در کنار همه مواردی که مطرح شد، مجازیسازی دسکتاپ نوآوری دیگری است که بهعنوان زیرساخت دسکتاپ مجازی (VDI) نیز شناخته میشود. این نوع مجازیسازی، به جای سرور، محیط دسکتاپ کاربر را در یک سیستم مبتنی بر نرمافزار منعکس میکند که میتوان از راه دور و از طریق اینترنت به آن دسترسی داشت.
در این روش، تمام عناصر فضای کاری فیزیکی در سرور ذخیره میشوند و کاربران نهایی صرفنظر از دستگاهی که استفاده میکنند، تجربه مشابهی دارند. به عبارت دیگر، همه دادهها و برنامههای کاربر در سرور میزبان وجود دارند، نه در دستگاه کاربر نهایی.
- مجازی سازی داده
شرکتهای مدرن، دادهها را از چندین برنامه و با فرمتهای متعدد، در مکانهای مختلف (از سیستم های ابری تا سیستمهای سختافزاری و نرمافزاری داخلی) ذخیره میکنند. مجازیسازی دادهها به هر برنامه اجازه میدهد تا صرفنظر از منبع، فرمت یا محل ذخیرهسازی، به همه آن دادهها دسترسی داشته باشد.
در مجازیسازی دادهها، بین برنامههای کاربردی که به دادهها دسترسی دارند و سیستمهای ذخیره کننده آنها، یک لایه نرمافزاری ایجاد میشود. این لایه نرمافزاری، درخواست دادههای یک برنامه کاربردی را ترجمه کرده و نتایجی را برمیگرداند که میتوانند چندین سیستم را در برگیرند.
- مجازی سازی سیستمعامل
مجازیسازی سیستمعامل را میتوان نوعی VIRTUALIZATION سرور دانست که امکان اجرای چند سیستمعامل مجازی در کنار یکدیگر را فراهم میکند. در واقع این اتفاق در هسته یا کرنل (Kernel) سیستمعامل اصلی اتفاق میافتد. اما مزیت این روش چیست؟
مجازیسازی سیستمعامل راهی برای کاهش هزینههای سختافزاری است. با استفاده از مجازیسازی، تمام نمونههای مجازی به شکل ایزوله و قابل نظارت هستند و به این ترتیب، امنیت اطلاعات و دادهها بهطور قابلی توجهی افزایش پیدا میکند. همچنین استفاده از مجازیسازی OS، زمان صرف شده برای خدمات فناوری اطلاعات مانند بهروزرسانی نرمافزار را کاهش میدهد.
مزایای مجازی سازی سرور
- صرفه جویی در مصرف انرژی
- کاهش میزان فضای مصرفی در دیتا سنتر
- استفاده چندین نفر به طور اشتراکی از سرور و بالا بردن بهره وری
- صرفه جویی در مقدار فضای مورد نیاز جهت مکانهای سرویس دهنده ها
- مدیریت بهتر شبکه و ایجاد انعطاف پذیری
- افزایش ظرفیت شبکه و انعطاف پذیری بیشتر آن
- فرآیند نگهداری و پشتیبانی آسانتر
- افزایش و بازدهی بیشتر توان عملیاتی با استفاده از سرور مجازی
- ایجاد امنیت بیشتر سیستمها
- کاهش پیچیدگی های عملیاتی
- کاهش هزینه خرید سخت افزاری
اجرای خدمات مجازی سازی توسط کارشناسان شرکت رادین راهبرد رایانه
کارشناسان مجرب و با تجربه شرکت مهندسی رادین راهبرد رایانه، با به کارگیری آخرین تکنولوژیهای روز دنیا در زمینههای طراحی و پیاده سازی، اجرای دستورالعمل استاندارد پروژه های مجازی سازی، تهیه نسخه های پشتیبانی (Back Up)، اتصال ESXها به Storage ها، انتقال اطلاعات بین سرورهای مجازی و حقیقی و … توانسته اند مورد تایید و اعتماد سازمان ها و ارگان های بزرگ کشوری قرار گیرد.