我在下载 3GB 大文件时遇到问题。这是我在 Kubernetes (AWS EKS) 上设置的 JETTY 9.4 + NGINX(来自 https://kubernetes.github.io/ingress-nginx/ 的舵图)。它适用于较小的文件。对于如此大的文件,我在客户端收到“失败 - 网络错误”。在码头方面,我得到了对等异常重置的连接。在 NGINX 方面没有什么明显的,至少在日志文件中没有。
如果我直接从服务下载文件,即使用kubectl port-forward,没有问题。所以看起来这是 EKS 或 NGINX 的问题。我将通常的 NGINX 嫌疑人设置为他们推荐的值,但无济于事。
这是我的入口 yaml
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: ingress
namespace: webapps
annotations:
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/client-max-body-size: "0"
nginx.ingress.kubernetes.io/proxy-body-size: "0"
nginx.ingress.kubernetes.io/proxy-buffering: "off"
nginx.ingress.kubernetes.io/proxy-max-temp-file-size: "0"
nginx.ingress.kubernetes.io/ssl-redirect: "true"
nginx.ingress.kubernetes.io/force-ssl-redirect: "false"
spec:
tls:
- hosts:
- my.website.com
secretName: tls-secret
rules:
- host: my.website.com
http:
paths:
- backend:
serviceName: servicename
servicePort: 8080
path: /
我还检查了生成的 nginx conf,看起来没问题。
对于接下来要看的内容有什么建议吗?
答案 0 :(得分:0)
您能否尝试使用 Nginx 入口注释来增加读取和发送超时
nginx.ingress.kubernetes.io/proxy-read-timeout: "1800"
nginx.ingress.kubernetes.io/proxy-send-timeout: "1800"