در ابتدا به توضیحی کامل در رابطه با مجازی سازی سرور چیست میپردازیم. مجازی سازی سرور یا Server Virtualization در واقع یک فرآیند نرم افزاری و سخت افزاری میباشد که با هدف صرفه جویی در هزینه ها در آن یک سرور فیزیکی به چند سرور مجازی تقسیم میشود که در آن هر سرور مجازی میتواند سیستم عامل های […]
در ابتدا به توضیحی کامل در رابطه با مجازی سازی سرور چیست میپردازیم. مجازی سازی سرور یا Server Virtualization در واقع یک فرآیند نرم افزاری و سخت افزاری میباشد که با هدف صرفه جویی در هزینه ها در آن یک سرور فیزیکی به چند سرور مجازی تقسیم میشود که در آن هر سرور مجازی میتواند سیستم عامل های منحصر به فرد خود را پیاده سازی کند. اولین و مهمترین ویژگی مجازی سازی سرورها کاهش منابع سرور از جمله پردازنده ها و سرورهای فیزیکی میباشد.
مجازی سازی سرور چیست ؟
مجازی سازی سرورها یک روش مقرون به صرفه برای ارائه خدمات میزبانی وب و استفاده موثر از منابع موجود در زیرساخت فناوری اطلاعات است. بدون مجازی سازی سرور، سرورها تنها از بخش کوچکی از قدرت پردازش خود استفاده می کنند. این باعث میشود که سرورها بیکار بمانند. زیرا بار کاری تنها به بخشی از انواع سرورهای شبکه در سیستم کامپیوتری توزیع میشود.
مراکز داده مملو از سرورهای کم استفاده می شوند که باعث هدر رفتن منابع و قدرت می شود. با تقسیم هر سرور فیزیکی به چندین سرور مجازی، مجازی سازی سرور به هر سرور مجازی اجازه می دهد تا به عنوان یک دستگاه فیزیکی منحصر به فرد عمل کند. هر سرور مجازی می تواند برنامه ها و سیستم عامل خود را اجرا کند. این فرآیند با وادار کردن هر سرور مجازی به عنوان یک سرور فیزیکی، استفاده از منابع را افزایش می دهد و ظرفیت هر ماشین فیزیکی را افزایش می دهد.
مزایای کلیدی مجازی سازی سرور
از مزیت های اصلی و مهم مجازی سازی سرورها، کارایی بالا و عملکردهای فوق العاده آن می باشد. یکی از این عملکردهای کلیدی، قابلیت snapshot است که امکان بازگردانی تغییرات ایجاد شده در سیستم ها بدون نیاز به پیکربندی اولیه یک سرور که پیش از این میسر نبود را فراهم می نماید. همچنین می توان به سایر ویژگی های اساسی مدیریتی مانند vMotion، Cloning، تحمل خطا (Fault tolerance)، DRS و دسترس پذیری بالا (High Availability) اشاره کرد. که به ادمین های شبکه امکان افزایش مدت زمان آماده به کار زیرساخت ها و بهبود عرضه سطح خدمات مورد انتظار مشتریان (SLA) را می دهد.
در ادامه به برخی دیگر از مزایای مجازی سازی سرور اشاره خواهیم کرد:
- توانایی سرور بالاتر میرود.
- هزینه های عملیاتی ارزان تر به عمل خواهد آمد.
- پیچیدگی سرور دیگر معنا ندارد.
- بار کاری را سریعتر گسترش میبابد.
- کاهش فضای فیزیکی برای DataCenter و حتی کاربران.
- کاهش هزینه نگهداری (Powering & Cooling) و نیروی انسانی.
- پهنای باند شبکه را کاهش میدهد.
- ارائه ماشین های مجازی بجای فیزیکی و نصب ماشین های مجازی با سیستم عامل مختلف.
- آپدیت و تغییرات مورد نیاز جهت کاربران براحتی قابل انجام است.
- ایجاد دسترسی بالا High Availability.
تاریخچه مجازی سازی
مجازی سازی در دهه ۱۹۶۰ به دلیل هزینه بالای سخت افزار توسط کمپانی IBM وارد عرصه فناوری شد. سازمان ها با خدمات مجازی سازی سرورها و شبکه ها توانستند از یک سیستم قدرتمند بصورت بهینه تر با هزینه ی کمتر استفاده نمایند. این کمپانی در سال ۱۹۷۲ به طور رسمی نسخه IBM’s VM برای سیستم / ۳۷۰ را ارائه نمود. در سال های اخیر اصطلاح مجازی سازی به جدیدترین واژه فناوری اطلاعات تبدیل شده است. این سوال را ایجاد می کند، خدمات بوجود آوردن امنیت مجازی سازی سرور چیست؟
اولین مفهومی که به ذهن یک مهندس تازه کار فناوری اطلاعات می رسد؛ اجرای یک یا چند سیستم عامل روی یک سیستم سخت افزاری است. ولی مجازی سازی به یک سرور و اجزای چند سیستم عامل ختم نمی شود. هر ماشین مجازی سیستم عامل، خود را اجرا و مانند یک کامپیوتر مستقل رفتار می کند.
مجازی سازی اتصال بین سیستم عامل و سخت افزار می باشد که امکان اجرای چندیدن سیستم عامل مختلف روی یک سیستم فیزیکی را دارد. در خدمات مجازی سازی سرور امکان استفاده کارآمدتر از سخت افزار فیزیکی رایانه را فراهم کرده. باعث سرفه جویی در هزینه یک سازمان می شود. (تعدا سیستم عامل ها به منابع سخت افزاری سیستم بستگی دارد).
انواع مجازی سازی سرور
انواع روش های مجازی سازی سرور شامل مجازی سازی کامل و مجازی سازی پارا و مجازی سازی تقلیدی است که در ادامه هر یک را شرح میدهم.
Full Virtualization یا مجازی سازی کامل سرورها چیست؟
سخت افزار کاملا برای محیط نرم افزاری، شبیه سازی میشود که شامل سیستم عامل مهمان و برنامه های آن است که برای اجرا، نیازی به تغییر و در اصلاح Modify ندارند. تکنولوژی مجازی سازی کامل، مدیران شبکه را قادر می سازد تا سیستم عامل های مختلفی را روی یک سرور فیزیکی به طور همزمان و در یک لحظه اجرا کنند. به طور مثال بسیاری از مدیران شبکه با دریافت یک سرور فیزیکی قدرتمند، چندین سیستم عامل بر روی آن نصب و سپس آن را برای اهداف گوناگونی اجرا میکنند. در نتیجه علاوه بر کاهش هزینه های خرید سرور، برای مکان هایی که با کمبود جا برای نگهداری چندین سرور مشکل دارند، نیز بسیار مناسب است.
Emulation Virtualization یا مجازی سازی تقلیدی چیست؟
سخت افزار در مجازی سازی تقلیدی برای ماشین مجازی، شبیه سازی میشود و VM مستقل است و سیستم عامل مهمان نیازی به اصلاح و تغییر ندارد. در این حالت همانند مجازی سازی کامل سخت افزار، ساختن و مدیریت VM انجام میشود.
Para Virtualization یا مجازی سازی ناقص چیست؟
در مجازی سازی ناقص سخت افزاری، سخت افزار شبیه سازی نمیشود و نرم افزار مهمان، سیستم ایزوله خودش را اجرا میکند. و اصلا نیازی به شبیه سازی سخت افزار ندارد اما باید سیستم عامل مهمان را اصلاح کرد. برنامه های مهمان، در محدوده ایزوله شده خودشان اجرا میشوند انگار که روی سیستم جداگانهای در حال اجرا هستند. اما محیط سخت افزار شبیه سازی نمیشود.
برنامه های مهمان برای اجرا شدن در این محیط باید تغییراتی داده شوند. مجازی سازی پارا، تکنیکی است که اینترفیس نرم افزاری به ماشین مجازی ارایه میدهد. اینترفیس نرم افزاری مشابه اینترفیس نرم افزار- سخت افزار است اما همانندش نیست. در این روش، VM ها از وجود هم باخبرند و میدانند هر VM چه میزان منابع در اختیار دارد. این تکنیک در سیستم عامل های متن باز قابل استفاده است.
ویژگی های سرور مجازی چیست؟
شاید بتوان گفت انعطاف پذیری بالا و صرفه جویی اقتصادی، مهمترین مزیت مجازی سازی سرور برای یک سازمان محسوب می شود. مسلماً مجازی سازی سرورها نسبت به بکارگیری جداگانه سرورهای فیزیکی برای هر سرویس بسیار کارآمد تر است. لذا، نیازمندی شرکت ها به فراهم سازی تجهیزات سخت افزاری در ایجاد زیرساخت های جدیدتر بطور قابل توجهی کاهش یافته و سخت افزارهای کارآمدتر و قدرتمندتر می توانند جایگزین سخت افزارهای قدیمی تر با هزینه های نگهداری بیشتر شوند.
جدا از مزایای اقتصادی مجازی سازی، به دلیل نیاز کمتر دیتا سنتر ها به انرژی و سیستم های خنک کننده سرور از لحاظ زیست محیطی نیز سودمند می باشد. همچنین با کاهش تجهیزات سخت افزاری و میزان فضای دیتاسنترها، هزینه های مرتبط با service provider ها نیز کاهش می یابد.
سرعت بالا در ایجاد ماشینهای مجازی جدید با استفاده از template ها و امکان ساخت یک زیرساخت مجازی کاملاً جدید، ارائه خدمات در کمترین زمان ممکن را به طرز چشمگیری بهبود بخشیده است. که از آن جمله می توان به ابزارهایی مانند Terraform ( برای ایجاد و مدیریت زیر ساخت ها ) و مجموعه ابزارهای پیکربندی اتوماتیک مانند Ansible (برای پیکربندی کامل زیرساختها) اشاره نمود.
همچنین، بازیابی بحران (DR) Disaster recovery با استفاده از راهکار مجازی سازی سرورها به شدت بهبود یافته است. زیرا بجای بازیابی اطلاعات از نسخه های پشتیبان روی Tape ها، می توان با replicate کردن (کپی داده های عملیاتی) کل زیرساختهای مجازی بین سایتها و با استفاده از ابزارهای قدرتمندی مانند VMware Site Recovery Manager، فرآیند DR را بصورت اتوماتیک در کمترین زمان ممکن اجرا نمود. در حوزه کلود نیز محصولاتی همانند CloudEndure، امکان replicate مستقیم سرورها به فضای کلود و کل زیرساخت ها به فضای staging area ( با فعال سازی سناریوی DR ) را امکان پذیر می سازند.
مجازی سازی سرورها مناسب چه سازمانهایی است؟
برخی از افراد به اشتباه گمان می کنند مجازی سازی تنها مختص مراکز داده یا دیتا سنتر های بزرگ می باشد. در صورتی که این تصوری کاملا اشتباه است. شرکت های پیشرو در زمینه مجازی سازی این تکنولوژی را جهت استفاده برای رده ی وسیعی از شبکه ها مانند مجازی سازی دسکتاپ طراحی کرده اند.
از شبکه های کوچکی با یک سرور گرفته تا دیتا سنتر های بزرگ با ده ها یا صدها سرور و سرویس دهنده منتظر. همان طور که پیشتر نیز اشاره شد مجازی سازی با مزایای خود طیر گسترده ای از نیازهای سازمان ها و افراد را در جهت استفاده بهینه تر از منابع، صرفه جویی و پایداری سرویس ها مرتفع میسازد.
کجا نباید از مجازی سازی استفاده کرد؟
در اوایل کار مجازی سازی عنوان می شد که در سرورهای Database و بعضی سرورهای SAP مجازی سازی ممکن نبود. ولی خدا رو شکر کلیه این مشکلات حل شده است و به غیر از بانک Oracle، که کلاستر بندی خاص خود را دارد کلیه Database ها و همچنین SAP هم دیگر این مشکل را نداشته. و به راحتی مجازی سازی می شوند.
اما متاسفانه در صورتی که سخت افزار سرور شما قوی نمی باشد به هیچ وجه، تاکید می شود به عنوان NVR برای سرورهای IPCAM و یا VOIP برای جلوگیری از وقفه یا Delay پیشنهاد نمی شود. ولی در کلیه موارد دیگر که در تعریف ابتدایی خدمتان ذکر کردیم حتی از Device های سخت افراری به همراه یک سیستم عامل بدلیل اینکه ترافیک دادها بیرون نرفته و مجددا بر نمی گردد سریعتر عمل می کند. مجازی سازی به طور کلی به دو روش انجام می شود:
Type1 نوع یک و حرفه ای آن اصطلاحا به آن baremetal hypervisor نیز میگویند:
شامل استفاده از یک سیستم عامل مخصوص مجازی سازی در سرور فیزیکی (Host) و در اختیار گرفتن منابع اصلی مثل رم، پردازنده و دیسک در سیستم میزبان و واگذاری و مدیریت منابع بین سیستم عاملهایی که به عنوان مهمان (Guest) نصب می شوند. در این نوع مجازی سازی به سیستم عامل میزبان که وظیفه کنترل و تقسیم I/O و منابع اصلی سرور بین سیستم عاملها را دارد هایپروایزر (Hypervisor) گویند.
ماشنهای مجازی نوع یک خود به دو نوع تقسیم می شوند. هایپروایزرهایی که اجازه استفاده از منابع بین سیستم عاملهای میهمان به صورت اشتراکی میدهند. مثل OpenVZ
و دسته دیگر هایپرویزورهایی که به هر سیستم عامل مهمان مقدار مشخص شده منابع سخت افزاری را واگذار می کنند. و در صورت پر شدن منابع هر میهمان، میهمان دیگری دچار مشکل نمی شود. این نوع مجازی در اجاره سرورهای مجازی VPS – VDS برای اجاره کننده بسیار اهمیت دارد. زیرا مطمئن خواهد بود مقدار حافطه یا پرازنده مورد نظر کاملا اختصاصی است. از جمله هایپرویزورهایی که از این دسته هستند vmWare ESXi ، Ms HyperV و Cytrix Xen می باشند.
Type2 یا نوع دوم جنبه آزمایشگاهی و کاربردهای خانگی دارد:
در این نوع مجازی سازی یک نرم افزار که نصب و کاربرد بسیار آسانی دارد با چند مرحله next در سیستم عامل ما نصب می شود. و مثل هر برنامه کاربردی دیگر یا Application در سیستم عامل اولیه نصب می شود. و امکان ایجاد ماشین مجازی یا سیستم عامل دیگری در لپ تاپ و کامپیوتر شخصی را به ما می دهد. از جمله معروفترین نمونه های این نوع می توان به VMWare Workstation و Virtual Box اشاره نمود
جمع بندی نهایی
مبحث مجازی سازی سرور بسیار گسترده است، و طی 15سال گذشته پیشرفت گسترده ای در صنعت فناوری و اطلاعات داشته است. به طور کلی تکنولوژی مجازی سازی سرور (Server Virtualization) امکان ایجاد چندین سرور مجازی از یک سرور فیزیکی را میدهد. سرور های مجازی میتوانند مشابه سرورهای فیزیکی همه مسئولیت های آنها را انجام دهند، بدون اینکه هر ماشین مجازی نیاز به استفاده از منابع فیزیکی مختص به خود را داشته باشند.