در این مقاله، تعادل بار سرور (SLB) خدمات شبکه در Alibaba Cloud را درک خواهیم کرد. خدمات Load Balancer با هر ارائه دهنده خدمات ابر عمومی در دسترس است، اما Alibaba Cloud Server Services Load Balancer ویژگی های بسیار دیگری را برای الزامات تعادل بار در سطح سازمانی شما ارائه می دهد. Server Load Balancer اساساً یک سرویس توزیع ترافیک است که ترافیک ورودی را به نمونه های ECS Alibaba Cloud شما هدایت می کند تا بار ورودی برای اینترنت و سرویس اینترانت را بر اساس IP عمومی یا IP اختصاص داده شده توسط سیستم متعادل کند. بنابراین، ما در هر دو سرویس تعادل بار با هم، اهداف اینترنت و اینترانت خصوصی را داریم.
در این، ما باید قوانین حمل و نقل متعادل کننده بار را برای توزیع ترافیک ورودی پیکربندی کنیم. Alibaba Cloud SLB دارای قابلیت های سرویس برنامه بیشتر و همچنین در دسترس بودن برنامه های پیشرفته تر است. Alibaba Cloud SLB اساساً یک مخزن پشتیبان نمونه ECS تبدیل شده، در دسترس و با استفاده از آدرس های سرویس مجازی به یک مجموعه خدمات کاربردی با کارایی بالا و بسیار در دسترس است. و درخواستهای ترافیک ورودی را به نمونههای ECS در مخزن سرور نمونه پشتیبان بر اساس قوانین حمل و نقل تنظیم شده توزیع میکند.
Alibaba Cloud SLB وضعیت Health Probe نمونههای ECS موجود را بررسی میکند و اگر آستانه ناسالمی پیدا شود، به طور خودکار آن نمونهها را برای حذف یک نقطه خرابی جدا میکند. علاوه بر آن، Alibaba Cloud SLB از سرویس مقاومت حمله DDoS 5 GBPS یکپارچه برای محافظت از خدمات برنامه شما در موارد ECS استفاده می کند.
برای استفاده از SLB، باید حداقل یک شنونده و دو نمونه ECS pool back-end ایجاد کنیم. Liner در واقع سلامت ECS را بررسی می کند و درخواست ها را به نمونه های ECS back-end ارسال می کند. ممکن است چندین شنونده نیز داشته باشیم. Alibaba Cloud SLB خدمات تعادل بار لایه - 4 لایه انتقال (پروتکل TCP و UDP) و لایه - 7 لایه کاربردی (پروتکل HTTP و HTTPS) را به کاربر ارائه می دهد. Transport Layer SLB از نرم افزار منبع باز به نام LVS (Linux Virtual Server) با Keepalived برای دریافت سرویس تعادل بار استفاده می کند. و لایه برنامه (لایه-7) SLB از Tengine (پروژه وب سرور مبتنی بر Nginx) برای دریافت سرویس تعادل بار استفاده می کند.
Alibaba Cloud SLB از ویژگی Health Check استفاده میکند که بهطور خودکار موارد غیرعادی ECS را مسدود میکند و زمانی که دوباره به حالت عادی در میآیند، آن درخواستها را بهطور خودکار هدایت میکند. در طول پیکربندی، ما باید آستانه را تنظیم کنیم تا بررسی کنیم که آیا یک نمونه ECS عادی است یا نه. بنابراین، در این مورد، باید دو آستانه - ناسالم و سالم - در Health Check of SLB تعیین کنیم. Alibaba Cloud SLB همچنین از ویژگی Session Persistence پشتیبانی میکند که در آن میتوانیم قوانین Listener را تنظیم کنیم تا همان درخواستهای مشتری را به همان ECS Instance ارسال کنند تا زمانی که چرخه عمر جلسه آن مشتری با ECS Instance به پایان برسد.
Alibaba Cloud SLB سه روش مسیریابی را برای پیکربندی توزیع بار در نمونه های ECS استخر پشتیبان ارائه می دهد.
- روش مسیریابی دور رابین
- دور رابین وزن دار
- لیست وزنی اتصالات
در Round Robin Clients، درخواستها بهطور متوالی در بین نمونههای ECS back-end pool توزیع میشوند. در روش Weighted Round Robin Routing، میتوانیم وزن هر نمونه ECS را مانند 70-30، 60-40 و غیره تنظیم کنیم تا نمونههای با وزن بالاتر درخواستهای بیشتری از کل درخواستهای دریافتی دریافت کنند. در روش سوم، Weighted List Connections Routing Method، می توانیم تعداد اتصالات را به همراه وزن ها تنظیم کنیم. بنابراین گاهی اوقات، اگر هر دو وزن یکسان در هر نقطه از زمان داشته باشند، SLB اتصالات زنده را به نمونه هایی که اتصالات کمتری دارند هدایت می کند.
یکی از تسهیلات مهم دیگری که SLB ارائه می دهد، مسیریابی مبتنی بر URL است به طوری که SLB می تواند ترافیک یا درخواست ها را به یک نمونه back-end بر اساس URL ها هدایت کند. ما میتوانیم Alibaba Cloud SLB را در مناطق مختلف منطقه نیز پیکربندی کنیم. به طوری که اگر گاهی اوقات، یک منطقه غیرعادی عمل کند، SLB به طور خودکار تمام ترافیک را از آنجا به منطقه 2 که طبیعی است هدایت می کند. به دلایل امنیتی، ما همچنین میتوانیم آدرسهای IP لیست سفید را به SLB خود اضافه کنیم تا بتوانند به تعادل بار سرور ما دسترسی داشته باشند.
در Layer 7 Application Layer Server Load Balancer، ما سرویس مدیریت گواهی متمرکز را برای شنوندگان HTTPS داریم که با استفاده از آن، نیازی به آپلود گواهیها در نمونههای ECS مخزن پشتیبان خود نداریم. بنابراین سربار CPU محاسبات رمزنگاری و رمزگشایی روی نمونه های ECS نیست. همچنین، ویژگیهای پیک پهنای باند را داریم که به وسیله آن میتوانیم حداکثر پهنای باند را برای هر شنونده بر اساس نوع سرویس برنامه ارائه شده توسط استخرهای بکاند تنظیم کنیم.
یکی دیگر از ویژگیهای اضافه شده در Alibaba Cloud Server Load Balancer، Cross Region Disaster Tolerance است که در آن میتوانیم نمونههای Server Load Balancer را در مناطق مختلف پیکربندی کنیم و میتوانیم نمونههای ECS را در مناطق مختلف مناطق به متعادلکننده بار سرور به همراه سرویس DNS اضافه کنیم. بنابراین، DNS نام دامنه را به آدرس های IP سرور بار متعادل کننده در مناطق مختلف حل می کند. بنابراین، اگر یک منطقه در دسترس نباشد، میتوانیم وضوح نام دامنه را برای منطقه غیرقابل دسترس متوقف کنیم. بنابراین، در نهایت، دسترسی کاربران ما به نمونه ها تحت تأثیر قرار نخواهد گرفت. بنابراین Alibaba Cloud Server Load Balancer یک سرویس تحمل بلایای متقابل منطقه است.
با این حال، هنگام استفاده از Alibaba Cloud Server Load Balancer باید مراقب محدودیتهای پیشفرض باشیم، مانند اینکه میتوانیم 60 نمونه (پیشفرض) داشته باشیم، اما اگر بلیطها را افزایش دهیم، تیم Alibaba Cloud ممکن است آن را برای ما افزایش دهد. محدودیت شنونده 50 است. و در یک زمان، ما می توانیم حداکثر 20 نمونه را به تعادل بار سرور خود اضافه و حذف کنیم.