مجازیسازی چیست؟ از کامپیوترهای بزرگ IBM تا vSphere و Proxmox؛ راهنمای کامل
یک ساختمان بزرگ را تصور کنید که فقط یک خانواده در آن زندگی میکند؛ بیشتر اتاقها خالیاند، ولی قبض برق و نگهداری کل ساختمان را باید داد. سرورهای قدیمی همینطور بودند: یک سرور فیزیکی برای یک سیستمعامل و یک برنامه، که اغلب از ده درصد توانش هم استفاده نمیکرد. مجازیسازی همان ساختمان را آپارتمانسازی میکند: چند «آپارتمان» جدا، هر کدام با سیستمعامل و برنامههای خودش، روی همان سختافزار. این صفحه حالا جای شش مقالهی قدیمی سایت دربارهی مجازیسازی را گرفته است: تعریف، تاریخچه، معماری x86، سطوح مجازیسازی و راهکارهای تحمل خطا، همه یکجا و بهروز.
ساختمان، مدیر ساختمان، آپارتمانها
| ساختمان = سرور فیزیکی (Host) | پردازنده، حافظه، دیسک و کارت شبکهی واقعی. |
| مدیر ساختمان = هایپروایزر | نرمافزاری که سختافزار را بین آپارتمانها تقسیم میکند و نمیگذارد یکی به دیگری سرک بکشد؛ مثل VMware ESXi، Hyper-V یا KVM. |
| آپارتمان = ماشین مجازی (VM) | یک کامپیوتر کامل نرمافزاری با سیستمعامل خودش (Guest). از دید سیستمعامل، سختافزار واقعی است. |
| اسبابکشی = Live Migration | جابهجا کردن یک ماشین مجازی روشن از یک سرور به سرور دیگر، بدون اینکه کاربرها چیزی بفهمند. |
چرا ارزشش را دارد؟ سرورهای کمتر یعنی برق، فضا و خرید کمتر؛ ساختن یک سرور جدید در چند دقیقه به جای چند هفته؛ و مهمتر از همه، جدا شدن نرمافزار از سختافزار: اگر سرور فیزیکی خراب شود، ماشینهای مجازی روی سرور دیگری روشن میشوند.
دو نوع هایپروایزر
| نوع ۱ (Bare-Metal) | مستقیم روی سختافزار نصب میشود و خودش سیستمعامل سرور است. برای مرکز داده و سرورهای واقعی: VMware ESXi، Microsoft Hyper-V، KVM (و Proxmox VE که بر پایهی آن است)، Nutanix AHV، XCP-ng. |
| نوع ۲ (Hosted) | مثل یک برنامه روی ویندوز، مک یا لینوکس اجرا میشود. برای آزمایشگاه، آموزش و تست: VMware Workstation و Fusion، VirtualBox. |
اگر میخواهید همین امروز روی لپتاپتان شروع کنید، نوع ۲ کافی است؛ نقشهاش را در آزمایشگاه شبکه روی لپتاپ دادهایم.
تاریخچه در چهار ایستگاه
- دههی ۱۹۶۰، کامپیوترهای بزرگ IBM: اولین ماشینهای مجازی برای تقسیم یک Mainframe گران بین کاربران زیاد ساخته شدند؛ هر کاربر فکر میکرد کل کامپیوتر مال خودش است.
- دههی ۱۹۷۰، قواعد علمی: پوپک و گلدبرگ در ۱۹۷۴ شرطهایی را نوشتند که یک معماری پردازنده باید داشته باشد تا بشود آن را کامل و کارآمد مجازی کرد.
- اواخر دههی ۱۹۹۰، معمای x86: پردازندههای x86 کامپیوترهای شخصی و سرورهای معمولی آن شرطها را نداشتند؛ چند دستور حساس بیصدا اجرا میشد و هایپروایزر نمیتوانست جلویش را بگیرد. VMware در ۱۹۹۹ با ترجمهی دودویی (Binary Translation) این مشکل را نرمافزاری دور زد و مجازیسازی x86 را عملی کرد. روش دیگر، پارامجازیسازی (Xen)، سیستمعامل مهمان را کمی تغییر میداد تا با هایپروایزر همکاری کند.
- از ۲۰۰۵ به بعد، کمک سختافزاری: اینتل (VT-x) و AMD (AMD-V) پشتیبانی مجازیسازی را به خود پردازنده اضافه کردند و بعد هم مدیریت حافظهی مجازی را سختافزاری کردند. امروز همهی هایپروایزرها روی همین قابلیتها سوارند و افت سرعت ماشین مجازی برای بیشتر کارها ناچیز است.
نکتهی عملی از همین تاریخچه: اگر نرمافزار مجازیسازی پیغام میدهد «VT-x/AMD-V در دسترس نیست»، معمولاً باید Intel Virtualization Technology یا SVM Mode را در تنظیمات BIOS/UEFI روشن کنید. در ویندوز، فعال بودن Hyper-V یا امنیت مبتنی بر مجازیسازی (VBS) هم ممکن است بقیهی نرمافزارها را مجبور کند از طریق خودش کار کنند.
پنج سطح مجازیسازی
| مجازیسازی سرور | رایجترین نوع: چند سرور مجازی روی یک سرور فیزیکی. پایهی همهی مراکز داده و سرویسهای ابری امروز. |
| مجازیسازی دسکتاپ (VDI) | ویندوز کارمندها روی سرور اجرا میشود و آنها از هر دستگاهی به آن وصل میشوند. اطلاعات هیچوقت از مرکز داده بیرون نمیرود؛ مثل Citrix، Omnissa Horizon (نام جدید VMware Horizon) یا Azure Virtual Desktop. |
| مجازیسازی برنامه | برنامه بدون نصب روی کامپیوتر کاربر، از سرور یا در یک بستهی جداشده اجرا میشود؛ برای برنامههای قدیمی که با ویندوز جدید سازگار نیستند مفید است. |
| مجازیسازی ذخیرهسازی | دیسکهای چند سرور یک مخزن مشترک میشوند؛ مثل vSAN یا Storage Spaces Direct. |
| مجازیسازی شبکه | سوییچ، روتر و فایروال به نرمافزار تبدیل میشوند؛ از سوییچ مجازی داخل هر هایپروایزر تا پلتفرمهایی مثل NSX. |
وقتی یک سرور میسوزد: راهکارهای تحمل خطا
وقتی ده سرور روی یک ماشین فیزیکی است، خرابی آن ماشین یعنی ده سرور خاموش. برای همین مجازیسازی همیشه با این ابزارها میآید:
| Live Migration (vMotion) | جابهجایی ماشین روشن بدون قطعی؛ برای تعمیر یا بهروزرسانی سرور فیزیکی بدون خاموش کردن سرویسها. |
| High Availability (HA) | اگر یک سرور فیزیکی بیفتد، ماشینهایش خودکار روی سرورهای دیگر کلاستر دوباره روشن میشوند. چند دقیقه قطعی، ولی بدون دخالت انسان. |
| Fault Tolerance (FT) | یک نسخهی سایه از ماشین مجازی همزمان روی سرور دیگری اجرا میشود؛ اگر اصلی بیفتد، سایه بدون هیچ قطعی ادامه میدهد. گرانتر و برای سرویسهای خیلی حساس. |
| Replication | کپی مداوم ماشینها به یک سایت دیگر برای وقتی که کل اتاق سرور از دست برود. |
| Snapshot | عکس لحظهای از ماشین قبل از یک تغییر پرخطر، برای برگشت سریع. بکاپ نیست: روی همان دیسک است و با خرابی دیسک یا باجافزار از بین میرود، و نگه داشتنش طولانیمدت سرعت را پایین میآورد. |
بکاپ واقعی ماشینهای مجازی را با ابزارهایی مثل Veeam و قاعدهی ۳-۲-۱ بگیرید؛ سه سناریوی فاجعه و جوابشان را در بکاپ سرور در سه سناریوی فاجعه ببینید.
ماشین مجازی یا کانتینر؟
اگر ماشین مجازی یک آپارتمان کامل با آشپزخانه و تأسیسات خودش است، کانتینر (مثل Docker) یک اتاق در آپارتمانی مشترک است: همه از یک هستهی سیستمعامل استفاده میکنند، پس سبکتر و سریعتر بالا میآیند، ولی جداسازیشان کمتر است. امروز این دو رقیب نیستند: بیشتر کانتینرها خودشان داخل ماشینهای مجازی اجرا میشوند.
بازار مجازیسازی امروز
VMware سالها انتخاب پیشفرض بود. بعد از خریده شدنش توسط Broadcom در نوامبر ۲۰۲۳، لایسنس دائمی کنار رفت و محصولات در بستههای اشتراکی عرضه شدند؛ خیلی از سازمانها، بهخصوص شرکتهای کوچکتر، گزینههای دیگر را هم جدی بررسی میکنند:
- VMware vSphere: هنوز کاملترین اکوسیستم و رایجترین مهارت در آگهیهای استخدام سازمانهای بزرگ.
- Microsoft Hyper-V: همراه ویندوز سرور؛ برای سازمانهایی که زیرساخت مایکروسافتی دارند طبیعیترین گزینه است.
- Proxmox VE: متنباز، بر پایهی KVM، با رابط وب کامل؛ محبوب در شرکتهای کوچک و متوسط و آزمایشگاهها.
- Nutanix و XCP-ng: اولی برای زیرساخت هایپرکانورج سازمانی، دومی جانشین متنباز XenServer. سرگذشت Xen و XenServer را در شجرهنامهی XenServer آوردهایم.
پرسشهای رایج
ماشین مجازی کندتر از سرور فیزیکی است؟
هر سرور فیزیکی چند ماشین مجازی را تحمل میکند؟
برای شروع یادگیری کدام مجازیساز؟
مجازیسازی همان رایانش ابری است؟
از آپارتمانسازی سرور تا مرکز داده
هایپروایزر سختافزار را بین ماشینهای مجازی تقسیم میکند؛ HA و Live Migration آن را قابل اعتماد میکنند؛ و بکاپ واقعی از آن محافظت میکند. اگر میخواهید زیرساخت مجازی یک سازمان را نصب، مدیریت و عیبیابی کنید، دورهی تخصصی VMware vSphere 9 را ببینید.
دیدگاهتان را بنویسید