<p>I ran across <a href="https://www.nginx.com/blog/websocket-nginx/" rel="nofollow noreferrer">an article</a> that says that the NGINX Ingress supports websockets starting at version 1.3.  But <a href="https://github.com/kubernetes/ingress-nginx/blob/master/Changelog.md" rel="nofollow noreferrer">this changelog</a> mentions websocket documentation back at version 0.9.</p>

<p>I'm running with NGINX Ingress at version 0.23.0 and I cannot get the websocket client connection to work.  It fails because the Connection header is <code>keep-alive</code> instead of <code>upgrade</code>.  It looks like the ingress is changing it, because the connection works if I bypass the ingress and go directly to the Kubernetes service.  Before I go much further, it would be good to know if this is hopeless with the version of NGINX that I currently have running.</p>

cbarlock
<p>I found the problem. Our Helm charts were explicitly setting the Ingress annotation <code>nginx.ingress.kubernetes.io/connection-proxy-header</code> to <code>keep-alive</code>. Removed that and all is well.</p>
