VDistributed Switch

VDistributed Switch

منظور از Standard Switch و Distributed Switch در VMware VSPhere

VMware واقعا دنیا را تغییر داده است. امروزه تقریبا همه چیز در قالب مجازی پیدا می شود. یکی از مواردی که معمولا در خصوص VMware های سازمانی کمی ابهام برانگیز است بحث VSwitch و VNetwork که به سویچ ها و شبکه های مجازی معروف هستند است.

برای اینکه پیچیدگی چندانی در کار خود احساس نکنید فراموش نکنید که شبکه های مجازی یا Virtual Network های موجود در VMware چندان تفاوت فاحشی با شبکه های فیزیکی یا Physical Network ها ندارند.

VSphere سعی کرده است تمامی تجهیزات و وسایلی که در یک شبکه فیزیکی واقعی می توان پیدا کرد را در شبکه های خود پیاده سازی کند و در قالب مجازی همه این موارد را در کنار هم داشته باشد بنابراین شما بسیاری از وسایل فیزیکی شبکه را ممکن است در قالب مجازی در VSphere مشاهده کنید. اگر مفاهیم کارکرد تجهیزات شبکه در محیط واقعی را به خوبی درک کرده باشد بنابراین دانستن مفاهیم مجازی این موارد در محیط واقعی چندان برای شما مشکل نخواهد بود.

منظور از Virtual Network یا VNetwork در VMware چیست ؟

این کاملا طبیعی است که شما زمانیکه می خواهید به یک شبکه متصل شوید کامپیوتر شما بایستی دارای یک کارت شبکه یا NIC باشد که ما آن را به عنوان Network Card یا Network Adapter هم می شناسیم. همانطور که از اسمش هم پیداست یعنی NIC یا کارت رابط شبکه ، این کارت به شما اجازه برقراری ارتباط با شبکه را می دهد به ویژه در شبکه های محلی یا Local Area Network ها ، شبکه محلی یا LAN به شبکه ای گفته می شود که دستگاه هایی با استفاده از همین NIC ها با استفاده از دستگاهی به نام سویچ به هم متصل می شوند ، سویچ در واقع وظیفه مسیریابی بسته های اطلاعاتی یا ترافیک شبکه بین کامپیوترهای مبدا و مقصد را بر عهده دارد. یک شبکه مجازی یا Virtual Network در واقع از همه این سخت افزارهایی که عنوان کردیم تشکیل شده است با این تفاوت که همه آنها مجازی سازی شده اند ! یک شبکه مجازی در واقع تشکیل شده است از چند Virtual Machine که با همدیگر ارتباط دارند و می توانند داده ها و اطلاعات را در بین شبکه مجازی که تشکیل داده اند ارسال و دریافت کنند. در یک شبکه مجازی هر کدام از Virtual Machine ها به عنوان یک Node شبکه در شبکه فعالیت می کنند و همه این Virtual Machine ها بر روی سرورهای ESX یا ESXi قرار می گیرند. در VMware وظیفه ای که سویچ بر عهده دارد برقرار کردن ارتباط شبکه مجازی و شبکه فیزیکی است ، با استفاده از ESX یا ESXi دو نوع مختلف از سویچ ها را می توانید در شبکه های مجازی داشته باشید که هیچ شباهتی به انواع سویچ های فیزیکی در شبکه ندارند ، به این نوع سویچ ها Standard Switch و Distributed Switch گفته می شود که در ادامه به تشریح هر کدام از آنها خواهیم پرداخت

Standard Switch در VMware VSphere چیست؟

یک سویچ شبکه استاندارد در شبکه مجازی VMware یا Standard Switch که به VSwitch هم معروف است وظیفه برقراری ارتباط بین Virtual Machine ها و Virtual Network را بر عهده دارد. یک VSwitch کاربردی شبیه به یک سویچ فیزیکی شبکه دارد اما با یک سری محدودیت ها ، وظیفه دیگر VSwitch کنترل کردن چگونگی برقراری ارتباط شبکه ای بین Virtual Machine ها است . vSwitch ها از کارت شبکه های فیزیکی یا Physical NIC که به pNIC هم معروف هستند و بر روی سیستم های میزبان یا Host Server ها نصب شده اند برای برقراری ارتباط شبکه مجازی با شبکه فیزیکی استفاده می کنند. در VMware به این کارت شبکه های فیزیکی یا pNIC ها در اصطلاح Uplink Adapter هم گفته می شود. خود Uplink Adapter ها از اشیاء مجازی به نام vmnic یا virtual network adapter برای برقراری ارتباط با VSwitch استفاده می کنند.زمانیکه VSwitch ارتباط بین شبکه مجازی و شبکه فیزیکی را برقرار یا در اصطلاح Bridge کرد ، Virtual Machine هایی که روی سرور میزبان یا Host Server قرار دارند می توانند هم از شبکه فیزیکی داده ها را دریافت کنند و هم به آن داده ها را ارسال کنند ، در این حالت Virtual Machine انگار واقعا در شبکه فیزیکی قرار دارد و تمامی فرآیند هایی که یک ماشین فیزیکی در یک شبکه فیزیکی انجام می دهد را می تواند انجام دهد. بنابراین ارتباط Virtual Machine ها فقط محدود به همان شبکه مجازی که در آن قرار گرفته اند نیست.

 

Internal VSwitch در VMware VSphere چیست؟

VMWare می تواند با استفاده از VSwitch ها انواع و اقسام شبکه های مجازی را ایجاد کند ، شما می توانید VSwitch ای داشته باشید که به یک یا چندین Uplink Adapter متصل شده باشد و یا اینکه اصلا به هیچ Uplink Adapter ای متصل نشده باشد. به VSwitch ای که به هیچ pNIC ای متصل نشده باشد در اصطلاح Internal VSwitch گفته می شود و این VSwitch نمی تواند با هیچ ماشین Virtual یا Physical خارج از ESX یا ESXi ارتباط برقرار کند. شما زمانی معمولا از Internal VSwitch ها استفاده می کنید که می خواهید VM شما کاملا ایزوله باشد و با هیچ شبکه خارجی ارتباط نداشته باشد ، معمولا شما زمانیکه پیکربندی یک Virtual Appliance را انجام می دهید از Internal VSwitch ها استفاده می کنید.اگر بخواهیم کمی فنی تر صحبت کنیم باید بگوییم که VSwitch ها به کرنل VMWare که به VMkernel معروف است پیوست یا Attach می شوند. VSwitch وظیفه مسیریابی ترافیک شبکه به داخل VMkernel و VM Network و Service Console را نیز بر عهده دارد . VMkernel برای مدیریت قابلیت هایی مثل VMotion ، Fault Tolerance ، Network File System یا NFS و Internet Small Computer Interface یا iSCSI استفاده می شود.VM Network به شما این قابلیت را می دهد که Virtual Machine هایی که روی Host های ESX یا ESXi قرار دارند بتوانند با شبکه مجازی یا شبکه فیزیکی ارتباط برقرار کنند و Service Console هم برای مدیریت از راه دور یا Remote Management استفاده می شود. توجه کنید که فقط ESX است که از Service Console استفاده می کند در ESXi خود VMkernel به عنوان Front-End استفاده می شود.

برای اینکه بتوانید به یک VSwitch متصل شوید ، Virtual Machine شما باید یک Virtual NIC یا vNIC داشته باشد که به آن متصل شده باشد. دقیقا همانطور که یک سیستم فیزیکی نمی تواند بدون کارت شبکه فیزیکی به شبکه فیزیکی متصل شود یک کارت شبکه مجازی نیز در محیط مجازی باید به یک سیستم مجازی متصل شده باشد تا بتواند با شبکه ارتباط برقرار کند. در واقع زمانیکه یک سیستم در شبکه فیزیکی شما بسته اطلاعاتی را از یک سیستم مجازی دریافت می کند نمی تواند متوجه شود که بسته اطلاعاتی از یک سیستم مجازی دریافت شده است یا سیستم بصورت فیزیکی وجود داشته اشت. دقیقا مشابه pNIC ها vNIC ها نیز آدرس IP و MAC مختص و منحصر به فرد خود را دارند. هر Virtual Machine با استفاده از یک Port با vSwitch ارتباط برقرار می کند. vSwitch ها می توانند شامل یک یا چندین گروه پورت یا Port Group باشند که اینها تعیین کننده روش مسیریابی ترافیک بین Virtual Network و Virtual Machine هایی که به هر یک از پورت ها متصل شده اند را تعیین می کنند. مدیران شبکه می توانند با استفاده از Port Group ها عملیات Traffic Shaping و کنترل پهنای باند بعلاوه NIC Failover و بسیاری دیگر از تنظیمات را انجام دهند.

 

Distributed Switch در VMware VSphere چیست؟

فرض کنید ما داخل سازمان خود ۱۰  ESX Server داریم.قرار است روی تمام این ESX ها سوییچینگ را فعال کنیم. یعنی میخواهیم Standard Switch را روی این ۱۰ تا ESX کانفیگ کنیم. مشکلی که پیش می آید این است که تعداد Host ها زیاد است. مثلا در اینجا ۱۰  Host داریم و  باید سوییچینگ را روی همه ی آن ها کانفیگ کنیم. تصور کنید روی هر سرور ESX Host ، ۴  سوییچ تعریف شود. ۴۰ بار باید سوییچ کانفیگ رو انجام بدهید و هیچ مدیریت متمرکزی روی آن ها وجود ندارد. اگر  تغییری را انجام دهیم باید ۴۰ بار آن را کانفیگ کنیم. همه ی این مسائل باعث میشود که به سراغ مطلب جدیدی  به نام Distributed Switch برویم.

Distributed Virtual Switches که به DvSwitch معروف هستند فرآیند مدیریتی شبکه برای چندین ESX یا ESXi را بصورت متمرکز انجام می دهند و کار مدیریت شبکه را در محیط مجازی بسیار آسان می کنند.

Distributed Switch از ورژن ۴ ئه VMware اضافه شده است. برای راه اندازی Distributed Switch شما نیاز دارید از Vcenter Server استفاده کنید. همانطور که دیدید برای Standard Switch نیازی به Vcenter Server نداریم اما برای راه اندازی Distributed Switch به Vcenter Server نیاز داریم.

سوییچ Distributed روی Vcenter ایجاد میشود و به همه ی ESX ها متصل میشود، به این ترتیب ما یکبار سوییچ را روی Vcenter ایجاد  و سپس این سوییچ را به چندین Host مختلف Assign میکنیم. به شکل زیر توجه کنید:

ax

در این شکل سه تا Host داریم که همه به Distributed Switch متصل شده اند و VM ها از طریق این یک سوییچ جا به جایی دیتا میکنند و مدیریت متمرکز دارند.

ax

برخلاف Standard Switch ها که برای هر کدام از ESX یا ESXi های شبکه بایستی بصورت جداگانه طراحی شود در DvSwitch ها شما یکبار از طریق کنسول مدیریتی VSphere تنظیمات شبکه را برای همه ESXi ها یا ESX های موجود در شبکه انجام می دهید. فراموش نکنید که DvSwitch ها هم همان کارهایی را می توانند انجام دهند که یک Standard Switch می تواند انجام دهد. شما به جای اینکه بخواهید تنظیمات شبکه و NIC ها را در یک Datacenter بصورت تک تک بر روی ESXi ها انجام دهید تنها یکبار در کنسول مدیریت VCenter آنها را انجام می دهید و به تمامی Host های موجود در شبکه توزیع می کنید.

برخلاف vSwitch ها که بصورت تک تک بر روی Host ها بایسی ایجاد شود ، شما می توانید تمامی تنظیمات DvSwitch ها را از طریق کنسول مدیریتی VCenter Server بصورت متمرکز انجام دهید. یک DvSwitch شامل دو سطح کنترلی و سطح input/output یا IO می باشد. سطح کنترای بر روی VCenter Server قرار دارد و برای پیکربندی DvSwitch ها ، NIC Binding ، Uplink Adapter ها و VLAN ها استفاده می شود و سطح IO که به سطح Data هم معروف است یک Virtual Switch مخفی بر روی هر کدام از Host Server های روی شبکه قرار دارد. توجه کنید که DvSwitch ها امکانات بیشتری نسبت به standard VSwitch ها دارند و آنها نیز از Port Group ها پشتیبانی می کنند ، اما در ساختار Distributed Switch ها Port Group ها به Distributed Port Groups معروف هستند که به اختصار به آنها dvport هم گفته می شود. Dvport ها نیز در واقع همان عملیاتی را می توانند انجام دهند که Port Group های معمولی انجام می دهند اما با یک سری قابلیت های بهتر ، برای مثال مدیران شبکه می توانند ترافیک ورودی و خروجی به dvport Group ها را نیز تعیین کنند.

ایده ی سوییچ های Distributed از سوییچ های Chasis Based سیسکو آمده است. در این سوییچ ها دوتا Plane داریم: Control Plane و Data Plane. در Distributed Switch نیز  همین حالت را داریم، Control Plane سوییچ Vcenter است و Data Plane سوییچ میشود vmnic های روی ESX ها که در نقش Line Card هایی عمل میکنند که ترافیک را به سمت بیرون این سوییچ ارسال میکنند یا از بیرون دریافت میکنند. این سیستم هم چیزی است که سیسکو برای VMware طراحی کرده است زیرا از ورژن ۴ به بعد دو کمپانی بزرگ cisco و EMC۲ به عنوان پارتنر های اصلی VMware فعالیت میکنند که زیرساخت vNetworking آن را Cisco طراحی کرده و ساختار Storage ای آن را EMC۲. پس این سیستم Distributed Switch چیزی است که سیسکو به Vmware داده است و Dependency ی آن هم این است که حتما Vcenter را داشته باشید و بدون Vcenter امکان راه اندازی آن نیست.

ویژگی های سوییچ های Standard و سوییچ های Distributed

دو نوع سوییچ مجازی در vSphere قابل استفاده است. سوییچ های Standard و سوییچ های Distributed. به سوییچ های استاندارد اصطلاحاً vSS  گفته می شود و بر روی هر هاست ESXi به شکل دستی تنظیم و مدیریت می شوند. سوییچ توزیع شده یا همان dvSwitch عملکرد مشابهی را فراهم می کند اما در vCenter Server متمرکز شده است و ویژگی های بیشتری دارد.

هر دو نوع سوییچ مجازی در vSphere دارای ویژگی های زیر هستند:

•     انتقال فریم های لایه 2

•    تقسیم بندی ترافیک بر اساس VLAN

•    پشتیبانی از استاندارد کپسوله سازی 802.1q

•    پشتیبانی از NIC Teaming (برای داشتن بیش از یک uplink)

•    پشتیبانی از Traffic Shaping خروجی (Egress)

•    پشتیبانی از (CDP (Cisco Discovery Protocol

علاوه بر این، سوییچ های Distributed یا dvSwitch ها دارای ویژگی های بیشتری از قبیل موارد زیر هستند:

•    مدیریت سطح DataCenter

    Network I/O Control

•    پشتیبانی از Traffic Shaping ورودی (Ingress)

•    گرفتن پشتیبانی از تنظیمات و باز گردانی آن ها

•    پشتیبانی از Private VLANs

•    پشتیبانی از پروتکل LACP برای Link Aggregation

•    نظارت بر وضعیت پورت ها (Port Monitoring)

•    پشتیبانی از NetFlow

•    پشتیبانی از Port Mirroring

معماری

dvSwitch  یک سوییچ مجازی است که تمام هاست های ESXi واقع در یک Datacenter می توانند به آن متصل شوند تا تنظیمات Network  آنها در vCenter server به صورت یکپارچه مدیریت شده و نمایش داده شوند.

این سوییچ به گونه ای طراحی گردیده که مدیریت و نظارت متمرکز اجزا شبکه هاست های ESXi را برای مدیران IT فراهم می کند و هدف از این طراحی، انجام تنظیمات به صورت یکپارچه در سراسر Datacenter مجازی است.

یک سوییچ Distributed از دو جزء اساسی ساخته شده است:

•    Control Plane

•    I/O Plane

Control Plane در سطح vCenter Server وجود دارد و مسئول تنظیمات و مدیریت  dvSwitch، distributed port groups، uplinkها، NIC Teaming، Private VLANها و .... می باشد.

I/O plane یک سوییچ مجازی پنهان است که بر روی هر هاست ESXi وجود دارد. که سخت افزار ورودی و خروجی بر روی هاست  ESXi را مدیریت می کند و مسئول  انتقال فریم ها به Uplink صحیح می باشد.

به همین خاطر در صورتی که رویدادی رخ دهد و vCenter Server از کار بیفتد ارتباطات شبکه در هاست های ESXi همچنان برقرار خواهد بود.

زمانی که یک ماشین مجازی به یک پورت بر روی سوییچ distributed متصل می شود یک پوشه به نام dvsData. در محل ذخیره سازی که ماشین مجازی بر روی آن قرار دارد ساخته می شود. همچنین حداقل یک زیر پوشه که با ID سوییچ distributed همخوانی دارد وجود خواهد داشت در آن زیر پوشه ممکن است یک فایل یا بیشتر قرار داشته باشد که متناظر با PortID هستند که ماشین مجازی به آن متصل است. این فایل حاوی اطلاعاتی از قبیل وضعیت پورت و تنظیمات و سیاست های اعمال شده می باشد.

ax

هر سوییچ distributed ممکن است یک یا چند distributed port group داشته باشد. هر جز شبکه مانند یک ماشین مجازی یا یک اینترفیس VMKernel را می توان به یک distributed port group متصل نمود.

 

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