【发布时间】:2020-05-26 10:15:28
【问题描述】:
该注解的默认值为60秒;我希望将其值更改为 120 秒。我将此作为注释添加到入口资源文件中,但它似乎不起作用。
由于我的请求体很大,我只在 60 秒后立即从入口 http 服务器获得 408;
如果入口文件本身不允许此注解,我还能在哪里定义它?
以下页面未提及此注释;是不是因为它不打算作为注释添加?
https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations
入口资源sn-p:
kind: Ingress
metadata:
name: app-ingress
annotations:
nginx.ingress.kubernetes.io/rewrite-target: /my-app
nginx.ingress.kubernetes.io/client-header-buffer-size: "1M"
nginx.ingress.kubernetes.io/client-header-timeout: "60"
nginx.ingress.kubernetes.io/client-body-buffer-size: "1M"
nginx.ingress.kubernetes.io/client-body-timeout: "120"
nginx.ingress.kubernetes.io/use-regex: "true"
nginx.ingress.kubernetes.io/configuration-snippet: |
proxy_set_header custom-header $1;
spec:
rules:
- http:
paths:
- path: /(UK)/my-app/(.*)$
backend:
serviceName: test
servicePort: 80
【问题讨论】:
-
如果不是来自官方文档,你是从哪里得到这个注释的?
-
您提到的选项应该在nginx configmap(全局配置)中设置。检查
kubectl get deployments.apps -n kube-system nginx-ingress-controller -oyaml | grep -- --configmap以获取有关如何调用配置图的提示。在您的情况下,kubectl 命令可能看起来有点不同。 -
请不要混用Nginx提供的nginx入口控制器和Kubernetes提供的其他控制器。这是两个不同的东西。
-
一个 nginx 控制器由 kubernetes 社区维护,另一个由 nginx(nginx 产品背后的公司)维护。这是Nginx ingress controller和kubernetes nginx controller的github repo
-
我发现kubernetes社区提供的Nginx控制器没有提供你感兴趣的注解here is a link to github repo with annotations code。这意味着你剩下的要么是全局设置这个选项,要么是打开功能请求在github上等待有人实现它。
标签: nginx kubernetes kubernetes-ingress