GSLB: как обеспечить доступность сервисов между несколькими ЦОДами
Пресс-служба 5А
GSLB: как обеспечить доступность сервисов между несколькими ЦОДами
Современные информационные системы редко ограничиваются одним центром обработки данных. Крупные компании разворачивают приложения сразу на нескольких площадках — в разных городах, регионах или даже странах. Такой подход позволяет повысить отказоустойчивость, приблизить сервисы к пользователям и распределить нагрузку.
Но возникает вопрос: как направить пользователя именно на ту площадку, которая сейчас доступна и готова обслужить запрос?
Для решения этой задачи используется GSLB (Global Server Load Balancing) — механизм глобальной балансировки нагрузки между несколькими географически распределенными площадками.
Что такое GSLB
Если обычный балансировщик нагрузки распределяет запросы между серверами внутри одного ЦОДа или кластера, то GSLB работает уровнем выше — он выбирает уже не отдельный сервер, а целый дата-центр, на который будет распределен запрос пользователя.
Фактически GSLB становится интеллектуальным слоем маршрутизации между несколькими дата-центрами.
При этом решение принимается автоматически на основе заранее заданных правил и текущего состояния каждой площадки.
Как работает GSLB
В большинстве случаев GSLB работает через DNS.
Когда пользователь обращается к доменному имени, запрос сначала попадает на DNS-сервис GSLB.
Перед тем как вернуть IP-адрес, система анализирует несколько факторов:
-
доступность площадки;
-
результаты Health Checks;
-
текущую загрузку;
-
приоритеты площадок;
-
географическое расположение клиента;
-
время отклика;
-
пользовательские политики маршрутизации.
После анализа GSLB возвращает IP-адрес наиболее подходящего балансировщика, который уже распределяет запрос между серверами внутри своего ЦОДа.
Получается двухуровневая схема:
Клиент
│
▼
DNS
│
▼
GSLB
│
├────────► ЦОД №1
│ │
│ ▼
│ Балансировщик L4-L7
│ │
│ ▼
│ Backend-серверы
│
└────────► ЦОД №2
│
▼
Балансировщик L4-L7
│
▼
Backend-серверы
Таким образом, GSLB отвечает за выбор площадки, а локальный балансировщик — за распределение нагрузки между серверами внутри этой площадки.
Сценарий: два удаленных ЦОДа
Рассмотрим распространенный пример.
Компания имеет два центра обработки данных:
-
Москва;
-
Екатеринбург.
Оба содержат одинаковые сервисы и способны работать независимо друг от друга.
В штатном режиме:
-
пользователи европейской части России обслуживаются московской площадкой;
-
пользователи Урала и Сибири — екатеринбургской.
Каждый ЦОД принимает "свой" трафик.
Если же московская площадка становится недоступной (например, из-за аварии или плановых работ), GSLB автоматически обнаруживает это по результатам проверок доступности и начинает возвращать клиентам IP-адрес екатеринбургской площадки.
В результате весь пользовательский трафик автоматически переключается на второй ЦОД.
После восстановления работы Москвы GSLB может вернуть распределение в исходное состояние либо продолжить балансировку между двумя площадками — в зависимости от выбранной политики.
Для пользователей такое переключение обычно происходит незаметно.
Какие проверки выполняет GSLB
Одним из ключевых компонентов GSLB являются механизмы контроля состояния площадок.
Недостаточно просто проверить, отвечает ли сервер на ICMP.
Как правило, используются более сложные проверки:
-
доступность балансировщика;
-
доступность отдельных приложений;
-
HTTP/HTTPS Health Checks;
-
проверка конкретного URL;
-
проверка ответа приложения;
-
TCP-проверки;
-
пользовательские сценарии проверки.
Если сервис перестает отвечать корректно, площадка автоматически исключается из распределения трафика.
По каким правилам может работать GSLB
Современные решения поддерживают различные алгоритмы выбора площадки.
Например:
-
По приоритету: основная площадка используется всегда, резервная — только при отказе первой.
-
По геолокации: пользователь направляется в ближайший регион.
-
По загрузке: запросы распределяются между площадками пропорционально текущей нагрузке.
-
По времени отклика: GSLB выбирает площадку с минимальной задержкой.
-
По весовым коэффициентам: например, Москва — 70%, Новосибирск — 30%
Преимущества GSLB
Использование глобальной балансировки позволяет решить сразу несколько задач.
-
Повышение отказоустойчивости: при отказе одной площадки пользователи автоматически переключаются на другую.
-
Плановые работы без простоя: можно вывести ЦОД из эксплуатации, не прекращая обслуживание пользователей.
-
Снижение задержек: пользователь обслуживается ближайшим дата-центром.
-
Горизонтальное масштабирование: нагрузка распределяется между несколькими площадками.
-
Катастрофоустойчивость: даже полная потеря одного ЦОДа не приводит к недоступности сервиса.
Где GSLB особенно полезен
-
Федеральные компании
Филиалы расположены в разных регионах России.
Каждый регион обслуживается локальным ЦОДом, но при необходимости соседние площадки могут принимать дополнительную нагрузку.
-
Интернет-порталы
Во время рекламных кампаний или сезонных пиков трафик может распределяться между несколькими дата-центрами.
-
Банки
Основной и резервный ЦОД работают одновременно. При возникновении аварии обслуживание клиентов продолжается автоматически.
-
Государственные информационные системы
Размещение сервисов сразу на нескольких площадках позволяет обеспечить непрерывность оказания государственных услуг даже при отказе одного из центров обработки данных.
-
Облачные платформы
GSLB используется для распределения нагрузки между несколькими облачными регионами и построения отказоустойчивой мультиоблачной инфраструктуры.
GSLB в Балансировщике 5А
В Балансировщике 5А модуль GSLB является собственной разработкой команды и входит в состав продуктовой платформы.
Он позволяет организовать глобальную балансировку между несколькими площадками, автоматически контролировать их состояние и переключать клиентский трафик в случае отказов или изменения условий маршрутизации.
Модуль поставляется совместно с продуктом, однако его использование не является обязательным. Если в текущей инфраструктуре глобальная балансировка не требуется, модуль можно не активировать.
При необходимости GSLB включается одной командой, без переустановки системы и без изменения существующей архитектуры. Это позволяет постепенно расширять функциональность Балансировщика 5А по мере роста инфраструктуры или появления новых площадок.
Такой подход особенно удобен для организаций, которые начинают с одного ЦОДа, а затем переходят к построению геораспределенной отказоустойчивой инфраструктуры.
GSLB уже давно перестал быть технологией исключительно для крупных международных компаний. Сегодня он становится важным элементом архитектуры для организаций, которым необходимо обеспечить высокую доступность цифровых сервисов, устойчивость к авариям и возможность масштабирования между несколькими площадками.
В сочетании с локальной балансировкой L4-L7 GSLB позволяет построить единую систему доставки приложений, в которой пользователи автоматически получают доступ к наиболее подходящему и доступному центру обработки данных, а отказ одной площадки не приводит к остановке бизнес-сервисов. Для компаний, развивающих распределенную инфраструктуру, это один из ключевых инструментов обеспечения непрерывности бизнеса и качества обслуживания пользователей.