آشنایی با مجازی سازی یا virtualization و انواع آن
مجازی سازی یکی از مهمترین و پرطرفدارترین تکنولوژی های دنیای فناوری است. معمولا علت محبوب و پرطرفدار شدن هر تکنولوژی ریشه در کاهش و صرفه جویی در هزینه دارد؛ اینکه چگونه از منابع سخت افزاری که در اختیار داریم نهایت استفاده را ببریم و هزینه کمتری در قبال این افزایش کارایی بپردازیم. در این مقاله به بررسی مجازی سازی و مزایا و معایب آن و انواع مجازی سازی خواهیم پرداخت. با ما همراه باشید.
تاریخچه مجازی سازی
مجازی سازی از ابتدای مهندسی کامپیوتر و IT وجود داشته و به مرور زمان گسترش و بهبود یافته است. از زمانی که علم شبکه و کامپیوتر، سرورهای قدرتمند، برنامههای کاربردی، هارد دیسک ها و … در سازمانهای کوچک و بزرگ، دنیای مجازی و زندگی روزمره مفهوم مهمتری پیدا کرده، مجازی سازی نیز به راه های گوناگون در این زمینه ها به کار گرفته میشود. اگر IT من هستید، در دنیای فناوری امروز، باید درباره انواع تکنیک ها و روش های مجازی سازی مطابق با محصولات شرکت های مجازی سازی بزرگ مانند Citrix، VMware، IBM، Oracle، مایکروسافت و … آشنا باشید و این در حالی است که نمونه های مختلفی از نرم افزارهای مجازی سازی وجود دارد. در این مقاله به انواع مجازی سازی می پردازیم تا با این تکنولوژی بیشتر آشنا شویم.
تاریخچه مجازی سازی به سال ۱۹۶۰ برمیگردد اما تا اوایل سال ۲۰۰۰ استفاده از آن مرسوم نبود. تکنولوژیهای مجازی سازی مانند هایپروایزر ها چند ده سال است که ارایه شده اما چند دهه اخیر استفاده از آن مرسوم شده است و راه خود را به رایانش ابری هم باز کرده است.
مجازی سازی یا Virtualization چیست؟
مجازی سازی یا Virtualization تکنولوژی است که با هدف صرفهجویی در منابع فیزیکی به وجود آمده و با استفاده از آن میتوانیم با منابع موجود خود، امکانات بیشتری را فراهم کنیم. اگر بخواهم تعریف کاملتری از مجازی سازی ارایه دهم باید اضافه کنم که در مجازی سازی، منابع موجود که شامل قطعات سخت افزاری مانند رم و سی پی یو است را به چند قسمت تقسیم میکنیم به طوری که یک نمونه کوچک از نمونه اولیه را داشته باشیم. مثلا اگر سروری را مجازی سازی میکنیم در واقع از سرور اصلی چند نمونه کوچک سرور ساختهایم که همان قابلیتهای سرور اولیه را دارد اما محدودتر است چون منابع محدودتری دارد. اما باید حواسمان باشد که سروری که میخریم از مجازی سازی پشتیبانی کند.
مجازی سازی یا Virtualization بستری برای راه اندازی چندین سیستم عامل روی یک سیستم ارائه میدهد که این سیستم، کامپیوتر و اغلب سرور است. با پیاده سازی مجازی سازی روی بستر سخت افزار، به بستر نرم افزاری اجازه داده میشود سیستم عامل ها و برنامههای کاربردی که در سیستمهای مستقلی هستند، اجرا شوند. در واقع یک سیستم واقعی به صورت چند سیستم مجازی در میآید.
مجازی سازی سرور در واقع ایجاد ماشین مجازی است که مانند یک کامپیوتر یا سرور واقعی کار میکند و سیستم عامل خودش را دارد. در مجاری سازی سخت افزار با دو مفهوم روبرو میشویم: ماشین هاست و ماشین مهمان.
- Host Machine، ماشینی است که مجازی سازی از آن استفاده میکند
- Quest Machine، ماشین مجازی است.
هاست و مهمان به این دلیل استفاده میشود که نرم افزاری که روی ماشین فیزیکی اجرا میشود از نرم افزاری که روی ماشین مجازی اجرا میشود، قابل تشخیص و تمیز دادن باشد. نرم افزار یا Firmware ای که ماشین مجازی را روی سخت افزار هاست ایجاد میکند، هایپروایزر نامیده میشود.
در ادامه با مزایای مجازی سازی و انواع مجازی سازی آشنا میشوید و سپس درباره اینکه هایپروایزر چیست و مجازی سازی چگونه کار میکند صحبت خواهیم کرد.
مزایای مجازی سازی
مجازی سازی مزایای بسیاری دارد که در واقع دلایل محبوبیت آن است. در ادامه، ۱۳ مورد از مزایای مجازی سازی را میخوانید:
- کاهش هزینههای راه اندازی به دلیل صرفه جویی در تهیه سخت افزار و تجهیزات شبکه
- کاهش هزینههای پشتیبانی و نگهداری
- کاهش هزینه ها با استفاده بهینه از فضای فیزیکی، تا حدودی کمبود جا برای نگهداری سرور و تجهیزات را جبران میکند؛
- کاهش هزینه ها به دلیل کاهش میزان مصرف برق به خصوص در دیتاسنترها
- استفاده از حداکثر توان و ظرفیت سرور و منابع موجود در شبکه و بهره وری هر چه بیشتر از سخت افزار
- امنیت بسیار بالا
- کاهش زمان Downtime
- و در نهایت همگام شدن با تکنولوژی روز دنیا و کمک به حفظ محیط زیست
- امکان ایجاد محیطهای Test & Development به صورت بسیار مقرون به صرفه
- سهولت و اطمینان خاطر بیشتر در بکاپ گیری و بازیابی سرورها (Disaster Recovery & Backup)
- استقلال سیستم عامل ها از سخت افزار و افزایش قابلیت حمل و جابجایی
- کاهش هزینههای مدیریتی به همراه مدیریت بهتر و آسانتر سرورها و سرویس ها: مدیران شبکه میتواننددر کنسول آن، تمامی جزییات سرورهای خود را بررسی کنند تا بتوانند مدیریت بیشتری بر روی شبکه و سرور خود داشته باشند.
- مدیریت و آپدیت و تغییرات به سرعت و راحتی و بدون ایجاد وقفه برای کاربر
انواع مجازی سازی Virtualization Types
در این مقاله ۸ روش مجازی سازی را معرفی میکنیم:
- مجازی سازی سرور یا Server Virtualization که مجازی سخت افزار Hardware Virtualization هم خوانده میشود.
- مجازی سازی دسکتاپ Virtual Desktop Infrastructure یا VDI
- مجازی سازی استوریج یا Storage Virtualization
- مجازی سازی نرم افزار یا Software Virtualization
- مجازی سازی I/O یا I/O Virtualization یا IOV
- مجازی سازی شبکه یا Network Virtualization
- مجازی سازی دیتا یا Data Virtualization
در ادامه با انواع روش های مجازی سازی، بیشتر آشنا میشویم.
۱٫ مجازی سازی سرور چیست
آنچه در قسمت “مجازی سازی یا Virtualization چیست؟” خواندید در واقع درباره مجازی سازی سرور Server Virtualization اطلاعاتی به دست آوردید. اهمیت مجازی سازی سرور از کسی پوشیده نیست و مزایای پیاده سازی و راه اندازی سرور مجازی از اهمیت بالایی برخوردار است. اینکه با استفاده از نرم افزارهای مجازی سازی سرور بتوانید بهترین استفاده را از سرور یا سرورهای فیزیکی موجود ببرید و سرورها و ماشین های مجازی خودتان را متناسب با نیازهایتان ایجاد کنید. اهمیت مجازی سازی در امنیت سرور هم مطرح است و کاهش هزینه های پیاده سازی هم که جای خود دارد. به دلیل مبسوط بودن این سرفصل، مجازی سازی سرور را در مطلب جداگانهای تحت عنوان “مجازی سازی سرور چیست و چگونه کار میکند؟” ارایه دادهایم که در آن به موارد زیر پرداخته شده است:
- هایپروایزر – Hyperviser چیست؟
- مجازی سازی سرور چیست و چگونه کار میکند؟
- اشتراک گذاشتن سخت افزارها در مجازی سازی
- انواع راهکارها و روش های مجازی سازی سرور
- انواع نرم افزارهای مجازی سازی سرور
۲٫ مجازی سازی دسکتاپ چیست
مجازی سازی دسکتاپ یا VDI برای انتقال دسکتاپ کاربران از کامپیوتر شخصی به فضای ابری استفاده میشود. یعنی دسکتاپ کاربران، مجازی میشود و آن ها میتوانند به وسیله برخی تجهیزات مانند تین کلاینت ها و زیروکلاینت ها به دسکتاپشان دسترسی پیدا کنند. در این حالت سیستم عامل مورد استفاده، از سخت افزار مستقل میشود.
۳٫مجازی سازی نرم افزار
مجازی سازی نرم افزار یا Software Virtualization را به عنوان Application Virtualization هم به کار میبرند. در این روش، نرم افزار از سرور ریموت اجرا میشود. مجازی سازی نرم افزار در واقع همان چیزی است که به عنوان مجازی سازی میشناسیم با این تفاوت که مکانیسم نصب نرم افزار فرق دارد. پس نرم افزار مجازی ساز مانند Virtual Box یا VMware، نصب نرم افزار را کاملا مستقل و کامل انجام میدهد. به واسطه این روش می توانید نرم افزار مورد نظر را در هر جایی که می خواهید استفاده کنید. نکته کلیدی در این روش تجمع کلیه فایلهای نرم افزار در یک فایل اجرایی است. در این روش فایل مورد نظر از سخت افزار مستقل میشود.
مدیریت آسان، مهاجرت نرم افزاری، پیاده سازی راحت کلاینت از مزایای مجازی سازی نرم افزاری است.
انواع مجازی سازی نرم افزار و راهکارهای مجازی سازی
انواع مجازی سازی نرم افزار عبارتند از:
-
مجازی سازی اپلیکیشن یا مجازی سازی برنامه چیست؟
در این نوع مجازی سازی، اپلیکیشن روی دستگاهی (مثلا یک تین کلاینت) اجرا میشود که در حقیقت هیچ اپلیکیشنی ندارد. اپلیکیشن در واقع روی ماشینی مجازی در سرور و در مکانی متفاوت از خود دستگاه، وجود دارد و برای استفاده از آن باید از سیستم عامل آن سرور استفاده کنیم (پس سیستم عامل خود دستگاه در اینجا استفاد نمیشود). این دسترسی به اپلیکیشن از طریق LAN یا WAN صورت میگیرد.
رایج ترین روش برای پیاده سازی مجازی سازی اپلیکیشن، استفاده از راهکار مبتنی بر سرور است که در این روش ریموت اپلیکیشن ها روی سروری در دیتاسنتر و یا هاستینگ قرار میگیرد و سپس با استفاده از نرم افزار مجازی سازی اپلیکیشن، این اپلیکیشن ها را به دسکتاپ کاربر و یا هر دستگاه دیگر متصل، ارایه میدهد. در این حالت، کاربر تصور میکند برنامه ها به صورت لوکال روی سیستم خودش نصب شده ولی برای اجرا باید به سرور فرستاده شوند.
-
مجازی سازی سیستم عامل
در پاسخ به این سوال که مجازی سازی سیستم عامل چیست باید گفت، در این تکنولوژی روی لوکال دیوایس، هیچ چیزی نصب نمیشود و هیچ هارددیسکی لازم نیست. همه چیز از طریق شبکه و با استفاده از نوعی دیسک مجازی اجرا میشود. این دیسک مجازی در واقع Disk Image File ای است که روی ریموت سرور، یا SAN Storage یا NAS Storage قرار دارد. کلاینت از طریق شبکه به این دیسک مجازی وصل میشود و سیستم عامل نصب شده روی دیسک مجازی را بوت میکند.
-
مجازی سازی سرویس
در مجازی سازی سرویس، تیم DevOps از سرورهای مجازی استفاده میکنند. service virtualization در واقع رفتار برخی مولفه ها را شبیه سازی میکند.
۴٫ مجازی سازی Storage
مجازی سازی استوریج چیزی نیست جز به به اشتراک گذاری چند دستگاه استوریج تا به صورت یک دستگاه دیده شوند. حتی میتوان نام آن را گروهی از استوریج های در دسترس گذاشت که از طریق یک کنسول مرکزی مدیریت میشوند. پیاده سازی مجازی سازی استوریج، زمان کمی از شما میگیرد چرا که با روش کارآمدی انجام میشود.
مزایای مجازی سازی استوریج
مزایای مجازی سازی استوریج عبارتند از:
- راحتی در بکاپگیری و آرشیو و ریکاوری و بازیابی اطلاعات
- دسترس پذیری بالا و Downtime پایین
- پیاده سازی راهکارهای پیشرفته replication و reduplication و disaster recovery
- امنیت بالا
انواع مجازی سازی Storage
- Hardware Assisted Virtualization
- Kernel Level Virtualization
- Hypervisor Virtualization
- Para-Virtualization
- Full Virtualization
انواع راهکارهای مجازی سازی استوریج
انواع راهکارهای مجازی سازی استوریج عبارتند از:
- مجازی سازی مبتنی بر فایل: این نوع مجازی سازی در مقاله “Block Level Storage چیست؟” بررسی شده است.
- مجازی سازی مبتنی بر بلاک: این نوع مجازی سازی در مقاله “File Level Storage چیست؟” بررسی شده است.
۵٫مجازی سازی I/O
تکنیک I/O Virtualization یا IOV یک مولفه فیزیکی را به صورت چند مولفه به دستگاه ها ارایه میدهد مثلا کارت شبکه یا کارت HBA. به عنوان نمونه، یک کارت شبکه فیزیکی به صورت چندین کارت شبکه مجازی ارایه میشود.
انعطاف پذیری، کاهش هزینه، کاهش کابل کشی، از مزایای مجازی سازی I/O است.
۶٫مجازی سازی در شبکه
جهت ایجاد شبکه های مجازی داخل سرور به کار می رود تا موجب به هم پیوستن ماشین های مجازی و شکل گیری Virtual Security Zone شوند.
نحوه کار Network Virtualization بدین ترتیب است: منابع در دسترس شبکه را ترکیب میکند و پهنای باند را بین کانال ها تقسیم، به طوری که هر یک مستقل از دیگری است و در لحظه میتوان آن را به دستگاه یا سروری خاص اختصاص داد و یا پس گرفت. امنیت هر کانال به طور مجزا تامین میشود.
انواع شبکه مجازی
شبکه های مجازی در دو حالت داخلی و خارجی هستند و کار هر دو به داخل سرور یا خارج سرور بودن ارتباط دارد.
مجازی سازی داخلی:
Internal Virtualization شبکه مبتنی بر نرم افزار را ایجاد میکند مثلا نرم افزار VMware server و Microsoft Virtual PC. این نوع مجازی سازی پیچیده هم هست و میتوان در فایروال مجازی، شبکه بندی مجازی و سوییچینگ مجازی از آن استفاده کرد.
مجازی سازی خارجی:
External Virtualization از ابزاری مانند سوییچ ها و کارت ها و شبکه استفاده میکند تا یک یا چند شبکه را به صورت مجازی ایجاد کند.
۷٫ مجازی سازی داده – Data Virtualization
در دوران مدرن امروزی، داده ها و اطلاعات انترپرایزی و شرکتهای بزرگ، در فرمتها و مکانهای زیادی ذخیره میشوند. داده دارای دو نوع Structured و Unstructured است و شامل ردیفها و ستونهای داده در دیتابیس سنتی است. فرمت داده هم، به صورت لاگ و ایمیل و محتوای شبکههای اجتماعی است. در بیگ دیتا یا کلان داده، دادهها در شکلهای مختلف در دیتابیس، فایلهای لاگ، CRM و SaaS و دیگر برنامهها ذخیره میشود.
حال سوال اینجاست که شما چگونه این همه فرمت داده را باید ذخیره و مدیریت کنید؟ با استفاده از مجازی سازی داده بدون اینکه از محل فیزیکی ذخیره آن و یا فرمتی که دارد مطلع باشید، میتوانید روی آنها کار کنید.
نکته مهم این است که در مجازی سازی دیتا، بدون کپی و موو کردن داده، منابع مختلف را یکپارچه میکنید و به کاربر فقط یک لایه مجازی میدهید که برنامهها و فرمتها و مکانهای فیزیکی را در آن قرار میدهید. مزیت Data Virtualization این است که دسترسی به داده سریعتر و آسانتر است. بدون مجازی سازی دیتا، هوش مصنوعی، یادگیری ماشین، Data Mining و Data Analytics امکانپذیر نیست.
مجازی سازی و سرور hp
به وسیله تکنولوژی موجود بر روی سرورهای HP، مدیران شبکه میتوانند به طور کامل سخت افزار هایشان را از تمام زوایا مانند دمای سرور، حجم هارد دیسک ها، دمای قطعات و … مدیریت کنند. اما راه دیگری نیز برای مدیریت این موارد و بلکه بیشتر وجود دارد که همان روش مجازی سازی است. مدیران شبکه میتوانند در کنسول آن، تمامی جزییات سرورهای خود را بررسی کنند تا بتوانند مدیریت بیشتری بر روی شبکه و سرور خود داشته باشند.