توزیع بار سرور جهانی GSLB که مخفف عبارت Global Server Load Balancing است، به شما این امکان را می دهد تا اینترنت یا ترافیک شبکه سازمانی خود را بین سرورهای گوناگون در موقعیت های مختلف توزیع کنید. اما چرا باید از چنین تکنولوژی خاصی استفاده کرد؟ ممکن است این اصطلاح برای شما جدید باشد، اما جالب است بدانید که در دهه گذشته تجارب و دانش حول سرورهای توزیع بار جهانی به شدت پیشرفت کرده اند. این تکنولوژی در چند سال گذشته هوشمندتر شده و راه اندازی و پیکربندی آن نیز آسان تر شده است.
GSLB می تواند پایداری اپلیکیشن را ارتقا بخشیده و دسترسی پذیری بالاتری را بهمراه داشته باشد؛ بعلاوه به شما کمک می کند تا کنترل بیشتری بر تجربه کاربران اپلیکیشن خود داشته باشید.
از آنجا که این مزایا برای هر کسب و کاری بسیار مهم هستند، در این مطلب به چیستی GSLB و مزایای آن خواهیم پرداخت و در نهایت نحوه پیکربندی آن را نیز شرح خواهیم داد.
GSLB چیست؟
GSLB یک مکانیزم فنی برای توزیع اینترنت و ترافیک شبکه سازمانی بین سرورهای مستقر در نقاط جغرافیایی چندگانه است. چه آنکه این سرورها در یک دیتاسنتر متعلق به سازمان واقع شده باشند و چه بر روی یک ابر خصوصی یا عمومی میزبانی شوند.
همانطور که یک Load balancer ترافیک را بین سرورهای متصل در یک دیتاسنتر واحد توزیع می کند، GSLB نیز ترافیک را بین سرورهای متصل در نقاط مختلف توزیع می کند.
اگر یک سرور، در هر موقعیتی، از کار بیافتد، یا حتی اگر کل یک دیتاسنتر از دسترس خارج شود، GSLB ترافیک را به سمت یک سرور فعال دیگر، جایی دیگر از جهان، هدایت می کند. به همین ترتیب، GSLB می تواند موقعیت کاربران را شناسایی کرده و ترافیک آنها را به طور خودکار به سمت بهترین سرور فعال در نزدیک ترین دیتاسنتر هدایت کند.
تقاضا برای GSLB به شدت رو به افزایش است، بخصوص در 3 سال گذشته! چراکه اکثر سازمان های امروزی از سیستم های سنتی به سمت ابرهای هیبریدی و محیط های میزبانی ابری مهاجرت کرده اند.
بسیاری از این سازمان ها تصمیمات استراتژیکی اتخاذ کرده تا داده های خود را بین موقعیت های مختلف تقسیم کنند تا علاوه بر کاهش هزینه ها، دوام و پایداری کسب و کار را نیز ارتقا دهند.
GSLB به سازمان ها کمک می کند تا کیفیت بالاتر و تجربه ای قابل اتکا را به کاربران خود ارائه دهند؛ بدون توجه به اینکه آنها در چه نقطه ای از جهان ساکن هستند و بدون توجه به موقعیت داده ها و اپلیکیشن ها.
بگذارید یک مثال از این تکنولوژی ارائه کنیم...
یک فروشگاهی را تصور کنید که کفش های خود را از طریق پست به مشتریان سراسر دنیا ارسال می کند. اگر این فروشگاه تنها در یک موقعیت جغرافیایی فعالیت کند، زمان بسیار زیادی برای مشتریان دور دست لازم خواهد بود تا سفارش خود را ثبت کرده و کفش های مورد نظر خود را دریافت کنند.
در زمان های پرفروش یا فصل های شلوغ این کسب و کار، ممکن است این فروشگاه با حجم سنگینی از سفارشات مواجه شده و در پاسخ و ارسال سریع سفارشات به تمام مشتریان با مشکل مواجه شود.
حال فرض کنید که همین فروشگاه در موقعیت های مختلفی در جهان شعبه های بیشتری باز کند.
این به این معناست که مشتریان می توانند از موقعیت های نزدیک تر به خود، کفش های مورد نظر را سفارش دهند. که در زمان های تحویل صرفه جویی شده و از مشکلاتی که در زمان های شلوغی پیش می آمد، جلوگیری می کند.
این دقیقا کاری است که یک GSLB برای یک سایت یا اپلیکیشن انجام می دهد؛ که آن را به یک راهکار بسیار محبوب توزیع بار بین شرکت های جهانی تبدیل کرده است.
منظور از توزیع بار یا Load balancing چیست؟
توزیع بار عمل پخش و توزیع ترافیک بین دو یا چند سرور است. برخی از تکنیک های load balancing از یک استراتژی توزیع بار به نام dumb استفاده می کنند که توزیع ترافیک را بر مبنای رندوم یا تصادفی انجام می دهد.
برای مثال، Round robin DNS که یک تکنیک توزیع بار DNS تصادفی است، هر درخواست را به سمت یک سرور متفاوت از سرور آخر ارسال می کند.
علاوه بر این تکنیک های توزیع بار هوشمند دیگری نیز وجود دارند که داده ها را برای تصمیم گیری در خصوص سرور مسئول، تحلیل می کنند.
برای مثال، مسیردهی Anycast یک سرور را بر مبنای سریعترین زمان مسافت بین کلاینت و سرور انتخاب می کند.
مزایای GSLB
حتی قبل از اشباع یک سرور اصلی و توقف پاسخ دهی به درخواست ها، ترافیک بالای ورودی به آن سرور می تواند مشکلاتی نظیر تأخیرات چشم گیر به همراه داشته باشد. یک سیستم GSLB می تواند آن ترافیک را به سمت موقعیت های مختلف هدایت کرده و از ایجاد تأخیر در شبکه جلوگیری کند.
به طور کلی می توان مزایای GSLB را به دو دسته کلی تقسیم کرد:
- افزایش پایداری و برگشت پذیری و دسترسی بالاتر
- کنترل بیشتر بر تجربه کاربری
بگذارید هر دو را بیشتر باز کنیم...
- افزایش پایداری و دسترسی پذیری بیشتر
اول از هر چیز GSLB به دسترسی پذیری بیشتر اپلیکیشن های کلیدی کمک می کند؛ این امکان با تعویض فوری ترافیک کاربران و هدایت بدون مرز به دیتاسنتری دیگر در زمان وقوع خرابی های غیر منتظره میسر می گردد.
سازمان ها می توانند از GSLB برای رصد مستمر عملکرد اپلیکیشن های خود در موقعیت های گوناگون استفاده کرده و از در دسترس بودن اپلیکیشن های خود اطمینان حاصل کنند.
زمانی که عملیات خطایابی و تعمیرات در یک سرور لازم باشد نیز، سازمان ها می توانند از GSLB برای هدایت موقت ترافیک کاربران به یک موقعیت دیگر استفاده کنند تا از Downtime های مزاحم جلوگیری کنند.
برای مثال یک تاسیسات پزشکی در اروپا از قابلیت های یک GSLB برای ارتقای دسترسی پذیری به سیستم های ذخیره سایزی داده های حساس خود بهره می برد. این سیستم ها بر روی دیتاسنترهای واقع در دو موقعیت جغرافیایی کاملا مجزا مستقر هستند. هر کدام از این دیتاسنترها دارای یک کلاستر فضای ذخیره سازی 10 گره ای هستند.
بین دو دیتاسنتر مذکور و کاربرانی که در موقعیت سومی قرار داشته باشند سرعت اتصال بالایی برقرار است.
این سازمان برای هر دیتاسنتر از Load balancer هایی برای توزیع بار محلی استفاده و قابلیت GSLB را نیز برای توزیع بار و دسترسی پذیری بالاتر بر روی هر دو موقعیت فعال می کند.
حال با وقوع هر گونه مشکل یا نیاز به تعمیرات در هر دیتاسنتر، تمام ترافیک کاربران فورا به سمت دیتاسنتر دیگر هدایت خواهد شد؛ با اینکار از دسترسی همیشگی به سیستم های ذخیره سازی اطمینان حاصل می شود.
اما در حالت عادی و بدون وجود مشکل در دیتاسنترها، ترافیک کاربران بین هر دو دیتاسنتر فعال توزیع شده و با توجه به ارزیابی هوشمندانه و در لحظه گره های میانی، بهترین عملکرد در اختیار هر کاربر قرار خواهد گرفت.
- کنترل پیشرفته بر تجربه کاربری
GSLB می تواند در کنترل اینکه کدام کاربر به سمت کدام دیتاسنتر هدایت می شود نیز کاربرد داشته باشد. این تکنولوژی یک کارکرد نقشه برداری پیچیده را ارائه می دهد که سازمان ها را قادر می سازد تا ترافیک کاربران را به نزدیک ترین دیتاسنتر هدایت کنند؛ در نتیجه مصرف پهنای باند اضافه به حداقل رسیده، مسافت پرش هایی که بسته های درخواستی کاربران می بایست طی کنند را کاهش داده و سرعت پاسخ دهی سرور ها را افزایش می دهد.
علاوه بر این، سازمان ها می توانند از GSLB برای هدایت ترافیک کاربران به سمت یک دیتاسنتر خاص استفاده کرده و با توجه به موقعیت آنها و مسائل و مقررات امنیتی بین کشوری، محتوایی شخصی سازی شده و اختصاصی را به آنها نشان دهند.
برای مثال یک شرکت تولیدی از راهکار توزیع بار برای هدایت هوشمندانه ترافیک کاربران خود بر اساس موقعیت جغرافیایی شان استفاده می کند. این شرکت دارای 3 دیتاسنتر است، یعنی یک دیتاسنتر در هر منطقه اصلی ( آمریکا، آسیا و اروپا ).
علاوه بر این، شرکت داراری دفاتر گوناگونی در سراسر مناطق مذکور بوده و خدمات اپلیکیشن خود را به طور موازی بین 3 دیتاسنتر توزیع کرده است.
این شرکت از قابلیت های GSLB و یک راهکار توپولوژی-محور برای شناسایی آدرس های IP دفاتر و کاربران استفاده کرده تا بتواند ترافیک آنها را به نزدیک ترین دیتاسنتر هدایت کند. این کار دسترسی پذیری به داده ها را بهبود بخشیده و سرعت پاسخ دهی شرکت را افزایش می دهد.
در صورت وقوع مشکل در هر کدام از این دیتاسنترها، کاربران از هر ناحیه ای می توانند به سرویس های فعال در یک دیتاسنتر دیگر متصل شده و از اپلیکیشن استفاده کنند.
GSLB چطور عمل می کند؟
راهکارهای GSLB با DNS کار خود را پیش می برند؛ زمانی که یک DNS lookup برای اپلیکیشن شما اتفاق می افتد، درخواست به یک دستگاه GSLB محول می شود. دستگاه GSLB از سلامت آزمایی برای تست در دسترس بودن سرورها در موقعیت های مختلف استفاده می کند تا بداند پس از محاسبه الگوریتم هایی نظیر Round robin با کدام موقعیت به dns client پاسخ دهد.
زمانی که درخواست DNS ابری به پایان می رسد، دستگاه های کاربران نهایی به موقعیتی که دریافت کرده اند، متصل می شوند.
مهم این است که بدانید در اغلب اوقات درخواست دهنده DNS یک سرور DNS است که در عمل به عنوان نماینده کاربر نهایی با دستگاه GSLB تعامل برقرار می کند. این رویکرد برای مواردی که کاربران از سرویس های DNS مختلفی در نواحی خود استفاده می کنند، بهترین نتیجه را خواهد داد.
GSLB در مقابل DNS load balancing
DNS به شما این اجازه را می دهد تا آدرس های IP چندگانه ای را برای یک اپلیکیشن تعریف کنید. این کار DNS load balancing نام دارد. مشکل این است که شما نمی تواند کنترل کنید که دستگاه کاربر چطور از این اطلاعات استفاده خواهد کرد.
بعضی از کلاینت ها همیشه از اولین رکورد استفاده می کنند، که اتصالات را نا متوازن می کند. علاوه بر این ممکن است دستگاه کاربر نهایی موقعیتی را انتخاب کند که از آنها بسیار دور باشد، که در نهایت تأخیر را افزایش داده و شاید موقعیتی را انتخاب کند که سرور در آنجا فعال نباشد.
تمام این محدودیت ها مشکلات دسترسی پذیری و عملکردی را بهمراه خواهند داشت.
GSLB درون خود الگوریتم های سلامت سنجی دارد تا از این مهم اطمینان حاصل کند که تنها موقعیت هایی مورد استفاده قرار می گیرند که نسخه های فعالی از اپلیکیشن را در اختیار داشته باشند. علاوه بر این از الگوریتم های پیشرفته ای برای ارسال بهترین پاسخ به DNS Lookup کاربر نهایی استفاده می کند.
این رویکرد به شما کنترل کاملی بر موقعیت های سرورهایتان داده و بر پاسخ ها را بر مبنای داده های GEOIP به کاربران ارسال می کند تا نزدیک ترین موقعیت انتخاب شده و از سناریوهای فعال نبودن یک سرور جلوگیری کند.
راهکار میزبان کلود
یکی از اصلی ترین و موثر ترین راه های پیاده سازی GSLB استفاده از شبکه توزیع محتواست. سرویس CDN میزبان کلود یک راهکار هوشمندانه و پیشرفته است که به تکنولوژی های Anycast و توزیع بار مجهز بوده و به شما کمک می کند تا پس از ایجاد کلاسترهایی از سرورها در دیتاسنترهای مختلف، بتوانید با توجه به موقعیت جغرافیایی کاربر ترافیک اپلیکیشن یا سایت های خود را به نزدیک ترین سرور CDN هدایت کرده و نسخه های کپی خود را با کمترین میزبان تأخیر به دست کاربر نهایی برسانید.
پیشنهاد می کنیم برای آشنایی با قابلیت ها و ویژگی های منحصر به فرد سرویس های ابری میزبان کلود بخصوص CDN ابری، به صفحات ما مراجعه کرده و در صورت داشتن هر گونه سوال با کارشناسان ما در تماس باشید.
جمع بندی
GSLB یک ابزار حیاتی برای هر تیم توسعه دهنده یا سازمان مدرن است. چه اینکه شما چندین سرور در موقعیت های جغرافیایی مختلف داشته باشید، یا در محیط خود از دو دیتاسنتر فعال به طور همزمان استفاده کنید، GSLB در کنار توزیع بار سرورها برای دستیابی به بهترین تجربه اپلیکیشن و رسیدن به بالاترین سطح دسترسی پذیری و عملکرد، بهترین راهکار است. این ابزار می تواند جایگزینی برای راهکارهای گران قیمتی مثل dns load balancing باشد. در این مطلب در خصوص چیستی و مزایای GSLB و نحوه عملکرد آن مطالب مفیدی ارائه شد؛ امیدواریم این مطالب برای شما مفید واقع شده باشد.
ارائه دهنده خدمات زیرساخت یکپارچه ابری