net::ERR_CONNECTION_RESET 托管 Kubernetes 数字海洋大负载

net::ERR_CONNECTION_RESET Managed Kubernetes Digital Ocean Large Payloads

我非常严格地按照本教程创建了一个 Digital Ocean 管理的 Kubernetes 集群。 https://www.digitalocean.com/community/tutorials/how-to-set-up-an-nginx-ingress-with-cert-manager-on-digitalocean-kubernetes

除了我的自定义基本节点服务器容器外,一切都几乎相同。此外,集群可以完美运行,直到向任何端点发布一个大的 (>~400Kbs) file/payload。

显然,我试图在 Kubernetes 之外的容器中制造这个问题 运行,但我无法以任何文件大小重现它。我还验证了我的所有 droplet 都没有 运行 资源不足。 CPU 并且内存使用率很低。

在寻找解决方案的过程中,我在网上看到了一些类似的问题。 (即https://kubernetes.io/blog/2019/03/29/kube-proxy-subtleties-debugging-an-intermittent-connection-reset/

我已尝试应用此 DaemonSet,但未能解决问题。

有其他人运行 解决过这个问题或找到了解决方案吗?我非常感谢任何帮助。

谢谢!

更新: 我已经使用 kubectl port-forward 测试了服务器并且上传工作正常。我想这意味着我的入口或负载均衡器有任何问题。我还在寻找答案。

所以,我终于明白了!解决方案是配置代理主体大小 nginx.ingress.kubernetes.io/proxy-body-size: "50m",如下所述:

希望这可以帮助将来遇到上传间歇性连接重置问题的人:)