<p>Very new to kubernetes. I've been getting confused by documentation and example differences between Helm2 and 3.</p>

<p>I installed the <code>stable/nginx-ingress</code> chart via <code>helm install app-name stable/nginx-ingress</code>. </p>

<p>1st question:</p>

<p>I need to update the <code>externalTrafficPolicy</code> to <code>Local</code>. I learned later I could have set that during the install process via adding <code>--set controller.service.externalTrafficPolicy=Local</code> to the helm command.</p>

<p>How can I update the LoadBalancer service with the new setting without removing the ingress controller and reinstalling?</p>

<p>2nd question:</p>

<p>Helm3 just downloaded and setup the ingress controller and didn't save anything locally. Is there a way to backup all my my k8s cluster configs (other than the ones I've created manually)?</p>

<p>To upgrade and dump the YAML deployed (for a backup of the ingress release)</p>

<pre><code>helm upgrade &lt;your-release-name&gt; stable/nginx-ingress \
  --reuse-values \
  --set controller.service.externalTrafficPolicy=Local \
  --output yaml
</code></pre>

<p>For a public chart you may want to set the <code>--version</code> option to the existing installed version of the chart you used. In case you don't want to any updates from newer versions to be applied along with the setting. </p>

<p>For complete dumps, have a look through <a href="https://github.com/kubernetes/kubernetes/issues/24873" rel="nofollow noreferrer">this github issue</a>. All options there are a bit dodge though with edge cases. I would recommend having everything re-deployable from something like git, all the way from cluster to apps. Anyone who makes edits by hand can then be shot (Well.. at least have clusters regularly redeployed on them :)</p>
