ماشین مجازی چیست؟

بسیاری از افراد هر روز از ماشین های مجازی برای دسترسی به کامپیوترها در مکان دیگری استفاده می کنند.یک ماشین مجازی (VM)، سیستم عامل (OS) یا یک برنامه کاربردی است که بر روی  یک نرم افزار نصب شده و از سخت افزار کپی برداری می کند. کاربر نهایی یا همان End User همان تجربه خود را در ماشین مجازی دارد که در  سخت افزار اختصاصی نیز دارد.

هایپروایزر چیست؟

نرم افزار تخصصی که تحت عنوان هایپروایزر نامیده می شود، پردازنده ، حافظه ، هارد دیسک ، شبکه و سایر منابع سخت افزاری کاربر را شبیه سازی نموده ، و ماشین مجازی را قادر می سازد که منابع را به اشتراک بگذارد. Hypervisor می تواند چندین سیستم عامل سخت افزاری مجازی را که از یکدیگر جدا شده اند ، شبیه سازی کند و به ماشین‌های مجازی امکان اجرای سیستم عامل های لینوکس و ویندوز سرور را در همان هاست فیزیکی می دهد.

مزایای استفاده از ماشین مجازی

مجازی سازی با کاهش نیاز به سیستم های سخت افزاری فیزیکی هزینه ها را محدود می کند. ماشین های مجازی با کارایی بیشتری از سخت افزار استفاده می کنند که باعث کاهش مقادیر سخت افزاری و هزینه های تعمیر و نگهداری آن می شود. آنها همچنین مدیریت را آسان می کنند. مدیران IT می توانند از محیط های مجازی برای ساده سازی تهیه نسخه پشتیبان ، Disaster Recovery ، پیاده سازی و کارهای اصلی مدیریت سیستم استفاده کنند.

ماشین‌های مجازی نیازی به سخت افزار تخصصی و فوق تخصصی ندارند. مجازی سازی به پهنای باند بیشتر ، ذخیره سازی و پردازش بیشتری نیاز دارد تا یک سرور فیزیکی. VM ها به راحتی می توانند از طریق سرورهای فیزیکی، به راحتی حرکت کرده ، کپی و مجدداً بهینه شوند. از آنجا که VM در یک هاست فیزیکی می تواند مقادیر نامساوی منابع را مصرف کند - ممکن است یکی از منابع فیزیکی موجود را متوقف کند ، در حالی که دیگری ذخیره کمی دارد – متخصصان IT باید منابع موجود را بین ماشین های مجازی بالانس نمایند.

مدیریت ماشین مجازی  یا VM Management

استفاده از ماشین های مجازی دارای چندین نکته مهم در بحث مدیریتی می باشد که بسیاری از آن‌ها از طریق مدیریت سیستم های عمومی به بهترین شیوه ها و ابزارهایی که برای مدیریت VM ها طراحی شده اند ، می‌پردازند. خطرات زیادی برای ادغام وجود دارد ، از جمله این موارد استفاده بیش از حد از منابع یا احتمال وقوع خاموشی در چندین VM است که به دلیل قطع برق در سرور می باشد. در حالی که این صرفه جویی در هزینه ها با افزایش تعداد ماشین‌های مجازی در همان پلتفرم سخت افزاری افزایش می یابد که این مورد باعث افزایش ریسک می شود. این امکان وجود دارد که صدها ماشین مجازی را بر روی همان سخت افزار قرار داد ، اما اگر پلت فرم سخت افزاری از کار بیفتد ، می تواند ده ها یا صدها دستگاه مجازی را از کار بیاندازد.

استفاده از ماشین های مجازی یا VMs

ماشین های مجازی دارای چندین کاربرد هستند، وقتی به سیستم عامل های مختلف و قدرت پردازش مختلف برای برنامه های مختلف که به طور همزمان اجرا می شوند نیاز می شود می توان پیاده سازی نمود. به عنوان مثال ، اگر یک شرکت بخواهد همزمان چندین وب سرور و یا بانکهای اطلاعاتی کوچک را آزمایش کند و یا اگر شرکتی بخواهد از همان سرور برای اجرای نرم افزار و  بازی های فشرده گرافیکی و بانک اطلاعات خدمات مشتری استفاده کند.

ماشین مجازی در مقابل Dual Boot  - (VM vs. Dual Boot)

قبل از به وجود آمدن مجازی سازی ،اگر یک اپراتور می خواست دو سیستم عامل ، مثلاً ویندوز و لینوکس را اجرا کند، مجبور بود دو سیستم عامل کامل را اجرا کند و بین آنها جابجا شود. در حالی که فقط یک بار می توان از آن استفاده کرد،در برخی موارد، به ویژه هنگامی که کامپیوتر چندان از سخت افزار قوی برخوردار نمی باشد، برخی از اپراتورهای کامپیوتر همچنان ترجیح می دهند از بوت دوگانه یا Dual Boot استفاده کنند.با این حال ، هنگامی که اپراتور باید بین برنامه های مختلف در سیستم عامل های مختلف جابجا شود ، VM بسیار کاربردی است.

ماشین مجازی در مقابل شبیه سازها - VM vs. emulators

شبیه ساز نرم افزاری است که به یک برنامه اجازه می دهد ویژگی های دیگری را بدست آورد. به عنوان مثال ، می توان از نرم افزار شبیه سازی استفاده کرد تا کامپیوتر شخصی به عنوان یک کنسول بازی کار کند.

ماشین مجازی در مقابل Containers

کانتینرها شبیه به VM ها هستند ، به جز اینکه آنها فقط سیستم عامل را مجازی می کنند تا بقیه سخت افزارهای زیرین. ظروف حاوی کد ، ابزار سیستم ، زمان اجرا ، کتابخانه های سیستم و تنظیمات مورد نیاز برای برنامه های مختلف هستند. به همین دلیل اغلب در هنگام استفاده از چندین سیستم عامل با همان سیستم عامل مورد استفاده قرار می گیرند. از کانتینرها برای ایجاد برنامه های بومی ابری ، توزیع شده و بسته بندی برنامه های قدیمی برای افزایش قابلیت حمل استفاده می شود. یکی از پیشروترین تولید کنندگان کانتینر از اواسط سال 2019 Docker بود که اولین بار در سال 2013 به عنوان یک بستر ظروف مبتنی بر لینوکس وارد بازار شد.

فروشندگان VMs - VM Vendors

چندین فروشنده نرم افزار ماشین مجازی ارائه می دهند ، اما دو فروشنده اصلی در بازار حاکم هستند: VMware (توسط EMC در سال 2004 که توسط Dell در سال 2015 خریداری شد) ، Oracle و Microsoft. تعداد زیادی از فروشندگان منبع باز VM نیز ادعاهای خود را مانند ProxMox اعلام کرده اند. VMware دارای سبد محصولات بالغ و دارای سالها استفاده در صنعت فناوری اطلاعات است. مایکروسافت در سالهای اخیر بسیار قدرتمند شده است و راه حل های VM Azure خود را معرفی کرده است. اینها شامل 11 سری مختلف است که از سری A آن متغیر است - برای سرورهای توسعه و تست ، سرورهای وب با ترافیک کم ، پایگاه داده های کوچک تا متوسط ​​، سرورهایی برای اثبات مفاهیم ، و مخازن کد - تا سری N آن طراحی شده است. با استفاده از واحد پردازش گرافیکی (GPU) برای بارهای محاسباتی و فشرده سازی ، مانند تجسم از راه دور ، یادگیری عمیق و تجزیه و تحلیل و پیش بینی.

سخن پایانی

در این نوشته ضمن بررسی کامل ماشین مجازی ، آن را با شبیه سازها و کانتینر ها مورد مقایسه قراردادیم و اطلاعات کاملی درباره VM ها ارائه کردیم . سوالات و یا نظرات خود را از طریق بخش دیدگاه های این نوشته با ما درمیان بگذارید.