概述Ingress Controller(如 NGINX/Traefik)为集群提供入口路由,结合 TLS 与策略实现流量治理。本文给出路由与安全、重试与超时、限流与灰度配置与验证方法。路由与TLS(已验证)Host/Path 路由:按域名与路径将流量分发至后端;TLS:为入口配置证书与强制 HTTPS;重定向与头部:规范化 `X-Forwarded-*` 与安全头部。超时与重试请求超时与后端连接超时;幂等 GET 重试与指数退避;限流与灰度速率限制:按 IP/路径/租户维度限制;灰度:按权重或头部路由至新版本;示例(片段)apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: web
annotations:
nginx.ingress.kubernetes.io/proxy-read-timeout: "30"
nginx.ingress.kubernetes.io/limit-rpm: "120"
spec:
tls:
- hosts: ["example.com"]
secretName: tls-secret
rules:
- host: example.com
http:
paths:
- path: /api
pathType: Prefix
backend:
service:
name: api
port:
number: 8080
观测与验证指标:入口延迟分位、错误率、限流触发;日志:请求源、路由命中与重试记录;演练:灰度权重调整与失败回退;常见误区未配置 TLS 与安全头部;全局限流未区分关键接口;超时与重试不合理导致雪崩。结语以规范的路由与TLS、合理的超时与重试、精细化限流与灰度,并以观测与演练验证,Ingress Controller 可实现可靠入口治理。

发表评论 取消回复