如何增加NGINX入口控制器和Kong上的最大请求体大小



我有一个服务,该服务接受了主体中带有base64编码文件的帖子。我目前得到 Error: 413 Request Entity Too Large当我发布大于1MB的内容时,否则可以正常工作。

我的设置具有孔的代理服务。我有以下通过稳定的Kong Helm图表安装的代理入口的注释:

      kubernetes.io/ingress.class: "nginx"
      ingress.kubernetes.io/ssl-redirect: “true”
      ingress.kubernetes.io/proxy-body-size: 50m

我还将其添加到Kong Env值:

client_max_body_size: 0

我的理解是应该更新nginx.conf

Kong在其前面有一个Nginx-Ingress,我使用稳定的头盔图安装了它。对于Ingress-Controller,我设置了:

--set controller.config.proxy-body-size: "50m"

但是,这些设置都无法正常工作。浏览我看到的入口控制器的吊舱日志:

2019/08/02 15:01:34 [warn] 42#42: *810139 a client request body is buffered to a temporary file /tmp/client-body/0000000014, client: 1X.XXX.X0.X, server: example.com, request: "POST /endpoint HTTP/1.1", host: "example.com"

和Kong Pod中的相应日志:

2019/08/02 15:01:39 [warn] 33#0: *1147388 a client request body is buffered to a temporary file /usr/local/kong/client_body_temp/0000000017, client: XX.XXX.XXX.XX, server: kong, request: "POST /ENDPOINT HTTP/1.1", host: "example.com"
10.120.20.17 - - [02/Aug/2019:15:01:39 +0000] "POST /endpoint HTTP/1.1" 413 794 "-" "PostmanRuntime/7.15.2"

是否有另一个我缺少的设置,还是我犯了这个错误?我该如何使它按预期工作。

  • 如果我只使用其IP直接发布到POD,则不涉及Intress控制器,我会遇到相同的413错误。Kubernetes是否在需要更改的地方有默认入口?

注释似乎正常。我遇到的局限性是因为我正在测试的代码是在kubeless中。kubeless功能使用瓶子,入口极限为瓶子。我在自定义的Python3.7图像中为kubeless提出了这一点,所有这些图像都很好。

最新更新