我需要同时拥有layer7和layer4。我转移的api请求两个不同的后端。一个后端用于GET请求,一个后端用于PUT,GET&删除请求。这是我的第7层前端。
layer4 front用于处理发出api请求的网站。他们只是分开循环赛。
在我添加这个layer4部分之前,Layer7一直在工作,即刚刚为api进行了负载均衡。当我使用layer4前端迁移网站时,api请求,即layer7,有时会丢失,但并非总是如此。
正如您所看到的,有时请求会丢失,有时会有效:
[richv@lb2 ~]$ curl api
curl: (52) Empty reply from server <-- this is not ok, http 503
[richv@lb2 ~]$ curl api
{"error_code":256,"error_message":"No Site specified"} <-- this is ok, cause didnt give all the headers.
前端是:
frontend layer7-http-listener
bind *:80
bind *:443 ssl crt /etc/httpd/certs/haproxy.pem
mode http
option httpclose
option httplog
option forwardfor
option accept-invalid-http-request
frontend layer4-listener
bind *:80 transparent
bind *:443 transparent
bind *:3306
mode tcp
option tcplog