Bootstrap

K8s ingress-controller中nginx文件上传大小的限制

# 20、K8s ingress-controller中nginx文件上传大小的限制



 

问题:1.应用程序中上传文件文件出错,页面提示“您上传的文件太大了,请压缩图片后重试。”

   2.通过F12 可以看到,后台提示 403错误,可以看到出错是由于nginx的限制,并提示nginx版本号为:nginx/1.13.9

分析:1.业务端带外提供服务的nginx,配置的是开发者中心页面上的域名,因此经过的链路为:

  业务自己搭建的nginx ---> 开发者中心主节点的nginx  ---> k8s的ingress-control中的nginx;

  2.逐一确认个路径中nginx的版本,最终确认为ingress-controler中的nginx 存在该限制

 解决: 1. 指定需要更新的参数,更新configmap;

 2.重新创建ingress-controller

操作步骤:

   1.  进入配置文件目录:/data/developercenter_kubernetes/ingress

[root@k8s-master ingress]# pwd

/data/developercenter_kubernetes/ingress

[root@k8s-master ingress]# ll



 

2.查看已存在的configmap,并删除将要更新的configmap

   查看命令:   kubectl  get configmap -n ingress-nginx

   删除命令:  kubectl  delete configmap nginx-configuration -n ingress-nginx      

3.更新configmap配置文件,在  /data/developercenter_kubernetes/ingress/configmap.yaml 文件的末尾增加以下信息:

data:

    proxy-body-size: "100m"

4.使用新的配置文件,创建 configmap

   kubectl  create -f configmap.yaml

5.重新创建 ingress-controller

   kubectl  delete -f with-rbac.yaml

   kubectl  create  -f with-rbac.yaml

 6.进入ingress-controller 容器中验证

kubectl  get pod -n ingress-nginx

kubectl  exec -it nginx-ingress-controller-545fc9f5cc-mtg8t -n ingress-nginx bash

grep body /etc/nginx/nginx.conf

查看client_max_body_size 是否已经变成更改的值。


 

;