更新时间:2024-12-04 GMT+08:00
ELB Ingress配置超时时间
ELB Ingress支持设置以下超时时间:
- 客户端连接空闲超时时间:没有收到客户端请求的情况下保持连接的最长时间。如果在这个时间内没有新的请求, 负载均衡会暂时中断当前连接,直到下一次请求时重新建立新的连接。
- 等待客户端请求超时时间:如果在规定的时间内客户端没有发送完请求头,或body体数据发送间隔超过一定时间,负载均衡会自动关闭连接。
- 等待后端服务器响应超时时间:向后端服务器发送请求后,如果在一定时间内没有收到响应,负载均衡将返回504错误码。
约束与限制
- 支持设置超时时间的场景如下:
超时时间类型
支持的ELB类型
支持的集群版本
空闲超时时间
独享型
- v1.19集群:v1.19.16-r30及以上版本
- v1.21集群:v1.21.10-r10及以上版本
- v1.23集群:v1.23.8-r10及以上版本
- v1.25集群:v1.25.3-r10及以上版本
- 其他更高版本集群
请求超时时间
独享型
响应超时时间
独享型
- 更新Ingress时,如果删除超时时间配置,不会修改已有监听器的超时时间配置。
通过kubectl命令行创建
Ingress配置示例如下:
apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: test namespace: default annotations: kubernetes.io/elb.port: '80' kubernetes.io/elb.id: <your_elb_id> #本示例中使用已有的独享型ELB,请替换为您的独享型ELB ID kubernetes.io/elb.class: performance kubernetes.io/elb.keepalive_timeout: '300' # 客户端连接空闲超时时间 kubernetes.io/elb.client_timeout: '60' # 等待客户端请求超时时间 kubernetes.io/elb.member_timeout: '60' # 等待后端服务器响应超时时间 spec: rules: - host: '' http: paths: - path: / backend: service: name: test port: number: 80 property: ingress.beta.kubernetes.io/url-match-mode: STARTS_WITH pathType: ImplementationSpecific ingressClassName: cce
参数 |
是否必填 |
参数类型 |
描述 |
---|---|---|---|
kubernetes.io/elb.keepalive_timeout |
否 |
String |
客户端连接空闲超时时间,在超过keepalive_timeout时长一直没有请求, 负载均衡会暂时中断当前连接,直到下一次请求时重新建立新的连接。 取值范围为0-4000s,默认值为60s。 |
kubernetes.io/elb.client_timeout |
否 |
String |
等待客户端请求超时时间,包括两种情况:
取值范围为1-300s,默认值为60s。 |
kubernetes.io/elb.member_timeout |
否 |
String |
等待后端服务器响应超时时间。请求转发后端服务器后,等待超过member_timeout时长没有响应,负载均衡将终止等待,并返回 HTTP504错误码。 取值范围为1-300s,默认值为60s。 |
父主题: ELB Ingress管理