نظرات کاربران
- جهت دریافت اطلاعات بیشتر تماس بگیرید
خانه » مجازی سازی شبکه چیست ؟ Virtualization
به طور خلاصه مجازی سازی یا Virtualization شبکه عبارت است از استفاده از سخت افزار و منابع سخت افزاری شامل حافظه، پردازنده، دیسک، کارت شبکه و … در یک سیستم کامپیوتری برای راه اندازی و استفاده (میزبانی) بیش از یک سیستم عامل به صورت همزمان.
با این تعریف سیستم هایی که دارای بوت دو یا چند گانه هستند و در هنگام بوت شدن یک سیستم عامل انتخاب شده و کنترل سخت افزار را بر عهده می گیرد در حیطه مجازی سازی شبکه قرار نمی گیرند.
شروع این فناوری در سال ۱۹۶۰ توسط شرکت IBM آغاز شد و به عنوان یک روش منطقی برای تقسیم منابع سیستم توسط رایانههای بزرگ، بین برنامه های مختلف ارائه شد. این فناوری به مدیران این امکان را داد که از هدر رفتن قدرت پردازشی گران قیمت جلوگیری کنند. از آن زمان اصطلاح مجازی سازی (Virtualization) گسترش یافت.
مجازی سازی شبکه به طور کلی به دو روش انجام می شود:
اصطلاحاً به آن Baremetal Hypervisor نیز می گویند که شامل استفاده از یک سیستم عامل مخصوص مجازی سازی در سرور فیزیکی (Host) و در اختیار گرفتن منابع اصلی مثل رم ، پردازنده و دیسک در سیستم میزبان و واگذاری و مدیریت منابع بین سیستم عامل هایی که به عنوان مهمان (Guest) نصب می شوند. در این نوع مجازی سازی به سیستم عامل میزبان که وظیفه کنترل و تقسیم I/O و منابع اصلی سرور بین سیستم عامل ها را دارد هایپروایزر (هایپرویزور Hypervisor) گویند.
نوع دوم جنبه آزمایشگاهی و کاربردهای خانگی دارد در این نوع مجازی سازی یک نرم افزار که نصب و کاربرد بسیار آسانی دارد. با چند مرحله next در سیستم عامل ما نصب می شود و مثل هر برنامه d کاربردی دیگر یا Application، در سیستم عامل اولیه نصب می شود و امکان ایجاد ماشین مجازی یا سیستم عامل دیگری در لپ تاپ و کامپیوتر شخصی را به ما می دهد. از جمله معروف ترین نمونه های این نوع می توان به VMWare Workstation و Virtual Box اشاره نمود.
ماشین های مجازی نوع یک، خود به دو نوع تقسیم می شوند:
هایپروایزرهایی که اجازه استفاده از منابع بین سیستم عامل های میهمان به صورت اشتراکی می دهند مثل OpenVZ.
دسته دیگر هایپرویزورهایی که به هر سیستم عامل مهمان مقدار مشخص شده منابع سخت افزاری را واگذار می کنند و در صورت پر شدن منابع هر میهمان، میهمان دیگری دچار مشکل نمی شود. این نوع مجازی در اجاره سرورهای مجازی VPS – VDS برای اجاره کننده بسیار اهمیت دارد زیرا مطمئن خواهد بود مقدار حافطه یا پرازنده مورد نظر کاملا اختصاصی است.
از جمله هایپرویزورهایی که از این دسته هستند vmWare ESXi ،Ms HyperV و Cytrix Xen می باشند.
دلایل زیادی وجود دارد که چرا مردم از مجازی سازی شبکه در محاسبات استفاده می کنند. برای کاربران، مجازی سازی دسکتاپ رایجترین کاربرد این است که بتوانند برنامههایی را که برای سیستمعامل دیگری طراحی شدهاند، بدون نیاز به تعویض رایانه یا راهاندازی مجدد به سیستم دیگری اجرا کنند.
برای مدیران سرورها، مجازیسازی توانایی اجرای سیستمعاملهای مختلف را نیز ارائه میدهد، اما شاید مهمتر از آن، راهی برای تقسیمبندی یک سیستم بزرگ به بخشهای کوچکتر ارائه میدهد که به سرور اجازه میدهد تا با کارایی بیشتری توسط تعدادی کاربر مختلف استفاده شود یا برنامه هایی با نیازهای مختلف. همچنین اجازه میدهد تا برنامههای در حال اجرا در داخل یک ماشین مجازی را از فرآیندهایی که در ماشین مجازی دیگر روی همان میزبان انجام میشوند، جدا نگه دارد.
مجازی سازی شبکه یک مسیر اجتناب ناپذیر پیش روی مجموعه هاست. چون نه تنها امکان و مزیتی را از دست نمیدهید، بلکه با خدمات مجازی سازی شبکه از مزایای زیر نیز بهره مند میشوید:
تا اینجا ما مجازی سازی سرور را مورد بحث قرار دادهایم. اما بسیاری از عناصر زیرساخت فناوری اطلاعات دیگر را میتوان مجازیسازی کرد تا مزایای قابل توجهی را برای مدیران فناوری اطلاعات و شرکت ها به عنوان یک کلیت ارائه دهد. در ادامه به انواع مجازی سازی و توضیحات آن خواهیم پرداخت:
در واقع مجازی سازی دسکتاپ به شما امکان می دهد چندین سیستم عامل دسکتاپ را اجرا کنید، که هر کدام در ماشین مجازی مخصوص به خود در یک کامپیوتر مشابه هستند.دو نوع مجازی سازی دسکتاپ وجود دارد:
مجازی سازی شبکه از نرمافزاری برای ایجاد «نما» از شبکه استفاده میکند که یک مدیر میتواند از آن برای مدیریت شبکه از یک کنسول استفاده کند. عناصر و توابع سخت افزاری (به عنوان مثال، اتصالات، سوئیچ ها، روترها، و غیره) را انتزاع می کند و آن ها را در نرم افزاری که روی یک هایپروایزر اجرا می شود، انتزاع می کند. مدیر شبکه می تواند این عناصر را بدون دست زدن به اجزای فیزیکی زیربنایی اصلاح و کنترل کند، که مدیریت شبکه را به طور چشمگیری ساده می کند.
انواع مجازی سازی شبکه عبارتند از: شبکه تعریف شده با نرم افزار (SDN)، که سخت افزاری را که مسیریابی ترافیک شبکه را کنترل می کند (به نام “صفحه کنترل”) و مجازی سازی عملکرد شبکه (NFV) ، که یک یا چند ابزار سخت افزاری را مجازی می کند که یک شبکه خاص را ارائه می دهد، مجازی می کند. عملکرد (به عنوان مثال، فایروال، متعادل کننده بار، یا تحلیلگر ترافیک)، پیکربندی، تهیه و مدیریت آن وسایل را آسان تر می کند.
مجازی سازی اپلیکیشن، نرم افزار کاربردی را بدون نصب مستقیم روی سیستم عامل کاربر اجرا می کند. این با مجازی سازی کامل دسکتاپ (که در بالا ذکر شد) متفاوت است. زیرا فقط برنامه در یک محیط مجازی اجرا می شود – سیستم عامل روی دستگاه کاربر نهایی طبق معمول اجرا می شود. سه نوع مجازی سازی اپلیکیشن وجود دارد:
شرکتهای مدرن دادهها را از چندین برنامه، با استفاده از فرمتهای فایل متعدد، در مکانهای مختلف، از ابر گرفته تا سیستمهای سختافزاری و نرمافزاری داخلی ذخیره میکنند. مجازیسازی دادهها به هر برنامهای اجازه میدهد به همه آن دادهها دسترسی داشته باشد – صرف نظر از منبع، فرمت یا مکان.
ابزار مجازی سازی داده ها یک لایه نرم افزاری بین برنامه های کاربردی که به داده ها دسترسی دارند و سیستم های ذخیره کننده آن ایجاد می کنند. لایه درخواست داده یا پرس و جوی یک برنامه کاربردی را در صورت نیاز ترجمه می کند و نتایجی را برمی گرداند که می توانند چندین سیستم را دربر گیرند. مجازیسازی دادهها میتواند به تجزیه سیلوهای دادهها در زمانی که سایر انواع یکپارچهسازی امکانپذیر، مطلوب یا مقرون به صرفه نیستند، کمک کند.
مجازی سازی فضای ذخیرهسازی به همه دستگاههای ذخیرهسازی در شبکه – خواه روی سرورهای منفرد یا واحدهای ذخیرهسازی مستقل نصب شده باشند – به عنوان یک دستگاه ذخیرهسازی واحد دسترسی و مدیریت میشوند.
به طور خاص، مجازی سازی ذخیرهسازی همه بلوکهای ذخیرهسازی را در یک استخر مشترک واحد جمع میکند که از آنجا میتوان آنها را به هر VM در شبکه در صورت نیاز اختصاص داد. مجازی سازی فضای ذخیرهسازی، فراهم کردن فضای ذخیرهسازی برای ماشینهای مجازی را آسانتر میکند و از تمام فضای ذخیرهسازی موجود در شبکه حداکثر استفاده را میکند.
مجازی سازی مرکز داده، بیشتر سختافزار مرکز داده را به نرمافزار انتزاعی میکند و به طور مؤثری یک مدیر را قادر میسازد تا یک مرکز داده فیزیکی را به چندین مرکز داده مجازی برای مشتریان مختلف تقسیم کند.
هر مشتری می تواند به زیرساخت خود به عنوان یک سرویس (IaaS) دسترسی داشته باشد که بر روی همان سخت افزار فیزیکی زیربنایی اجرا می شود. مراکز داده مجازی، راهاندازی آسانی را برای محاسبات مبتنی بر ابر ارائه میدهند. و به شرکت اجازه میدهند تا بدون خرید سختافزار زیرساخت، به سرعت یک محیط مرکز داده کامل را راهاندازی کند.
لینوکس دارای هایپروایزر خود به نام ماشین مجازی مبتنی بر هسته (KVM) است که از پسوندهای پردازنده مجازی سازی اینتل و AMD پشتیبانی می کند تا بتوانید VMهای مبتنی بر x86 را از داخل یک سیستم عامل میزبان لینوکس ایجاد کنید.
لینوکس به عنوان یک سیستم عامل منبع باز، بسیار قابل تنظیم است. میتوانید ماشینهای مجازی در حال اجرا نسخههای لینوکس را که برای بارهای کاری خاص طراحی شدهاند یا نسخههای سختشده امنیتی برای برنامههای حساستر ایجاد کنید.
یک GPU (واحد پردازش گرافیکی) یک پردازنده چند هسته ای ویژه است که عملکرد کلی محاسبات را با در اختیار گرفتن پردازش های گرافیکی یا ریاضی سنگین بهبود می بخشد. مجازیسازی GPU به چندین VM اجازه میدهد از تمام یا بخشی از قدرت پردازش یک GPU برای ویدیوهای سریعتر، هوش مصنوعی (AI) و سایر برنامههای گرافیکی یا ریاضی فشردهتر استفاده کنند.
مجازی سازی CPU (واحد پردازش مرکزی) فناوری اساسی است که هایپروایزر، ماشین های مجازی و سیستم عامل ها را ممکن می کند. این اجازه می دهد تا یک CPU واحد به چند CPU مجازی برای استفاده توسط چندین VM تقسیم شود.
در ابتدا، مجازی سازی CPU کاملاً نرمافزاری تعریف شده بود. اما بسیاری از پردازندههای امروزی شامل مجموعه دستورالعملهای گستردهای هستند که از مجازی سازی CPU پشتیبانی میکنند، که عملکرد VM را بهبود میبخشد.
هر مشتری می تواند به زیرساخت خود به عنوان یک سرویس (IaaS) دسترسی داشته باشد که بر روی همان سخت افزار فیزیکی زیربنایی اجرا می شود. مراکز داده مجازی، راهاندازی آسانی را برای محاسبات مبتنی بر ابر ارائه میدهند. و به شرکت اجازه میدهند تا بدون خرید سختافزار زیرساخت، به سرعت یک محیط مرکز داده کامل را راهاندازی کند.
همانطور که در بالا ذکر شد، مدل محاسبات ابری به مجازی سازی بستگی دارد. با مجازی سازی سرورها، ذخیره سازی و سایر منابع فیزیکی مرکز داده، ارائه دهندگان رایانش ابری می توانند طیف وسیعی از خدمات را به مشتریان ارائه دهند. از جمله موارد زیر:
مجازیسازی در شبکه فناوری را توصیف میکند که در آن یک برنامه کاربردی، سیستمعامل مهمان یا ذخیرهسازی داده از سختافزار یا نرمافزار زیربنایی واقعی انتزاع میشود. یکی از کاربردهای کلیدی فناوری مجازی سازی، مجازی سازی سرور است که از یک لایه نرم افزاری به نام – Hypervisor – برای شبیه سازی سخت افزار زیرین استفاده می کند. این اغلب شامل (حافظه CPU، ورودی/خروجی I/O) و ترافیک شبکه) می شود.
هایپروایزرها منابع فیزیکی را می گیرند و آن ها را جدا می کنند تا بتوانند در محیط مجازی از آن ها استفاده کنند. آن ها می توانند بالای یک سیستم عامل قرار بگیرند یا می توانند مستقیماً روی سخت افزار نصب شوند. مورد دوم نحوه مجازی سازی بیشتر شرکت ها برای سیستم های خود است.
Xen Hypervisor یک برنامه نرم افزاری منبع باز است که وظیفه مدیریت تعاملات سطح پایینی را که بین ماشین های مجازی (VM) و سخت افزار فیزیکی رخ می دهد، بر عهده دارد. به عبارت دیگر، هایپروایزر Xen امکان ایجاد، اجرا و مدیریت همزمان ماشین های مجازی مختلف را در یک محیط فیزیکی فراهم می کند.
با کمک هایپروایزر، سیستم عامل مهمان، که معمولاً با سخت افزار واقعی تعامل دارد، اکنون این کار را با شبیه سازی نرم افزاری آن سخت افزار انجام می دهد. اغلب، سیستم عامل مهمان نمی داند که روی سخت افزار مجازی است.
در حالی که عملکرد این سیستم مجازی با عملکرد سیستم عاملی که روی سخت افزار واقعی اجرا می شود برابر نیست، مفهوم مجازی سازی کار می کند زیرا اکثر سیستم عامل ها و برنامه های کاربردی مهمان نیازی به استفاده کامل از سخت افزار زیرین ندارند.
به وسیله تکنولوژی مجازی سازی شبکه میتوانیم به طور همزمان دو یا چند سیستم عامل را روی یک سرور راهاندازی کنیم. این تکنولوژی نرمافزاری موجبات دگرگونی در چشم انداز فناوری اطلاعات (IT) و همچنین تغییرات اساسی در زیرساخت سازمان را فراهم میکند.
لازم به ذکر است که شرکتهای مختلفی در این حوضه فعالیت دارند و با ارائه راهکارهای مجازی سازی، انواع نرمافزارهای کاربردی و… بازار رقابتی این حوضه را رهبری میکنند که در زیر به تعدادی از سرشناسترین آن ها اشاره شده است:
قبل از تبدیل به یک محیط مجازی، مهم است که هزینه های مختلف اولیه را در نظر بگیرید. سرمایهگذاری لازم در نرمافزار مجازیسازی و همچنین سختافزاری که ممکن است برای امکانپذیر کردن مجازی سازی سرور و شبکه مورد نیاز باشد، میتواند پرهزینه باشد. اگر زیرساخت موجود بیش از پنج سال قدمت داشته باشد، باید بودجه ای برای تجدید اولیه در نظر گرفته شود.
خوشبختانه، بسیاری از کسب و کارها این ظرفیت را دارند که مجازی سازی شبکه را بدون صرف مقدار زیادی پول نقد انجام دهند. علاوه بر این، هزینه ها را می توان با همکاری با یک ارائه دهنده خدمات مدیریت شده که گزینه های اجاره یا خرید ماهانه ارائه می دهد، جبران کرد.
همچنین ملاحظاتی برای صدور مجوز نرم افزار وجود دارد که باید هنگام ایجاد یک محیط مجازی در نظر گرفته شود. شرکت ها باید اطمینان حاصل کنند که درک روشنی از نحوه استفاده فروشندگان آن ها از نرم افزار در یک محیط مجازی شده دارند. این باعث محدودیت کمتر می شود زیرا ارائه دهندگان نرم افزار بیشتری با افزایش استفاده از مجازی سازی سازگار می شوند.
تبدیل به مجازی سازی شبکه زمان می برد و ممکن است با یک منحنی یادگیری همراه باشد. پیاده سازی و کنترل یک محیط مجازی شده مستلزم آن است که هر یک از کارکنان فناوری اطلاعات در زمینه مجازی سازی آموزش دیده و دارای تخصص باشند. بهعلاوه، برخی از برنامهها وقتی وارد یک محیط مجازی میشوند، به خوبی تطبیق نمییابند. کارکنان فناوری اطلاعات باید برای رویارویی با این چالشها آماده باشند و باید قبل از تبدیل به آن ها رسیدگی کنند.
همچنین خطرات امنیتی مرتبط با مجازی سازی وجود دارد. داده ها برای موفقیت یک کسب و کار بسیار مهم هستند و بنابراین، یک هدف رایج برای حملات شبکه هستند. در هنگام استفاده از مجازی سازی، شانس تجربه نقض داده ها به میزان قابل توجهی افزایش می یابد.
در نهایت، در یک محیط مجازی، کاربران کنترل کاری را که میتوانند انجام دهند از دست میدهند، زیرا چندین لینک وجود دارد که باید برای انجام یک کار با یکدیگر همکاری کنند. اگر هر قسمتی کار نکند، کل عملیات خراب می شود.
ماشین مجازی معادل شبیه سازی شده یک سیستم کامپیوتری است که روی سیستم دیگری اجرا می شود. ماشینهای مجازی ممکن است به هر تعدادی از منابع دسترسی داشته باشند: قدرت محاسباتی، از طریق دسترسی محدود به CPU و حافظه دستگاه میزبان. یک یا چند دستگاه دیسک فیزیکی یا مجازی برای ذخیره سازی؛ استنتاج شبکه مجازی یا واقعی؛ و همچنین هر دستگاهی مانند کارتهای ویدئویی، دستگاههای USB یا سایر سختافزارهایی که با ماشین مجازی به اشتراک گذاشته شدهاند.
اگر ماشین مجازی روی یک دیسک مجازی ذخیره شده باشد، اغلب به آن تصویر دیسک می گویند. یک تصویر دیسک ممکن است حاوی فایلهایی باشد که یک ماشین مجازی برای بوت کردن وجود دارد یا میتواند حاوی نیازهای ذخیرهسازی خاص دیگری باشد.
شاید نام کانتینرهای لینوکس را شنیده باشید که از نظر مفهومی شبیه ماشین های مجازی هستند، اما عملکردشان تا حدودی متفاوت است. در حالی که هم کانتینرها و هم ماشینهای مجازی امکان اجرای برنامهها را در یک محیط ایزوله میدهند و به شما این امکان را میدهند که بسیاری از آن ها را روی یک ماشین قرار دهید، گویی که کامپیوترهای جداگانهای هستند، کانتینرها ماشینهای کامل و مستقلی نیستند.
یک کانتینر در واقع فقط یک فرآیند مجزا است که هسته لینوکس مشابه سیستم عامل میزبان و همچنین کتابخانه ها و سایر فایل های مورد نیاز برای اجرای برنامه در حال اجرا در داخل کانتینر را به اشتراک می گذارد، اغلب با یک رابط شبکه به گونه ای که کانتینر را می توان به همان روشی که یک ماشین مجازی در معرض جهان قرار داد. به طور معمول، کانتینرها برای اجرای یک برنامه واحد طراحی می شوند، برخلاف شبیه سازی یک سرور چند منظوره کامل.
مجازی سازی سرور، یک کامپیوتر کامل را در سخت افزار بازتولید می کند و سپس کل سیستم عامل را اجرا می کند. سیستم عامل یک برنامه را اجرا می کند. این کارآمدتر از عدم مجازی سازی است، اما همچنان کدها و سرویس های غیر ضروری را برای هر برنامه ای که می خواهید اجرا کنید، کپی می کند. کانتینرها یک رویکرد جایگزین دارند.
آن ها یک هسته سیستم عامل زیرین را به اشتراک میگذارند و فقط برنامه و چیزهایی را که به آن وابسته است اجرا میکنند. مانند کتابخانههای نرمافزار و متغیرهای محیط. این باعث می شود کانتینرها کوچک تر و سریع تر مستقر شوند.
میدان فاطمی خیابان گمنام بین ششم و هفتم پلاک ۳۴ واحد ۳
02174391800 09128581120 info@imennet.net