KVM چیست؟
ماشین مجازی مبتنی بر هسته (KVM) یک ویژگی نرمافزاری است که میتوانید آن را روی ماشینهای فیزیکی لینوکس نصب کنید تا ماشینهای مجازی ایجاد کنید. یک ماشین مجازی یک برنامه نرمافزاری است که به عنوان یک کامپیوتر مستقل در داخل یک کامپیوتر فیزیکی دیگر عمل میکند. منابعی مانند چرخههای CPU، پهنای باند شبکه و حافظه را با ماشین فیزیکی به اشتراک میگذارد. KVM یک جزء سیستم عامل لینوکس است که پشتیبانی بومی از ماشینهای مجازی در لینوکس را فراهم میکند. از سال ۲۰۰۷ در توزیعهای لینوکس موجود بوده است.
چرا KVM مهم است؟
ماشین مجازی مبتنی بر هسته (KVM) میتواند هر ماشین لینوکسی را به یک ابررایانه bare-metal تبدیل کند. این به توسعهدهندگان اجازه میدهد تا زیرساخت محاسباتی را برای سیستمعاملهای مختلف بدون سرمایهگذاری در سختافزار جدید، مقیاسبندی کنند. KVM مدیران سرور را از تهیه دستی زیرساخت مجازیسازی رها میکند و امکان استقرار آسان تعداد زیادی ماشین مجازی در محیطهای ابری را فراهم میکند.
کسبوکارها به دلایل مزایای زیر از KVM استفاده میکنند:
- عملکرد بالا: KVM به گونهای طراحی شده است که برنامههای پر تقاضا را به طور یکپارچه مدیریت کند. همه سیستمعاملهای مهمان، عملکرد بالای سیستم عامل میزبان – لینوکس – را به ارث میبرند. ابررایانه KVM همچنین اجازه میدهد تا مجازیسازی تا حد امکان نزدیک به سختافزار سرور انجام شود، که بیشتر تأخیر پردازش را کاهش میدهد.
- امنیت: ماشینهای مجازی که روی KVM اجرا میشوند از ویژگیهای امنیتی بومی سیستم عامل لینوکس، از جمله لینوکس تقویتشده با امنیت (SELinux) برخوردارند. این تضمین میکند که همه محیطهای مجازی به طور دقیق از مرزهای امنیتی مربوطه خود پیروی میکنند تا حریم خصوصی و حاکمیت دادهها را تقویت کنند.
- پایداری: KVM بیش از یک دهه به طور گسترده در برنامههای تجاری مورد استفاده قرار گرفته است. از پشتیبانی عالی یک جامعه متنباز پررونق برخوردار است. کد منبعی که KVM را تغذیه میکند، بالغ است و پایه پایداری را برای برنامههای سازمانی فراهم میکند.
- مقرون به صرفه بودن: KVM رایگان و متنباز است، به این معنی که کسبوکارها مجبور نیستند هزینههای مجوز اضافی برای میزبانی ماشینهای مجازی پرداخت کنند.
- انعطافپذیری: KVM گزینههای زیادی را در هنگام نصب برای کسبوکارها فراهم میکند، زیرا با تنظیمات سختافزاری مختلف کار میکند. مدیران سرور میتوانند به طور مؤثر CPU، فضای ذخیرهسازی یا حافظه اضافی را به یک ماشین مجازی با KVM اختصاص دهند. KVM همچنین از تخصیص نازک پشتیبانی میکند، که فقط در صورت نیاز منابع را در اختیار ماشین مجازی قرار میدهد.
KVM چگونه کار میکند؟
ماشین مجازی مبتنی بر هسته (KVM) به نصب هسته لینوکس بر روی کامپیوتری که توسط CPU با پشتیبانی از افزونههای مجازیسازی تغذیه میشود، نیاز دارد. به طور خاص، KVM از همه CPUهای x86، خانوادهای از تراشههای کامپیوتری که قادر به پردازش زبان دستورالعمل Intel x86 هستند، پشتیبانی میکند.
- هسته لینوکس: هسته لینوکس هسته اصلی سیستم عامل متنباز است. هسته یک برنامه سطح پایین است که با سختافزار کامپیوتر تعامل دارد. همچنین تضمین میکند که برنامههای نرمافزاری در حال اجرا بر روی سیستم عامل منابع محاسباتی مورد نیاز را دریافت میکنند. توزیعهای لینوکس، مانند Red Hat Enterprise Linux، Fedora و Ubuntu، هسته لینوکس و برنامههای اضافی را در یک سیستم عامل تجاری کاربرپسند بستهبندی میکنند.
نحوه فعال کردن KVM
پس از نصب هسته لینوکس، باید اجزای نرمافزاری اضافی زیر را روی ماشین لینوکس نصب کنید:
- یک ماژول هسته میزبان
- یک ماژول مخصوص پردازنده
- یک شبیهساز
- مجموعهای از بستههای لینوکس دیگر برای گسترش قابلیتها و عملکرد KVM
پس از بارگذاری، مدیر سرور یک ماشین مجازی را از طریق ابزار خط فرمان یا رابط کاربری گرافیکی ایجاد میکند. سپس KVM ماشین مجازی را به عنوان یک فرآیند لینوکس جداگانه اجرا میکند. ابررایانه به هر ماشین مجازی حافظه مجازی، فضای ذخیرهسازی، شبکه، CPU و منابع اختصاص میدهد.
تفاوت بین KVM و VMware چیست؟
VMware شرکت نرمافزاری است که VMware ESXi، یک راه حل مجازیسازی دارای مجوز تجاری را تولید میکند. ابررایانههای VMware برای برنامههای سازمانی استفاده میشوند و ماشینهای مجازی قادر به مدیریت حجم کاری سنگین هستند.
ماشین مجازی مبتنی بر هسته (KVM) و VMware ESXi هر دو زیرساخت مجازیسازی را برای استقرار ابررایانههای نوع ۱ روی هسته لینوکس فراهم میکنند. با این حال، KVM یک ویژگی متنباز است در حالی که VMware ESXi از طریق مجوزهای تجاری در دسترس است.
سازمانهایی که از اجزای مجازیسازی VMware استفاده میکنند از پشتیبانی حرفهای تیم فنی آن برخوردارند. در همین حال، کاربران KVM برای رفع مشکلات احتمالی به یک جامعه متنباز بزرگ متکی هستند.