Virtualization (مجازي سازي) چيست؟ كاربرد و انواع آن
مجازیسازی فناوری است که در دهه 1960 اولین مفاهیم مجازیسازی توسط IBM برای تقسیم منابع اصلیframeها مطرح شد. مچازی سازیبا ایجاد لایهای غیر رسمی یا ذهنی بین سختافزار و نرمافزار، امکان اجرای چندین سیستم عامل و برنامه کاربردی را بهصورت مجزا بر روی یک زیرساخت فیزیکی واحد فراهم میکند. این صحفه وبلاگ به بررسی ابعاد مختلف مجازیسازی شامل مفاهیم پایه، انواع فناوریهای مجازیسازی، مزایا و معایب، و کاربردهای نوین آن در مراکز داده و رایانش ابری میپردازد. با توجه به تحولات اخیر در حوزه فناوری اطلاعات، مجازیسازی بهعنوان یکی از ارکان اصلی تحول دیجیتال شناخته شده است.
مجازیسازی (Virtualization) به فرآیند ایجاد نسخههای مجازی (غیرفیزیکی) از منابع رایانهای مانند سختافزار سرور، فضای ذخیرهسازی، شبکه و حتی سیستمعامل اشاره دارد.
كاربرد مجازي سازي چيست؟
مجازیسازی به یکی از پایههای اصلی زیرساختهای مدرن فناوری اطلاعات تبدیل شده است. این فناوری با جداسازی منابع منطقی از سختافزار فیزیکی، انقلابی در نحوه طراحی، استقرار و مدیریت سیستمهای محاسباتی ایجاد کرده است. در این بخش به طور جامع به بررسی کاربردهای گسترده و متنوع مجازیسازی در حوزههای مختلف میپردازیم.
1- ادغام و بهینهسازی سرورها (Server Consolidation)
کاهش چشمگیر سرورهای فیزیکی: سازمانها میتوانند از ۲۰ سرور فیزیکی به ۳-۴ سرور قوی با چندین ماشین مجازی کاهش دهند.
2- توسعه و آزمایش نرمافزار (Development & Testing)
ایجاد محیطهای ایزوله برای تست نسخههای مختلف نرمافزار و همچنین شبیهسازی محیط تولید بدون نیاز به سختافزار اضافی
3- پیادهسازی زیرساخت رایانش ابری (Cloud Computing Foundation)
ایه اصلی سرویسهای ابری مانند IaaS (زیرساخت به عنوان سرویس) · ایجاد قابلیت Elasticity (کشسانی) در منابع
4- مجازیسازی دسکتاپ (VDI) و محیط کاری
ایجاد دسکتاپهای مجازی متمرکز برای کارمندان و همچنین کاهش هزینههای نرمافزارهای لایسنس
5- ایجاد محیطهای امن و ایزوله
ایزوله کردن شبکههای آزمایشگاهی واجرای برنامههای با ریسک امنیتی بالا در محیطهای قرنطینه
6-تست نفوذ و امنیت
شبیهسازی شبکههای سازمانی برای تست نفوذ و ایجاد محیطهای آزمایشی برای Malware Analysis
7- مجازیسازی Edge Computing
استقرار خدمات در لبه شبکه نزدیک به کاربران و کاهش تأخیر در برنامههای بلادرنگ
اینها نمونه ای از پرکاربرد تربن کارایی مجازی سازی است .
انواع مجازي سازي پر كاربرد :
مجازیسازی سختافزار(HardwareVirtualization) :
مجازیسازی سختافزاری به توانایی شبیهسازی کامل سختافزار رایانه از طریق نرمافزار اشاره دارد که در آن یک سیستم میزبان (host) میتواند چندین سیستم میهمان (guest) را به صورت همزمان اجرا کند. هر سیستم میهمان تصور میکند که در اختیار کامل سختافزار فیزیکی قرار دارد.
در اینجا عناصری وجود دارند که ساختار مجازی سازی سخت افزاری را ارائه میدهد.
هایپروایزر (Hypervisor) یا VMM: نرمافزار اصلی که مجازیسازی را مدیریت میکند.
ماشین مجازی (VM): نمونه ایزوله از سیستم کامپیوتری.
ماشین میزبان (Host): سیستم فیزیکی که هایپروایزر روی آن اجرا میشود.
ماشین میهمان (Guest): سیستمعامل و برنامههایی که روی VM اجرا میشوند.
معماری این نوع مجازی سازی به شکل زیر است :
| ماشینهای مجازی (VMs) |
| [Guest OS1] [Guest OS2] [Guest OS3]|
+—————————————+
| هایپروایزر (Hypervisor) |
+—————————————+
| سیستمعامل میزبان (Host OS) |
+—————————————+
| سختافزار فیزیکی (Hardware) |
+—————————————+
مجازیسازی سرور (Server Virtualization) :
مجازیسازی سرور فرآیندی است که با استفاده از نرمافزارهای تخصصی (هایپروایزر)، چندین سیستمعامل و برنامه کاربردی را به صورت همزمان و ایزوله بر روی یک سرور فیزیکی اجرا میکند. هر نمونه مجازی (VM) رفتار یک سرور فیزیکی مستقل را شبیهسازی میکند. این کار با استفاده از نرم افزار هایی به نام هایپروایزر(Hypervisor) انجام می شود.
زمانی که ما از این مجازی سازی استفاده میکنیم مزایایی همچون استفاده بهنیه از منابع ، صرفه جویی در هزینه ، آسانی در مدیریت و انعطاف پذیری برای ما سامل میشود.
چند نمونه از نرم افزار های Hypervisor که میتوانیم روی سرور نصب و اجرا کنیم عبارت اند از
1- VMWare ESXi
2- Microsoft Hyper-V
3- KVM (Kernel-based Virtual machine )
4- Xen
نکته طلایی
Hyper-V و Esxi معمولا به عنوان سرورهای تجاری و پشتیبانی رسمی دارند، اما Xen و KVM بیشتر در سرور های لینوکسی و سرویس های ابری استفاده میشود.
مجازیسازی دسکتاپ (Desktop Virtualization) :
مجازیسازی دسکتاپ (Desktop Virtualization) به معنی اجرای یک سیستمعامل دسکتاپ (مثل Windows یا Linux) روی یک سرور یا ماشین مجازی است، بهطوری که کاربران بتوانند از راه دور به آن دسترسی داشته باشند و محیط دسکتاپ واقعی خودشان را تجربه کنند.
اگر بخوام واضح تر بگم اینه که شما روی کامپیوتر خود یک نرم افزار نصب میکنید که این نرم افزار باعث میشه از منابع سیستم اصلی خود استفاده کنید و روی آن چندین سیستم عامل محتلف نصب کنید و هم زمان از چندین سیستم عامل بهره ببرید ، این مجازی سازی کاربد های زیادی دارد مثلا اکثر مواقع برای آموزش و محیط تست استفاده میوشد.
نرم افزار های که در بالا گفته شد عبارت اند از :
2- VMWare Fusion
3- Virtual Box
4- Hyper-v
مجازیسازی شبکه (Network Virtualization) :
مجازیسازی شبکه (Network Virtualization) به معنی ایجاد چند شبکه مجازی مستقل روی یک شبکه فیزیکی واحد است. یعنی میتوان شبکهها را بدون نیاز به کابلکشی یا سختافزار اضافه، جدا و مدیریت کرد.
انواع مجازیسازی شبکه:
VLAN (Virtual LAN): ایجاد شبکههای محلی مجازی روی همان تجهیزات فیزیکی.
VXLAN (Virtual Extensible LAN): گسترش VLAN به شبکههای بزرگ و دیتاسنترها.
SDN (Software-Defined Networking): کنترل شبکهها از طریق نرمافزار، جدا کردن کنترل و مسیر دادهها.
Network Function Virtualization (NFV): مجازیسازی سرویسهای شبکه مانند فایروال، روتر و Load Balancer روی سرورهای عمومی.
مجازیسازی ذخیرهسازی (Storage Virtualization) :
مجازیسازی استوریج یعنی ترکیب چند دستگاه ذخیرهسازی فیزیکی (مثل هارد دیسک، SSD، SAN، NAS) به یک منبع ذخیرهسازی مجازی واحد که مدیریت آن راحتتر و کارآمدتر است. کاربران و سرورها این منابع را به صورت یک فضای یکپارچه میبینند، بدون اینکه بدانند دادهها کجا دقیقاً ذخیره شدهاند.
انواع مجازیسازی ذخیرهسازی:
- Block-level virtualization: دادهها در سطح بلاک (Block) مجازیسازی میشوند، مثل SAN (Storage Area Network)
- File-level virtualization: دادهها در سطح فایل مجازیسازی میشوند، مثل NAS (Network Attached Storage)
- Hybrid: ترکیبی از هر دو برای انعطاف بیشتر
مزایایی این نوع مجازی سازی :
- استفاده بهینه از فضا: ترکیب ظرفیت هاردها و جلوگیری از هدر رفت فضای خالی
- مدیریت سادهتر: میتوان حجمها، فولدرها و منابع را از یک کنسول مدیریت کرد
- قابلیت مقیاسپذیری: اضافه کردن هارد جدید یا استوریج بدون توقف سیستم
- افزایش انعطاف و عملکرد: دادهها میتوانند روی چند دستگاه ذخیره شوند و سرعت خواندن/نوشتن افزایش یابد
- بکاپ و بازیابی آسان: به دلیل تجمیع منابع، پشتیبانگیری و بازیابی راحتتر است.
مجازیسازی برنامههای کاربردی (Application Virtualization) :
مجازیسازی برنامهها یعنی اجرای یک برنامه روی سیستم بدون نصب مستقیم آن روی سیستم عامل میزبان. به عبارت دیگر، برنامه در یک محیط مجازی جداگانه اجرا میشود و به سیستم عامل اصلی آسیبی نمیزند و تداخلی با سایر برنامهها ندارد.
این نوع مجازی سازی کاربرد های عدم نیاز به نصب مستقیم ، جلوگیری از تداخل نرمافزاری،مدیریت آسانتر ،امنیت بیشتر وبهروزرسانی و پچ کردن برنامهها را برای ما فراهم می کند.
بررسی کامل :
مجازیسازی سرور = تقسیم سختافزار به چند سرور
مجازیسازی دسکتاپ = اجرای سیستمعامل دسکتاپ روی سرور
مجازیسازی شبکه = ایجاد شبکههای مجازی مستقل روی یک زیرساخت فیزیکی
مجازیسازی ذخیره سازی = روی سخت افزار و ذخیره سازی دیتا کاربرد دارد.
مجازیسازی برنامه = روی سطح نرمافزار تمرکز دارد و باعث ایزوله و قابل حمل شدن برنامهها میشود.
دیدگاهتان را بنویسید