39 lines
1.5 KiB
YAML
39 lines
1.5 KiB
YAML
# deployments/k8s/ingress.yaml
|
|
# Ingress для shared-sqs на домене qu.kube5s.ru
|
|
# Created: 2026-04-09, Updated: 2026-04-12
|
|
apiVersion: networking.k8s.io/v1
|
|
kind: Ingress
|
|
metadata:
|
|
name: shared-sqs-ingress
|
|
namespace: shared-sqs
|
|
annotations:
|
|
cert-manager.io/cluster-issuer: letsencrypt-prod
|
|
nginx.ingress.kubernetes.io/proxy-body-size: 10m
|
|
nginx.ingress.kubernetes.io/proxy-read-timeout: "30"
|
|
nginx.ingress.kubernetes.io/proxy-send-timeout: "30"
|
|
# Fix: 64KB+ payload (boto3/urllib3 2.0 шлёт headers и body отдельными TCP write,
|
|
# botocore убирает TCP_NODELAY → последние ~16KB body не доходят за client_body_timeout).
|
|
# Решение: proxy-request-buffering=off стримит body напрямую в backend без ожидания полного тела.
|
|
nginx.ingress.kubernetes.io/client-body-buffer-size: "512k"
|
|
nginx.ingress.kubernetes.io/proxy-request-buffering: "off"
|
|
# server-snippet удалён 2026-04-12: nginx ingress controller v1.x+ блокирует
|
|
# эту аннотацию как "risky" (ServerSnippet contains risky annotation).
|
|
# client_body_timeout задаётся через ConfigMap ingress controller.
|
|
spec:
|
|
ingressClassName: nginx
|
|
rules:
|
|
- host: qu.kube5s.ru
|
|
http:
|
|
paths:
|
|
- path: /
|
|
pathType: Prefix
|
|
backend:
|
|
service:
|
|
name: shared-sqs
|
|
port:
|
|
number: 4100
|
|
tls:
|
|
- hosts:
|
|
- qu.kube5s.ru
|
|
secretName: shared-sqs-tls
|