CLI¶
Обзор¶
Target-группа — это группа, состоящая из одного или нескольких серверов (Workers), на которые выполняется балансировка. К Сервису привязывается Target-группа по умолчанию. Дополнительные Target-группы можно назначить через правила Content Switch — как в L4, так и в L7-балансировке.
Настройка¶
- [no] vlb target-group NAME algorithm <source-hash|wlc|wrr|maglev|maglev-source-ip|maglev-source-ip-port> [{nat-pool NAME|tcp-profile NAME|ssl-profile NAME|proxy-version (1-2)|max-pool (-1-1000)|health-monitor NAME}]¶
Создать Target-группу со следующими ключами:
Ключ
Аргумент
Описание
NAMEИмя Target-группы. Указывается в формате
partition/name, напримерdefault/my-tgalgorithmsource-hash, wlc, wrr, maglev, maglev-source-ip, maglev-source-ip-portАлгоритмы балансировки.
maglev-source-ipиmaglev-source-ip-port— варианты Maglev consistent hash по IP-адресу источника или по паре IP-адрес + порт источникаnat-poolNAMEИмя NAT-пула, связанного с этой Target-группой
tcp-profileNAMEИмя TCP-профиля, связанного с этой Target-группой
ssl-profileNAMEИмя SSL-профиля для соединений от ADC к Workers
proxy-version(1-2)Включить Proxy Protocol указанной версии (1 или 2) для всех Workers в группе. Позволяет передать оригинальный IP-адрес клиента
max-pool(-1-1000)Максимальный размер пула переиспользуемых TCP-соединений от ADC к Workers. ADC сохраняет установленные соединения и переиспользует их для новых клиентских запросов, избегая повторного TCP-рукопожатия. Значение
-1отключает пул соединенийhealth-monitorNAMEИмя Health Monitor для всех Workers в группе
- [no] vlb target-group NAME worker ip A.B.C.D port (0-65535) [{weight (0-100000000)|health-monitor NAME|nat-pool NAME|tcp-profile NAME|vrf NAME|tls|ssl-profile NAME|proxy-version (1-2)|max-pool (-1-1000)}]¶
Добавить Worker в Target-группу со следующими ключами:
Ключ
Аргумент
Описание
NAMEИмя Target-группы
ipA.B.C.DIPv4-адрес сервера
port(0-65535)Порт сервера
weight(0-100000000)Вес сервера. Если не указан, то создаётся с 1
health-monitorNAMEИмя Health Monitor
nat-poolNAMEИмя NAT-пула
tcp-profileNAMEИмя TCP-профиля
vrfNAMEИмя VRF. Значение по умолчанию — vrf default
tlsВключить TLS-шифрование соединений от ADC к Worker
ssl-profileNAMESSL-профиль для соединений от ADC к Worker
proxy-version(1-2)Включить Proxy Protocol указанной версии (1 или 2) при передаче соединений от ADC к Worker. Позволяет передать оригинальный IP-адрес клиента
max-pool(-1-1000)Максимальный размер пула переиспользуемых TCP-соединений от ADC к данному Worker. Значение
-1отключает пул соединений
- [no] vlb target-group NAME worker ipv6 X:X::X:X port (0-65535) [{weight (0-100000000)|health-monitor NAME|tcp-profile NAME|vrf NAME|proxy-version (1-2)|max-pool (-1-1000)}]¶
Добавить Worker с IPv6-адресом к Target-группе. Для IPv6 также доступны
proxy-versionиmax-pool. Остальные ключи аналогичны IPv4.Примечание
Для IPv6-Workers недоступны параметры
tls,ssl-profileиnat-pool.
Списки Target-групп¶
Список целевых групп — объект конфигурации, позволяющий объединить несколько Target-групп с приоритетами. Выбор сервера выполняется в два этапа: сначала из списка выбирается активная Target-группа, затем из неё выбирается сервер по настроенному алгоритму.
- [no] vlb target-group-list NAME¶
Создать список целевых групп и войти в режим его конфигурации.
В режиме конфигурации списка целевых групп доступны следующие команды:
- target-group NAME priority (0-4294967295) [threshold <relative (0-100)|absolute (0-65535)>]¶
Добавить Target-группу в список или изменить параметры уже добавленной группы.
priority— приоритет группы в списке. Чем больше число, тем выше приоритет. Приоритет0исключает группу из балансировки.threshold relative— относительный порог (процент действующих серверов).threshold absolute— абсолютный порог (количество действующих серверов). По умолчанию — 1.
Группа считается работоспособной, если количество действующих серверов не меньше порога.
- preempt-mode <enable|disable-but-new|disable>¶
Задать режим вытеснения. По умолчанию —
enable.enable— как только группа с более высоким приоритетом становится работоспособной, она становится активной.disable-but-new— вытеснение отключено для всех групп, кроме новых: новая группа с более высоким приоритетом может стать активной сразу после создания.disable— текущая активная группа остаётся активной, пока она работоспособна. При её выходе из строя активной становится работоспособная группа с наивысшим приоритетом.
Списки целевых групп можно использовать в Сервисах вместо обычных Target-групп: через default-target-group-list (см. CLI) и в правилах Content Switch (target-group-list NAME).
Примечание
Список целевых групп по умолчанию нельзя использовать в Сервисе, в котором есть Access Points типа DSR.
Show-команды¶
- show vlb target-group [NAME]¶
Вывести информацию обо всех или указанной Target-группе.
Пример вывода:
Target-group tg0 Balancing algorithm: wlc Workers: | IP | Port | Weight | Status | VRF | ---------------------------------------------------------------------------------------------- | 192.168.11.3 | 80 | 2 | up | default | | 192.168.11.2 | 80 | 1 | up | default | ---------------------------------------------------------------------------------------------- Target-group statistics: Total Connections: 0 Scheduler Actions: 0 Scheduler Commits: 0 No Scheduler Errors: 0 No Worker Errors: 0 Persistence No Memory Errors: 0 Persistence No Space Errors: 0 TLS handshakes failed: 0 TLS verify failed: 0
Счётчик
Описание
Total ConnectionsОбщее количество соединений, которые ADC открыл к Workers
Scheduler ActionsКоличество отбалансированных соединений (без использования Persistence-группы)
Scheduler CommitsТо же, что и
Scheduler ActionsNo Scheduler ErrorsТо же, что и
No Worker ErrorsNo Worker ErrorsНет активных серверов в Target-группе (не сконфигурированы или не прошли проверку Health Monitor)
Persistence No Memory ErrorsНе хватило свободных записей в таблице Persistence (параметр
persistence_hash_sizeв настройках платформы). Если это событие произошло, запись не добавляется в Persistence; сама сессия создаётсяPersistence No Space ErrorsТо же самое, что и
Persistence No Memory ErrorsTLS handshakes failedКоличество неудачных рукопожатий между ADC и Worker
TLS verify failedНе удалось успешно проверить сертификат TLS при попытке установить HTTPS-соединение с одним из серверов в Target-группе
- clear vlb target-group [NAME]¶
Очистить счётчики всех или указанной Target-группы.
- show vlb target-group NAME worker¶
Вывести информацию обо всех серверах внутри Target-группы.
Пример вывода:
adc# show vlb target-group tg0 worker Worker 192.168.11.2:80 Status: up Weight: 1 Worker statistics: In Octets: 0 Out Octets: 0 Total Connections: 0 Active Connections: 0 Total Persistence Bindings: 0 Active Persistence Bindings: 0 Worker 192.168.11.3:80 Status: up Weight: 1 Worker statistics: In Octets: 0 Out Octets: 0 Total Connections: 0 Active Connections: 0 Total Persistence Bindings: 0 Active Persistence Bindings: 0
Счётчик
Описание
In OctetsКоличество байтов, переданных от сервера к ADC
Out OctetsКоличество байтов, переданных ADC на сервер
Total ConnectionsОбщее количество установленных соединений с сервером
Active ConnectionsКоличество текущих соединений с сервером
Total Persistence BindingsОбщее количество записей Persistence, привязанных к серверу
Active Persistence BindingsКоличество записей Persistence, которые в данный момент привязаны к серверу
- clear vlb target-group NAME worker¶
Очистить счётчики для всех Workers, привязанных к указанной Target-группе.
- show vlb target-group NAME worker <ip|ipv6> <A.B.C.D|X:X::X:X> port (0-65535) [vrf VRF]¶
Вывести информацию о конкретном Worker внутри Target-группы.
- clear vlb target-group NAME worker <ip|ipv6> <A.B.C.D|X:X::X:X> port (0-65535) [vrf VRF]¶
Очистить счётчики для указанного Worker.
- show vlb target-group NAME worker health-monitor¶
Показать информацию обо всех Health Monitor, связанных с указанной Target-группой.
Пример вывода:
adc# show vlb target-group tg0 worker health-monitor Worker 192.168.11.2:80 Health Monitor hm0 statistics: Success Retries: 22 Failed Retries: 0 Total Errors: 0 Average RTT: 0.000ms Weight Updates: 1 Worker 192.168.11.3:80 Health Monitor hm1_udp statistics: Success Retries: 0 Failed Retries: 0 Total Errors: 0 Average RTT: 0.000ms Weight Updates: 0
Счётчик
Описание
Success RetriesКоличество успешных проверок состояния для Worker
Failed RetriesКоличество неудачных проверок состояния Worker
Total ErrorsПроблемы на стороне ADC, такие как неудачи при создании сокетов, недостаток памяти или другие внутренние ошибки
Average RTTСреднее время отклика для запроса проверки состояния, отправленного на Worker, и полученного ответа
Weight UpdatesКоличество обновлений веса Worker в результате изменения его состояния
- clear vlb target-group NAME worker health-monitor¶
Очистить счётчики всех Health Monitor, связанных с Target-группой.
- show vlb target-group NAME worker ip A.B.C.D port (0-65535) [vrf VRF] health-monitor¶
Показать информацию о Health Monitor для указанного Worker.
- clear vlb target-group NAME worker ip A.B.C.D port (0-65535) [vrf VRF] health-monitor¶
Очистить счётчики Health Monitor для указанного Worker.
- show vlb target-group-list [NAME]¶
Показать информацию обо всех списках Target-групп или об указанном списке: состав групп, приоритеты, пороги, текущую активную группу.