如何更改Kubernetes维护的nginx入口中的默认TCP服务代理超时?

如何更改Kubernetes维护的nginx入口中的默认TCP服务代理超时?,nginx,kubernetes,nginx-ingress,Nginx,Kubernetes,Nginx Ingress,我已经尝试将k8s维护的nginx-ingress中tcp服务的默认代理超时(600秒)更改为3600秒,但它不起作用 我已经执行了nginx控制器吊舱,并在nginx.conf中获得了以下内容 # TCP services server { preread_by_lua_block { ngx.var.proxy_upstream_name="tcp-test-test-db-test-lb-dev-7687";

我已经尝试将k8s维护的nginx-ingress中tcp服务的默认代理超时(600秒)更改为3600秒,但它不起作用

我已经执行了nginx控制器吊舱,并在nginx.conf中获得了以下内容

# TCP services

server {
        preread_by_lua_block {
                ngx.var.proxy_upstream_name="tcp-test-test-db-test-lb-dev-7687";
        }

        listen                  7687;

        proxy_timeout           600s;
        proxy_pass              upstream_balancer;

}
我使用了下面的configmap,发现它不工作。我仍然有600秒的超时

apiVersion: v1
kind: ConfigMap
metadata:
  name: tcp-services
  namespace: ingress-nginx
  annotations:
    ingress.kubernetes.io/proxyTimeout: 3600s
    ingress.kubernetes.io/proxy-stream-timeout: 3600s
    ingress.kubernetes.io/proxy-connect-timeout: 3600s
    ingress.kubernetes.io/proxy-read-timeout: 3600s
    ingress.kubernetes.io/proxy-send-timeout: 3600s
    ingress.kubernetes.io/proxy_timeout: 3600s
data:
   7687: "test-test-db/test-lb-dev:7687"
   8687: "test-test-db/test-lb-test:8687"

请大家帮我把这个问题简短地说出来。

使用这些注释时,必须将它们设置为数字(整数)值。例如:

 ingress.kubernetes.io/proxy-stream-timeout: "3600"
而不是:

ingress.kubernetes.io/proxy-stream-timeout: 3600s

如果您需要有关超时选项的更多详细信息,请检查。

它不正确。不在tcp cm中,也不作为注释。 添加为数据-->代理流超时:3600
到另一个配置映射。

注释在用于更新nginx中的
代理超时
参数的tcp服务中不起作用。 您需要更新configmap
ingress nginx控制器
,并在
数据
下添加
代理流超时:“3600s”
。(以下为样本)


谢谢你的回答,然后我想ingress.kubernetes.io/proxy-stream-timeout:“3600s”,因为它需要字符串,就像你提到的文档一样。你能添加你推荐的命令吗?
apiVersion: v1
kind: ConfigMap
metadata:
  name: ingress-nginx-controller
  namespace: ingress-nginx
  labels:
    app.kubernetes.io/name: ingress-nginx
    app.kubernetes.io/part-of: ingress-nginx
data:
  proxy-connect-timeout: "10"
  proxy-read-timeout: "120"
  proxy-send-timeout: "120"
  proxy-stream-timeout: "3600s"