LINUX.ORG.RU
решено ФорумAdmin

Разделить конфиг прокси.

 , ,


0

1

Как можно разделить банальный конфиг haproxy.cfg на разные файлы. Когда 2-3 домена, то не страшно. А в случае если будет больше? Не хочется допускать ошибки в файле, так как при 1 ошибке не будет работать ни 1 из бэкендов. Как можно поместить в отдельные файлы например baconcluster.cfg и milshake_cluster.cfg?

global
        log 127.0.0.1   local0
        log 127.0.0.1   local1 notice
        maxconn 4096
        user haproxy
        group haproxy
        daemon

defaults
        log     global
        mode    http
        option  httplog
        option  dontlognull
        option forwardfor
        option http-server-close
        stats enable
        stats auth someuser:somepassword
        stats uri /haproxyStats

frontend http-in
        bind *:80

        # Define hosts
        acl host_bacon hdr(host) -i ilovebacon.com
        acl host_milkshakes hdr(host) -i bobsmilkshakes.com

        ## figure out which one to use
        use_backend bacon_cluster if host_bacon
        use_backend milshake_cluster if host_milkshakes

backend baconcluster
        balance leastconn
        option httpclose
        option forwardfor
        cookie JSESSIONID prefix
        server node1 10.0.0.1:8080 cookie A check
        server node1 10.0.0.2:8080 cookie A check
        server node1 10.0.0.3:8080 cookie A check


backend milshake_cluster
        balance leastconn
        option httpclose
        option forwardfor
        cookie JSESSIONID prefix
        server node1 10.0.0.4:8080 cookie A check
        server node1 10.0.0.5:8080 cookie A check
        server node1 10.0.0.6:8080 cookie A check

Думаю есть 2 решения:

  1. Простой. Поднять отдельный инстанс haproxy на другом порту (или на другом сервере) и сначала тестировать на нем, а потом переносить конфиг
  2. Сделать 3 инстанса haproxy. Первый на 80 порту - с бэкендами на локальные порты. 2 других уже независимые инстансы для baconcluster и milshake_cluster

Во втором случае - первый haproxy нужно настроить один раз и не трогать. 2 других ковырять по отдельности

+ судя по ману haproxy умеет в unix-сокеты на bind и server, так что можно убрать прослойку tcp/ip при работе между инстансами

CaHbl4 ()
Ответ на: комментарий от RaptorsWings

Обычно разные файлы собираются в один и пытаются примениться. Как следствие, падает всё.

turtle_bazon ★★★★★ ()

Просто тестируй конфиг перед reload.

Deleted ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.