Инструкция по настройке TCP-балансировки
Аннотация
В инструкции приведена последовательность действий по настройке TCP-балансировки Termidesk Connect. Рассмотрена топология: запросы от пользователя распределяются на три сервера через Termidesk Connect. Серверы используются для визуализации алгоритма балансировки. Также рассмотрен Сценарий перенаправления запросов на резервный сервер.
В качестве примера будут выполняться следующие шаги:
-
шаг 1. Добавление Проверки;
-
шаг 2. Добавление Группы Реальных Серверов;
-
шаг 3. Добавление Сервера Балансировки;
-
шаг 4. Добавление Виртуального Сервера;
-
шаг 5. Просмотр TCP-балансировки;
-
шаг 6. Проверка недоступности Реального Сервера;
-
шаг 7. Проверка недоступности Реального Сервера с изменением настроек Сервера Балансировки;
-
шаг 8. Добавление резервного Сервера Балансировки;
-
шаг 9. Просмотр Active/Standby TCP-балансировки.
Шаг 1. Добавление Проверки
Для входа в Termidesk Connect ввести учетные данные администратора, для этого заполнить поля «Username» и «Password», далее нажать кнопку [Login] (см. Авторизация Termidesk Connect).
Откроется веб-интерфейс Termidesk Connect, в левой части веб-интерфейса перейти в раздел «Настройки – Управление трафиком – Проверки». Далее для добавления Проверки нажать кнопку [Добавить] (см. Добавление Проверки).
| Данная Проверка будет использоваться для проверки доступности балансируемых (Реальных) Серверов. |
В открывшемся окне «Добавление Проверки» указать значения в полях «Имя», «Интервал, с», «Время ожидания ответа, с». В раскрывающемся списке «Тип» выбрать тип «HTTP», далее в раскрывающемся списке «Метод» выбрать метод «GET». Остальные настройки используются по умолчанию, нажать кнопку [Применить] (см. Создание Проверки).
| В данной инструкции используются HTTP-серверы, поэтому выбран тип Проверки HTTP. |
В правой части веб-интерфейса появится строка с добавленной Проверкой в списке (см. Список Проверок).
Шаг 2. Добавление Группы Реальных Серверов
В левой части веб-интерфейса перейти в раздел «Настройки – Управление трафиком – Группы Реальных Серверов». Далее для добавления Группы Реальных Серверов нажать кнопку [Добавить] (см. Добавление Группы Реальных Серверов).
| Данная Группа Реальных Серверов будет использоваться для добавления балансируемых (Реальных) Серверов. |
В открывшемся окне «Добавление Группы Серверов» указать название в поле «Имя». Далее в области «Список Реальных Серверов» нажать кнопку [Добавить], в раскрывающемся списке выбрать «IP» (см. Добавление Группы Серверов).
|
Добавление Реального Сервера осуществляется по:
В данном шаге рассмотрен первый способ. |
В открывшемся окне «Добавление Реального Сервера» указать значения в полях «IP» и «Порт». Далее нажать кнопку [Применить] (см. Добавление Реального Сервера).
Для добавления остальных Реальных Серверов, представленных на рисунке (см. Список Реальных Серверов), повторить предыдущее действие. Далее в раскрывающемся списке «Используемая Проверка» выбрать ранее созданную Проверку «hc01» и нажать кнопку [Применить].
В правой части веб-интерфейса появится строка с добавленной Группой Реальных Серверов в списке, которая находится в статусе «В работе» (см. Список Групп Реальных Серверов).
Для просмотра статуса настроенных Реальных Серверов в интерфейсе командной строки Termidesk Connect выполнить команду:
show status rs
============================================================
(1) ГРС: RSP01 проверка: hc01
----------------------------------------------
FQDN: -------
IP-адрес: 10.101.251.201
Порт: 801
IP-адрес источника запроса: 0.0.0.0
Состояние: ONLINE
----------------------------------------------
FQDN: -------
IP-адрес: 10.101.251.201
Порт: 802
IP-адрес источника запроса: 0.0.0.0
Состояние: ONLINE
----------------------------------------------
FQDN: -------
IP-адрес: 10.101.251.201
Порт: 803
IP-адрес источника запроса: 0.0.0.0
Состояние: ONLINE
Отображается настроенная Группа Реальных Серверов с тремя добавленными Реальными Серверами, которые находятся в состоянии ONLINE согласно Проверке hc01. Для просмотра информации о статусе Реальных Серверов и нагрузке на Реальные Серверы в интерфейсе командной строки Termidesk Connect выполнить команду:
sh rs-pool id RSP01
rs-pool-id Адрес Статус TCP сес TCP с/сек TCP(TLS) сес TCP(TLS) с/сек HTTP сес HTTP с/сек HTTP(TLS) сес. HTTP(TLS) с/сек UDP п/сек
rspool01 10.101.251.201:801 ONLINE 0 0 0 0 0 0 0 0 0
rspool01 10.101.251.201:802 ONLINE 0 0 0 0 0 0 0 0 0
rspool01 10.101.251.201:803 ONLINE 0 0 0 0 0 0 0 0 0
Шаг 3. Добавление Сервера Балансировки
В левой части веб-интерфейса перейти в раздел «Настройки – Управление трафиком – Серверы Балансировки». Далее для добавления Сервера Балансировки нажать кнопку [Добавить] (см. Добавление Сервера Балансировки).
В открывшемся окне «Добавление Сервера Балансировки» указать название в поле «Имя», в раскрывающемся списке «Тип» выбрать тип «TCP», в раскрывающемся списке «Группа РС» выбрать ранее созданную Группу Реальных Серверов «RSP01», в раскрывающемся списке «Алгоритм» выбрать «ROUNDROBIN». Далее нажать кнопку [Применить] (см. Создание Сервера Балансировки»).
| Опционально возможно задать «Постоянство выбора РС (persistence)», то есть подключение одного и того же пользователя будет попадать на один и тот же ранее выбранный Реальный Сервер. |
В правой части веб-интерфейса появится строка с добавленным Сервером Балансировки в списке, который находится в состоянии «В работе» (см. Список Серверов Балансировки).
Шаг 4. Добавление Виртуального Сервера
В левой части веб-интерфейса перейти в раздел «Настройки – Управление трафиком – Виртуальные Серверы». Далее для добавления Виртуального Сервера нажать кнопку [Добавить] (см. Добавление Виртуального Сервера).
| Виртуальный Cервер – это абстракция, которая имет IP-адрес, являющийся точкой входа для клиентских подключений с целью отправки запросов. Виртуальный Сервер является приложением, которое использует пользователь. |
В открывшемся окне «Добавление Виртуального Сервера» указать параметры в полях «Имя», «IP Адрес» и «Порт», в раскрывающемся списке «Тип» выбрать тип «TCP». Далее в области «Правила» нажать кнопку [Добавить] (см. Создание Виртуального Сервера).
|
IP-адрес должен быть доступен пользователю. Порт может быть любым и может не пересекаться с ранее настроенными портами для Реальных Серверов. Доступна опциональная настройка выбора VRF, в котором находится этот Виртуальный Сервер, а также доступен опциональный выбор SSL-Профиля. Настройка SSL-Профиля позволяет терминировать SSL-соединение на контроллеры доставки приложений. |
В открывшемся окне «Добавление правила» указать значения в полях «Приоритет», «Сеть источника запроса», в раскрывающемся списке «Сервер Балансировки» выбрать «lbs01». Далее нажать кнопку [Применить] (см. Добавление правила).
|
В данной инструкции создано правило, что все запросы из любой сети направляются на выбранный Сервер Балансировки. Чем меньше значение приоритета, тем раньше будет выбрано правило. |
В окне «Добавление Виртуального Сервера» нажать кнопку [Применить] (см. Применение настроек Виртуального Сервера).
В правой части веб-интерфейса появится строка с добавленным Виртуальным Сервером в списке, который находится в статусе «В работе» (см. Список Виртуальных Серверов).
| В случае отсутствия дополнительной конфигурации Виртуальный Сервер всегда находится в статусе «В работе» и всегда готов принимать запросы от пользователя. |
Шаг 5. Просмотр TCP-балансировки
Для просмотра TCP-балансировки в адресной строке браузера ввести адрес Виртуального Сервера (см. Ввод адреса Виртуального Сервера).
отобразится веб-страница Реального Сервера «WEB – 02» (см. <<WEB–02>>).
При обновлении отобразится веб-страница Реального Сервера «WEB – 03» (см. WEB – 03).
При повторном обновлении отобразится веб-страница Реального Сервера «WEB – 01» (см. WEB – 01).
Далее в левой части веб-интерфейса перейти в раздел «Настройки – Управление трафиком – Серверы Балансировки». Для изменения настроек Сервера Балансировки выбрать «lbs01» и нажать кнопку [Изменить] (см. Изменение настроек Сервера Балансировки).
В открывшемся окне «Изменение Сервера Балансировки» в раскрывающемся списке «Постоянство выбора РС (persistence)» выбрать значение «IPSOURCE». Далее нажать кнопку [Применить] (см. Изменение Сервера Балансировки).
|
Значение «IPSOURCE» параметра «Постоянство выбора РС (persistence)» означает, что подключение с одного и того же IP-адреса будет попадать на один и тот же ранее выбранный Реальный Сервер. |
Далее в адресной строке браузера повторить ввод адреса Виртуального Сервера (см. Повторный ввод адреса Виртуального Сервера).
Отобразится веб-страница Реального Сервера «WEB – 01» (см. Веб-страница Реального Сервера). При повторных обновлениях так же отобразится веб-страница Реального Сервера «WEB – 01», потому что запросы отправляются с одного устройства и IP-адрес источника не меняется.
Далее для возврата к первоначальным настройкам в левой части веб-интерфейса перейти в раздел «Настройки – Управление трафиком – Серверы Балансировки», выбрать «lbs01» и нажать кнопку [Изменить]. В окне «Изменение Сервера Балансировки» в раскрывающемся списке «Постоянство выбора РС (persistence)» выбрать значение «NONE» и нажать кнопку [Применить] (см. Первоначальная настройка Сервера Балансировки).
Шаг 6. Проверка недоступности Реального Сервера
В данной инструкции в качестве Реальных Серверов используется веб-сервисы, запущенные в Docker.
Для предварительной настройки недоступности одного Реального Сервера перейти на сервер с запущенными Docker-контейнерами и выполнить команду для просмотра статуса:
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
43e7ec04c7dd ws-r:01 "python3.8 ws01.py" 2 days ago Up 2 days 0.0.0.0:801->80/tcp,[::]:801->80/tcp web-r
f87350cad131 ws-b:01 "python3.8 ws01.py" 4 days ago Up 4 days 0.0.0.0:803->80/tcp,[::]:803->80/tcp web-b
957ce37e8586 ws-g:01 "python3.8 ws01.py" 4 days ago Up 4 days 0.0.0.0:802->80/tcp,[::]:802->80/tcp web-g
Для отключения первого docker-контейнера выполнить команду:
docker stop 43e7ec04c7dd
Для просмотра статуса Docker-контейнеров повторно выполнить команду:
docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f87350cad131 ws-b:01 "python3.8 ws01.py" 4 days ago Up 4 days 0.0.0.0:803->80/tcp,[::]:803->80/tcp web-b
957ce37e8586 ws-g:01 "python3.8 ws01.py" 4 days ago Up 4 days 0.0.0.0:802->80/tcp,[::]:802->80/tcp web-g
Далее в интерфейсе командной строки Termidesk Connect выполнить команду:
show status rs
============================================================
(1) ГРС: RSP01 проверка: hc01
----------------------------------------------
FQDN: -------
IP-адрес: 10.101.251.201
Порт: 801
IP-адрес источника запроса: 0.0.0.0
Состояние: OFFLINE
----------------------------------------------
FQDN: -------
IP-адрес: 10.101.251.201
Порт: 802
IP-адрес источника запроса: 0.0.0.0
Состояние: ONLINE
----------------------------------------------
FQDN: -------
IP-адрес: 10.101.251.201
Порт: 803
IP-адрес источника запроса: 0.0.0.0
Состояние: ONLINE
Отображается, что один из Реальных Серверов в состоянии OFFLINE, согласно настройке Проверки hc01.
Для просмотра статуса Группы Реальных Серверов «RSP01» в левой части веб-интерфейса перейти в раздел «Настройки – Управление трафиком – Группы Реальных Серверов» (см. Статус Группы Реальных Серверов).
Статус Группы Реальных Серверов «В работе», т. к. согласно настройке, минимум один Реальный Сервер должен быть доступен.
Для просмотра состояния Сервера Балансировки «lbs01» в левой части веб-интерфейса перейти в раздел «Настройки – Управление трафиком – Серверы Балансировки» (см. Состояние Сервера Балансировки).
Состояние Сервера Балансировки «В работе», т. к. согласно настройке минимум один Реальный Сервер должен быть доступен.
Шаг 7. Проверка недоступности Реального Сервера с изменением настроек Сервера Балансировки
Для изменения сценария в левой части веб-интерфейса перейти в раздел «Настройки – Управление трафиком – Серверы Балансировки», выбрать «lbs01» и нажать кнопку [Изменить]. В окне «Изменение Сервера Балансировки» в поле «Минимальное кол-во РС, шт» указать значение «2» и нажать кнопку [Применить] (см. Изменение настроек Сервера Балансировки).
Для просмотра изменения алгоритма распределения запросов в адресной строке браузера ввести адрес Виртуального Сервера (см. Ввод адреса Виртуального Сервера).
Отобразится веб-страница Реального Сервера «WEB – 01» (см. WEB – 01).
При обновлении отобразится веб-страница Реального Сервера «WEB – 03» (см. WEB – 03).
При повторном обновлении отобразится веб-страница Реального Сервера «WEB – 01», т. е. стали доступны только первый и третий Реальные Серверы.
Для просмотра изменения сценария в интерфейсе командной строки Termidesk Connect выполнить команду:
curl -s 18.101.251.95 | grep WE
WEB--03<p>Method GET</p><p>URL on server: /</p><p>REQ Headers: </p>Host: 10.101.251.95
Повторно выполнить команду:
curl -s 18.101.251.95 | grep WE
WEB--01<p>Method GET</p><p>URL on server: /</p><p>REQ Headers: </p>Host: 10.101.251.95
Далее при повторном вводе команды curl с заданными параметрами так же отобразится содержание веб-страницы третьего Реального Сервера, т.к. второй Реальный Сервер исключен алгоритмом балансировки.
Шаг 8. Добавление резервного Сервера Балансировки
Для добавления резервной Группы Реальных Серверов в левой части веб-интерфейса перейти в раздел «Настройки – Управление трафиком – Группы Реальных Серверов» и нажать кнопку [Добавить]. В открывшемся окне «Добавление Группы Серверов» указать название в поле «Имя». Далее в области «Список Реальных Серверов» нажать кнопку [Добавить] и в раскрывающемся списке выбрать «IP» (см. Добавление резервной Группы Реальных Серверов).
| Данная Группа Реальных Серверов будет использоваться для добавления резервного балансируемого (Реального) Сервера. |
В открывшемся окне «Добавление Реального Сервера» указать значения в полях «IP» и «Порт». Далее нажать кнопку [Применить] (см. Добавление Реального Сервера).
Далее нажать кнопку [Применить] (см. Применение настроек Группы Реальных Серверов).
Для добавления резервного Сервера Балансировки левой части веб-интерфейса перейти в раздел «Настройки – Управление трафиком – Серверы Балансировки» и нажать кнопку [Добавить]. В открывшемся окне «Добавление Сервера Балансировки» указать название в поле «Имя», в раскрывающемся списке «Тип» выбрать тип «TCP», в раскрывающемся списке «Группа РС» выбрать ранее созданную Группу Реальных Серверов «RSPRESERV». Далее нажать кнопку [Применить] (см. Добавление резервного Сервера Балансировки).
Для изменения настроек Виртуального Сервера в левой части веб-интерфейса перейти в раздел «Настройки – Управление трафиком – Виртуальные Серверы». Далее выбрать «vs01» и нажать кнопку [Изменить]. В открывшемся окне «Изменение Виртуального Сервера» в области «Правила» нажать кнопку [Добавить] (см. Изменение настроек Виртуального Сервера).
В открывшемся окне «Добавление правила» указать значения в полях «Приоритет», «Сеть источника запроса», в раскрывающемся списке «Сервер Балансировки» выбрать «lbsreserv». Далее нажать кнопку [Применить] (см. Добавление правила).
|
В данной инструкции создано правило, что все запросы из любой сети направляются на выбранный Сервер Балансировки. В данном шаге значение приоритета больше, значит правило будет применено при условии, что Сервер Балансировки из правила с меньшим приоритетом будет находится в состоянии |
Далее нажать кнопку [Применить] (см. Применение настроек Виртуального Сервера).
| В данной инструкции для Виртуального Сервера создана настройка, что пока Сервер Балансировки «lbs01» находится в состоянии «В работе», все запросы от пользователя будут обработаны именно этим Сервером Балансировки. |
Шаг 9. Просмотр Active/Standby TCP-балансировки
Для выполнения этого шага инструкции сохранена настройка: минимум два Реальных Сервера должны быть в состоянии ONLINE, чтобы Сервер Балансировки находится в состоянии «В работе».
|
Для отключения второго docker-контейнера из трех перейти на сервер с запущенными docker-контейнерами и выполнить команду:
docker stop f87350cad131
Далее в интерфейсе командной строки Termidesk Connect выполнить команду:
show status rs
============================================================
(1) ГРС: RSP01 проверка: hc01
----------------------------------------------
FQDN: -------
IP-адрес: 10.101.251.201
Порт: 801
IP-адрес источника запроса: 0.0.0.0
Состояние: OFFLINE
----------------------------------------------
FQDN: -------
IP-адрес: 10.101.251.201
Порт: 802
IP-адрес источника запроса: 0.0.0.0
Состояние: ONLINE
----------------------------------------------
FQDN: -------
IP-адрес: 10.101.251.201
Порт: 803
IP-адрес источника запроса: 0.0.0.0
Состояние: OFFLINE
Отображается, что два из трех Реальных Серверов в состоянии OFFLINE, согласно настройке Проверки hc01.
Далее в интерфейсе командной строки Termidesk Connect выполнить команду:
show status lbs
########################
# Серверы балансировки #
########################
============================================================
(1) Сервер балансировки: lbs01
Тип: TCP
Алгоритм: ROUNDROBIN
ГРС: RSP01
Состояние: OFFLINE
----------------------------------------------
IP-адрес: 10.101.251.201
Порт: 801
IP-адрес источника запроса: (null)
Состояние: OFFLINE
Количество сессий: 0
----------------------------------------------
IP-адрес: 10.101.251.201
Порт: 802
IP-адрес источника запроса: (null)
Состояние: ONLINE
Количество сессий: 0
----------------------------------------------
IP-адрес: 10.101.251.201
Порт: 803
IP-адрес источника запроса: (null)
Состояние: OFFLINE
Количество сессий: 0
============================================================
(2) Сервер балансировки: lbsreserv
Тип: TCP
Алгоритм: LEASTCONN
ГРС: RSPRESERV
Состояние: ONLINE
----------------------------------------------
IP-адрес: 10.101.251.201
Порт: 810
IP-адрес источника запроса: (null)
Состояние: ONLINE
Количество сессий: 0
#######################
# Виртуальные серверы #
#######################
============================================================
(1) Виртуальный сервер: vs01
Тип: TCP
Вирт. IP-адрес: 10.101.251.95
Вирт. порт: 80
Состояние: ONLINE
Отображается, что Сервер Балансировки lbs01 перешел в состояние OFFLINE, Сервер Балансировки lbsreserv остался в состоянии ONLINE, Виртуальный Сервер vs01 в состоянии ONLINE.
Для просмотра алгоритма распределения запросов в адресной строке браузера ввести адрес Виртуального Сервера (см. Ввод адреса Виртуального Сервера).
Отобразится веб-страница, хранящаяся на резервном Реальном Сервере (см. Запасной сервер), на который попал запрос пользователя из-за недоступности Группы Реальных Серверов RSP01.
В случае включения Реального Сервера из Группы Реальных Серверов RSP01, Сервер Балансировки lbs01 вернется в состояние ONLINE и пользователь при отправке запросов будет попадать на Сервер Балансировки lbs01.