CLI

Обзор

Target-группа — это группа, состоящая из одного или нескольких серверов (Workers), на которые выполняется балансировка. В отличие от L4 балансировщика, где к одному сервису можно добавить только одну Target-группу, в L7 балансировщике есть возможность к одному сервису привязать несколько Target-групп за счет использования Content Switch Rules. Это предоставляет дополнительный уровень абстракции для принятия решений.

Настройка

vlb target-group <NAME|(0-65535)> algorithm <source-hash|wlc|wrr|maglev|maglev-source-ip|maglev-source-ip-port> [{nat-pool NAME|tcp-profile NAME|ssl-profile NAME}]

Создать Target-группу со следующими ключами:

Ключ

Аргумент

Описание

<NAME|(0-65535)>

Имя или идентификатор Target Group

algorithm

source-hash, wlc, wrr, maglev, maglev-source-ip, maglev-source-ip-port

Алгоритмы балансировки

nat-pool

NAME

Имя NAT-пула, связанного с этой Target-группой

tcp-profile

NAME

Имя TCP-профиля, связанного с этой Target-группой

no vlb target-group <NAME|(0-65535)> [{algorithm <source-hash|wlc|wrr|maglev|maglev-source-ip|maglev-source-ip-port>|nat-pool NAME|tcp-profile NAME|ssl-profile NAME}]

Удалить Target-группу.

vlb target-group <NAME|(0-65535)> 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}]

Добавить Worker в Target-группу со следующими ключами:

Ключ

Аргумент

Описание

<NAME|(0-65535)>

Имя или идентификатор Target Group

ip

A.B.C.D

IPv4-адрес сервера

port

(0-65535)

Порт сервера

weight

(0-100000000)

Вес сервера. Если не указан, то создаётся с 1

health-monitor

NAME

Имя Health Monitor

nat-pool

NAME

Имя NAT-пула

tcp-profile

NAME

Имя TCP-профиля

vrf

NAME

Имя VRF. Значение по умолчанию — vrf default

no vlb target-group <NAME|(0-65535)> 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}]

Удалить Worker. Необходимо указать его имя или ID, IPv4-адрес и порт.

vlb target-group NAME worker ipv6 X:X::X:X port (0-65535) [{weight (0-100000000)|health-monitor NAME|tcp-profile NAME|vrf NAME}]

Добавить Worker с IPv6-адресом к Target-группе. Описание ключей такое же, как и для IPv4.

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}]

Удалить Worker. Необходимо указать его имя или ID, IPv6-адрес и порт.

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 Actions

No Scheduler Errors

То же, что и No Worker Errors

No Worker Errors

Нет активных серверов в Target-группе (не сконфигурированы или не прошли проверку Health Monitor)

Persistence No Memory Errors

Не хватило свободных записей в таблице Persistence (параметр persistence_hash_size в настройках платформы). Если это событие произошло, запись не добавляется в Persistence; сама сессия создаётся

Persistence No Space Errors

То же самое, что и Persistence No Memory Errors

TLS 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.