最新社区版Nginx Ingress Controller中grpc_send_timeout配置方式咨询
社区版Nginx Ingress Controller配置grpc_send_timeout的正确方式
核心结论:如果你用的是社区版kubernetes/ingress-nginx(当前最新稳定版),必须使用
nginx.ingress.kubernetes.io/server-snippet注解配置grpc_send_timeout——目前该控制器还没支持单独注解直接定义这个gRPC超时参数,只能通过插入Nginx原生配置指令的方式实现。配置示例:
apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: grpc-demo-ingress annotations: nginx.ingress.kubernetes.io/server-snippet: | grpc_send_timeout 300s; nginx.ingress.kubernetes.io/backend-protocol: "GRPC" spec: rules: - host: grpc.yourdomain.com http: paths: - path: /your.grpc.ServiceName pathType: Prefix backend: service: name: grpc-demo-service port: number: 50051关于
nginx.org/proxy-send-timeout的说明:这个注解属于NGINX官方维护的ingress控制器(nginxinc/kubernetes-ingress),和社区版是两个完全独立的项目,在社区版控制器里用了也不会生效,别搞混了。补充:社区版确实计划在后续版本中推出单独注解来管理各类超时参数,但当前最新版还没落地,所以暂时只能用server-snippet的方式。
内容的提问来源于stack exchange,提问作者Margach Chris
相关产品推荐
相关产品推荐

