ESXI / NSX

هایپروایزر

برای ورود به دنیای مجازی سازی سرورها یا رایانش ابری باید با یکی از زیرساخت های نرم افزاری مرتبط مانند Microsoft Hyper-V یا VMware vSphere و یا Citrix Xen Server آشنایی داشته باشید. کار در محیط مجازی با ابزارهای فعلی لذت بخش شده و قابلیت های کاربردی زیادی را در اختیارتان قرار می دهد.

مجازی سازی به شما این امکان رو میدهد تا از منابع سخت افزاری نهایت استفاده رو ببرید، در صرف هزینه صرفه جویی کنید و امنیت و پایداری را برای زیرساخت شبکه به همراه دارد.

هایپروایزر چیست (Hypervisor

در اولین قدم برای داشتن یک ابر یا رایانش ابری و مجازی سازی باید بتوانید به ماشین های مجازی اتان دسترسی داشته باشید. هایپروایزر این ماشین های مجازی را کنترل می کند.

Hypervisor  که به آن (Virtual Machine Manager :VMM) هم می‌گویند لایه ای نرم افزاری است که بین سخت افزار و سیستم‌عامل قرار می‌‌گیرد.

Hypervisor درواقع رابطی است بین سخت افزار به اشتراک گذاشته شده‌ی سرور و ماشین های مجازی.

یک هایپروایزر این امکان را به شما میدهد تا با داشتن سخت افزار یکتا قادر باشید میزبانی چندین سیستم عامل رو بصورت همزمان داشته باشید. فرضا می توانید روی یک سرور فیزیکی چندین سیستم عامل ویندوز و لینوکس و …رو بصورت موازی و همزمان نصب و استفاده کنید. هر کدوم از این سیستم عامل ها سخت افزار مجزای خودشان را دارند و برنامه های خودشان رو میزبانی می کنند.و ار دید سیستم عامل هرکدام روی سخت افزار جدایی نصب شده اند که این تخصیص سخت افزار و منابع کاری است که هایپروایزر بر عهده دارد.

خلاصه که هایپروایزر به چندین سیستم عامل اجازه میدهد تا در کنار هم بصورت بهینه از سخت افزار یکتا استفاده کنند. ممکن است فکر کنید این یک تکنولوژی جدید در زمینه IT هست که مورد استفاده قرار گرفته. ولی این تکنولوژی اولین بار توسط شرکت IBM در دهه ۶۰ میلادی روی Mainframe ها مورد استفاده قرار گرفت. اما در دوره جدید حدود سال ۲۰۰۵ میلادی بود که توسط Linux و Unix برای استفاده بهینه تر از منابع، کاهش هزینه ها و همچنین افزایش امنیت مجددا بصورت وسیع مورد استفاده قرار گرفت.

در حال حاضر پایه هر شبکه مجازی سازی شده یک هایپروایزر است که می توانید آن را نیز به عنوان یک سیستم عامل البته تک منظوره و برای مجازی سازی بشناسید. هایپروایزر به هر سیستم عامل منابع (پردازنده، حافظه، دیسک سخت و پهنای باند شبکه) را بصورت درست و بهینه اختصاص میدهد. و ماشین مجازی از طریق هایپروایزر منابع را دریافت میکند.

انواع هایپروایزر :

نوع اول :Hypervisor Native یا هایپروایزر مستقل

نوع دوم :Hosted Hypervisor یا هایپروایزر وابسته

نام های دیگر هایپروایزر نوع اول:

Native Hypervisor

Type 1 Hypervisor

Type I Hypervisor

Bare Metal Hypervisor

نام های دیگر هایپروایزر نوع دوم:

Hosted Hypervisor

Embedded Hypervisor

Type 2 Hypervisor

Type II Hypervisor

هایپروایزر نوع اول (هایپروایزر مستقل)

این نوع هایپروایزر مستقیما روی سخت افزار نصب میشه و ماشین های مجازی رو میزبانی میکنه. هایپروایزر های زیر از این نوع هستند.

  • Microsoft Hyper-v Hypervisor
  • VMware ESX/ESXi
  • Oracle VM Server
  • Linux KVM
  • Citrix Xen Server

هایپروایزر نوع دوم (هایپروایزر وابسته)

این هایپروایزر ها نرم افزاری هستند که روی سیتم عامل نصب می شوند. سیستم عامل های ویندوز، لینوکس، FreeBSD و … هایپروایزر های زیر از این نوع هستند.

  • Microsoft Virtual PC
  • VMware Workstation
  • (VMware Server (End of Life
  • Oracle Virtual Box

خلاصه

هایپروایزر های نوع اول برای نصب نیازی به سیتم عامل مجزا ندارند و بصورت مستقیم روی سخت افزار نصب می شوند. و لی هایپروایزر های نوع دوم برای نصب نیاز به یک سیستم عامل میزبان دارند. کدام بهتر است؟ جواب این سوال بستگی دارد به هدفی که دنبال می کنید.

مطمنا هایپروایزر های نوع اول سریعتر، کارامد تر و امن تر هستند و نیازی به یک لایه واسط اضافی (سیستم عامل میزبان) ندارند. اما نوع دوم هایپروایزر ها ساده تر نصب میشوند و با بیشتر سخت افزار ها سازگارند.

 

ESXI

ESXI یک Hypervisor نوع اول از شرکت VMware میباشد.

این برنامه هسته اصلی مجازی سازی در vSphere را تشکیل می دهد و در واقع نوعی سیستم عامل محسوب می شود زیرا در هنگام نصب مستقیما بر روی سخت افزار نصب می شود و نیازی به سیستم عامل میزبان و یا هاست ندارد و جز برنامه های   hostless است و در سرعت و عملکرد بسیار موثر است .

 ESXiاخرین ورژن از سری نرم افزاری VMware هایپر وایزر است که در واقع اجازه ساخت ماشین های مجازی و اختصاص منابع به ماشین های مجازی را فراهم می کند .

این پلتفرم مدیریت بر روی سخت افزار و منابع سیستم ایجاد می کند در حقیقت وظیفه ESXi کنترل و مدیریت منابع سخت افزاری در بین ماشین های مجازی است.

برای آشنایی با ESXi باید مفاهیم زیر را بدانید:

‫vsphere: به تنهایی یک برنامه نرم‌افزاری نیست و شامل مجموعه برنامه‌های مجازی ساز vmware است (esxi، vcenter، vsphere client).

‫vsphere client: برنامه مدیریت کننده مجموعه vsphere است، و عملیات مدیریت مجازی‌ساز، مدیرت منابع و مدیرت ماشین‌های مجازی بوسیله این برنامه انجام می‌شود. این برنامه  ‫vsphere client تنها بر روی سیستم‌عامل ویندوز و سمت Client کاربر قابل نصب می‌باشد.

‫vcenter: همه دستورات مدیریت مجازی‌ساز را بوسیله برنامه ‫vsphere client نمی‌توان اجرا کرد، برای این‌منظور باید از برنامه مدیریت کننده vcenter استفاده کنید. vcenter را روی یک ماشین مجازی ویندوزی که به‌وسیله VMware ESXi مجازی سازی شده‌است، نصب کنید.

 

نرم افزار ESXi به صورت CLI  است بنابراین برای اتصال ، دسترسی و مدیریت ماشین های مجازی از vSphere Client استفاده می شود.

vSphere Client  به صورت اینترفیس امکان دسترسی به VCenter Server و ESXi را برای پیکر بندی و مشاهده تنظیمات یک دیتاسنتر فراهم می کند.

با استفاده از این قابلیت می توان به ESXi و VCenter  متصل شویم در واقع این قابلیت روی سیستمی نصب می شود که می خواهیم با آن به vSphere متصل شویم. به سروری ( Server ) که بر روی آن مجازی سازی انجام میگردد HOST و به ماشین های مجازی ایجاد شده Guest گفته میشود و بر روی هر HOST بسته به نوع مجازی سازی و نیز ظرفیت منابع آن، میتوان تعدادی ماشین مجازی ایجاد نمود. با توجه به پیشرفتهایی که در نرم افزار های مجازی ساز در این دوره ایجاد شده، میتوان به مدیریت چندین HOST در یک مجموعه، ماشینهای مجازی را میان HOST ها جابجا نموده و یا در صورت از کار افتادن یکی از آنها، بصورت خودکار به سایر سرور های فعال منتقل نمود.

تفاوت VMware ESX و VMware ESXi چیست

VMware ESX و VMware ESXi هر دو Hypervisor های شرکت VMware هستند که هر دوی این ها از نوع اول Hypervisor هستند.

ESX نوعی نرم افزار بود که روی هسته ی اصلی سیستم عامل لینوکس قرار گرفته بود و مجزا از سیستم عامل است.

در حالی که در ESXi چیزی به عنوان سیستم‌عامل مستقل وجود ندارد و به صورت یکپارچه بر روی VMKernal قرار گرفته است.

شرکت VMware بعد از ارائه vSphere 4.1 به کاربران خود توصیه کرد که از ESXi کنند.

اما مهمترین تفاوت VMware ESX و VMware ESXi چیست

  • ESXi سبک تر و دارای سرعت بوت می باشد.
  • بعضی از خصوصیات شبکه در ESXi، به واسطه سرویس‌ها پیکربندی می شود در نتیجه خطای کمتری به وجود می آید.
  • ESXi، پچ کمتری نیاز دارد و در عمل ریسک کمتری برای تغییرات وجود دارد.
  • در ESXi کاربران به جای استفاده از کنسول از خط فرمان راه دور (RCLI) استفاده می کنند.

اما تفاوت VMware ESX و VMware ESXi این است که، در واقع VMware ESX علاوه بر کرنل اصلی خود دارای یک Virtual Machine آماده مبتنی بر لینوکس به نام Service Console می باشد و هدف از ایجاد این ماشین ایجاد یک پلتفورم جهت مانیتورینگ و رفع اشکال بوده است.

در حالی که VMware ESXi با هدف کاهش حجم Hypervisor به دلایل امنیتی و Performance ایجاد شده است.

پس تنها فرق در وجود Service Console در VMware ESX و عدم وجود آن در VMware ESXi می باشد. از نسخه ۵ به بعد ESX دیگر حذف شد و فقط به صورت ESXi ارائه میگردد.

 

NSX

VMware NSX حرکتی از سوی شرکت VMware برای مجازی سازی شبکه های فیزیکی است. در واقع SDN شرکت VMware برای ورود به این عرصه است. حرکتی که شرکت های دیگر، هر چند محدود بر روی ساختار VMware vSphere به آن پرداخته اند. مانند Cisco v1000 که سوییچ ها را در محیط VMware vSphere مجازی می نمود. در زیر خلاصه وار به معرفی این نرم افزار می پردازیم.

NSX چیست؟

نرم افزاری در زمینه SDN ها است که شرکت VMware با صرف هزینه ای هنگفت پروژه شرکت Nicira را بدست آورد. طبق تعریف این شرکت، NSX “هایپروایزر شبکه” است. این تعریف برای درک بهتر آشنایان با عرصه IT مطرح شده است چرا که همگی می دانیم که ESX یا هایپروایزر چه کاری انجام می دهد و شرکت VMware از ارائه آن چه هدفی دارد. در واقع VMware ESXi منابع رایانش را مجازی سازی می کند (مثل، پردازنده، حافظه، دیسک ها و کارت های شبکه). در مقایسه با آن VMware NSX که کل شبکه زیرساخت آن را مجازی سازی می کند (مثل، سوییچ های مجازی، دیواره های آتش مجازی، روتر های مجازی و …)

در گذشته، همگان می دانستند که چه تجهیزاتی در شبکه وجود دارد و به عبارتی امکان دیدن و لمس تجهیزات شبکه را داشتند. به عنوان مثال امکان مشاهده پورت سوئیچی که به یک سرور متصل شده است، وجود داشت. اما در حال حاضر، چنین امکانی وجود ندارد! (به دلیل مجازی سازی ساختار شبکه). اساساً، می توان گفت، این ساختارها (پورت، سوئیچ، مسیریاب و غیره) هنوز هم در VMware NSX وجود دارد اما امکان لمس ساختارها دیگر ممکن نیست و تنها یک تصویر ذهنی از یک شبکه مجازی قابل تصور است که این تصویرسازی به صورت عینی هم کار نه چندان ساده ای است.

طبق گفته شرکت VMware، کاربران می خواهند تجربه کار با نرم افزار های مجازی سازی و رایانش ابری را در زیرساخت شبکه ای نیز داشته باشند. ساختاری شبیه مجازی سازی سرور ها، اما برای شبکه می خواهند. و VMware می گوید NSX قابلیت انجام این پروسه ها را برای شبکه به همراه دارد (مانند مجازی سازی سرور ها برای زیرساخت رایانشی):

  • عدم وابستگی شبکه به سخت افزار
  • منعطف سازی شبکه، می توانید شبکه ای را که نیاز دارید در لحظه (بسازید، پاک کنید، آن را ویرایش کنید).
  • شفاف نمودن شبکه برای نرم افزار ها.
  • قابلیت نظارت برنامه ریزی شده.
  • فراهم آوری زیرساخت قابل توسعه شبکه و استفاده از نرم افزار های جانبی (Third-party) به عنوان راه کار های مورد نیاز.

باید های مجازی سازی در لایه شبکه :

  • عدم وابستگی شبکه به سخت افزار
  • شبیه سازی و بازسازی شبکه فیزیکی به صورت مجازی و ارائه سرویس های همسان بدون در نظر گرفتن لایه سخت افزاری مورد استفاده.
  • یکپارچگی با مدیریت زیرساخت ابری و خودکار سازی مدیریت و تامین منابع به نحوی که مزایای مجازی سازی سرور ها در لایه شبکه نیز وجود داشته باشد.

دلایل به وجود آمدن VMware NSX چیست؟

ممکن است فکر کنید شبکه شما با استفاده از VMware vSphere کاملا مجازی سازی شده است. این تفکر تا حدودی صحیح است. VMware vSphere تا حدودی این امر را میسر نموده است. شما از کارت های شبکه مجازی که به سوییچ مجازی متصل است استفاده می کنید. و تمامی ماشین های مجازی روی یک میزبان می توانند با هم ارتباط داشته باشند. اما این کل امکانات شما برای مجازی سازی در لایه شبکه است.

زمانی که ماشین مجازی شما قصد صحبت با یک ماشین مجازی دیگر، یک ماشین فیزیکی یا اینترنت را دارد. ترافیک ماشین مجازی باید از طریق UP-Link میزبان (ESXi) این امر را انجام دهد. از اینجا به بعد ترافیک به سوییچ فیزیکی سپس به ESXi دیگر می رود. و ترافیک ماشین مجازی باید از چندین هاپ (Hop، با Hub اشتباه نشود.) عبور کند تا به یک ماشین مجازی  دیگر (مثلا سرور وب) برسد. یا بهتر بگوییم یک مرکز داده در آن سوی جهان. جایی که ترافیک از سوییچ های فیزیکی، روتر های فیزیکی و دیواره های آتش فیزیکی “دستگاه های تماما سخت افزاری” عبور می کند. و VMware با استفاده از NSX این شانس را فراهم می کند تا از “دستگاه های سخت افزاری” به سمت “شبکه های نرم افزاری” حرکت نماییم.

قابلیت های VMware NSX :

  • مجازی سازی شبکه در لایه ۲ و پشتیبانی از نشان گذاری پکت ها (ACLs ، QoS و ...)
  • مجازی سازی شبکه در لایه ۳ با استفاده از روتر (مسیر یاب) با پشتیبانی از مسیر یابی (شمال-جنوب) و (شرق-غرب)
  • دیواره آتش توزیع شده در نزدیک ترین حالت به ماشین های مجازی که در هسته VMware در حال اجراست.
  • توازن بار نرم افزارها به صورت نرم افزاری
  • سرور V-P*N برای فراهم آوری Site-to-Site V-P*N و امکان دسترسی از راه دور (Remote Access)
  • NSX API که قابلیت یکپارچه سازی با انواع زیر ساخت های ابری را دارا است.
  • پشتیبانی از انواع راه کارها، با یکپارچه شدن آنها در NSX

NSX با شبکه سخت افزاری فعلی شما بخوبی سازگار است و کار می کند. پس نیازی به خرید سخت افزار جدید ندارید. همانند ماشین های مجازی شما که روی VMware vSphere در حال فعالیت هستند. تمام زیرساخت شبکه مجازی شما (قابلیت های برشمرده بالا) بر روی هایپروایزر NSX فعالیت دارند.

نرم افزار ها ی سازگار با NSX   

  • VMware vSphere
  • KVM
  • Xen Citrix
  • OpenStack
  • CloudStack
  • vCAC | VMware vCloud Automation Center
  • vCD | VMware vCloud Director

VMware NSX چگونه کار می کند؟

نحوه کارکرد VMware NSX بسیار جذاب خواهد بود, زیرساختی که ادعا دارد تمامی زیرساخت های شبکه های فیزیکی را قادر است به شکل مجازی در آورد. این هم نگاهی کوتاه به معماری VMware NSX:

ax1

NSX با کپسول نمودن ترافیک عادی شبکه با استفاده از پروتکل های کپسول سازی نظیر (STT، VXLAN وGRE) باعث می شود زیرساخت مجازی شبکه و زیرساخت فیزیکی شبکه با یکدیگر سازگاری پیدا کنند. سخت افزار های فیزیکی شبکه دیدی نسبت به مجازی سازی درون کپسول ها ندارند اما با پروتکل های کپسول سازی استفاده شده، سازگار هستند. و این نقطه ارتباط و سازگاری این دو زیرساخت است.

ax2

NSX Gateway است که وظیفه ارتباط شبکه فیزیکی و مجازی را بر عهده دارد. هر هایپروایزر VMware NSX و سوییچ مجازی خودش را اجرا می کند (که یک نرم افزار مجازی است) و از آن برای مدیریت و کنترل ترافیک خود بهره می برد. با توجه به پشتیبانی VMware NSX از انواع هایپروایزر ها و زیرساخت های مدیریتی ابرها این نمایی است از ترکیب آن با vSphere و vCAC | vCD

دو نسخه مختلف از NSX وجود دارد:

  •  NSX برای vSphere
  •  NSX برای Multi-Hypervisor (یا به اختصار MH)

NSX برای vSphare، محصولی ایده آل برای محیط­ های VMware محسوب می شود، در حالی که NSX برای MH به منظور یکپارچه سازی محیط های ابری (کلاود) طراحی شده است و استانداردهای مختلفی از جمله OpenStack را به کار می گیرد.

تفاوت های NSX و NSX-MH

از نقطه نظر معماری NSX و NSX-MH دارای تفاوت هایی است. به عنوان مثال NSX تنها از هایپروایزر ESXi پشتیبانی می کند، اما NSX-MH، علاوه بر ESXi، از KVM و Xen نیز پشتیبانی می کند. vSwtich به کار گرفته شده در NSX، vDS و VIB است، اما در NSX-MH از OVS استفاده میشود. دیگر تفاوت های مهم بین NSX وNSX-MH در جدول زیر آمده است.

ax jadval

اما از دیدگاه سرویس های شبکه نیز بین دو نسخه تفاوت هایی وجود دارد که می توان به صورت زیر دسته بندی کرد:

  • سرویس های شبکه ای که توسط  NSX و NSX-MH پشتیبانی می شوند:

        L2، L2-log-phy، Centralized +Dist L3 و QoS

  • سرویس های شبکه ای که تنها توسط NSX پشتیبانی می شوند:

        Dynamic Routing , Stateful dist L2-L4 , LB , VPN , Service Composer , 3rd party integration

  • سرویس های شبکه ای که تنها توسط NSX-MH پشتیبانی می شوند :

        ToR integration , Stateless dist L2-L4 FW

 

 

 

 

 

طراحی شده توسط 3DQuest.ir