我有一个在Kubernetes集群上运行的应用程序。在上个月的某个时间,我的proxy-body-size入口注释突然停止工作。现在,我的应用返回413:每次使用大文件调用时,请求实体都太大。
这是在从ingress.kubernetes.io/proxy-body-size更改为nginx.ingress.kubernetes.io/proxy-body-size之后。目前都没有改变。
集群运行稳定版/ nginx-ingress版本1.15.0。
我肯定错过了一些明显的事情,但是我无法终生弄清楚是什么。
我的入口当前看起来像这样:
kind: Ingress
metadata:
annotations:
nginx.ingress.kubernetes.io/proxy-body-size: 20m
creationTimestamp: "2019-07-03T08:43:43Z"
generation: 1
labels:
app.kubernetes.io/instance: underskrift-detektor-env-v2
app.kubernetes.io/managed-by: Tiller
app.kubernetes.io/name: erst-env
helm.sh/chart: erst-env-1.7.0
name: underskrift-detektor-env-v2
namespace: dokumentredskaber
resourceVersion: "17086462"
selfLink: /apis/extensions/v1beta1/namespaces/dokumentredskaber/ingresses/underskrift-detektor-env-v2
uid: aa2cb597-9d6e-11e9-924b-7285e76b0ce4
spec:
rules:
- host: svik-ml-dev.erst.dk
http:
paths:
- backend:
serviceName: underskrift-detektor-app-v2
servicePort: 8080
path: /dokument-redskaber/underskrift-detektor/v2
tls:
- hosts:
- svik-ml-dev.erst.dk
secretName: erst-tls-secret
status:
loadBalancer:
ingress:
- {}
kubectl describe ing
的输出是:
Namespace: dokumentredskaber
Address:
Default backend: default-http-backend:80 (<none>)
TLS:
erst-tls-secret terminates svik-ml-dev.erst.dk
Rules:
Host Path Backends
---- ---- --------
svik-ml-dev.erst.dk
/dokument-redskaber/underskrift-detektor/v2 underskrift-detektor-app-v2:8080 (<none>)
Annotations:
nginx.ingress.kubernetes.io/proxy-body-size: 20m
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal UPDATE 59m (x6 over 23h) nginx-ingress-controller Ingress dokumentredskaber/underskrift-detektor-env-v2
Normal UPDATE 59m (x6 over 23h) nginx-ingress-controller Ingress dokumentredskaber/underskrift-detektor-env-v2```
答案 0 :(得分:1)
从Nginx官方入口文档中可以看到,注释策略只接受字符串值,即使是整数they should be quoted也是如此。
此外,在某些提供程序中,您可能还希望尝试在nginx.org/client-max-body-size
旁边添加proxy-body-size
批注。
问题中未提及,以防万一我会提到需要重新启动Nginx吊舱以选择注释的值。