首页/云/Kubernetes 速查/ingress-nginx 控制器全局配置
网络与服务55 条

ingress-nginx 控制器全局配置

控制器的 ConfigMap 里配置全局参数(请求体上限、SSL 协议、可信代理 IP 等),影响该控制器下所有 Ingress,改动需谨慎评审。

Kubernetes 速查云更新于 2026-10-13

全局配置放在哪里

ingress-nginx 控制器的 ConfigMap(通常名为 ingress-nginx-controller)保存该控制器的全局参数:请求体大小上限、允许的 TLS 协议版本、是否信任转发头、可信代理网段等。它对该控制器下的所有 Ingress 生效,属于平台级配置,改动一次全体受影响,因此要走评审与低峰窗口。单个 Ingress 上如果写了同名注解,注解优先于全局键。

基本信息

适用组件ingress-nginx 控制器,命名空间通常为 ingress-nginx
对象ConfigMap,默认名多为 ingress-nginx-controller
生效方式改完后由控制器加载,部分变更需要重载或滚动重启控制面 Pod
优先级Ingress 上的注解优先于全局键,全局键作为默认值
代表键client-max-body-size、ssl-protocols、use-forwarded-headers、proxy-real-ip-cidr

典型使用场景

  • 统一放开上传体积:文件上传类业务把默认请求体上限调大
  • 收紧 TLS 配置:限定只允许较新的协议版本,满足安全基线
  • 保留真实客户端 IP:在 LB 之后正确使用转发头与可信代理网段
  • 排障降噪:打开更详细的访问日志级别定位问题请求
  • 连接与超时对齐:统一调整上游超时,避免后端长任务被误切断

查看与修改

查看与修改
kubectl -n ingress-nginx get cm ingress-nginx-controller -o yaml | head -30
kubectl -n ingress-nginx edit cm ingress-nginx-controller
kubectl -n ingress-nginx rollout restart deploy/ingress-nginx-controller   # 必要时重启控制面
kubectl -n ingress-nginx logs deploy/ingress-nginx-controller --tail=50    # 确认加载无报错

常用键(示例)

常用键(示例)
data:
  client-max-body-size: "50m"             # 请求体上限,过大也带来内存压力
  ssl-protocols: "TLSv1.2 TLSv1.3"        # 只允许较新协议
  use-forwarded-headers: "true"           # 信任上游 LB 的转发头
  proxy-real-ip-cidr: "10.0.0.0/8"        # 可信代理网段,写宽会信任伪造头
  proxy-read-timeout: "120"               # 上游读超时,配合长任务调整

常用键与风险

配置键作用风险点
client-max-body-size请求体上限过小导致上传报错,过大增加内存与带宽压力
ssl-protocols允许的 TLS 协议版本加回旧协议会拉低整体安全基线
use-forwarded-headers是否采用转发头与可信代理网段不匹配时来源判断失真
proxy-real-ip-cidr可信代理网段写宽会接受伪造的真实来源
proxy-read-timeout上游读超时与后端实际处理时间不一致会误切断连接
ConfigMap 的 data 必须是字符串:数字与布尔值都加引号,避免被解析成非预期类型后控制器加载失败。
多数键改完由控制器自动重载,重载瞬间可能有极短的连接抖动;大流量集群安排在低峰变更,并提前准备好回滚键值。

易错点

  • 改完 ConfigMap 没有触发重载:配置看起来已存在但行为没变,容易被误判为键名写错
  • 全局放开请求体上限:所有站点同时受益也同时暴露,内存与带宽风险一并放大
  • 把旧 TLS 协议加回白名单:安全基线下降,外部扫描会直接报出弱协议
  • 转发头可信网段与实际代理不符:访问日志与限流按伪造来源判断,安全策略形同虚设

数据来源与参考

  • ingress-nginx 官方文档 · ConfigMap
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌