Перейти к основному содержимому
Подключить балансировщик
Последнее изменение:

Подключить балансировщик

  1. Создайте глобальный роутер.

  2. Подключите к глобальному роутеру сети и подсети до каждого VLAN и проекта облачной платформы, где находятся серверы для балансировки.

    Для Облака на базе VMware добавить сети и подсети можно только через техническую поддержку.

  3. Назначьте IP-адреса из подсетей на серверы.

  4. Настройте маршрутизацию до подсети балансировщика.

  5. Закажите балансировщик.

  6. Проверьте работу балансировщика.

1. Создать глобальный роутер

  1. В панели управления перейдите в раздел Сетевые сервисыГлобальный роутер Selectel.
  2. Нажмите Создать роутер. Для каждого аккаунта установлен лимит в пять глобальных роутеров.
  3. Введите имя роутера.
  4. Нажмите Создать.
  5. Если роутер создался со статусом ERROR или завис в одном из статусов, создайте тикет.

2. Подключить сети и подсети к глобальному роутеру⁠

осторожно

При создании сети не используйте на серверах адреса из подсети 10.128.0.0/16. В этой подсети размещаются балансировщики нагрузки, ее использование может вызвать сбои в работе балансировщиков.

Используйте для выделенного или размещенного сервера.

Вы можете подключить к роутеру новую сеть или существующую сеть, если она еще не подключена к любому из глобальных роутеров аккаунта.

  1. В панели управления перейдите в раздел Сетевые сервисыГлобальный роутер Selectel.

  2. Откройте страницу роутера → вкладка Сети.

  3. Нажмите Создать сеть.

  4. Введите имя сети, оно будет использоваться только в панели управления.

  5. Выберите услугу Выделенные серверы.

  6. Выберите пул.

  7. Выберите VLAN. Если вы хотите создать сеть до внутреннего сегмента (Q-in-Q), укажите его тег — число от 2 до 4094. Если до VLAN уже есть сеть, обязательно укажите Q-in-Q-сегмент этого VLAN.

  8. Введите имя подсети — оно будет использоваться только в панели управления.

  9. Введите CIDR — IP-адрес и маску приватной подсети. Можно ввести новую подсеть либо существующую приватную подсеть сервера, если она еще не добавлена на любой из глобальных роутеров в аккаунте. Подсеть должна соответствовать условиям:

    • принадлежать диапазону приватных адресов по RFC 1918: 10.0.0.0/8, 172.16.0.0/12 или 192.168.0.0/16;
    • иметь размер не меньше /29, так как три адреса будут заняты сетевым оборудованием Selectel;
    • не пересекаться с другими подсетями, добавленными на этот роутер: IP-адреса каждой подсети на роутере не должны совпадать с IP-адресами других подсетей на нем;
    • если в сеть глобального роутера будут включены ноды Managed Kubernetes, подсеть не должна пересекаться с диапазонами 10.250.0.0/16, 10.10.0.0/16 и 10.96.0.0/12. Эти подсети участвуют во внутренней адресации Managed Kubernetes, их использование может привести к конфликтам в сети глобального роутера.
  10. Если вы указали тег Q-in-Q, убедитесь, что настроили Q-in-Q. При настройке используйте подсеть, которую указали на шаге 9.

  11. Введите IP шлюза или оставьте первый адрес из подсети, который назначается по умолчанию. Не назначайте этот адрес на свои устройства, чтобы не нарушить работу сети.

  12. Введите служебные IP или оставьте последние адреса из подсети, которые назначаются по умолчанию. Не назначайте эти адреса на свои устройства, чтобы не нарушить работу сети.

  13. Нажмите Создать сеть.

  14. Опционально: проверьте топологию сети на глобальном роутере. В панели управления перейдите в раздел Сетевые сервисыГлобальный роутер Selectel. Откройте страницу нужного роутера и нажмите Карта сети.

3. Назначить IP-адреса на серверы

На каждом сервере, который включается в сеть глобального роутера, настройте локальный порт для работы с созданной на роутере подсетью. На порт назначьте IP-адрес из приватной подсети, которую вы подключили к глобальному роутеру для соответствующего VLAN или проекта.

  1. Подключитесь к серверу по SSH или через KVM-консоль.

  2. Откройте конфигурационный файл утилиты netplan текстовым редактором vi:

    vi /etc/netplan/01-netcfg.yaml
  3. Добавьте или измените значения параметров сетевого интерфейса приватной сети:

        <eth_name>:
    addresses: [<ip_address>/<mask>]

    Укажите:

    • <eth_name> — имя сетевого интерфейса приватной сети;
    • <ip_address>/<mask> — приватный IP-адрес сервера с указанием маски подсети, например, 192.168.0.2/29.
  4. Нажмите клавишу ESC.

  5. Выйдите из текстового редактора vi с сохранением изменений:

    :wq
  6. Примените конфигурацию:

    netplan apply
  7. Опционально: перезагрузите сервер.

4. Настроить маршрутизацию до подсети балансировщика

На каждом из серверов нужно заранее настроить маршрутизацию до подсети, в которой мы разместим балансировщик при подключении услуги. По умолчанию мы размещаем балансировщики в подсети 10.128.0.0/16, но вы можете выбрать любую подходящую подсеть размерности /16.

  1. Подключитесь к серверу.

  2. Откройте файл конфигурации сети:

    vi /etc/netplan/01-netcfg.yaml
  3. В конце блока с данными нужного сетевого интерфейса добавьте маршрут:

    routes:
    - to: <ip_address>/<mask>
    via: <gateway>

    Укажите:

    • <ip_address>/<mask> — подсеть балансировщика. Вы можете указать подсеть 10.128.0.0/16, в которой мы по умолчанию размещаем балансировщики, или любую подходящую подсеть размерности /16;
    • <gateway> — IP-адрес из подсети сервера, который вы назначили в качестве шлюза на глобальный роутер при подключении сетей и подсетей.
  4. Сохраните файл.

  5. Проверьте настройки:

    sudo netplan try
  6. Примените изменения:

    netplan apply

5. Заказать балансировщик

  1. Если на ваших серверах используется протокол HTTPS, добавьте свой TLS(SSL)-сертификат в менеджер секретов. Вы также можете выпустить сертификат Let's Encrypt®.

  2. В панели управления перейдите в раздел Сетевые сервисыОтказоустойчивый балансировщик нагрузки.

  3. Нажмите Подключить балансировщик.

  4. Выберите тариф согласно нужной ширине канала — 20, 50, 100 или 1 000 Мбит/с. Если вам нужна другая ширина канала, выберите пункт Другой и укажите необходимое значение в Мбит/с.

  5. Укажите глобальный роутер, к которому вы подключили сети и подсети⁠ — его имя, идентификатор или список добавленных на роутер подсетей. Данные роутера можно посмотреть в панели управления в разделе Сетевые сервисыГлобальный роутер → страница роутера.

  6. Укажите подсеть балансировщика, которую вы указали при настройке маршрутизации⁠ на серверах.

  7. Выберите алгоритм балансировки:

    • Round Robin — алгоритм кругового обслуживания, при котором запросы передаются каждому серверу по очереди;
    • Weighted Round Robin — взвешенный алгоритм кругового обслуживания, при котором каждому серверу присваивается весовой коэффициент, соответствующий его производительности и мощности. На серверы с большим коэффициентом передается больше запросов;
    • Source IP hash — алгоритм, при котором в зависимости от HTTP-заголовка или IP-адреса выбирается предпочтительный сервер для получения запроса;
    • Least Connections — алгоритм, при котором запрос отправляется на наименее загруженный сервер.
  8. Если необходимо использовать Sticky Sessions, отметьте чекбокс Sticky Sessions.

  9. Выберите протокол целевых серверов: TCP, HTTP, HTTPS.

  10. Если вы выбрали протокол TCP, укажите параметры для использования протокола — все приватные IP-адреса, назначенные в рамках сетей глобального роутера, с указанием портов.

  11. Если вы выбрали протокол HTTP, укажите все сочетания URL, принимаемых из интернета, и IP-адресов, куда они должны перенаправляться, с указанием порта. Например, http://domain.com/page — http://X.X.X.X:X.

  12. Если вы выбрали протокол HTTPS, укажите:

    • все сочетания URL, принимаемых из интернета, и IP-адресов, куда они должны перенаправляться, с указанием порта. Например, https://domain.com/page — http://X.X.X.X:X;
    • ID сертификата, который добавили на шаге 1. ID можно посмотреть в панели управления: раздел Облачная платформаМенеджер секретов → вкладка Сертификаты → в меню сертификата выберите Скопировать UUID;
    • ID проекта, в котором находится сертификат.
  13. Опционально: если нужно указать любые дополнительные данные, введите их в поле Дополнительный комментарий. Например, подробнее опишите сценарий использования, укажите, в каких пулах размещена инфраструктура, оставьте контакт администратора для связи и уточнения деталей.

  14. Нажмите Подключить балансировщик.

  15. Мы создадим и отправим тикет на подключение услуги. Подключение занимает до семи рабочих дней. Когда балансировщик будет готов, в тикете передадим вам защищенный публичный IP-адрес, на который нужно направлять входящий трафик для балансировки.

6. Проверить работу балансировщика

Чтобы проверить работу балансировщика, отправьте тестовые запросы на IP-адрес, который вы получили при заказе балансировщика.