ingress-nginx: "client_max_body_size" directive invalid value

BUG REPORT:

NGINX Ingress controller version: 0.13.0

Kubernetes version (use kubectl version): 1.9.6

Environment:

  • Cloud provider or hardware configuration:
  • Self hosted, Dell 620’s. PXE Boot
  • OS (e.g. from /etc/os-release):
  • CoreOS Stable
  • Kernel (e.g. uname -a):
  • Install tools:
  • Others:

What happened: When using version 0.9.0 setting the client_max_body_size works fine, however when trying to upgrade to 0.13.0 nginx fails to start with the following error:

2018/05/11 11:36:56 [emerg] 65#65: "client_max_body_size" directive invalid value in /tmp/nginx-cfg219046792:764
nginx: [emerg] "client_max_body_size" directive invalid value in /tmp/nginx-cfg219046792:764
nginx: configuration file /tmp/nginx-cfg219046792 test failed

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Reactions: 4
  • Comments: 15 (1 by maintainers)

Most upvoted comments

I have the same issue, Did anyone find a workaround?

Saw this on 0.15.0 and 0.18.0 as well. In the instances I observed, the problem coincided with the deletion of ingress objects. i.e. I saw the following sequence:

  1. ingress controller logs deletion event
  2. Log entry for error reading ingress annotation logged (see https://github.com/kubernetes/ingress-nginx/blob/nginx-0.18.0/internal/ingress/controller/controller.go#L384) due to missing annotation on ingress
  3. Reload of the nginx configuration fails due to client_max_body_size ""; on the location corresponding to the ingress object.

It looks like there can be an inconsistency in store’s state around deletions of ingress objects.