تاریخچه مجازی سازی دربرگیرنده فناوریهای نوظهوری مانند معماری x86، مینفریمها (Mainframe)، هایپر وایزرها (hypervisor)، رایانههای شخصی و سوئیچهای مجازی بوده است. مدیران فناوری اطلاعات با درک بهتر تاریخچه این فناوری، میتوانند به پیادهسازی هر چه بهتر این فناوری در مراکز داده خود کمک کنند.
ریشههای مجازیسازی به دوران کامپیوترهای بزرگ در دهه 1960 برمیگردد؛ زمانی که هر یک از این قطعات عظیم سختافزاری، در لحظه تنها میتوانستند روی یک فرآیند کار کنند. در واقع داستان virtualization زمانی شروع شد که تقاضای پشتیبانی منابع فیزیکی از بیشتر از یک کاربر یا فرآیند، شکل گرفت.
در سال 1964، IBM اولین سیستم مینفریم خود با نام CP-40 را که مبتنی بر فناوری اشتراک زمانی (Time sharing) بود، طراحی و به بازار معرفی کرد. CP-40 سختافزار یک رایانه را به پشتیبانی همزمان بیش از یک کاربر قادر میساخت. اندکی بعد، SIMMON، یک ابزار تست نرمافزار و CP-40 وارد مرحله تولید شده و اولین هایپروایزر ((Hypervisor را برای مجازیسازی ارائه کردند.
در سال 1974، جرالد پوپک و رابرت گلدبرگ، هایپروایزرها را در دو نوع 1 و 2 دستهبندی کردند تا تمایز میان آنها را بهتر مشخص کنند؛ روش اول bare metal و روش دوم hosted. هایپروایزرهای نوع 1 به دلیل قرار گرفتن در سختافزار فیزیکی، امنیت بیشتری را ارائه میدهند و اغلب امکان حمله در سطح سیستم عامل را از بین میبرند. هایپروایزرهای نوع 2 ارتباط نزدیکی با آغاز معماری x86 دارند و از آنجا که بالای سیستمعامل قرار میگیرند، عموماً برای سیستمهای کلاینت یا کاربر نهایی استفاده میشوند.
در دهه 1990، بسیاری از سازمانها برای همگام شدن با پیشرفتهای فناوری اطلاعات و اپلیکیشنهای کاربردی با چالش مواجه شدند و به این ترتیب، نیاز به استفاده بهتر از منابع را درک کردند. با استفاده از مجازیسازی، شرکتها نهتنها میتوانستند زیرساخت سرور خود را بهطور مؤثرتر پارتیشنبندی (Partition) کنند، بلکه قادر به اجرای برنامههای قدیمی خود روی انواع و نسخههای مختلف سیستمعامل نیز بودند. به این ترتیب تقاضا برای مجازی سازی افزایش پیدا کرد.
اوایل دهه 1990، چند شرکت مجازیسازی، سرویسها و خدماتی را برای مجازیسازی بهتر جریان کاری و افزایش کارایی مراکز داده (Data centers) معرفی کردند. Red Hat Software در سال 1995، اولین نسخه عمومی Red Hat Commercial Linux را منتشر کرد که سیستمعاملی مبتنی بر لینوکس را ارائه میکرد.
در سال 1998، سرمایهگذاری روی کمپانی VMware آغاز و یک سال بعد، اولین محصول آن رونمایی شد: VMware Workstation. این محصول یک هایپروایزر نوع 2 ارائه میکرد که روی نسخههای x86 سیستمعاملهای ویندوز و لینوکس اجرا میشد و امکان راهاندازی ماشین مجازی (VM) روی یک دستگاه را برای مدیران فراهم میکرد. به این ترتیب هر ماشین مجازی میتوانست سیستم عامل خاص خود را اجرا کند؛ بعداً VMware از نسخههای x64 نیز پشتیبانی کرد.
با وجود همه اقدامات انجام شده، آغاز مجازی سازی را میتوان از دهه 2000 و با تاسیس شرکتهایی مانند VMware، Red Hat، IBM و Citrix Systems، درنظر گرفت.
با مرور زمان، این شرکتها نسخههای بهروزتر و کاملتری از مجازیسازی را در اختیار سازمانها قرار داده و به این ترتیب، مدیران آی تی سرویسها و نرمافزارهای مختلفی برای مجازیسازی مراکز داده و اجزای سختافزاری خود، مانند پردازندههای مجازی، حافظه، ابزارهای ذخیرهسازی و اجزای شبکه در اختیار داشتند. در نهایت، توسعه هرچه بیشتر مجازیسازی، بهعنوان پایهای برای توسعه رایانش ابری عمل کرد.
به زبان ساده، مجازی سازی را میتوان ایجاد یک نسخه مجازی از هر چیزی تعریف کرد. مجازیسازی، ایده و راهکاری خلاقانه و بسیار کاربردی برای ایجاد یک نسخه مجازی از دستگاههای ذخیرهسازی، سرورها، شبکهها و سایر منابعی است که زمانی تنها به شکل فیزیکی در دسترس کاربران قرار داشتند.
این فناوری از نرمافزارهایی برای شبیهسازی عملکرد سختافزار و ایجاد یک سیستم مجازی بهره میگیرد. به این ترتیب، ماهیت و ویژگیهای فیزیکی منابع محاسباتی از دید کاربران پنهان شده و ضمن ایجاد یک یا چند منبع مجازی، امکان استفاده کارآمدتر از منابع سختافزاری فراهم میشود.
عنصر اصلی در پیادهسازی مجازی سازی، هایپروایزر است. هایپروایزر (Hypervisor) یک لایه نرمافزاری است که با نصب روی سختافزار، امکان راهاندازی ماشینهای مجازی را فراهم میکند. در واقع این نرمافزار، بهعنوان رابطی میان ماشین مجازی (VM) و سختافزار فیزیکی زیرساختی عمل کرده و اشتراک منابع فیزیکی را مدیریت میکند. همچنین هایپروایزر تضمین میکند که عملکرد ماشینهای مجازی، با تأثیر گذاشتن بر حافظه یا چرخههای محاسباتی، با یکدیگر تداخل نداشته باشند.
به طور کلی، دو نوع هایپروایزر وجود دارد:
ماشین مجازی (Virtual Machine)، یک محیط مجازی است که به شبیهسازی یک سیستم فیزیکی، در قالب نرمافزار میپردازد. بنابراین، VM را میتوان برنامهای معرفی کرد که روی یک سیستمعامل اجرا میشود و از این طریق، یک کامپیوتر مجازی را در اختیار کاربران قرار میدهد. این ماشین مجازی ماهیت فیزیکی خود را پنهان میکند اما تمام منابع مورد نیاز برای یک کامپیوتر کامل را به کاربران خود ارائه میدهد. به این ترتیب، سیستمعامل میزبان به دریچهای برای استفاده از منابع فیزیکی یک سختافزار بزرگتر تبدیل میشود.
ماشین میزبانیک دستگاه فیزیکی است که مجازیسازی در آن اتفاق میافتد. در واقع این ماشین، میزبان یک یا چند ماشین مجازی است و اجزای فیزیکی آن مانند حافظه و اجزای ذخیرهسازی و پردازش، در نهایت وظیفه برطرف ساختن نیازهای ماشینهای مجازی را بر عهده دارند؛ این منابع عمدتا از دید ماشینهای مجازی پنهان هستند. بنابراین نرمافزارهای مجازی سازی مانند هایپروایزرها روی این دستگاه نصب و راهاندازی میشوند.
نحوه کار مجازی سازی چگونه است؟
مجازیسازی یک فناوری است که در آن امکان مدیریت و بهرهگیری از منابع سختافزاری به شکل مشترک و از طریق نرمافزار فراهم میشود. یکی از کاربردهای اصلی فناوری مجازی سازی، در مجازی سازی سرور است که از یک لایه نرم افزاری به نام هایپروایزر برای شبیهسازی سختافزار مورد نیاز استفاده میکند. سختافزار مورد نیاز اغلب شامل حافظه CPU، ورودی/ خروجی (I/O) و ترافیک شبکه است که به شکل پویا میان تعدادی ماشین مجازی تخصیص داده میشود.
هایپروایزرها منابع فیزیکی را دریافت کرده و آنها را تفکیک میکنند تا در محیط مجازی قابل استفاده باشند. آنها میتوانند روی سیستم عامل قرار گرفته یا مستقیماً روی سختافزار نصب شوند که اکثر شرکتها از روش دوم برای مجازی سازی سیستمهای خود بهره میگیرند.
با کمک هایپروایزر، سیستمعامل ماشین مجازی، که در حالت عادی باید با سختافزار مورد نیازش تعامل داشته باشد، با نرمافزار شبیهسازی شده آن سختافزار در تعامل خواهد بود. اگرچه عملکرد این سیستمهای مجازی با عملکرد سیستمهای عادی برابر نیست، اما مفهوم مجازیسازی همچنان به رشد خود ادامه میدهد، زیرا اکثر سیستمهای عامل و برنامهها، از ظرفیت کامل سختافزاری خود استفاده نمیکنند.
مجازیسازی با حذف وابستگی به یک پلتفرم سختافزاری، منجر به ایجاد انعطافپذیری، کنترل و مدیریت بهتر منابع میشود.
اگرچه در ابتدا مجازی سازی برای سرورها در نظر گرفته شده بود، امروزه این مفهوم به برنامهها، شبکه، داده و دسکتاپ (VDI) نیز توسعه یافته است.
مراحل مجازی سازی را میتوان به شکل زیر تعریف کرد:
انواع روشهای مجازی سازی
اکنونکه میدانید virtualization چیست، بهتر است با انواع مجازی سازی نیز آشنا شوید. همانطور که فناوری مجازیسازی به تکامل خود ادامه میدهد، روشهای مختلفی نیز برای استفاده از آن ایجاد میشود. در واقع شناخت راهکارهایی مانند مجازیسازی سرور و شبکه، به بسیاری از سازمانها کمک کرده تا از منابع خود به شکل بهینه بهره بگیرند. به طور کلی، مجازیسازی به انواع زیر تقسیم میشود:
مجازی سازی سرور را میتوان رایجترین نوع virtualization در بازار جهانی امروز دانست که شرکتهای معتبر و شناختهشدهای مانند Microsoft، VMware و Citrix بهترین نرمافزارها را برای اجرای آن در اختیار کاربران قرار میدهند. سرورها برای پردازش حجم بالایی از فعالیتها طراحی شدهاند و برای افزایش کارایی، پارتیشنبندی آنها باید بهگونهای باشد که اجزای سرور، به شکل بهینه، برای عملکردهای مختلف در سراسر سیستم مورد استفاده قرار بگیرند.
مجازیسازی سرور به معنای پنهان کردن منابع سرور (مانند تعداد و هویت سرورهای فیزیکی)، پردازندهها و سیستمهای عامل، از کاربران آن است. هدف از این کار، دور نگه داشتن کاربر از درک و مدیریت جزئیات پیچیده منابع سرور و در عین حال، سهولت اشتراکگذاری و استفاده از منابع و افزایش ظرفیت آن است.
با مجازیسازی شبکه، شبکههای مجازی از سختافزار زیرین آن جدا میشوند. در واقع مجازیسازی شبکه، روشی برای ترکیب منابع موجود در یک شبکه، با استفاده از تقسیم پهنای باند به کانالهایی است که از یکدیگر مستقل هستند و میتوانند به سرور یا دستگاهی خاص، تخصیص داده شوند.
مجازیسازی شبکهها، پیچیدگی واقعی شبکه را در بخشهای کوچکتر قابل مدیریت پنهان کرده و در نهایت عملکرد بهتر و پایدارتری را ایجاد میکند. همچنین با تخصیص و توزیع هرچه بهتر منابع، تعداد مؤلفههای فیزیکی مورد نیاز مانند سوئیچ، روتر، سرور، کابل و هاب را کاهش میدهد.
علاوه بر مجازیسازی سرور و شبکه، نوع دیگری از Virtualization نیز وجود دارد که با عنوانهای مجازیسازی استوریج، مجازیسازی ذخیرهسازی و مجازیسازی I/O شناخته میشود. مجازیسازی ذخیره سازی شامل گروهی از سرورها است که توسط یک سیستم ذخیرهسازی مجازی مدیریت میشود.
در واقع این سیستم، ذخیرهسازی را از منابع متعدد مدیریت کرده و آن را بدون توجه به تفاوت سختافزاری میان سیستمهای هاست، به عنوان یک منبع ذخیرهسازی واحد در نظر میگیرد. این شیوه مجازیسازی، انجام کارهای پشتیبانی، بایگانی و بازیابی را آسانتر میکند.
مجازیسازی برنامه (Application Virtualization)، یکی دیگر از انواع مجازی سازی در سالهای اخیر است که اپلیکیشن را از سیستمعامل و سختافزاری که روی آن اجرا میشود، جدا میکند. در این حالت، کاربر نهایی معمولاً به برنامههای مجازیسازی شده روی یک تین کلاینت (Thin client) دسترسی دارد؛ درحالیکه برنامه روی یک سرور دیتاسنتر متصل به اینترنت اجرا میشود. به این ترتیب، اجرای برنامههایی که نیازمند نسخههای قدیمیتر سیستمعامل هستند یا ممکن است سایر منابع سیستم را تحت تاثیر قرار دهند، آسانتر میشود.
در کنار همه مواردی که مطرح شد، مجازیسازی دسکتاپ نوآوری دیگری است که بهعنوان زیرساخت دسکتاپ مجازی (VDI) نیز شناخته میشود. این نوع مجازیسازی، به جای سرور، محیط دسکتاپ کاربر را در یک سیستم مبتنی بر نرمافزار منعکس میکند که میتوان از راه دور و از طریق اینترنت به آن دسترسی داشت.
در این روش، تمام عناصر فضای کاری فیزیکی در سرور ذخیره میشوند و کاربران نهایی صرفنظر از دستگاهی که استفاده میکنند، تجربه مشابهی دارند. به عبارت دیگر، همه دادهها و برنامههای کاربر در سرور میزبان وجود دارند، نه در دستگاه کاربر نهایی.
شرکتهای مدرن، دادهها را از چندین برنامه و با فرمتهای متعدد، در مکانهای مختلف (از سیستم های ابری تا سیستمهای سختافزاری و نرمافزاری داخلی) ذخیره میکنند. مجازیسازی دادهها به هر برنامه اجازه میدهد تا صرفنظر از منبع، فرمت یا محل ذخیرهسازی، به همه آن دادهها دسترسی داشته باشد.
در مجازیسازی دادهها، بین برنامههای کاربردی که به دادهها دسترسی دارند و سیستمهای ذخیره کننده آنها، یک لایه نرمافزاری ایجاد میشود. این لایه نرمافزاری، درخواست دادههای یک برنامه کاربردی را ترجمه کرده و نتایجی را برمیگرداند که میتوانند چندین سیستم را در برگیرند.
مجازیسازی سیستمعامل را میتوان نوعی VIRTUALIZATION سرور دانست که امکان اجرای چند سیستمعامل مجازی در کنار یکدیگر را فراهم میکند. در واقع این اتفاق در هسته یا کرنل (Kernel) سیستمعامل اصلی اتفاق میافتد. اما مزیت این روش چیست؟
مجازیسازی سیستمعامل راهی برای کاهش هزینههای سختافزاری است. با استفاده از مجازیسازی، تمام نمونههای مجازی به شکل ایزوله و قابل نظارت هستند و به این ترتیب، امنیت اطلاعات و دادهها بهطور قابلی توجهی افزایش پیدا میکند. همچنین استفاده از مجازیسازی OS، زمان صرف شده برای خدمات فناوری اطلاعات مانند بهروزرسانی نرمافزار را کاهش میدهد.
مجازیسازی چه مزایایی دارد؟
مجازیسازی برای کسبوکارها در هر اندازهای که باشند (از شرکتهای کوچک تا بزرگ)، مزایای متعددی دارد. اگرچه ممکن است شروع مجازیسازی منابع پیچیده به نظر برسد، اما مزایای طولانیمدت آن تحمل دشواری و تلاش برای مجازی سازی را ارزشمند میکند.
کاهش هزینهها، بهبود امنیت دادهها، پشتیبانگیری و تهیه نسخه پشتیبان از دادهها، بهبود بهرهوری و حفظ محیط زیست از مزایای مجازی سازی به شمار میآیند.
از مهمترین مزایای مجازی سازی میتوان به موارد زیر اشاره کرد:
همپنین مجازیسازی هزینههای مربوط به توسعه نرمافزار یا اپلیکیشنها را نیز کاهش میدهد و دسترسی به منابع جدید را برای تیمهای توسعه، تسهیل میکند.
بازیابی اطلاعات نیز در سیستمهای مجازی بسیار ساده است. پشتیبانگیری منظم و بهروز در سیستمهای مجازی، امکان بازیابی سریع اطلاعات را فراهم میکند. در واقع حتی در مواقع اضطراری، یک ماشین مجازی میتواند در عرض چند دقیقه دادههای موجود را بازیابی کند.
سخن پایانی
مجازیسازی را میتوان به عنوان بخشی از یک روش استاندارد در فناوری اطلاعات سازمانی دانست که به شکل مستمر در حال تکامل است. هدف معمول مجازی سازی، متمرکز ساختن وظایف اداری در کنار بهبود مقیاسپذیری و حجم کاری است که اقتصاد رایانش ابری را نیز هدایت میکند.
مجازیسازی، ارائهدهندگان زیرساختهای ابری را قادر میسازد تا با استفاده از سختافزار رایانه فیزیکی خود، به ارائه خدمات برای کاربرانشان بپردازند. مجازی سازی به کاربران ابری این امکان را میدهد که تنها منابع محاسباتی مورد نیاز خود را خریداری کرده و با افزایش حجم کاری، این منابع را به شکلی مقرونبهصرفه، افزایش دهند.
بازدید از مرکزداده فنحاب در پارک علم و فن آوری پردیس با حضور ریاست محترم بیمه مرکزی و هیئت رئیسه ...
راه اندازی سیستم های سرمایشی جدید مرکز داده پردیس ...
افتتاح فاز دوم مرکزداده فنحاب در پارک علم و فن آوری پردیس با حضور ریاست محترم بیمه مرکزی و هیئت رئیسه ...
نمای ساختمان اصلی مرکز داده پردیس ...
2196623901(98+)
پارک فن آوری پردیس،نوآوری 3 پلاک 38
info@fanhab.ir