آینده تکنولوژی همیشه ریشه در گذشته دارد و گذشته
مجازی سازی هم چیزهای زیادی برای گفتن دارد. فناوری که در حال تغییر شکل صنعت IT امروزی است، احتمالا نقش بزرگی در ساخت مراکز داده نسل بعدی نیز خواهد داشت. مجازی سازی یعنی با استفاده از منابعی که به طور سنتی به سختافزار متصل هستند، خدمات مفید فناوری اطلاعات ایجاد کنید. با توزیع قابلیتهای یک ماشین فیزیکی میان کاربران یا محیط، از ظرفیت کامل یک ماشین فیزیکی استفاده کنید.
مراکز داده امروزه از تکنیکهای مجازی سازی برای تقسیم سخت افزار فیزیکی استفاده میکنند. مجازی سازی مجموعهای از منابع را ایجاد میکنند که شامل CPU، حافظه، دیسک، ذخیره سازی فایل، برنامهها، شبکه و ارائه آن به کاربران است. معنای اصلی مجازی سازی یکسان است: ایجاد یک محیط محاسباتی برای اجرای چندین سیستم مستقل به طور همزمان. بیایید چند دهه به عقب برگردیم تا درک بهتری از دلایل پیدایش مجازی سازی داشته باشیم.
شروع با یک لاین کامپیوتر
یک لحظه تصور کنید: اوایل دهه 1960 قرن بیستم، یک موسسه علمی بزرگ با چند صد کارمند فقط از یک کامپیوتر استفاده میکند. اگر محقق یا دانشمندی در آن زمان نیاز به محاسبه داشت باید برنامهای میساخت و آن را در اپراتوری که کامپیوتر با آن کار میکرد به اجرا در میاورد.
ماشینهای محاسباتی در آن زمان کمیاب، کند و بسیار گران بودند. حتی برنامه نویسان هم به آنها دسترسی نداشتند، زیرا کار فردی در آن زمان ارزشی نداشت. هنگامی که برنامه نویسان دادهها را وارد میکردند یا به دنبال راهکاری برای حل مشکلات بودند، از کامپیوتر هیچ استفادهای نمیشد. برای جلوگیری از این زمان بیکاری، توسعه دهندگان و رایانهها از هم جدا شدند.
چند سال بعد دانشمندان به این نتیجه رسیدند که اگر به بیش از یک کاربر اجازه استفاده از کامپیوتر را بدهند، کارایی افزایش مییابد. هنگامی که کاربر دادهها را وارد رایانه میکند، همزمان سایر کاربران نیز میتوانند با آن کار کنند و به همین ترتیب زمان بیکاری به حداقل میرسد. این ایده مفهوم "اشتراک زمانی" نام گرفت. مفهوم اشتراک زمانی بیانگر این است که منابع محاسباتی میان کاربران به اشتراک گذاشته میشود. این مفهوم در اوایل دهه 1960 ظاهر شد و تغییرات انقلابی بسیاری از جمله پیدایش مجازی سازی پدید آورد.
انجام کارها با سرعت بالا
در ابتدا ایده اشتراک زمانی به معنای واقعی کلمه اجرا شد: پردازنده فقط در زمان عملیات I/O بین وظایف سوئیچ میکرد. در حالی که کاربر در حال فکر کردن یا وارد کردن دادهها بود، کامپیوتر وظایف دیگری را پردازش میکرد.
چندی بعد تجهیزات قدرتمندتر شدند و کاربران برای انجام وظایف تعریف شده کافی نبودند. سپس به پردازنده آموزش داده شد که بیشتر اوقات بین وظایف سوئیچ کند. هر وظیفه زمانی که پردازنده با آن کار میکرد یک «کوانتوم» زمان دریافت میکرد. اگر یک کوانت برای تکمیل کار کافی نبود، پردازنده کار دیگری انجام میدهد و در کوانت بعدی به کار اول برمیگردد. سوئیچ به قدری سریع اتفاق می افتند که حتی ممکن است کاربر فکر کند که از دستگاه به تنهایی استفاده کرده است.
اولین باری که مفهوم اشتراک زمانی اجرا شد، سیستم اشتراک زمانی موسسه فناوری ماساچوست در اوایل دهه 1960 بود. این سیستم با سیستم Fortran Monitor سازگار بود و بر روی پردازنده مرکزی IBM 7090 اجرا میشد. به هر حال، تقریبا در همان زمان، سیستم اشتراک زمانی نیز در کالج دارتموث (جایی که Basik در آن اختراع شد) راه اندازی شد. دانشمندان حتی موفق شدند آن را عرضه کنند، هرچند که زیاد فراگیر نشد.
از اشتراک زمانی تا دلایل پیدایش مجازی سازی
اولین سیستم عاملی که از اشتراکگذاری زمانی پشتیبانی میکرد Multics از خانواده یونیکس بود. هم Multics و هم سیستم دارتموث جایگاه خود را در آن زمان پیدا کردند، اگرچه از کامل بودن فاصله زیادی داشتند: کند، غیرقابل اعتماد و ناامن. هدف دانشمندان این بود که این سیستمها بهتر شوند و حتی میدانستند که چگونه این کار را انجام دهند. اما تجهیزات بسیار محدود بود. غلبه بر این محدودیتها بدون حمایت تولیدکنندگان سخت بود و پس از مدتی آنها نیز به دانشمندان ملحق شدند.
IBM در سال 1968 یک پردازنده مرکزی جدید ایجاد کرد که از سیستم CP/CMS توسعه یافته توسط دانشمندان کمبریج پشتیبانی میکرد. این اولین سیستم عاملی بود که از مجازی سازی
پشتیبانی میکرد و مبتنی بر مانیتور یا هایپروایزر ماشین مجازی بود. Hypervisor روی سخت افزار اجرا میشود و چندین ماشین مجازی ایجاد میکند. این رویکرد بسیار آسانتر از سیستم اشتراکگذاری زمان است و دلیل آن هم موارد زیر است:
1. ماشینهای مجازی به طور اشتراکی از منبع استفاده میکنند، بنابراین کارایی بالاتری دارند.
2.
هر ماشین مجازی یک کپی دقیق از
سخت افزار اصلی است، بنابراین شما میتوانید هر سیستم عاملی را روی هر ماشینی اجرا کنید.
3. هر کاربر سیستم عامل مخصوص به خود را دارد، بنابراین بر سایر کاربران تاثیر نمیگذارد. این یعنی کل سیستم قابل اعتمادتر میشود.
پس از مدتی CP/CMS بهبود و توسعه یافت، تغییر نام داد و برای فروش عرضه شد. این سیستم پایهای برای سیستمعامل VM/370 شد که با یکی از محبوبترین مینفریمهای IBM یعنی System/370 استفاده میشد. چنین سیستمهایی برای یک کاربر مدرن بسیار آشنا به نظر میرسید. مینفریم یک کامپیوتر بزرگ و قدرتمند بود در حالی که ترمینالها دستگاههایی بودند که صفحهنمایش، صفحهکلید و ماوس داشتند. کاربران با ترمینالها کار میکردند تا دادهها را وارد کنند و پردازنده مرکزی این دادهها را پردازش میکرد. یک مین فریم میتواند به دهها یا حتی صدها ترمینال متصل شود.
طلوع فناوری مجازی سازی
توسعه کامپیوترهای شخصی در اواخر قرن بیستم آغاز شد و نه تنها صنعت مینفریم بلکه توسعه فناوریهای مجازی سازی را نیز تحت تاثیر قرار داد. در حالی که رایانهها گران و حجیم بودند، شرکتها ترجیح میدادند از پردازنده مرکزی استفاده کنند، زیرا توانایی خرید رایانه برای هر کارمند را نداشتند.
با گذشت زمان، کامپیوترها کوچکتر شدند و قیمت آنها برای شرکتهای خصوصی مقرون به صرفه شد. در دهه 1980، رایانههای شخصی ماجرا را تغییر دادند. همراه با کامپیوترهای بزرگ، فناوری مجازیسازی در پس زمینه غروب کرد، اما نه برای مدت طولانی. کامپیوترهای مقرون به صرفه به طور گسترده گسترش یافته بودند. سیستم عاملها کاربردیتر شدند اما کمتر قابل اعتماد بودند. خطا در یک برنامه ممکن بود باعث از کار افتادن سیستم عامل شود و سایر برنامهها را نیز تحت تاثیر قرار دهد.
مدیران سیستم برای بهبود پایداری، یک دستگاه به هر برنامه اختصاص دادند. با این کار ثبات افزایش یافت، اما هزینه تجهیزات نیز به دنبال آن بیشتر شد. و اینجا لحظه ای بود که مجازی سازی به صحنه بازگشت. مجازی سازی امکان استفاده از چندین ماشین مجازی مستقل را به کاربر میدهد. یعنی به جای تخصیص چندین کامپیوتر اختصاصی به یک کار، از یک کامپیوتر به عنوان میزبان استفاده میشود.
با توسعه سیستم عامل، اجرای یک سیستم عامل خاص در یک سیستم عامل دیگر ضروری شد. مجازی سازی میتواند این مشکل را نیز حل کند. در سال 1988، SoftPC منتشر شد. این نرم افزار اجازه اجرای برنامههای ویندوز و MS-DOS را بر روی سایر سیستم عاملها میداد. چند سال بعد Virtual PC ظاهر شد و امکان اجرای سیستم عاملهای دیگر را بر روی ویندوز فراهم کرد. توسعه صنعت میزبانی دلیل دیگری برای احیای فناوری مجازی سازی شد.
مجازی سازی سرور
توسعه اینترنت منجر به توسعه واقعی مجازی سازی شد. در ابتدا، سرورهای خود شرکت میزبان وبسایتها بودند. خرید تجهیزات برای شرکتهای بزرگ و موفق سخت نبود. پس از مدتی شرکتهای کوچکتر نیز به داشتن وبسایت احساس نیاز پیدا کردند اما پولی برای خرید سرور نداشتند، بنابراین شرکتهای دیگر تصمیم گرفتند تجهیزات اضافی خود را به آنها اجاره دهند. این سرآغاز صنعت میزبانی بود.
در سالهای ابتدایی، میزبانها مقداری فضای دیسک را روی یک سرور FTP یا کل سرور در اختیار کاربر قرار میدادند. با میزبانی FTP وبسایتهای کاربران در پوشههای مختلف یک کامپیوتر نگهداری میشدند. بنابراین میزبانی FTP غیر قابل اعتماد و ناامن بود، اما از آن طرف هم اجاره کل سرور بسیار گران میشد. سرورهای مجازی جایگزین خوبی بودند: ارزان و تقریبا به اندازه سرورهای اختصاصی قابل اعتماد. به همین ترتیب، راهکارهای مجازی سازی سرور شروع به تکامل کردند. VMware در اوایل دهه 2000 محصول خود را برای سرورهای x86 به نام ESX Server معرفی کرد. پس از چندین سال راهکارهای بسیاری ظاهر شدند: Xen،OpenVZ و سایر هایپروایزرها. فناوری مجازی سازی اساس فناوری ابری را تشکیل میدهد که در مقالههای قبلی به آن پرداختیم.
به منظور ساده سازی مدیریت مجازی سازی برای ارائه دهندگان و صاحبان زیرساختهای خصوصی، کنترل پنلهای مجازی سازی شروع به ظاهر شدن کردند. VMmanager در سال 2003، ISPsystem را منتشر کرد.
VMmanager - یک پنل کنترل مدرن برای مدیریت مجازی سازی
VMmanager فناوری مجازی سازی را در دسترس همه قرار میدهد. شما میتوانید ماشینهای مجازی را در لینوکس یا ویندوز ایجاد کنید و آنها را به مشتریان خود بفروشید یا خودتان از آن استفاده کنید. ارائه دهندگان هاستینگ از VMmanager برای خودکارسازی VPS استفاده میکنند. توسعه دهندگان وب، ادمینها، شرکتهای توسعه نرم افزار و سایر سازمانهای تجاری و فریلنسرها از این برنامه برای ایجاد ماشینهای مجازی ایزوله استفاده میکنند. این پنل دارای یک رابط منظم و راحت است که به کاربران این امکان را می دهد تا عملیات را خودکار کنند یا سرعت بخشند. سایر مزایای VMmanager عبارتند از:
راهحل همه کاره: پنل ممکن است جایگزین کنسول، جدول موجودی تجهیزات و ابزارهای نظارتی شود.
رابط ساده و راحت: کاربران پنل میتوانند به راحتی ماشینهای مجازی با پیکربندی مورد نظر را ایجاد کنند و محیط مجازی را مدیریت کنند.
مدیریت و عیب یابی: اگر با مشکلی مواجه شدید، به راحتی میتوانید علت را در Task Log پیدا کنید.
نتیجه گیری
اولین دلایل پیدایش مجازی سازی، محاسبات مرکزی یا مینفریم (نسل اول تکنیکهای مجازی سازی) بود. این پلتفرم محاسبات مجازی شده است و امروزه نیز از آن استفاده میشود. برای مثال، آیبیام از ماشینهای مجازی لینوکس بر روی پلتفرمهای اصلی خود میزبانی میکرد که محبوبیت آن تا قرن بیست و یکم بسیار افزایش یافت. موج بعدی، مینی کامپیوترها در دهههای 1970 و 1980 نیز تکنیکهای مجازیسازی را پیادهسازی کردند.
ما در این مقاله سفری کوچک در تاریخچه مجازی سازی داشتیم. همچنین مزایای متعدد مجازیسازی را مشخص کردیم و توضیح دادیم که چرا باید این تکنولوژی به برنامههای ما اضافه شود. مجازیسازی مزایایی برای کسبوکارها در هر اندازهای دارد، از شرکتهای کوچک گرفته تا سازمانهای بزرگ. در حالی که ممکن است شروع کار با مجازی سازی پیچیده به نظر برسد، مزایای طولانی مدتش این تلاش را ارزشمند میکند.