Настроить баланс haproxy с использованием тегов в заголовке по запросу - PullRequest
0 голосов
/ 21 июня 2019


У меня есть вопрос о конфигурации баланса с использованием haproxy.
Я хочу настроить баланс с использованием заголовков тегов на запросы.
У меня есть 2 тега - Каско, Осаго и default_backend.
Как я могу настроить баланс для тегов
- если у меня есть один тег в запросе заголовка - баланс бэкэнд Osago,
- если второй тег - баланс бэкэнд каско,
- если нет тега - использовать бэкэнд по умолчанию?

Я пытался использовать hdr_val, как написано в этой инструкции
https://www.haproxy.com/documentation/aloha/9-5/traffic-management/lb-layer7/acls/
и это
https://blog.armbruster -it.de / 2015/08 / neo4j-и-haproxy-некоторые-лучшие-практики-хитрости /
но это не работает.

 frontend web_80
    bind *:80
    mode http
    option httplog
    acl acl_osago hdr_val(Calculation-Type:OSAGO) eq 1
    acl acl_kasko hdr_val(Calculation-Type:KASKO) eq 1
    use_backend osago if acl_osago
    use_backend kasko if acl_kasko
    default_backend web_80

backend osago 
    mode http
    server server5_7003 server5:7003 check port 7001

backend kasko
    mode http
    server server6_7003 server6:7003 check port 7001

backend web_80
    mode http
    balance leastconn
    option httpchk GET /ibss-checker/threads/info/queue-length
    http-check expect rstring ^(0?[0-9]?[0-9]|1[0-1][0-9])$
    server server1_7003 server1:7003 check port 7001
    server server2_7003 server2:7003 check port 7001
    server server3_7003 server3:7003 check port 7001
    server server4_7003 server4:7003 check port 7001

1 Ответ

0 голосов
/ 25 июля 2019

Помогла программа перекомпиляции dev и этот конфиг

acl acl_osago hdr_val(Calculation-Type:OSAGO) eq 1

работал

...