# 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