ارائهدهندگان Cloud Service يا CSPها و سازمانهايی که Software Defined Networking يا SDN را در ويندوز سرور 2016 اجرا میكنند، می توانند با استفاده از Software Load Balancing يا SLB، ترافيك شبكه Tenant را بين منابع شبكه مجازی توزيع كنند. SLB در ويندوز سرور چندين سرور را قادر میسازد تا به عنوان Host يك Workload شوند و در نتيجه دسترسپذيری و مقياسپذيری بالايی فراهم میكند.
اين قابليت دارای ويژگيهای زير است:
• سرویسهای Load Balancing لایه 4 برای ترافیکهای TCU/UDP شمال به جنوب يا شرق به غرب
• Load Balancing ترافیک شبکه Public و Internal
• از آدرسهای IP پویا يا DIPها درVLAN و شبکههای مجازیای که با استفاده از Hyper-V network Virtualization ایجاد میشود، پشتیبانی میکند.
• پشتیبانی از Health probe
• آمادگی برای مقیاسCloud، از جمله قابليت Scale-out و قابليت Scale up برای Multiplexerها و Host Agentها
میتوان با استفاده از SLB در ويندوز سرور، در همان سرورهای محاسباتی Hyper-V كه برای ديگر Workloadهای ماشينهای مجازی مورد استفاده قرار میگيرد، قابليتهای تعديل بار را با استفاده از SLB VMها، Scale Out نمود. به همین دلیل، SLB از ایجاد و حذف سریع نقاط Endpointهای Load Balancing که برای عملیات CSP مورد نیاز است، پشتیبانی میکند. به علاوه، Windows Server SLB ده ها گیگابایت در هر Cluster را پشتیبانی می کند، یک مدل ساده آمادهسازی فراهم میکند و می توان به راحتی آن را Scale Out يا Scale In كرد.
بیشتر بخوانید: مقدمات پیاده سازی شبکه های مبتنی بر نرم افزار یا SDN
نحوه کار SLB
SLB با Map نمودن آدرسهای IP مجازی يا VIPها به آدرسهای IP پویا یا DIPها که بخشی از مجموعه خدمات Cloud در مرکز داده هستند، کار می کند.
VIPها آدرسهای IP منفردی هستند که دسترسی عمومی به مجموعهای از ماشینهای مجازی Load Balancing را فراهم میکنند. به عنوان مثال، VIها آدرسهایIPای هستند که در اینترنت در معرض دید قرار می گیرند تا Tenantها و كاربران آنها بتوانند به منابع Tenant در مرکز داده Cloud متصل شوند.
DIPها، آدرسهای IP برای VMهای Load Balancing Poolشده پشت VIP هستند،DIPها در زیرساختهای Cloud به منابع Tenant اختصاص داده میشوند.
VIPها در SLB Multiplexer ياMUX مستقر هستند، MUX از یک یا چند ماشین مجازی VM تشکیل شده و Network Controller برای هر MUX يك VIP فراهم کرده و هر MUX به نوبل خود از Border Gateway Protocol يا BGP استفاده میكند تا هريك از VIPها را به عنوان a/32 Route به روترهای شبكه فيزيكی معرفی نمايد. BGP اين امكان را برای شبكه فيزيكی به دلایل زیر فراهم کرده تا:
• بداند که یک VIP در هر MUX در دسترس است، حتی اگر اين MUXها در Subnetهای مختلف يك شبكه در لايه سوم باشند.
• با استفاده از مسيريابی Equal Cost Multi-path يا EMCP، بار هر VIP را در سطح تمام MUXهای در دسترس، توزيع كند.
• به طور خودکار خرابی یا حذف MUX را تشخيص دهد و ارسال ترافيك به آن MUX خراب را متوقف نماید.
• MUX خراب یا حذف شده را درMUXهای سالم پخش كند.
به هنگام ورود ترافيك عمومی از اينترنت، SLB MUX آن ترافيك را كه شامل VIP به عنوان مقصد است را بررسی و سپس Map و بازنويسی میكند تا آن ترافيك با يك DIP مستقل و انفرادی وارد شود. برای ترافیک شبکه ورودی، این تراکنش در یک فرایند دومرحلهای انجام می شود که بین ماشينهای مجازی MUX و هاست Hyper-V که محل قرارگيری DIP مقصد است، تقسيم میگردد:
• Network Adress Translation يا NAT میزبان Hyper-V کپسول سازی را از بسته حذف می کند، VIP را به DIP ترجمه می کند، پورتها را دوباره Map می کند و Packet را به DIP VM ارسال مینماید.
MUX میداند كه چطور VIPها را بهDIPهای صحيحی Map كند، چرا كه پيش از Policyهايی برای Load Balencing با استفاده از Network Controller تعريف شده است. این قوانین شامل پروتکل، پورت Front-End، پورت Back-end میباشد
هنگامی کهVMهای Tenant پاسخ میدهند و ترافیک خروجی شبکه را به اینترنت یا مکانهای Remote Tenant میفرستند، از آن جايی كه NAT توسط هاست Hyper-V انجام میشود، ترافیک MUX را دور زده و مستقیماً از هاست Hyper-V به Edge Router می رود. این فرایند دور زدن MUX، Direct Server Returen یا DSR نام میگيرد.
و پس از ایجاد جریان اولیه ترافیک شبکه، ترافیک ورودی شبکه، SLB MUX را کاملاً دور می زند.
در تصویر زیر، رايانه كاربر یک DNS Query برای آدرس IP سایت SharePoint يك شركت انجام می دهد (كه در اين مورد يك شركت فرضی به نام Contoso بررسی شده است) و روند به صورت زير رخ میدهد:
• سرور DNS VIP 107.105.47.60 را به كاربر برمی گرداند.
• كاربر درخواست HTTP را برای VIP ارسال می کند.
• شبکه فیزیکی مسیرهای مختلفی را برای دسترسی به VIP مستقر در هر MUX در دسترس میگذارد. هر روتر در طول مسیر از ECMP استفاده میكند تا بخشی ديگر از مسير طی شود و در نهايت درخواست به يك MUX برسد.
• MUX که درخواست را دریافت می کند، Policyهای تنظیم شده را بررسی میکند و می بیند که دوDIP ، 10.10.10.5 و 10.10.20.5، در یک شبکه مجازی برای رسیدگی به درخواست به VIP 107.105.47.60 وجود دارد.
• MUX DIP 10.10.10.5 را انتخاب میکند و Packetها را با استفاده از VXLAN کپسوله میکند تا بتواند با استفاده از آدرس شبکه فیزیکی Hostها، آن را به Host حاوی DIP ارسال کند.
• میزبان بسته کپسوله شده را دریافت کرده و آن را بازرسی می کند. سپس کپسول سازی را برمیدارد و Packet را دوباره می نویسد، بنابراین مقصد اکنون به جای VIP DIP 10.10.10.5 است و ترافیک را به DIP VM ارسال میکند.
• این درخواست اکنون به سایت Contoso SharePoint در Server Farm 2 رسیده است. سرور با استفاده از آدرس IP خود به عنوان منبع ، پاسخی ایجاد می کند و آن را برای كاربر ارسال می کند.
• هاست Packet خروجی را در Switch مجازی رهگیری می کند که مشخص میكند كاربر، مشتری، كه اكنون مقصد است، درخواست اصلی را به VIP فرستاده است. هاست منبع Packet را بازنویسی وتبديل به VIP میكند تا کاربر آدرس DIP را نبیند.
• سپس هاست Packet را مستقیماً به Gateway پیشفرض شبکه فیزیکی ارسال میكند. اين شبكه از جدول استاندارد مسيريابی استفاده میكند تا Packet را مستقيما به كاربر دريافتكننده پاسخ نهايی ارسال كند.