在 HAProxy 中基于每个服务器设置自定义 Header
Setting Custom Header on a per server basis in HAProxy
我需要使用 HAProxy 1.7 对第 3 方服务进行负载平衡。每个服务器都需要唯一的基本身份验证 Headers。我正在寻找一种类似于下面的方法,我可以在后端服务器之间 "roundrobin",但每个服务器都需要不同的 HTTP header:
frontend http-in
bind *:80
use_backend servs
backend servs
reqidel '^Authorization:.*'
reqadd 'Authorization: Basic blahblahblah'
server url1 asdf.example.com:8080 check ssl verify none
reqidel '^Authorization:.*'
reqadd 'Authorization: Basic blah2blah2blah2'
server url2 asdf.example.com:8081 check ssl verify none
这种方法只使用第一个服务器 (url1)。
我实施了以下解决方案以允许自定义 headers 为每个负载平衡的服务器。
frontend http-in
bind *:80
use_backend proxy
backend proxy
balance roundrobin
server url1-proxy 0.0.0.0:8080
server url2-proxy 0.0.0.0:8081
listen url1-proxy
bind *:8080
reqidel '^Authorization:.*'
reqadd 'Authorization: Basic blahblahblah'
server url1 asdf.example.com:8080 check ssl verify none
listen url2-proxy
bind *:8081
reqidel '^Authorization:.*'
reqadd 'Authorization: Basic blah2blah2blah2'
server url2 asdf.example.com:8081 check ssl verify none
我需要使用 HAProxy 1.7 对第 3 方服务进行负载平衡。每个服务器都需要唯一的基本身份验证 Headers。我正在寻找一种类似于下面的方法,我可以在后端服务器之间 "roundrobin",但每个服务器都需要不同的 HTTP header:
frontend http-in
bind *:80
use_backend servs
backend servs
reqidel '^Authorization:.*'
reqadd 'Authorization: Basic blahblahblah'
server url1 asdf.example.com:8080 check ssl verify none
reqidel '^Authorization:.*'
reqadd 'Authorization: Basic blah2blah2blah2'
server url2 asdf.example.com:8081 check ssl verify none
这种方法只使用第一个服务器 (url1)。
我实施了以下解决方案以允许自定义 headers 为每个负载平衡的服务器。
frontend http-in
bind *:80
use_backend proxy
backend proxy
balance roundrobin
server url1-proxy 0.0.0.0:8080
server url2-proxy 0.0.0.0:8081
listen url1-proxy
bind *:8080
reqidel '^Authorization:.*'
reqadd 'Authorization: Basic blahblahblah'
server url1 asdf.example.com:8080 check ssl verify none
listen url2-proxy
bind *:8081
reqidel '^Authorization:.*'
reqadd 'Authorization: Basic blah2blah2blah2'
server url2 asdf.example.com:8081 check ssl verify none