feat: Add grpc timeouts annotations (#11258)
* ✨ feat: add grpc timeouts with proxy settings if backend is grpc * 📝 docs: Documentation only changes * 🐛 fix: uppercase for protocol * 📝 docs: grpc timeouts example * 📝 docs: add links and default values for proxy timeout * 🧪 test: add e2e test for timeout * 🐛 fix: upgrade to 1.0.6 to fix nil pointer * 🐛 fix: lint * 🧪 test: trigger ci
This commit is contained in:
parent
3b1908e206
commit
d0e9934789
8 changed files with 224 additions and 7 deletions
|
|
@ -698,6 +698,12 @@ In some scenarios is required to have different values. To allow this we provide
|
|||
- `nginx.ingress.kubernetes.io/proxy-next-upstream-tries`
|
||||
- `nginx.ingress.kubernetes.io/proxy-request-buffering`
|
||||
|
||||
If you indicate [Backend Protocol](#backend-protocol) as `GRPC` or `GRPCS`, the following grpc values will be set and inherited from proxy timeouts:
|
||||
|
||||
- [`grpc_connect_timeout=5s`](https://nginx.org/en/docs/http/ngx_http_grpc_module.html#grpc_connect_timeout), from `nginx.ingress.kubernetes.io/proxy-connect-timeout`
|
||||
- [`grpc_send_timeout=60s`](https://nginx.org/en/docs/http/ngx_http_grpc_module.html#grpc_send_timeout), from `nginx.ingress.kubernetes.io/proxy-send-timeout`
|
||||
- [`grpc_read_timeout=60s`](https://nginx.org/en/docs/http/ngx_http_grpc_module.html#grpc_read_timeout), from `nginx.ingress.kubernetes.io/proxy-read-timeout`
|
||||
|
||||
Note: All timeout values are unitless and in seconds e.g. `nginx.ingress.kubernetes.io/proxy-read-timeout: "120"` sets a valid 120 seconds proxy read timeout.
|
||||
|
||||
### Proxy redirect
|
||||
|
|
|
|||
|
|
@ -1101,14 +1101,20 @@ See NGINX [client_max_body_size](https://nginx.org/en/docs/http/ngx_http_core_mo
|
|||
|
||||
Sets the timeout for [establishing a connection with a proxied server](https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_connect_timeout). It should be noted that this timeout cannot usually exceed 75 seconds.
|
||||
|
||||
It will also set the [grpc_connect_timeout](https://nginx.org/en/docs/http/ngx_http_grpc_module.html#grpc_connect_timeout) for gRPC connections.
|
||||
|
||||
## proxy-read-timeout
|
||||
|
||||
Sets the timeout in seconds for [reading a response from the proxied server](https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_read_timeout). The timeout is set only between two successive read operations, not for the transmission of the whole response.
|
||||
|
||||
It will also set the [grpc_read_timeout](https://nginx.org/en/docs/http/ngx_http_grpc_module.html#grpc_read_timeout) for gRPC connections.
|
||||
|
||||
## proxy-send-timeout
|
||||
|
||||
Sets the timeout in seconds for [transmitting a request to the proxied server](https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_send_timeout). The timeout is set only between two successive write operations, not for the transmission of the whole request.
|
||||
|
||||
It will also set the [grpc_send_timeout](https://nginx.org/en/docs/http/ngx_http_grpc_module.html#grpc_send_timeout) for gRPC connections.
|
||||
|
||||
## proxy-buffers-number
|
||||
|
||||
Sets the number of the buffer used for [reading the first part of the response](https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_buffers) received from the proxied server. This part usually contains a small response header.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue