目前,我正在尝试配置一个负载均衡器,将流量从该均衡器发送到Kubernetes集群。在集群的边缘,Istio ingress正在为集群的外部请求提供服务HAProxy 1.8版
我可以使用以下命令从集群外部访问该服务。
curl-k-HHost:httpbin.example.com--解析httpbin.example.com:32099:192.168.50.10https://httpbin.example.com:32009/status/418:
下面是我的HAProxy配置:
前端:
frontend https
bind *:443 ssl crt /etc/ssl/certs/site.pem
mode tcp
tcp-request inspect-delay 5s
tcp-request content accept if { req_ssl_hello_type 1 }
default_backend httpbin
后端:
backend httpbin
balance roundrobin
mode tcp
acl httpbin_app req_ssl_sni -i httpbin.example.com
use-server master if httpbin_app
server master 192.168.50.10:32009 check ssl verify none
http-request set-header Host httpbin.example.com
http-request set-header X-Forwarded-For %[src]
http-request set-header X-Forwarded-Port %[dst_port]
http-request add-header X-Forwarded-Proto https if { ssl_fc }
使用HAProxy,我总是得到503。同样在启动过程中,HAProxy会说下面一行:
haproxy[14260]:后端httpbin没有可用的服务器!
你能帮我找到合适的后端配置吗?
最后,在HAProxy社区的帮助下,我为Istio Ingress找到了正确的配置。这是非常基本的。请根据您的需要更新设置。下面是配置的链接。
https://gist.github.com/emamulandalib/2a613f5308c29518fcbcdc6b3bad3900