L4/L7 таймаут — это функция, предоставляемая ALB. Она используется для настройки времени таймаута для L4/L7 прокси.
Таймаут реализован с помощью Lua-скрипта, и при его изменении не требуется перезагрузка Nginx.
Конфигурация может быть задана в:
.spec.config.timeout
.spec.config.timeout
Существует три типа таймаутов:
proxy_connect_timeout_ms: Определяет время таймаута для установления соединения с upstream-сервером. Если соединение не будет установлено в течение этого времени, запрос завершится с ошибкой.
proxy_read_timeout_ms: Определяет время таймаута для чтения ответа от upstream-сервера. Таймаут устанавливается между двумя последовательными операциями чтения, а не на весь ответ целиком. Если в течение этого времени данные не поступают, соединение закрывается.
proxy_send_timeout_ms: Определяет время таймаута для отправки запроса upstream-серверу. Аналогично таймауту чтения, он устанавливается между двумя последовательными операциями записи. Если в течение этого времени данные не могут быть отправлены, соединение закрывается.
Аннотация | Описание |
---|---|
nginx.ingress.kubernetes.io/proxy-connect-timeout | Соответствует proxy_connect_timeout_ms в CRD |
nginx.ingress.kubernetes.io/proxy-read-timeout | Соответствует proxy_read_timeout_ms в CRD |
nginx.ingress.kubernetes.io/proxy-send-timeout | Соответствует proxy_send_timeout_ms в CRD |
Вы можете настроить таймаут непосредственно на порту, который используется как таймаут L4.