الگوریتم یا سیاست های load balancing در vmware

الگوریتم یا سیاست های load balancing در vmware

 الگوریتم یا سیاست های load balancing در vmware

مبحث load balancing  زمانی صدق میکند که بیش از یک کارت شبکه در قسمت ACTIVE  داشته باشیم .

یعنی اگر یک کارت در mode Active  و بقیه در mode unsed  یا  mode stand by باشد این مسئله در آن نمی گنجد .

 

۴ سیاست های  مورد Load Balancing :

Router based on original virtual port ID

 سیاست پیش فرض روی یک سوئیچ مجازی این گزینه می باشد . این سیاست  کاملا بصورت تصادفی یک پورتی را

که بصورت مجازی به آن وصل شدیم به کارت شبکه ماشین مجازی ما اختصاص میدهد . عملا کارت شبکه مجازی

ای که به سوئیچ مجازی وصل شده بصورت تصادفی انتخاب میشود .

معایب آن :

در انتخابش دخل و تصرف نداریم . ممکن است اگر مثلا ۶۰ تا virtual machine داریم ، ۵۰ تای آنرا روی کارت اول

بندازد و ۱۰ تای بقیه را روی کارت دوم . در بدترین حالت همه از روی یک کارت شبکه وصل میشوند. یک الگوریتم

Load Balancing بصورت Random است . تنها زمانی که ترافیک Management را بخواهیم عبور دهیم توصیه

میشود و در مورداین مدل از ترافیک دنبال Load Balancing  نیستیم که با می نیمم زمان بتواند ترافیک شبکه را

عبور دهد .

Vmware  توصیه نمیکند که از این متد استفاده کنیم .

  • مکانیزم Source MAC Hash

برای هر virtual machine  ،  ترافیکی که میخواهد رد شود ، یک hashing بین    source mac addressروی ماشین

مجازی  ها انجام داده و خروجی را روی آن ارسال میکند . این روش را نیز vmware توصیه نمیکند. امکان اینکه این

شانس را داشته باشیم که ترافیک بعضی وقتها از کارت اول رد شود بعضی مواقع از کارت دوم رد باشد را نداریم و

همیشه همان کارتی که hashing روی آن صورت گرفته عبور خواهد کرد .

  • مکانیزم based on IP Hash

بر اساس hashing  روی mac address virtual machine ها خروجی را تعیین میکند . توصیه نمیشود.

مکانیزمی که vmware توصیه میکند این است که

وقتی بیش از یک کارت شبکه داریم ، per packet ، عمل  hashing  روی source IP , Destination IP صورت گرفته

(XOR)  و براساس آن ترافیک تقسیم شود . در این حالت شانس این را میدهد که یک ماشین مجازی ترافیک را

بگونه ای assignکند که از بیش از یک کارت شبکه رد شود . یعنی شانس توزیع بیشتر است . این روش خوب است

اما Overhead نیز روی سیستم دارد. Cpu usage  بالا میرود .

اگر از این مکانیزم استفاده کنیم ، تنظیمات port switch  ویا Port group کفایت نمیکند . باید کارتهای شبکه که به

سوئیچ فیزیکی  وصل هستند مکانیزم ether channel  را داشته باشند . در حالیکه در دو حالت قبل نیازی به این

مسئله نبود .

  •  مکانیزم use explicit failover order

این سیاست بدین صورت است که اگر مثلا دو تا کارت شبکه داریم همیشه ترافیک از بالاترین کارت شبکه رد شود

و اگر fail  کرد کارت پایین تر از آن انتخاب گردد . یعنی اگر ۴ تا کارت داریم ، همیشه بالاترین کارت انتخاب شود و به

ترتیب اولویت داده شود .

این مسئله با قضیه stand by  فرق میکند . در اینجا بیش از یک کارت شبکه در ACTIVE  داریم . دومین ACTIVE

موقعی میاد که اولی fail  شود .

دومین موضوع در NIC Teaming

در قسمت Network Failover Detection

میخواهمی بدانیم چه زمانی یک پورت قطع شده که ترافیک را از آن عبور ندهیم بدین منظور دو مکانیزم وجود دارد:

 

  • Link state only

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

و کدام وصل است ارتباط برقرار میشود . در این روش سوئیچ مجازی کاری به این قضه ندارد که سوئیچ فیزیکال

uplink بهش وصل است یا خیر . اگر uplink  به سوئیچ فیزیکال وصل نباشد علی رغم اینکه همه پورت ها آماده

باشند که اصلا ترافیک از آن عبور نمیکند ولی در این زمان هم سوئیچ مجازی کاری به این مسئله ندارد و متوجه این

موضوع نمیشود .  در واقع کاری به ارتباط سوئیچ مجازی با سوئیچ فیزیکی ندارد.

  • Beacon probing

همه خصوصیات link state only  را دارم علاوع بر آن probe ایجاد میکنم به سوئیچ اگر جواب آن برگشت و گفت که

میتواند ترافیک را از خود عبور دهد آن زمان میفهمم که این سوئیچ فعال است .در واقع در این سیاست میگوید اول

نگاه کن ببین میتونی ترافیک را از سوئیچ خارج کنی یا نه بعد انتخاب کن . این ویژگی یک ویژگی خوب است که بهتر

است انتخاب کنیم . یعنی اگر uplink سوئیچ قطع باشد و پورت سوئیچ connected  باشد آنرا انتخاب نمیکند .

بنابراین این هوشمندی را به سوئیچ دهیم که اگر پورت سوئیچ فیزیکال وصل یا قطع است تصمیم نگیر بلکه ببین آیا

اصلا ترافیکی از این سوئیچ رد میشود یا خیر . بنابراین بهتر است  این mode را همیشه انتخاب کنید  .

  •  Notify Switch

میگوید یا در MODE =YES یا MODENO قرار گیرد در واقع میگوید آیا میخواهی آماری از سوئیچ بدهم یا خیر که

همیشه در mode yes قرار میدهیم و با آن کاری نداریم.

  • Fail back

    اگر کارت در وضعیت Active بود و مثلا سیاستی که انتخاب کرده اید port based IP = yes  بود ، همیشه

ترافیک از این کارت رد میشود . حالا اگر این کارت fail شد و دوباره به مدار برگشت و حالش خوب شد و connect

 شد ،  آیا سوئیچ مجاز است که از این کارت استفاده کند یا خیر ؟ اگر گزینه yes انتخاب کرده باشیم یعنی میتواند از

این کارت دوباره در نقش قبلی آن استفاده نماید  و اگر no  انتخاب کنیم یعنی نمیتواند استفاده کند .

  برای دسترسی به مفاهیم بالا در شکل های زیر سعی شده تا این مقادیر نشان داده شود لذا برای دسترسی به

مفاهیم اولیه network ابتدا روی host ی که مورد نظر است کلیک کرده و درقسمت راست گزینه  configuration را

انتخاب کرده و سپس گزینه networking را انتخاب میکنیم . صفحه ای را که بصورت پیش فرض این مقادیر را نمایش

میدهد بصورت زیر نشان داده میشود .

 

حال در قسمت  Edit setting  روی هر قسمت که برویم میتوانیم مقادیر لازم را تنظیم کنیم . منلا در قسمت NIC

Teaming میتوانیم در شکل زیر سیاست های مطرح شده در بالا را مشاهده و سیاست مورد نظر را انتخاب نماییم .

 

 

 

 

 

 

برای مطالعه در مورد سوئیچ های استاندارد و توریع پذیر به این مقاله مراجعه کنید . 

برای مطالعه در مورد نحوه کانفیگ سوئیج استاندارد به این مقاله مراجعه کنید . 

0 پاسخ

دیدگاه خود را ثبت کنید

تمایل دارید در گفتگوها شرکت کنید؟
در گفتگو ها شرکت کنید.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *