具体案例:ingress前面在有haproxy和cdn的情况下获取用户真实ip
修改haproxy的配置
server后端服务器后面添加send-proxy
改完后如下图
再去修改ingress-controller
kubectl -n ingress-nginx edit cm ingress-nginx-controller-default
添加如下四行
compute-full-forwarded-for: "true" forwarded-for-header: "X-Forwarded-For" use-forwarded-headers: "true" use-proxy-protocol: 'true' |
use-proxy-protocol: 'true'这个加完之后如果重启了ingress-controller未重启haproxy之前页面会打不开,这时候在haproxy的配置里把send-proxy加上就可以打开了
查看ingress日志可以看到可以拿到真实IP了