Немного связано с " Другие варианты "балансировки источника" в haproxy", Я хотел бы знать, какие порты на данный момент указаны.
Чтобы подтвердить, я использую haproxy для распределения клиентов, которые делают только одно соединение за раз, на другой порт прокси-сервера, на разные внутренние серверы. Предположим, что это протокол ssh.
Я использую палку-таблицу, чтобы держать клиентов на одном внутреннем сервере, пока этот сервер не выйдет из строя. Как лучше всего узнать текущее состояние?
Я знаю, что могу сделать по одному интерфейсу для каждого порта, а затем направить их всех на один и тот же бэкэнд. Имя внешнего интерфейса затем регистрируется, но я не могу не хочу, чтобы один аккуратный интерфейс с диапазоном портов, а затем регистрировался dst_port.
Мой текущий ответ / решение (упомянутое в вопросе) выглядит следующим образом.
Я определяю разные "прослушивания" для каждого порта, который будет связан с узнаваемым именем.
Затем я гарантирую option tcplog
включен для этого интерфейса.
Затем ведение журнала предоставляет мне две части информации, в которой я нуждаюсь. Используются интерфейс и серверная часть.
например
haproxy[18989]: 127.0.0.1:34550 [15/Oct/2003:15:24:28.312] frontend backend/server 0/0/5007 0 cD 0/0/0/0/0 0/0
Я анализирую этот файл журнала «волшебным образом» и использую эту информацию для представления последнего статуса.
option logasap
помогает ..
По умолчанию формат tcplog эквивалентно:
log-format "%ci:%cp [%t] %ft %b/%s %Tw/%Tc/%Tt %B %ts %ac/%fc/%bc/%sc/%rc %sq/%bq"
Итак, вы можете настроить его, добавив интересующие вас переменные (список определенных переменных), например порт прослушивания внешнего интерфейса %fp
:
log-format "%ci:%cp [%t] %ft %fp %b/%s %Tw/%Tc/%Tt %B %ts %ac/%fc/%bc/%sc/%rc %sq/%bq"
Я не уверен, что это то, что вам нужно.
Вы можете включить статистику в конфигурации HAProxy, добавив эти строки в конфигурацию порта: 80
stats enable
stats auth YOURUSERNAME:YOURPASSWORD
Затем вы можете перейти по URL-адресу: http: // YOURDOMAIN-OR-IP / haproxy? stats
Там вы можете в любое время увидеть статус и перенаправления, которые выполняет HAProxy.