Динамически создавать раздел Backend в конфигурации HAProxy - PullRequest
0 голосов
/ 15 февраля 2019

У меня есть случай, когда мне нужно использовать HAProxy как прокси, а не как loadbalancer.Так что в моем случае мне нужно много внутренних разделов, которые необходимо обновить в конфигурации при запуске прокси.

Но есть ли способ, где я могу динамически создать новый раздел внутреннего интерфейса?

global

log stdout format raw daemon
stats socket ipv4@127.0.0.1:9999 level admin
stats socket /var/run/hapee-lb.sock mode 666 level admin
stats timeout 2m

defaults

log global
timeout client 50s
timeout client-fin 50s
timeout connect 5s
timeout server 10s
timeout tunnel 50s

frontend tcp-0_0_0_0-443

bind 135.27.110.163:443
mode tcp
tcp-request inspect-delay 5s
tcp-request content accept if { req_ssl_hello_type 1 }    
use_backend %[req.ssl_sni,regsub(.com,.com443,g),lower,map_dom(/usr/local/etc/sample.map,bk_default)]
default_backend example_com_be

frontend tcp-0_0_0_0-5061

bind 135.27.110.163:5061
mode tcp
tcp-request inspect-delay 5s
tcp-request content accept if { req_ssl_hello_type 1 }
use_backend %[req.ssl_sni,regsub(.com,.com5061,g),lower,map_dom(/usr/local/etc/sample.map,bk_default)]   
default_backend absanity_5061

backend example_com_be

mode tcp
server name1 x.x.x.x:443

backend absanity_5061

mode tcp
server name1 y.y.y.y:5061

AM, используя Runtime API, используя Socat для обновления карт.Но предположим, что я должен был вставить новый бэкэнд-раздел с новыми деталями сервера в конфигурации. Как мы можем этого добиться?

1 Ответ

0 голосов
/ 19 февраля 2019

Я не думаю, что вы можете создавать новые бэкэнды во время выполнения с помощью API сокетов.Эта статья дает хороший обзор того, что вы можете изменить во время выполнения: https://www.haproxy.com/blog/dynamic-configuration-haproxy-runtime-api/.

Однако вы можете добавить новые бэкэнды без использования API сокетов, создав новую конфигурацию с новыми бэкэндами и перезагрузив HAProxy.Эта статья дает хороший обзор того, как перезагрузить HAProxy без потери соединений: https://www.haproxy.com/blog/truly-seamless-reloads-with-haproxy-no-more-hacks/

...