مجازیسازی چیست؟
مجازیسازی فناوریای است که میتوانید از آن برای ایجاد نمایشهای مجازی از سرورها، فضای ذخیرهسازی، شبکهها و سایر ماشینهای فیزیکی استفاده کنید. نرمافزار مجازی عملکرد سختافزار فیزیکی را تقلید میکند تا چندین ماشین مجازی را به طور همزمان بر روی یک ماشین فیزیکی اجرا کند. کسبوکارها از مجازیسازی برای استفادهی کارآمد از منابع سختافزاری خود و کسب بازده بیشتر از سرمایهگذاری خود استفاده میکنند. همچنین، خدمات رایانش ابری را که به سازمانها در مدیریت کارآمدتر زیرساختها کمک میکنند، تامین میکند.
چرا مجازیسازی مهم است؟
با استفاده از مجازیسازی، میتوانید با انعطافپذیری بیشتری با هر منبع سختافزاری تعامل داشته باشید. سرورهای فیزیکی برق مصرف میکنند، فضای ذخیرهسازی را اشغال میکنند و به نگهداری نیاز دارند. اگر بخواهید به آنها دسترسی داشته باشید، اغلب توسط مجاورت فیزیکی و طراحی شبکه محدود میشوید. مجازیسازی با انتزاع عملکرد سختافزار فیزیکی به نرمافزار، تمام این محدودیتها را حذف میکند. میتوانید زیرساخت سختافزاری خود را مانند یک برنامه در وب مدیریت، نگهداری و استفاده کنید.
مثال مجازیسازی
شرکتی را در نظر بگیرید که به سرورهایی برای سه عملکرد نیاز دارد:
- ذخیرهی ایمن ایمیلهای تجاری
- اجرای یک برنامهی کاربردی رو به مشتری
- اجرای برنامههای کاربردی داخلی کسبوکار
هر یک از این عملکردها نیازمندیهای پیکربندی متفاوتی دارند:
- برنامهی ایمیل به ظرفیت ذخیرهسازی بیشتر و سیستم عامل ویندوز نیاز دارد.
- برنامهی رو به مشتری به سیستم عامل لینوکس و قدرت پردازش بالا برای مدیریت حجم بالای ترافیک وبسایت نیاز دارد.
- برنامهی کاربردی داخلی کسبوکار به iOS و حافظهی داخلی (RAM) بیشتر نیاز دارد.
برای برآورده کردن این الزامات، شرکت سه سرور فیزیکی اختصاصی مختلف برای هر برنامه راهاندازی میکند. شرکت باید سرمایهگذاری اولیهی بالایی انجام دهد و نگهداری و ارتقاء مداوم را برای هر دستگاه به صورت جداگانه انجام دهد. همچنین، شرکت نمیتواند ظرفیت محاسباتی خود را بهینه کند. ۱۰۰٪ هزینههای نگهداری سرورها را پرداخت میکند اما فقط از کسری از ظرفیت ذخیرهسازی و پردازش آنها استفاده میکند.
استفادهی کارآمد از سختافزار
با مجازیسازی، شرکت سه سرور دیجیتال یا ماشین مجازی را بر روی یک سرور فیزیکی واحد ایجاد میکند. الزامات سیستم عامل را برای ماشینهای مجازی مشخص میکند و میتواند از آنها مانند سرورهای فیزیکی استفاده کند. با این حال، شرکت اکنون سختافزار کمتر و هزینههای مرتبط کمتری دارد.
زیرساخت به عنوان یک سرویس
شرکت میتواند یک قدم فراتر رفته و از یک نمونهی ابری یا ماشین مجازی از یک ارائهدهندهی رایانش ابری مانند AWS استفاده کند. AWS تمام سختافزار زیربنایی را مدیریت میکند و شرکت میتواند منابع سرور با پیکربندیهای مختلف را درخواست کند. همهی برنامهها بر روی این سرورهای مجازی بدون اینکه کاربران متوجه تفاوتی شوند، اجرا میشوند. مدیریت سرور نیز برای تیم IT شرکت آسانتر میشود.
مجازیسازی چیست؟ (توضیح بیشتر)
برای درک صحیح ماشین مجازی مبتنی بر هسته (KVM)، ابتدا باید برخی از مفاهیم اساسی در مجازیسازی را درک کنید. مجازیسازی فرآیندی است که به یک کامپیوتر اجازه میدهد منابع سختافزاری خود را با چندین محیط جدا شدهی دیجیتالی به اشتراک بگذارد. هر محیط مجازی شده در منابع اختصاص داده شدهی خود، مانند حافظه، قدرت پردازش و فضای ذخیرهسازی، اجرا میشود. با مجازیسازی، سازمانها میتوانند بدون راهاندازی مجدد، بین سیستم عاملهای مختلف روی یک سرور جابجا شوند.
ماشینهای مجازی و هایپروایزرها دو مفهوم مهم در مجازیسازی هستند.
ماشین مجازی
یک ماشین مجازی یک کامپیوتر تعریف شده توسط نرمافزار است که بر روی یک کامپیوتر فیزیکی با یک سیستم عامل و منابع محاسباتی جداگانه اجرا میشود. کامپیوتر فیزیکی، ماشین میزبان و ماشینهای مجازی، ماشینهای مهمان نامیده میشوند. چندین ماشین مجازی میتوانند بر روی یک ماشین فیزیکی اجرا شوند. ماشینهای مجازی توسط یک هایپروایزر از سختافزار کامپیوتر انتزاع میشوند.
هایپروایزر
هایپروایزر یک جزء نرمافزاری است که چندین ماشین مجازی را در یک کامپیوتر مدیریت میکند. تضمین میکند که هر ماشین مجازی منابع اختصاص داده شده را دریافت میکند و با عملکرد سایر ماشینهای مجازی تداخلی ندارد. دو نوع هایپروایزر وجود دارد.
- هایپروایزر نوع ۱: یک هایپروایزر نوع ۱ یا هایپروایزر bare-metal، یک برنامهی هایپروایزر است که مستقیماً بر روی سختافزار کامپیوتر به جای سیستم عامل نصب میشود. بنابراین، هایپروایزرهای نوع ۱ عملکرد بهتری دارند و معمولاً توسط برنامههای کاربردی سازمانی استفاده میشوند. KVM از هایپروایزر نوع ۱ برای میزبانی چندین ماشین مجازی بر روی سیستم عامل لینوکس استفاده میکند.
- هایپروایزر نوع ۲: همچنین به عنوان یک هایپروایزر میزبانی شده شناخته میشود، هایپروایزر نوع ۲ بر روی یک سیستم عامل نصب میشود. هایپروایزرهای نوع ۲ برای محاسبات کاربر نهایی مناسب هستند.
مزایای مجازیسازی چیست؟
مجازیسازی مزایای متعددی برای هر سازمانی فراهم میکند:
- استفادهی کارآمد از منابع: مجازیسازی منابع سختافزاری مورد استفاده در مرکز دادهی شما را بهبود میبخشد. به عنوان مثال، به جای اجرای یک سرور بر روی یک سیستم کامپیوتری، میتوانید با استفاده و بازگرداندن سرورها به صورت مورد نیاز به استخر، یک استخر سرور مجازی بر روی همان سیستم کامپیوتری ایجاد کنید. داشتن سرورهای فیزیکی زیربنایی کمتر، فضا را در مرکز دادهی شما آزاد میکند و در هزینههای برق، ژنراتورها و وسایل خنککننده صرفهجویی میکند.
- مدیریت خودکار IT: اکنون که کامپیوترهای فیزیکی مجازی هستند، میتوانید آنها را با استفاده از ابزارهای نرمافزاری مدیریت کنید. مدیران برنامههای استقرار و پیکربندی را برای تعریف قالبهای ماشین مجازی ایجاد میکنند. میتوانید زیرساخت خود را به طور مکرر و پیوسته تکثیر کنید و از پیکربندیهای دستی مستعد خطا جلوگیری کنید.
- بازیابی سریعتر از فاجعه: هنگامی که رویدادهایی مانند بلایای طبیعی یا حملات سایبری بر عملیات تجاری تأثیر منفی میگذارند، بازیابی دسترسی به زیرساخت IT و جایگزینی یا تعمیر یک سرور فیزیکی میتواند ساعتها یا حتی روزها طول بکشد. در مقابل، این فرآیند با محیطهای مجازی شده، چند دقیقه طول میکشد. این پاسخ سریع به طور قابل توجهی انعطافپذیری را بهبود میبخشد و تداوم کسبوکار را تسهیل میکند تا عملیات طبق برنامه ادامه یابد.
مجازیسازی چگونه کار میکند؟
مجازیسازی از نرمافزار تخصصی به نام هایپروایزر برای ایجاد چندین نمونهی ابری یا ماشین مجازی بر روی یک کامپیوتر فیزیکی استفاده میکند.
- نمونههای ابری یا ماشینهای مجازی: پس از نصب نرمافزار مجازیسازی بر روی کامپیوتر خود، میتوانید یک یا چند ماشین مجازی ایجاد کنید. میتوانید به ماشینهای مجازی به همان روشی که به سایر برنامهها در کامپیوتر خود دسترسی دارید، دسترسی داشته باشید. کامپیوتر شما میزبان و ماشین مجازی مهمان نامیده میشود. چندین مهمان میتوانند بر روی میزبان اجرا شوند. هر مهمان سیستم عامل خود را دارد که میتواند مشابه یا متفاوت از سیستم عامل میزبان باشد.
- هایپروایزرها: هایپروایزر نرمافزار مجازیسازی است که بر روی ماشین فیزیکی خود نصب میکنید. این یک لایهی نرمافزاری است که به عنوان واسطه بین ماشینهای مجازی و سختافزار زیربنایی یا سیستم عامل میزبان عمل میکند. هایپروایزر دسترسی به محیط فیزیکی را هماهنگ میکند تا چندین ماشین مجازی به سهم خود از منابع فیزیکی دسترسی داشته باشند.
انواع هایپروایزرها:
- هایپروایزرهای نوع ۱: یک هایپروایزر نوع ۱ – که به آن هایپروایزر bare-metal نیز گفته میشود – مستقیماً بر روی سختافزار کامپیوتر اجرا میشود. دارای برخی قابلیتهای سیستم عامل است و به دلیل تعامل مستقیم با منابع فیزیکی بسیار کارآمد است.
- هایپروایزرهای نوع ۲: یک هایپروایزر نوع ۲ به عنوان یک برنامه بر روی سختافزار کامپیوتر با یک سیستم عامل موجود اجرا میشود. از این نوع هایپروایزر هنگام اجرای چندین سیستم عامل بر روی یک ماشین واحد استفاده کنید.
انواع مختلف مجازیسازی چیست؟
میتوانید از فناوری مجازیسازی برای به دست آوردن عملکردهای انواع مختلف زیرساخت فیزیکی و همهی مزایای یک محیط مجازی شده استفاده کنید. میتوانید فراتر از ماشینهای مجازی بروید تا مجموعهای از منابع مجازی را در محیط مجازی خود ایجاد کنید.
- مجازیسازی سرور: مجازیسازی سرور فرآیندی است که یک سرور فیزیکی را به چندین سرور مجازی تقسیم میکند. این یک روش کارآمد و مقرون به صرفه برای استفاده از منابع سرور و استقرار خدمات IT در یک سازمان است. بدون مجازیسازی سرور، سرورهای فیزیکی فقط از مقدار کمی از ظرفیتهای پردازش خود استفاده میکنند که دستگاهها را بیکار میگذارد.
- مجازیسازی ذخیرهسازی: مجازیسازی ذخیرهسازی عملکردهای دستگاههای ذخیرهسازی فیزیکی مانند ذخیرهسازی متصل به شبکه (NAS) و شبکهی منطقهای ذخیرهسازی (SAN) را ترکیب میکند. میتوانید سختافزار ذخیرهسازی را در مرکز دادهی خود، حتی اگر از فروشندگان مختلف یا از انواع مختلف باشد، جمعآوری کنید. مجازیسازی ذخیرهسازی از تمام فضای ذخیرهسازی دادهی فیزیکی شما استفاده میکند و یک واحد بزرگ از ذخیرهسازی مجازی ایجاد میکند که میتوانید با استفاده از نرمافزار مدیریت آن را اختصاص داده و کنترل کنید. مدیران IT میتوانند فعالیتهای ذخیرهسازی مانند بایگانی، پشتیبانگیری و بازیابی را ساده کنند، زیرا میتوانند چندین دستگاه ذخیرهسازی شبکه را به صورت مجازی در یک دستگاه ذخیرهسازی واحد ترکیب کنند.
- مجازیسازی شبکه: هر شبکهی کامپیوتری دارای عناصر سختافزاری مانند سوئیچها، روترها و فایروالها است. سازمانی با دفاتر در مکانهای جغرافیایی متعدد میتواند چندین فناوری شبکهی مختلف داشته باشد که با هم کار میکنند تا شبکهی سازمانی خود را ایجاد کنند. مجازیسازی شبکه فرآیندی است که همهی این منابع شبکه را برای متمرکز کردن وظایف مدیریتی ترکیب میکند. مدیران میتوانند این عناصر را به صورت مجازی بدون لمس اجزای فیزیکی تنظیم و کنترل کنند که مدیریت شبکه را بسیار ساده میکند.
دو رویکرد برای مجازیسازی شبکه به شرح زیر است:
- شبکهسازی تعریفشده توسط نرمافزار (SDN): شبکهسازی تعریفشده توسط نرمافزار (SDN) مسیریابی ترافیک را با گرفتن مدیریت مسیریابی از مسیریابی داده در محیط فیزیکی کنترل میکند. به عنوان مثال، میتوانید سیستم خود را برنامهریزی کنید تا ترافیک تماس ویدیویی خود را بر ترافیک برنامه اولویت دهد تا از کیفیت تماس ثابت در همهی جلسات آنلاین اطمینان حاصل کنید.
- مجازیسازی عملکرد شبکه: فناوری مجازیسازی عملکرد شبکه، عملکردهای دستگاههای شبکه مانند فایروالها، متعادلکنندههای بار و تحلیلگران ترافیک را که با هم کار میکنند، برای بهبود عملکرد شبکه ترکیب میکند.
- مجازیسازی داده: سازمانهای مدرن دادهها را از چندین منبع جمعآوری میکنند و آنها را در قالبهای مختلف ذخیره میکنند. آنها همچنین ممکن است دادهها را در مکانهای مختلف، مانند زیرساخت ابری و مرکز دادهی محلی ذخیره کنند. مجازیسازی داده یک لایهی نرمافزاری بین این دادهها و برنامههایی که به آن نیاز دارند ایجاد میکند. ابزارهای مجازیسازی داده درخواست دادهی یک برنامه را پردازش میکنند و نتایج را در قالب مناسب برمیگردانند. بنابراین، سازمانها از راهحلهای مجازیسازی داده برای افزایش انعطافپذیری برای یکپارچهسازی داده و پشتیبانی از تجزیه و تحلیل دادهی چند منظوره استفاده میکنند.
- مجازیسازی برنامه: مجازیسازی برنامه، عملکردهای برنامهها را برای اجرا بر روی سیستم عاملهایی غیر از سیستم عاملهایی که برای آنها طراحی شدهاند، بیرون میکشد. به عنوان مثال، کاربران میتوانند یک برنامهی مایکروسافت ویندوز را بر روی یک ماشین لینوکس بدون تغییر پیکربندی ماشین اجرا کنند. برای دستیابی به مجازیسازی برنامه، این روشها را دنبال کنید:
- جریان برنامه: کاربران برنامه را از یک سرور راه دور جریان میدهند، بنابراین فقط در صورت نیاز بر روی دستگاه کاربر نهایی اجرا میشود.
- مجازیسازی برنامهی مبتنی بر سرور: کاربران میتوانند بدون نصب، از مرورگر یا رابط مشتری خود به برنامهی راه دور دسترسی داشته باشند.
- مجازیسازی برنامهی محلی: کد برنامه با محیط خود برای اجرا بر روی همهی سیستم عاملها بدون تغییر ارسال میشود.
- مجازیسازی دسکتاپ: اکثر سازمانها دارای کارکنان غیر فنی هستند که از سیستم عاملهای دسکتاپ برای اجرای برنامههای تجاری رایج استفاده میکنند. به عنوان مثال، ممکن است کارکنان زیر را داشته باشید:
- یک تیم خدمات مشتری که به یک کامپیوتر دسکتاپ با ویندوز ۱۰ و نرمافزار مدیریت ارتباط با مشتری نیاز دارد.
- یک تیم بازاریابی که به ویندوز ویستا برای برنامههای فروش نیاز دارد.
میتوانید از مجازیسازی دسکتاپ برای اجرای این سیستم عاملهای مختلف دسکتاپ بر روی ماشینهای مجازی استفاده کنید که تیمهای شما میتوانند از راه دور به آنها دسترسی داشته باشند. این نوع مجازیسازی مدیریت دسکتاپ را کارآمد و ایمن میکند و در هزینههای سختافزار دسکتاپ صرفهجویی میکند. انواع مجازیسازی دسکتاپ به شرح زیر است:
- زیرساخت دسکتاپ مجازی: زیرساخت دسکتاپ مجازی، دسکتاپهای مجازی را بر روی یک سرور راه دور اجرا میکند. کاربران شما میتوانند با استفاده از دستگاههای مشتری به آنها دسترسی داشته باشند.
- مجازیسازی دسکتاپ محلی: در مجازیسازی دسکتاپ محلی، هایپروایزر را بر روی یک کامپیوتر محلی اجرا میکنید و یک کامپیوتر مجازی با یک سیستم عامل متفاوت ایجاد میکنید. میتوانید بین محیط محلی و مجازی خود به همان روشی که میتوانید بین برنامهها جابجا شوید، جابجا شوید.
تفاوت مجازیسازی با رایانش ابری چیست؟
رایانش ابری ارائهی بر اساس تقاضای منابع محاسباتی از طریق اینترنت با قیمتگذاری pay-as-you-go است. به جای خرید، مالکیت و نگهداری یک مرکز دادهی فیزیکی، میتوانید به خدمات فناوری مانند قدرت محاسباتی، ذخیرهسازی و پایگاههای داده، در صورت نیاز از یک ارائهدهندهی ابری دسترسی داشته باشید.
فناوری مجازیسازی، رایانش ابری را ممکن میسازد. ارائهدهندگان ابری مراکز دادهی خود را راهاندازی و نگهداری میکنند. آنها محیطهای مجازی مختلفی ایجاد میکنند که از منابع سختافزاری زیربنایی استفاده میکنند. سپس میتوانید سیستم خود را برنامهریزی کنید تا با استفاده از APIها به این منابع ابری دسترسی پیدا کند. نیازهای زیرساخت شما میتواند به عنوان یک سرویس کاملاً مدیریت شده برآورده شود.
تفاوت مجازیسازی سرور با کانتینریسازی چیست؟
کانتینریسازی روشی برای استقرار کد برنامه برای اجرا در هر محیط فیزیکی یا مجازی بدون تغییر است. توسعهدهندگان کد برنامه را با کتابخانههای مرتبط، فایلهای پیکربندی و سایر وابستگیهایی که کد برای اجرا به آن نیاز دارد، بستهبندی میکنند. این بستهی واحد نرمافزار که کانتینر نامیده میشود، میتواند به طور مستقل بر روی هر پلتفرمی اجرا شود. کانتینریسازی نوعی مجازیسازی برنامه است.
میتوانید مجازیسازی سرور را به عنوان ساختن جادهای برای اتصال دو مکان در نظر بگیرید. باید یک محیط مجازی کامل را دوباره ایجاد کنید و سپس برنامهی خود را روی آن اجرا کنید. در مقایسه، کانتینریسازی مانند ساختن هلیکوپتری است که میتواند به هر یک از آن مکانها پرواز کند. برنامهی شما درون یک کانتینر است و میتواند بر روی انواع محیطهای فیزیکی یا مجازی اجرا شود.