<p>I want to update the ingress configuration and which will apply on ingress instance running on kuberntes cluter on gcloud.</p>

<p>For this I have performed two steps:</p>

<ol>
<li>Firstly, people ask that set both annotation in <code>ingress.yml</code> and then re-create ingress will solve the issue mentioned on <a href="https://github.com/nginxinc/kubernetes-ingress/issues/21#issuecomment-408618569" rel="nofollow noreferrer">this</a>. </li>
</ol>

<blockquote>
<pre><code>kubernetes.io/ingress.class: "gce"
nginx.ingress.kubernetes.io/proxy-body-size: 20m
</code></pre>
</blockquote>

<p>After deleting the ingress from cluster and create the ingress again
    also declared me unlucky.</p>

<p><strong>ingress.yml</strong></p>

<pre><code>apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: my-ingress
  namespace: default
  annotations:
    kubernetes.io/ingress.class: "gce"
    nginx.ingress.kubernetes.io/proxy-body-size: 20m
    nginx.org/client-max-body-size: "20m"
</code></pre>

<ol start="2">
<li>Secondly, configure the ConfigMap file on the gcloul cluster, so that our ingress configuration will update, but come up with the negative result mentioned on <a href="https://stackoverflow.com/questions/55347770/nginx-ingress-kubernetes-io-proxy-body-size-not-working">this</a>.</li>
</ol>

<p><strong>nginx-config.yml</strong></p>

<pre><code>apiVersion: v1
kind: ConfigMap
metadata:
  name: nginx-config
  namespace: default
data:
  proxy-body-size: "20m"
</code></pre>

<p>So how can I update my ingress properties such as annotation <code>nginx.ingress.kubernetes.io/proxy-body-size</code>, so that I can upload data more than 1 MB (where my cluster deployed on GKE)? </p>

<p>Any help would be appreciated. Thanks</p>

Zeb
<p>You are misinterpreting the annotations part in your <code>Ingress</code> resource. Let me elaborate on that. </p>

<p>The problem is that you trying to use <a href="https://github.com/kubernetes/ingress-gce" rel="nofollow noreferrer">GCE controller</a> and apply annotations specifically for <a href="https://github.com/kubernetes/ingress-nginx" rel="nofollow noreferrer">NGINX Ingress controller</a>.  You cannot use NGINX Ingress controller annotations with GCE controller. </p>

<p>For your configuration to work you would need to deploy NGINX Ingress controller. </p>

<p>You can deploy it by following <a href="https://kubernetes.github.io/ingress-nginx/deploy/" rel="nofollow noreferrer">official documentation</a>. </p>

<p>After deploying NGINX Ingress controller the part of the <code>Ingress</code> definition should look like that: </p>

<pre><code>apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: my-ingress
  namespace: default
  annotations:
    kubernetes.io/ingress.class: "nginx"
    nginx.ingress.kubernetes.io/proxy-body-size: "20m"
</code></pre>

<p>Take a specific look at part below: </p>

<pre><code>    kubernetes.io/ingress.class: "nginx"
    nginx.ingress.kubernetes.io/proxy-body-size: "20m"
</code></pre>

<p>Please refer to official <a href="https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/" rel="nofollow noreferrer">documentation</a> when applying annotations for NGINX Ingress controller. </p>
