در قسمت اول در مورد ارائه دهندگان Cloud Service یا CSPها و سازمان هایی که Software Defined Networking یا SDN را در ویندوز سرور 2016 اجرا می کنند و همچنین نحوه کار Software Load Balancing یا SLB صحبت شد. در این قسمت به ادامه بحث در مورد کاربرد SLB و زیر ساخت آن صحبت خواهیم نمود.
وقتی Hyper-V Virtual Switch که VMها به آن متصل میباشند، ترافیک شبکهی داخلی برای دیتاسنتر، مثلاً بین منابع Tenant که روی سرورهای متفاوتی اجرا میشوند و عضو شبکهی مجازی یکسانی هستند را تعدیل بار میکند، NAT را اجرا مینماید.
در Load Balancing ترافیک داخلی، اولین درخواست به MUX ارسال شده و توسط آن پردازش میشود، همان MUX که DIP مناسب را انتخاب کرده و ترافیک را به آن DIP هدایت مینماید. از آن جا به بعد، جریان ترافیک ایجاد شده از MUX عبور میکند و مستقیماً از یک VM به VM دیگر میرود.
Software Load Balancing شامل Health Probeهای میباشد تا سلامت زیرساخت شبکه که شامل موارد زیر میباشد تایید شود.
- TCP Probe به پورت
- HTTP Probe به پورت و URL
برخلاف یک تجهیز تعدیلکنندهی بار قدیمی که Probe از تجهیز شروع شده و در سیم به سوی DIP حرکت میکند، Probe در SLB روی Host شروع میشود که DIP روی آن قرار دارد و مستقیماً از SLB Host Agent به DIP میرود و کار را بین Hostها توزیع مینماید.
زیرساخت Software Load Balancing یا SLB
برای پیادهسازی در ویندوز سرور SLB، اول باید Network Controller در ویندوز سرور 2016 و یک یا چند SLB MUX VM پیادهسازی شود. بهعلاوه، باید Hostهای Hyper-V با Hyper-V Virtual Switch دارای SDN فعال تنظیم گردد و اطمینان حاصل شود که SLB Host Agent در حال اجرا است. روترهایی که در خدمت Hostها هستند باید از Equal Cost Multipath Routing یا ECMP Routing و Border Gateway Protocol یا BGP پشتیبانی کنند و باید طوری تنظیم شوند که درخواستهای BGP Peering را از SLB MUXها بپذیرند.
با System Center 2016 میتوان Network Controller را روی ویندوز سرور 2016 شامل SLB Manager و Health Monitor تنظیم کرد. همچنین میتوان برای پیادهسازی SLB MUXها و نصب SLB Host Agentها روی رایانههایی که ویندوز سرور 2016 و Hyper-V را اجرا میکنند، از System Center استفاده کرد.
بیشتر بخوانید: بررسی ویژگیهای جدید SDN در ویندوز سرور 2019 – قسمت اول
Network Controller برای SLB Manager نقش Host را بازی میکند و کارهای زیر را برای SLB انجام میدهد.
- پردازش دستورات SLB که از طریق Northbound API از System Center ،Windows PowerShell یا برنامه کاربردی دیگری برای مدیریت شبکه وارد میشود.
- محاسبهی Policy برای توزیع به Hostهای Hyper-V و SLB MUXها.
- فراهم کردن وضعیت سلامتِ زیرساخت SLB.
SLB MUX ترافیک ورودی شبکه را پردازش کرده و VIPها را به DIPها Map میکند، سپس ترافیک را به DIP درست Forward مینماید، هر MUX همچنین از BGP استفاده میکند تا مسیرهای VIP را برای روترهای Edge منتشر کند. وقتی یک MUX دچار خرابی شود، BGP Keep Alive به MUXها اطلاع میدهد و این امر موجب میشود که درصورت خرابی MUX، دیگر MUXهای فعال بار را توزیع مجدد کنند و درواقع تعدیل بار برای تعدیلکنندگان بار فراهم میشود.
برای Hostهایی که Hyper-V را اجرا میکنند، میتوان از SLB با رایانههایی استفاده کرد که ویندوز سرور 2016 و Hyper-V را اجرا میکنند. VMهای روی Hyper-V Host میتوانند هر سیستم عاملی که تحت پشتیبانی Hyper-V است را اجرا کنند.
وقتی SLB پیادهسازی میشود، باید از System Center ،Windows PowerShell یا برنامه کاربردی مدیریتی دیگری استفاده شود تا SLB Host Agent روی هر رایانهی Hyper-V Host پیادهسازی گردد. میتوان SLB Host Agent را روی تمام نسخههای ویندوز 2016 که پشتیبانی از Hyper-V را فراهم میکنند، از جمله Nano Server نصب نمود.
SLB Host Agent در انتظار بروزرسانیهای Policy برای SLB از Network Controller است. بهعلاوه Host Agent قواعدی را در Hyper-V Virtual Switch دارای SDN فعال برای SLB برنامهریزی میکند که روی رایانهی Local تنظیم میشوند.
Hyper-V Virtual Switch دارای SDN فعال
برای اینکه یک سوئیچ مجازی با SLB تطبیقپذیر باشد، باید برای ایجاد سوئیچ از دستورات Hyper-V Virtual Switch Manager یا Windows PowerShell استفاده کرد و سپس باید Virtual Filtering Platform یا VFP را برای سوئیچ مجازی فعال نمود.
Hyper-V Virtual Switch دارای SDN فعال کارهای زیر را برای SLB انجام میدهد.
- پردازش مسیر داده برای SLB.
- دریافت ترافیک ورودی از MUX.
- Bypass کردن MUX برای ترافیک خروجی شبکه و ارسال آن به روتر با استفاده از DSR.
- اجرا شدن روی Instanceهای Nano Server از Hyper-V.
روتر دارای BGP فعال
روتر BGP کارهای زیر را برای SLB انجام میدهد.
- با استفاده از ECMP، ترافیک ورودی را به MUX هدایت میکند.
- برای ترافیک خروجی شبکه از مسیری که Host فراهم کرده است استفاده میکند.
- منتظر بروزرسانیهای مسیر برای VIPها از سوی SLB MUX است.
- درصورت که Keep Active دچار خرابی شود، SLB MUXها را از SLB Rotation حذف میکند.
ویژگیهای SLB
در ادامه برخی از ویژگیها و قابلیتهای SLB مطرح میگردد.
- SLB خدمات Load Balancing لایه 4 را برای ترافیک North-South و East-West از نوع TCP/UDP فراهم مینماید.
- میتوان از SLB روی یک شبکهی مبتنی بر مجازیسازی شبکهی Hyper-V استفاده نمود.
- میتوان از SLB با یک شبکهی VLAN برای VMهای DIP که به یک Hyper-V Virtual Switch دارای SDN فعال متصل هستند استفاده کرد.
- یک Instance از SLB میتواند به چندین Tenant رسیدگی کند.
- SLB و DIP از مقیاسپذیری و مسیر بازگشت با میزان تأخیر پایین پشتیبانی میکند که توسط Direct Server Return یا DSR به کار گرفته میشود.
- SLB وقتی عمل میکند که از Switch Embedded Teaming یا SET یا Single Root Input/Output Virtualization یا SR-IOV هم استفاده شود.
- SLB شامل پشتیبانی از Internet Protocol Version 4 یا IPv4 میباشد.
- برای سناریوهای Gateway سایت به سایت، SLB قابلیت NAT را فراهم میکند تا به تمام اتصالات سایت به سایت توانایی استفاده از یک IP عمومی واحد را بدهد.
- میتوان SLB را نصب کرد که شامل Host Agent وMUX، روی ویندوز سرور 2016، Full، Core و Nano Install است.
مقیاس و عملکرد
- آمادهی مقیاس Cloud شامل قابلیت Scale-Out و Scale Up برای MUXها و Host Agentها است.
- یک ماژول SLB Manager Network Controller میتواند از هشت MUX Instance پشتیبانی کند.
دسترسپذیری بالا
- در یک تنظیم Active/Active، میتوان SLB را به بیش از دو Node پیادهسازی کرد.
- MUXها را میتوان به MUX Pool اضافه یا از آن حذف کرد بدون اینکه تأثیری روی سرویس SLB گذاشته شود، این امر هنگامی که MUXها Patch میشوند، دسترسپذیری SLB را حفظ میکند.
- Instanceهای مجزا از MUX دارای Uptime نودونه درصدی هستند.
- دادههای مانیتورینگ سلامت برای تمام نهادهای مدیریتی قابلدسترسی است.
همراستایی
- میتوان SLB را با SCVMM پیادهسازی و تنظیم کرد.
- SLB از طریق یکپارچهسازی با تجهیزهای مایکروسافت مثلRAS Multitenant Gateway ، Datacenter Firewall و Route Reflector، یک Edge یکپارچه و Multitenant را فراهم میکند.