Глобальная балансировка с учетом мониторов доступности#

Рассмотрим схему, где:

  • Для домена www.example.com используется два дата-центра, ЦОД-1 и ЦОД-2.

  • В дата-центре ЦОД-1 есть два бэкенда (приложения), app1 и app2, и база данных db1.

  • В дата-центре ЦОД-2 есть два бэкенда (приложения), app3 и app4, и две базы данных, db2 и db3.

  • В каждом дата-центре установлен Angie ADC, dc1 и dc2, соответственно.

  • Трафик распределяется между дата-центрами по методу балансировки round-robin. При этом учитывается доступность дата-центров. Дата-центр считается доступным, если одновременно доступны хотя бы один бэкенд (приложение) и все имеющиеся базы данных этого дата-центра.

Дата-центр

Бэкенд

База данных

Узел Angie ADC

ЦОД-1

app1, app2

db1

dc1

ЦОД-2

app3, app4

db2, db3

dc2

Настройка#

  1. На любом узле кластера Angie ADC перейдите в раздел Система → Доступность → вкладка Датчики и создайте семь датчиков (см. Настройка датчиков и мониторов).

    Датчик (имя датчика автоматически формируется из имени проверяемого ресурса и имени узла)

    Узел кластера

    Проверка

    Ресурс

    dc1-app1

    dc1

    HTTP

    app1

    dc1-app2

    dc1

    HTTP

    app2

    dc1-db1

    dc1

    TCP

    db1

    dc2-app3

    dc1

    HTTP

    app3

    dc2-app4

    dc2

    HTTP

    app4

    dc2-db2

    dc2

    TCP

    db2

    dc2-db3

    dc2

    TCP

    db3

  2. Перейдите на вкладку Мониторы и создайте четыре монитора.

    Монитор

    Датчики

    Правило

    mon-dc1-app

    dc1-app1, dc1-app2

    Любой датчик

    mon-dc1-db

    dc1-db1

    Любой датчик

    mon-dc2-app

    dc2-app3, dc2-app4

    Любой датчик

    mon-dc2-db

    dc2-db2, dc2-db3

    Все датчики

    Здесь:

    • Мониторы приложения используют правило Любой датчик, т.е. дата-центр продолжает обслуживать трафик, пока отвечает хотя бы один бэкенд.

    • Мониторы БД используют правило Все датчики, т.е. дата-центр продолжает обслуживать трафик, если отвечают все его БД.

  3. Перейдите в раздел Управление трафиком → Глобальная балансировка и настройте конфигурацию GSLB. Для домена example.com добавьте динамическую запись типа A с именем www, балансировкой round_robin и двумя бэкендами — по одному на дата-центр (см. Настройка конфигурации).

    Дата-центр

    Бэкенд (IP-адрес узла кластера Angie ADC)

    Мониторы

    ЦОД-1

    VIP dc1

    mon-dc1-app, mon-dc1-db

    ЦОД-2

    VIP dc2

    mon-dc2-app, mon-dc2-db

    Оба монитора на бэкенде объединяются по логике И: дата-центр доступен, только когда исправны и монитор приложения, и монитор БД. Запросы по методу round-robin распределяются по дата-центрам последовательно с учетом их доступности.

  4. Настройте делегирование зоны example.com на GSLB-узлы Angie ADC в родительской зоне com:

    example.com.      IN NS dc1.example.com.
    example.com.      IN NS dc2.example.com.
    
    ; Glue-записи — IP-адреса GSLB-узлов Angie ADC
    dc1.example.com.  IN A  <IP-адрес dc1>
    dc2.example.com.  IN A  <IP-адрес dc2>