Nginx转发K8S、kubesphere的Ingress的WebSocket 请求时的不同配置

upstream websocket {
#ip_hash;
server ivcp-api.ttt.com;
}
#For WebSocket define server
server {
listen 9999;
server_name localhost;
location / {
proxy_pass http://ivcp-api.ttt.com/;
#proxy_pass http://websocket;
proxy_read_timeout 300s;
#proxy_set_header Host $host;
proxy_set_header Host "ivcp-api.ttt.com";
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
 
项目Websocket服务的外暴,使用Ingress实现,外部请求通过Nginx转发给Ingress再给具体服务 。
项目正式环境使用kubesphere部署应用,项目测试环境使用原生K8S部署应用,蓝色是测试环境的配置,使用upstream实现请求转发,但通过kubesphere的ingress转发时,这个配置不好使了,总是转发到Jaeger页面上去了,修改Nginx,使用红色字体配置后,好使了,具体原因未知,有大神可以帮忙分析下不?

【Nginx转发K8S、kubesphere的Ingress的WebSocket 请求时的不同配置】


    推荐阅读