اپیزود یازدهم

۱. معماری مجازی‌سازی

انواع تایپ‌های مجازی‌سازی (Virtualization Types)

برای اجرای ماشین‌ها و سرویس‌های مجازی، سه رویکرد و معماری اصلی در دنیای IT وجود دارد.

Type 1 (Bare-Metal)

هایپروایزر مستقیماً روی سخت‌افزار سرور نصب می‌شود (بدون نیاز به ویندوز واسط). بالاترین سرعت و پایداری را دارد. مثال: Microsoft Hyper-V و VMware ESXi.

Type 2 (Hosted)

نرم‌افزار مجازی‌ساز روی یک سیستم‌عامل (مثل ویندوز ۱۰) نصب می‌شود. برای محیط‌های تست و خانگی است. مثال: VMware Workstation و VirtualBox.

Container (OS-Level)

مجازی‌سازی در سطح سیستم‌عامل. ماشینِ کامل ساخته نمی‌شود، بلکه برنامه‌ها در محیط‌های ایزوله اجرا می‌شوند و کرنل (هسته) با سیستم میزبان مشترک است.

داکر و کوبرنتیز (Docker & Kubernetes)

در دنیای مدرن، به جای ماشین مجازی (VM)، از کانتینرها استفاده می‌شود:

  • Docker (داکر): ابزاری است که یک نرم‌افزار را با تمام پیش‌نیازها و کتابخانه‌هایش در یک پکیج ایزوله (به نام Container) بسته‌بندی می‌کند تا مطمئن باشیم برنامه روی هر سیستمی (سرور، لپ‌تاپ برنامه‌نویس) دقیقاً یکسان اجرا می‌شود.
  • Kubernetes (کوبرنتیز یا K8s): وقتی تعداد کانتینرهای داکر به صدها عدد برسد، مدیریت آن‌ها دستی غیرممکن است. کوبرنتیز یک ابزار ارکستریشن است که کانتینرها را مدیریت می‌کند، در صورت کرش کردن آن‌ها را ری‌استارت می‌کند و بار را بین سرورها تقسیم می‌کند (Load Balancing).

معماری Monolithic در برابر Microkernel

هایپروایزرهای نوع یک (Type 1) به دو دسته معماری تقسیم می‌شوند:

Monolithic (یکپارچه - مثل VMware ESXi):

در این معماری، تمام درایورهای سخت‌افزاریِ سرور مستقیماً درون خودِ لایه هایپروایزر قرار دارند. مزیت آن سرعت بسیار بالاست، اما عیب آن این است که هایپروایزر حجیم می‌شود و اگر درایوری باگ داشته باشد، کل سیستم کرش می‌کند.

Microkernel (ریزکرنل - مثل Microsoft Hyper-V):

لایه هایپروایزر به شدت کوچک و سبک است و هیچ درایوری ندارد! درایورها در سیستم‌عامل میزبان (که به آن Parent Partition می‌گویند) نصب می‌شوند. امنیت و پایداری این روش بالاتر است.