From 3a11bec17549d80c4d023506f223fb0cb76834d0 Mon Sep 17 00:00:00 2001 From: Venktesh Date: Mon, 7 Aug 2023 16:17:01 +0100 Subject: [PATCH 01/14] add helm upgrade document --- .../content/installation/upgrade-with-helm.md | 93 +++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 docs/content/installation/upgrade-with-helm.md diff --git a/docs/content/installation/upgrade-with-helm.md b/docs/content/installation/upgrade-with-helm.md new file mode 100644 index 0000000000..db09c57896 --- /dev/null +++ b/docs/content/installation/upgrade-with-helm.md @@ -0,0 +1,93 @@ +--- +title: Upgrade with Helm +description: "This document describes how to upgrade the NGINX Ingress Controller in your Kubernetes cluster using Helm." +weight: 1800 +doctypes: [""] +toc: true +docs: "DOCS-603" +--- + +This document will walk you through the steps needed to upgrade the NGINX Ingress Controller from version 2.x and 3.0.x to latest available release without any downtime. + +## Background + +In the NGINX Ingress Controller version 3.1.0, [changes were introduced](https://github.com/nginxinc/kubernetes-ingress/pull/3606) to Helm resource names, labels and annotations to align better with Helm best practices. +However upon running a helm upgrade job from previous installed version to 3.1.0+, some resources like Deploymeny/DaemonSet and Service will be recreated (recreate no rolling update) due to changes in nomenclature and selector labels resulting in undesirable downtime. + +## Steps to perform upgrade without downtine +**Note**: Below steps applies to both 2.x and 3.0.x releases. + +### If Helm release name is ```nginx-ingress``` + +1. Describe existing deployment/daemonset to get ```selector```. + + ```shell + kubectl describe deployments -n + ``` + Copy the key=value under ```selector```, eg: + + ```shell + Selector: app=nginx-ingress-nginx-ingress + ``` + +2. Checkout the latest available tag using ```git checkout v3.3.0``` + +3. Update the ```selectorLabels: {}``` field in ```values.yaml``` file located at ``` /kubernates-ingress/deployments/helm-chart``` with the ```selector``` from Step 1. + ```shell + selectorLabels: {app: nginx-ingress-nginx-ingress} + ``` + +4. Run helm upgrade with following arguments set: + ```shell + --set controller.serviceNameOverride=“nginx-ingress-nginx-ingress” + --set controller.name="" + --set fullnameOverride=“nginx-ingress-nginx-ingress” + ``` + eg: ```helm upgrade nginx-ingress --set controller.kind=deployment --set controller.nginxplus=false --set controller.image.pullPolicy=Always --set controller.serviceNameOverride=“nginx-ingress-nginx-ingress” --set controller.name=“” --set fullnameOverride=“nginx-ingress-nginx-ingress” .``` + +5. Once upgrade process is finished, verify it by running a ```kubectl describe... ``` on deployment (daemonset will have no such events) and that events section should have rolling update workflow: + eg: + ```shell + Type Reason Age From Message + ---- ------ ---- ---- ------- + Normal ScalingReplicaSet 9m11s deployment-controller Scaled up replica set nginx-ingress-nginx-ingress- to 1 + Normal ScalingReplicaSet 101s deployment-controller Scaled up replica set nginx-ingress-nginx-ingress- to 1 + Normal ScalingReplicaSet 98s deployment-controller Scaled down replica set nginx-ingress-nginx-ingress- to 0 from 1 + + +### If Helm release name is not ```nginx-ingress``` + +1. Describe existing deployment/daemonset to get ```selector```. + + ```shell + kubectl describe deployments -n + ``` + Copy the key=value under ```selector```, eg: + + ```shell + Selector: app=-nginx-ingress + ``` + +2. Checkout the latest available tag using ```git checkout v3.3.0``` + +3. Update the ```selectorLabels: {}``` field in ```values.yaml``` file located at ``` /kubernates-ingress/deployments/helm-chart``` with the ```selector``` from Step 1. + ```shell + selectorLabels: {app: -nginx-ingress} + ``` + +4. Run helm upgrade with following arguments set: + ```shell + --set controller.serviceNameOverride=“-nginx-ingress”, + --set controller.name="" + ``` + eg: ```helm upgrade test-release --set controller.kind=deployment --set controller.nginxplus=false --set controller.image.pullPolicy=Always --set controller.serviceNameOverride=“test-release-nginx-ingress” --set controller.name="" .``` + +5. Once upgrade process is finished, verify it by running a ```kubectl describe... ``` on deployment and that events section should have rolling update workflow: + eg: + ```shell + Type Reason Age From Message + ---- ------ ---- ---- ------- + Normal ScalingReplicaSet 9m11s deployment-controller Scaled up replica set test-release-nginx-ingress- to 1 + Normal ScalingReplicaSet 101s deployment-controller Scaled up replica set test-release-nginx-ingress- to 1 + Normal ScalingReplicaSet 98s deployment-controller Scaled down replica set test-release-nginx-ingress- to 0 from 1 + ``` \ No newline at end of file From efc353ca6fd172f04bf003a6f351674997bc2cf6 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Mon, 7 Aug 2023 15:18:14 +0000 Subject: [PATCH 02/14] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- docs/content/installation/upgrade-with-helm.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/content/installation/upgrade-with-helm.md b/docs/content/installation/upgrade-with-helm.md index db09c57896..f45e73bd8f 100644 --- a/docs/content/installation/upgrade-with-helm.md +++ b/docs/content/installation/upgrade-with-helm.md @@ -11,7 +11,7 @@ This document will walk you through the steps needed to upgrade the NGINX Ingres ## Background -In the NGINX Ingress Controller version 3.1.0, [changes were introduced](https://github.com/nginxinc/kubernetes-ingress/pull/3606) to Helm resource names, labels and annotations to align better with Helm best practices. +In the NGINX Ingress Controller version 3.1.0, [changes were introduced](https://github.com/nginxinc/kubernetes-ingress/pull/3606) to Helm resource names, labels and annotations to align better with Helm best practices. However upon running a helm upgrade job from previous installed version to 3.1.0+, some resources like Deploymeny/DaemonSet and Service will be recreated (recreate no rolling update) due to changes in nomenclature and selector labels resulting in undesirable downtime. ## Steps to perform upgrade without downtine @@ -33,7 +33,7 @@ However upon running a helm upgrade job from previous installed version to 3.1.0 2. Checkout the latest available tag using ```git checkout v3.3.0``` 3. Update the ```selectorLabels: {}``` field in ```values.yaml``` file located at ``` /kubernates-ingress/deployments/helm-chart``` with the ```selector``` from Step 1. - ```shell + ```shell selectorLabels: {app: nginx-ingress-nginx-ingress} ``` @@ -41,7 +41,7 @@ However upon running a helm upgrade job from previous installed version to 3.1.0 ```shell --set controller.serviceNameOverride=“nginx-ingress-nginx-ingress” --set controller.name="" - --set fullnameOverride=“nginx-ingress-nginx-ingress” + --set fullnameOverride=“nginx-ingress-nginx-ingress” ``` eg: ```helm upgrade nginx-ingress --set controller.kind=deployment --set controller.nginxplus=false --set controller.image.pullPolicy=Always --set controller.serviceNameOverride=“nginx-ingress-nginx-ingress” --set controller.name=“” --set fullnameOverride=“nginx-ingress-nginx-ingress” .``` @@ -71,7 +71,7 @@ However upon running a helm upgrade job from previous installed version to 3.1.0 2. Checkout the latest available tag using ```git checkout v3.3.0``` 3. Update the ```selectorLabels: {}``` field in ```values.yaml``` file located at ``` /kubernates-ingress/deployments/helm-chart``` with the ```selector``` from Step 1. - ```shell + ```shell selectorLabels: {app: -nginx-ingress} ``` @@ -90,4 +90,4 @@ However upon running a helm upgrade job from previous installed version to 3.1.0 Normal ScalingReplicaSet 9m11s deployment-controller Scaled up replica set test-release-nginx-ingress- to 1 Normal ScalingReplicaSet 101s deployment-controller Scaled up replica set test-release-nginx-ingress- to 1 Normal ScalingReplicaSet 98s deployment-controller Scaled down replica set test-release-nginx-ingress- to 0 from 1 - ``` \ No newline at end of file + ``` From b22fd05147a8b04d51faebc7b22423715c1c1cec Mon Sep 17 00:00:00 2001 From: Venktesh Date: Tue, 8 Aug 2023 10:40:38 +0100 Subject: [PATCH 03/14] Correction to " char in codeblocks --- docs/content/installation/upgrade-with-helm.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/content/installation/upgrade-with-helm.md b/docs/content/installation/upgrade-with-helm.md index f45e73bd8f..936aa8457e 100644 --- a/docs/content/installation/upgrade-with-helm.md +++ b/docs/content/installation/upgrade-with-helm.md @@ -12,7 +12,7 @@ This document will walk you through the steps needed to upgrade the NGINX Ingres ## Background In the NGINX Ingress Controller version 3.1.0, [changes were introduced](https://github.com/nginxinc/kubernetes-ingress/pull/3606) to Helm resource names, labels and annotations to align better with Helm best practices. -However upon running a helm upgrade job from previous installed version to 3.1.0+, some resources like Deploymeny/DaemonSet and Service will be recreated (recreate no rolling update) due to changes in nomenclature and selector labels resulting in undesirable downtime. +However upon running a helm upgrade job from previous installed version to 3.1.0+, some resources like Deploymeny/DaemonSet and Service will be recreated due to changes in nomenclature and selector labels resulting in undesirable downtime. ## Steps to perform upgrade without downtine **Note**: Below steps applies to both 2.x and 3.0.x releases. @@ -39,11 +39,11 @@ However upon running a helm upgrade job from previous installed version to 3.1.0 4. Run helm upgrade with following arguments set: ```shell - --set controller.serviceNameOverride=“nginx-ingress-nginx-ingress” + --set controller.serviceNameOverride="nginx-ingress-nginx-ingress" --set controller.name="" - --set fullnameOverride=“nginx-ingress-nginx-ingress” + --set fullnameOverride="nginx-ingress-nginx-ingress" ``` - eg: ```helm upgrade nginx-ingress --set controller.kind=deployment --set controller.nginxplus=false --set controller.image.pullPolicy=Always --set controller.serviceNameOverride=“nginx-ingress-nginx-ingress” --set controller.name=“” --set fullnameOverride=“nginx-ingress-nginx-ingress” .``` + eg: ```helm upgrade nginx-ingress --set controller.kind=deployment --set controller.nginxplus=false --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="nginx-ingress-nginx-ingress" --set controller.name="" --set fullnameOverride="nginx-ingress-nginx-ingress" .``` 5. Once upgrade process is finished, verify it by running a ```kubectl describe... ``` on deployment (daemonset will have no such events) and that events section should have rolling update workflow: eg: @@ -77,10 +77,10 @@ However upon running a helm upgrade job from previous installed version to 3.1.0 4. Run helm upgrade with following arguments set: ```shell - --set controller.serviceNameOverride=“-nginx-ingress”, + --set controller.serviceNameOverride="-nginx-ingress", --set controller.name="" ``` - eg: ```helm upgrade test-release --set controller.kind=deployment --set controller.nginxplus=false --set controller.image.pullPolicy=Always --set controller.serviceNameOverride=“test-release-nginx-ingress” --set controller.name="" .``` + eg: ```helm upgrade test-release --set controller.kind=deployment --set controller.nginxplus=false --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="test-release-nginx-ingress" --set controller.name="" .``` 5. Once upgrade process is finished, verify it by running a ```kubectl describe... ``` on deployment and that events section should have rolling update workflow: eg: From f08399646d523d688985f94aa2a56a3be994d64d Mon Sep 17 00:00:00 2001 From: Alan Dooley Date: Tue, 8 Aug 2023 11:17:12 +0100 Subject: [PATCH 04/14] Fix product and command nouns, add tabs and adjusting phrasing This commit adds a handful of changes to the Helm upgrade installation guide for NGINX Ingress Controller. It primarily changes the body of text to favour plain English over technical jargon where possible, and also recontextualises it to be less negatively-framed. It also adds some standardised formatting for NGINX products such as the use of note callouts and tabs, and reduces the inline comments to using single backticks instead of triples, which are only necessary for large blocks. The list numeration is also changed to the automatic style. --- .../content/installation/upgrade-with-helm.md | 60 +++++++++++-------- 1 file changed, 34 insertions(+), 26 deletions(-) diff --git a/docs/content/installation/upgrade-with-helm.md b/docs/content/installation/upgrade-with-helm.md index 936aa8457e..7a569dfcd3 100644 --- a/docs/content/installation/upgrade-with-helm.md +++ b/docs/content/installation/upgrade-with-helm.md @@ -1,52 +1,55 @@ --- -title: Upgrade with Helm -description: "This document describes how to upgrade the NGINX Ingress Controller in your Kubernetes cluster using Helm." +title: Upgrading NGINX Ingress Controller with Helm +description: "This document describes how to use Helm to upgrade NGINX Ingress Controller from 2.x and 3.0.x to the latest available release." weight: 1800 doctypes: [""] toc: true docs: "DOCS-603" --- -This document will walk you through the steps needed to upgrade the NGINX Ingress Controller from version 2.x and 3.0.x to latest available release without any downtime. - ## Background -In the NGINX Ingress Controller version 3.1.0, [changes were introduced](https://github.com/nginxinc/kubernetes-ingress/pull/3606) to Helm resource names, labels and annotations to align better with Helm best practices. -However upon running a helm upgrade job from previous installed version to 3.1.0+, some resources like Deploymeny/DaemonSet and Service will be recreated due to changes in nomenclature and selector labels resulting in undesirable downtime. +In NGINX Ingress Controller version 3.1.0, [changes were introduced](https://github.com/nginxinc/kubernetes-ingress/pull/3606) to Helm resource names, labels and annotations to fit with Helm best practices. +When using Helm to upgrade from a version prior to to 3.1.0, certain resources like Deployment, DaemonSet and Service will be recreated due to the aforementioned changes, which could result in downtime. + +## Upgrade Steps +{{}} The following steps apply to both 2.x and 3.0.x releases.{{}} + +The steps you should follow depend on the Helm release name: -## Steps to perform upgrade without downtine -**Note**: Below steps applies to both 2.x and 3.0.x releases. +{{}} -### If Helm release name is ```nginx-ingress``` +{{%tab name="Release name is nginx-ingress"%}} -1. Describe existing deployment/daemonset to get ```selector```. +1. Use `kubectl describe` to get the `selector` value: ```shell kubectl describe deployments -n ``` - Copy the key=value under ```selector```, eg: + Copy the key=value under `selector`, such as: ```shell Selector: app=nginx-ingress-nginx-ingress ``` -2. Checkout the latest available tag using ```git checkout v3.3.0``` +1. Checkout the latest available tag using `git checkout v3.3.0` -3. Update the ```selectorLabels: {}``` field in ```values.yaml``` file located at ``` /kubernates-ingress/deployments/helm-chart``` with the ```selector``` from Step 1. +1. Update the `selectorLabels: {}` field in the `values.yaml` file located at `/kubernates-ingress/deployments/helm-chart` with the copied `selector` value. ```shell selectorLabels: {app: nginx-ingress-nginx-ingress} ``` -4. Run helm upgrade with following arguments set: +1. Run `helm upgrade` with following arguments set: ```shell --set controller.serviceNameOverride="nginx-ingress-nginx-ingress" --set controller.name="" --set fullnameOverride="nginx-ingress-nginx-ingress" ``` - eg: ```helm upgrade nginx-ingress --set controller.kind=deployment --set controller.nginxplus=false --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="nginx-ingress-nginx-ingress" --set controller.name="" --set fullnameOverride="nginx-ingress-nginx-ingress" .``` + It could look as follows: -5. Once upgrade process is finished, verify it by running a ```kubectl describe... ``` on deployment (daemonset will have no such events) and that events section should have rolling update workflow: - eg: + `helm upgrade nginx-ingress --set controller.kind=deployment --set controller.nginxplus=false --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="nginx-ingress-nginx-ingress" --set controller.name="" --set fullnameOverride="nginx-ingress-nginx-ingress"` + +1. Once the upgrade process has finished, use `kubectl describe` on the deployment to verify the change by reviewing its events: ```shell Type Reason Age From Message ---- ------ ---- ---- ------- @@ -54,36 +57,38 @@ However upon running a helm upgrade job from previous installed version to 3.1.0 Normal ScalingReplicaSet 101s deployment-controller Scaled up replica set nginx-ingress-nginx-ingress- to 1 Normal ScalingReplicaSet 98s deployment-controller Scaled down replica set nginx-ingress-nginx-ingress- to 0 from 1 +{{%/tab%}} -### If Helm release name is not ```nginx-ingress``` +{{%tab name="Release name is not nginx-ingress"%}} -1. Describe existing deployment/daemonset to get ```selector```. +1. Use `kubectl describe` to get the `selector` value: ```shell kubectl describe deployments -n ``` - Copy the key=value under ```selector```, eg: + Copy the key=value under ```selector```, such as: ```shell Selector: app=-nginx-ingress ``` -2. Checkout the latest available tag using ```git checkout v3.3.0``` +1. Checkout the latest available tag using `git checkout v3.3.0` -3. Update the ```selectorLabels: {}``` field in ```values.yaml``` file located at ``` /kubernates-ingress/deployments/helm-chart``` with the ```selector``` from Step 1. +1. Update the `selectorLabels: {}` field in the `values.yaml` file located at `/kubernates-ingress/deployments/helm-chart` with the copied `selector` value. ```shell selectorLabels: {app: -nginx-ingress} ``` -4. Run helm upgrade with following arguments set: +1. Run `helm upgrade` with following arguments set: ```shell --set controller.serviceNameOverride="-nginx-ingress", --set controller.name="" ``` - eg: ```helm upgrade test-release --set controller.kind=deployment --set controller.nginxplus=false --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="test-release-nginx-ingress" --set controller.name="" .``` + It could look as follows: + + `helm upgrade test-release --set controller.kind=deployment --set controller.nginxplus=false --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="test-release-nginx-ingress" --set controller.name=""` -5. Once upgrade process is finished, verify it by running a ```kubectl describe... ``` on deployment and that events section should have rolling update workflow: - eg: +1. Once the upgrade process has finished, use `kubectl describe` on the deployment to verify the change by reviewing its events: ```shell Type Reason Age From Message ---- ------ ---- ---- ------- @@ -91,3 +96,6 @@ However upon running a helm upgrade job from previous installed version to 3.1.0 Normal ScalingReplicaSet 101s deployment-controller Scaled up replica set test-release-nginx-ingress- to 1 Normal ScalingReplicaSet 98s deployment-controller Scaled down replica set test-release-nginx-ingress- to 0 from 1 ``` +{{%/tab%}} + +{{}} \ No newline at end of file From eb28bad0c8bddc1194f2aa5d2676f2810fb0f124 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 8 Aug 2023 10:22:44 +0000 Subject: [PATCH 05/14] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- docs/content/installation/upgrade-with-helm.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/content/installation/upgrade-with-helm.md b/docs/content/installation/upgrade-with-helm.md index 7a569dfcd3..4d7084bb15 100644 --- a/docs/content/installation/upgrade-with-helm.md +++ b/docs/content/installation/upgrade-with-helm.md @@ -85,7 +85,7 @@ The steps you should follow depend on the Helm release name: --set controller.name="" ``` It could look as follows: - + `helm upgrade test-release --set controller.kind=deployment --set controller.nginxplus=false --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="test-release-nginx-ingress" --set controller.name=""` 1. Once the upgrade process has finished, use `kubectl describe` on the deployment to verify the change by reviewing its events: @@ -98,4 +98,4 @@ The steps you should follow depend on the Helm release name: ``` {{%/tab%}} -{{}} \ No newline at end of file +{{}} From 267382b76724b3c1f68a7326f7848f043c548f87 Mon Sep 17 00:00:00 2001 From: Venktesh Date: Tue, 8 Aug 2023 12:07:06 +0100 Subject: [PATCH 06/14] typo and more language --- docs/content/installation/upgrade-with-helm.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/docs/content/installation/upgrade-with-helm.md b/docs/content/installation/upgrade-with-helm.md index 4d7084bb15..d38e9f539d 100644 --- a/docs/content/installation/upgrade-with-helm.md +++ b/docs/content/installation/upgrade-with-helm.md @@ -10,7 +10,8 @@ docs: "DOCS-603" ## Background In NGINX Ingress Controller version 3.1.0, [changes were introduced](https://github.com/nginxinc/kubernetes-ingress/pull/3606) to Helm resource names, labels and annotations to fit with Helm best practices. -When using Helm to upgrade from a version prior to to 3.1.0, certain resources like Deployment, DaemonSet and Service will be recreated due to the aforementioned changes, which could result in downtime. +When using Helm to upgrade from a version prior to to 3.1.0, certain resources like Deployment, DaemonSet and Service will be recreated due to the aforementioned changes, which will result in downtime. +Although the advisory is to update all resources in accordance with new naming convention, to avoid the downtime please follow the steps listed in this page. ## Upgrade Steps {{}} The following steps apply to both 2.x and 3.0.x releases.{{}} @@ -21,12 +22,12 @@ The steps you should follow depend on the Helm release name: {{%tab name="Release name is nginx-ingress"%}} -1. Use `kubectl describe` to get the `selector` value: +1. Use `kubectl describe deployments` to get the `Selector` value: ```shell kubectl describe deployments -n ``` - Copy the key=value under `selector`, such as: + Copy the key=value under `Selector`, such as: ```shell Selector: app=nginx-ingress-nginx-ingress @@ -61,12 +62,12 @@ The steps you should follow depend on the Helm release name: {{%tab name="Release name is not nginx-ingress"%}} -1. Use `kubectl describe` to get the `selector` value: +1. Use `kubectl describe deployments` to get the `Selector` value: ```shell kubectl describe deployments -n ``` - Copy the key=value under ```selector```, such as: + Copy the key=value under ```Selector```, such as: ```shell Selector: app=-nginx-ingress From 88cc6e8e67d4851b178b76235a4b211692bbe586 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 8 Aug 2023 11:08:34 +0000 Subject: [PATCH 07/14] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- docs/content/installation/upgrade-with-helm.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/content/installation/upgrade-with-helm.md b/docs/content/installation/upgrade-with-helm.md index d38e9f539d..3def17e80f 100644 --- a/docs/content/installation/upgrade-with-helm.md +++ b/docs/content/installation/upgrade-with-helm.md @@ -10,7 +10,7 @@ docs: "DOCS-603" ## Background In NGINX Ingress Controller version 3.1.0, [changes were introduced](https://github.com/nginxinc/kubernetes-ingress/pull/3606) to Helm resource names, labels and annotations to fit with Helm best practices. -When using Helm to upgrade from a version prior to to 3.1.0, certain resources like Deployment, DaemonSet and Service will be recreated due to the aforementioned changes, which will result in downtime. +When using Helm to upgrade from a version prior to to 3.1.0, certain resources like Deployment, DaemonSet and Service will be recreated due to the aforementioned changes, which will result in downtime. Although the advisory is to update all resources in accordance with new naming convention, to avoid the downtime please follow the steps listed in this page. ## Upgrade Steps From fc1d3f3a9647d2fe80c2e7029c60d872dee3274d Mon Sep 17 00:00:00 2001 From: Venktesh Date: Tue, 8 Aug 2023 12:25:43 +0100 Subject: [PATCH 08/14] minor typo correction --- docs/content/installation/upgrade-with-helm.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/content/installation/upgrade-with-helm.md b/docs/content/installation/upgrade-with-helm.md index 3def17e80f..3e865a370b 100644 --- a/docs/content/installation/upgrade-with-helm.md +++ b/docs/content/installation/upgrade-with-helm.md @@ -35,7 +35,7 @@ The steps you should follow depend on the Helm release name: 1. Checkout the latest available tag using `git checkout v3.3.0` -1. Update the `selectorLabels: {}` field in the `values.yaml` file located at `/kubernates-ingress/deployments/helm-chart` with the copied `selector` value. +1. Update the `selectorLabels: {}` field in the `values.yaml` file located at `/kubernates-ingress/deployments/helm-chart` with the copied `Selector` value. ```shell selectorLabels: {app: nginx-ingress-nginx-ingress} ``` @@ -75,14 +75,14 @@ The steps you should follow depend on the Helm release name: 1. Checkout the latest available tag using `git checkout v3.3.0` -1. Update the `selectorLabels: {}` field in the `values.yaml` file located at `/kubernates-ingress/deployments/helm-chart` with the copied `selector` value. +1. Update the `selectorLabels: {}` field in the `values.yaml` file located at `/kubernates-ingress/deployments/helm-chart` with the copied `Selector` value. ```shell selectorLabels: {app: -nginx-ingress} ``` 1. Run `helm upgrade` with following arguments set: ```shell - --set controller.serviceNameOverride="-nginx-ingress", + --set controller.serviceNameOverride="-nginx-ingress" --set controller.name="" ``` It could look as follows: From 01cf3c07415840b531a8d18c5a87d5b58699321b Mon Sep 17 00:00:00 2001 From: Venktesh Shivam Patel Date: Tue, 8 Aug 2023 13:04:29 +0100 Subject: [PATCH 09/14] improve readability Co-authored-by: Alan Dooley Signed-off-by: Venktesh Shivam Patel --- docs/content/installation/upgrade-with-helm.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/content/installation/upgrade-with-helm.md b/docs/content/installation/upgrade-with-helm.md index 3e865a370b..6bf4f60bce 100644 --- a/docs/content/installation/upgrade-with-helm.md +++ b/docs/content/installation/upgrade-with-helm.md @@ -11,6 +11,7 @@ docs: "DOCS-603" In NGINX Ingress Controller version 3.1.0, [changes were introduced](https://github.com/nginxinc/kubernetes-ingress/pull/3606) to Helm resource names, labels and annotations to fit with Helm best practices. When using Helm to upgrade from a version prior to to 3.1.0, certain resources like Deployment, DaemonSet and Service will be recreated due to the aforementioned changes, which will result in downtime. + Although the advisory is to update all resources in accordance with new naming convention, to avoid the downtime please follow the steps listed in this page. ## Upgrade Steps From 04925038aba19de0e6e6bb8492fcc19abb073f7c Mon Sep 17 00:00:00 2001 From: Venktesh Date: Tue, 8 Aug 2023 14:28:12 +0100 Subject: [PATCH 10/14] change `` to shell codeblocks --- docs/content/installation/upgrade-with-helm.md | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/docs/content/installation/upgrade-with-helm.md b/docs/content/installation/upgrade-with-helm.md index 6bf4f60bce..7ea8923ea4 100644 --- a/docs/content/installation/upgrade-with-helm.md +++ b/docs/content/installation/upgrade-with-helm.md @@ -21,7 +21,7 @@ The steps you should follow depend on the Helm release name: {{}} -{{%tab name="Release name is nginx-ingress"%}} +{{%tab name="Helm release name is `nginx-ingress`"%}} 1. Use `kubectl describe deployments` to get the `Selector` value: @@ -49,7 +49,9 @@ The steps you should follow depend on the Helm release name: ``` It could look as follows: - `helm upgrade nginx-ingress --set controller.kind=deployment --set controller.nginxplus=false --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="nginx-ingress-nginx-ingress" --set controller.name="" --set fullnameOverride="nginx-ingress-nginx-ingress"` + ```shell + helm upgrade nginx-ingress --set controller.kind=deployment --set controller.nginxplus=false --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="nginx-ingress-nginx-ingress" --set controller.name="" --set fullnameOverride="nginx-ingress-nginx-ingress" + ``` 1. Once the upgrade process has finished, use `kubectl describe` on the deployment to verify the change by reviewing its events: ```shell @@ -61,7 +63,7 @@ The steps you should follow depend on the Helm release name: {{%/tab%}} -{{%tab name="Release name is not nginx-ingress"%}} +{{%tab name="Helm release name is not `nginx-ingress`"%}} 1. Use `kubectl describe deployments` to get the `Selector` value: @@ -83,12 +85,14 @@ The steps you should follow depend on the Helm release name: 1. Run `helm upgrade` with following arguments set: ```shell - --set controller.serviceNameOverride="-nginx-ingress" - --set controller.name="" + --set controller.serviceNameOverride="-nginx-ingress" + --set controller.name="" ``` It could look as follows: - `helm upgrade test-release --set controller.kind=deployment --set controller.nginxplus=false --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="test-release-nginx-ingress" --set controller.name=""` + ```shell + helm upgrade test-release --set controller.kind=deployment --set controller.nginxplus=false --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="test-release-nginx-ingress" --set controller.name="" + ``` 1. Once the upgrade process has finished, use `kubectl describe` on the deployment to verify the change by reviewing its events: ```shell From 6fd89a94313e3288b6ea5708e67f5d6e7216c4e9 Mon Sep 17 00:00:00 2001 From: Venktesh Date: Mon, 21 Aug 2023 16:12:33 +0100 Subject: [PATCH 11/14] add as a section in existing doc --- .../installation/installation-with-helm.md | 103 +++++++++++++++++ .../content/installation/upgrade-with-helm.md | 107 ------------------ 2 files changed, 103 insertions(+), 107 deletions(-) delete mode 100644 docs/content/installation/upgrade-with-helm.md diff --git a/docs/content/installation/installation-with-helm.md b/docs/content/installation/installation-with-helm.md index 151445b215..734a829d73 100644 --- a/docs/content/installation/installation-with-helm.md +++ b/docs/content/installation/installation-with-helm.md @@ -170,6 +170,109 @@ The command removes all the Kubernetes components associated with the release an Uninstalling the release does not remove the CRDs. To remove the CRDs, see [Uninstalling the CRDs](#uninstalling-the-crds). + +## Upgrading without downtime + +### Background + +In NGINX Ingress Controller version 3.1.0, [changes were introduced](https://github.com/nginxinc/kubernetes-ingress/pull/3606) to Helm resource names, labels and annotations to fit with Helm best practices. +When using Helm to upgrade from a version prior to to 3.1.0, certain resources like Deployment, DaemonSet and Service will be recreated due to the aforementioned changes, which will result in downtime. + +Although the advisory is to update all resources in accordance with new naming convention, to avoid the downtime please follow the steps listed in this page. + +### Upgrade Steps +{{}} The following steps apply to both 2.x and 3.0.x releases.{{}} + +The steps you should follow depend on the Helm release name: + +{{}} + +{{%tab name="Helm release name is `nginx-ingress`"%}} + +1. Use `kubectl describe deployments` to get the `Selector` value: + + ```shell + kubectl describe deployments -n + ``` + Copy the key=value under `Selector`, such as: + + ```shell + Selector: app=nginx-ingress-nginx-ingress + ``` + +1. Checkout the latest available tag using `git checkout v3.3.0` + +1. Update the `selectorLabels: {}` field in the `values.yaml` file located at `/kubernates-ingress/deployments/helm-chart` with the copied `Selector` value. + ```shell + selectorLabels: {app: nginx-ingress-nginx-ingress} + ``` + +1. Run `helm upgrade` with following arguments set: + ```shell + --set controller.serviceNameOverride="nginx-ingress-nginx-ingress" + --set controller.name="" + --set fullnameOverride="nginx-ingress-nginx-ingress" + ``` + It could look as follows: + + ```shell + helm upgrade nginx-ingress oci://ghcr.io/nginxinc/charts/nginx-ingress--version 0.18 --set controller.kind=deployment/daemonset --set controller.nginxplus=false/true --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="nginx-ingress-nginx-ingress" --set controller.name="" --set fullnameOverride="nginx-ingress-nginx-ingress" + ``` + +1. Once the upgrade process has finished, use `kubectl describe` on the deployment to verify the change by reviewing its events: + ```shell + Type Reason Age From Message + ---- ------ ---- ---- ------- + Normal ScalingReplicaSet 9m11s deployment-controller Scaled up replica set nginx-ingress-nginx-ingress- to 1 + Normal ScalingReplicaSet 101s deployment-controller Scaled up replica set nginx-ingress-nginx-ingress- to 1 + Normal ScalingReplicaSet 98s deployment-controller Scaled down replica set nginx-ingress-nginx-ingress- to 0 from 1 + +{{%/tab%}} + +{{%tab name="Helm release name is not `nginx-ingress`"%}} + +1. Use `kubectl describe deployments` to get the `Selector` value: + + ```shell + kubectl describe deployments -n + ``` + Copy the key=value under ```Selector```, such as: + + ```shell + Selector: app=-nginx-ingress + ``` + +1. Checkout the latest available tag using `git checkout v3.3.0` + +1. Update the `selectorLabels: {}` field in the `values.yaml` file located at `/kubernates-ingress/deployments/helm-chart` with the copied `Selector` value. + ```shell + selectorLabels: {app: -nginx-ingress} + ``` + +1. Run `helm upgrade` with following arguments set: + ```shell + --set controller.serviceNameOverride="-nginx-ingress" + --set controller.name="" + ``` + It could look as follows: + + ```shell + helm upgrade test-release oci://ghcr.io/nginxinc/charts/nginx-ingress--version 0.18 --set controller.kind=deployment/daemonset --set controller.nginxplus=false/true --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="test-release-nginx-ingress" --set controller.name="" + ``` + +1. Once the upgrade process has finished, use `kubectl describe` on the deployment to verify the change by reviewing its events: + ```shell + Type Reason Age From Message + ---- ------ ---- ---- ------- + Normal ScalingReplicaSet 9m11s deployment-controller Scaled up replica set test-release-nginx-ingress- to 1 + Normal ScalingReplicaSet 101s deployment-controller Scaled up replica set test-release-nginx-ingress- to 1 + Normal ScalingReplicaSet 98s deployment-controller Scaled down replica set test-release-nginx-ingress- to 0 from 1 + ``` +{{%/tab%}} + +{{}} + + ## Running Multiple Ingress Controllers If you are running multiple Ingress Controller releases in your cluster with enabled custom resources, the releases will share a single version of the CRDs. As a result, make sure that the Ingress Controller versions match the version of the CRDs. Additionally, when uninstalling a release, ensure that you don’t remove the CRDs until there are no other Ingress Controller releases running in the cluster. diff --git a/docs/content/installation/upgrade-with-helm.md b/docs/content/installation/upgrade-with-helm.md deleted file mode 100644 index 7ea8923ea4..0000000000 --- a/docs/content/installation/upgrade-with-helm.md +++ /dev/null @@ -1,107 +0,0 @@ ---- -title: Upgrading NGINX Ingress Controller with Helm -description: "This document describes how to use Helm to upgrade NGINX Ingress Controller from 2.x and 3.0.x to the latest available release." -weight: 1800 -doctypes: [""] -toc: true -docs: "DOCS-603" ---- - -## Background - -In NGINX Ingress Controller version 3.1.0, [changes were introduced](https://github.com/nginxinc/kubernetes-ingress/pull/3606) to Helm resource names, labels and annotations to fit with Helm best practices. -When using Helm to upgrade from a version prior to to 3.1.0, certain resources like Deployment, DaemonSet and Service will be recreated due to the aforementioned changes, which will result in downtime. - -Although the advisory is to update all resources in accordance with new naming convention, to avoid the downtime please follow the steps listed in this page. - -## Upgrade Steps -{{}} The following steps apply to both 2.x and 3.0.x releases.{{}} - -The steps you should follow depend on the Helm release name: - -{{}} - -{{%tab name="Helm release name is `nginx-ingress`"%}} - -1. Use `kubectl describe deployments` to get the `Selector` value: - - ```shell - kubectl describe deployments -n - ``` - Copy the key=value under `Selector`, such as: - - ```shell - Selector: app=nginx-ingress-nginx-ingress - ``` - -1. Checkout the latest available tag using `git checkout v3.3.0` - -1. Update the `selectorLabels: {}` field in the `values.yaml` file located at `/kubernates-ingress/deployments/helm-chart` with the copied `Selector` value. - ```shell - selectorLabels: {app: nginx-ingress-nginx-ingress} - ``` - -1. Run `helm upgrade` with following arguments set: - ```shell - --set controller.serviceNameOverride="nginx-ingress-nginx-ingress" - --set controller.name="" - --set fullnameOverride="nginx-ingress-nginx-ingress" - ``` - It could look as follows: - - ```shell - helm upgrade nginx-ingress --set controller.kind=deployment --set controller.nginxplus=false --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="nginx-ingress-nginx-ingress" --set controller.name="" --set fullnameOverride="nginx-ingress-nginx-ingress" - ``` - -1. Once the upgrade process has finished, use `kubectl describe` on the deployment to verify the change by reviewing its events: - ```shell - Type Reason Age From Message - ---- ------ ---- ---- ------- - Normal ScalingReplicaSet 9m11s deployment-controller Scaled up replica set nginx-ingress-nginx-ingress- to 1 - Normal ScalingReplicaSet 101s deployment-controller Scaled up replica set nginx-ingress-nginx-ingress- to 1 - Normal ScalingReplicaSet 98s deployment-controller Scaled down replica set nginx-ingress-nginx-ingress- to 0 from 1 - -{{%/tab%}} - -{{%tab name="Helm release name is not `nginx-ingress`"%}} - -1. Use `kubectl describe deployments` to get the `Selector` value: - - ```shell - kubectl describe deployments -n - ``` - Copy the key=value under ```Selector```, such as: - - ```shell - Selector: app=-nginx-ingress - ``` - -1. Checkout the latest available tag using `git checkout v3.3.0` - -1. Update the `selectorLabels: {}` field in the `values.yaml` file located at `/kubernates-ingress/deployments/helm-chart` with the copied `Selector` value. - ```shell - selectorLabels: {app: -nginx-ingress} - ``` - -1. Run `helm upgrade` with following arguments set: - ```shell - --set controller.serviceNameOverride="-nginx-ingress" - --set controller.name="" - ``` - It could look as follows: - - ```shell - helm upgrade test-release --set controller.kind=deployment --set controller.nginxplus=false --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="test-release-nginx-ingress" --set controller.name="" - ``` - -1. Once the upgrade process has finished, use `kubectl describe` on the deployment to verify the change by reviewing its events: - ```shell - Type Reason Age From Message - ---- ------ ---- ---- ------- - Normal ScalingReplicaSet 9m11s deployment-controller Scaled up replica set test-release-nginx-ingress- to 1 - Normal ScalingReplicaSet 101s deployment-controller Scaled up replica set test-release-nginx-ingress- to 1 - Normal ScalingReplicaSet 98s deployment-controller Scaled down replica set test-release-nginx-ingress- to 0 from 1 - ``` -{{%/tab%}} - -{{}} From 50f0fb7623debc4c6b44a975426343ce6537e03f Mon Sep 17 00:00:00 2001 From: Venktesh Date: Mon, 21 Aug 2023 16:17:55 +0100 Subject: [PATCH 12/14] replace console with shell --- .../installation/installation-with-helm.md | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/docs/content/installation/installation-with-helm.md b/docs/content/installation/installation-with-helm.md index 07f6fc9d1e..902af5a2cd 100644 --- a/docs/content/installation/installation-with-helm.md +++ b/docs/content/installation/installation-with-helm.md @@ -35,7 +35,7 @@ If you do not use the custom resources that require those CRDs (which correspond To upgrade the CRDs, pull the chart sources as described in [Pulling the Chart](#pulling-the-chart) and then run: -```console +```shell kubectl apply -f crds/ ``` @@ -49,7 +49,7 @@ kubectl apply -f crds/ To remove the CRDs, pull the chart sources as described in [Pulling the Chart](#pulling-the-chart) and then run: -```console +```shell kubectl delete -f crds/ ``` @@ -65,13 +65,13 @@ To install the chart with the release name my-release (my-release is the name th For NGINX: -```console +```shell helm install my-release oci://ghcr.io/nginxinc/charts/nginx-ingress --version 0.18.1 ``` For NGINX Plus: (assuming you have pushed the Ingress Controller image `nginx-plus-ingress` to your private registry `myregistry.example.com`) -```console +```shell helm install my-release oci://ghcr.io/nginxinc/charts/nginx-ingress --version 0.18.1 --set controller.image.repository=myregistry.example.com/nginx-plus-ingress --set controller.nginxplus=true ``` @@ -83,7 +83,7 @@ Helm does not upgrade the CRDs during a release upgrade. Before you upgrade a re To upgrade the release `my-release`: -```console +```shell helm upgrade my-release oci://ghcr.io/nginxinc/charts/nginx-ingress --version 0.18.1 ``` @@ -91,7 +91,7 @@ helm upgrade my-release oci://ghcr.io/nginxinc/charts/nginx-ingress --version 0. To uninstall/delete the release `my-release`: -```console +```shell helm uninstall my-release ``` @@ -104,7 +104,7 @@ Uninstalling the release does not remove the CRDs. To remove the CRDs, see [Unin To test the latest changes in NGINX Ingress Controller before a new release, you can install the `edge` version. This version is built from the `main` branch of the NGINX Ingress Controller repository. You can install the `edge` version by specifying the `--version` flag with the value `0.0.0-edge`: -```console +```shell helm install my-release oci://ghcr.io/nginxinc/charts/nginx-ingress --version 0.0.0-edge ``` @@ -120,13 +120,13 @@ This step is required if you're installing the chart using its sources. Addition 1. Pull the chart sources: - ```console + ```shell helm pull oci://ghcr.io/nginxinc/charts/nginx-ingress --untar --version 0.18.1 ``` 2. Change your working directory to nginx-ingress: - ```console + ```shell cd nginx-ingress ``` @@ -136,13 +136,13 @@ To install the chart with the release name my-release (my-release is the name th For NGINX: -```console +```shell helm install my-release . ``` For NGINX Plus: -```console +```shell helm install my-release -f values-plus.yaml . ``` @@ -154,7 +154,7 @@ Helm does not upgrade the CRDs during a release upgrade. Before you upgrade a re To upgrade the release `my-release`: -```console +```shell helm upgrade my-release . ``` @@ -162,7 +162,7 @@ helm upgrade my-release . To uninstall/delete the release `my-release`: -```console +```shell helm uninstall my-release ``` From 883f0d43216a18b8fbae6fe19a110a21e49256c5 Mon Sep 17 00:00:00 2001 From: Venktesh Date: Wed, 23 Aug 2023 12:07:17 +0100 Subject: [PATCH 13/14] Minor updates --- .../installation/installation-with-helm.md | 30 +++++++++++-------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/docs/content/installation/installation-with-helm.md b/docs/content/installation/installation-with-helm.md index 902af5a2cd..74cdcc7a0f 100644 --- a/docs/content/installation/installation-with-helm.md +++ b/docs/content/installation/installation-with-helm.md @@ -189,7 +189,7 @@ The steps you should follow depend on the Helm release name: {{%tab name="Helm release name is `nginx-ingress`"%}} -1. Use `kubectl describe deployments` to get the `Selector` value: +1. Use `kubectl describe` on deployment/daemonset to get the `Selector` value: ```shell kubectl describe deployments -n @@ -200,14 +200,16 @@ The steps you should follow depend on the Helm release name: Selector: app=nginx-ingress-nginx-ingress ``` -1. Checkout the latest available tag using `git checkout v3.3.0` +2. Checkout the latest available tag using `git checkout v3.3.0` -1. Update the `selectorLabels: {}` field in the `values.yaml` file located at `/kubernates-ingress/deployments/helm-chart` with the copied `Selector` value. +3. Navigate to `/kubernates-ingress/deployments/helm-chart` + +4. Update the `selectorLabels: {}` field in the `values.yaml` file located at `/kubernates-ingress/deployments/helm-chart` with the copied `Selector` value. ```shell selectorLabels: {app: nginx-ingress-nginx-ingress} ``` -1. Run `helm upgrade` with following arguments set: +5. Run `helm upgrade` with following arguments set: ```shell --set controller.serviceNameOverride="nginx-ingress-nginx-ingress" --set controller.name="" @@ -216,10 +218,10 @@ The steps you should follow depend on the Helm release name: It could look as follows: ```shell - helm upgrade nginx-ingress oci://ghcr.io/nginxinc/charts/nginx-ingress--version 0.18 --set controller.kind=deployment/daemonset --set controller.nginxplus=false/true --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="nginx-ingress-nginx-ingress" --set controller.name="" --set fullnameOverride="nginx-ingress-nginx-ingress" + helm upgrade nginx-ingress oci://ghcr.io/nginxinc/charts/nginx-ingress --version 0.19.0 --set controller.kind=deployment/daemonset --set controller.nginxplus=false/true --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="nginx-ingress-nginx-ingress" --set controller.name="" --set fullnameOverride="nginx-ingress-nginx-ingress" -f values.yaml ``` -1. Once the upgrade process has finished, use `kubectl describe` on the deployment to verify the change by reviewing its events: +6. Once the upgrade process has finished, use `kubectl describe` on the deployment to verify the change by reviewing its events: ```shell Type Reason Age From Message ---- ------ ---- ---- ------- @@ -231,10 +233,10 @@ The steps you should follow depend on the Helm release name: {{%tab name="Helm release name is not `nginx-ingress`"%}} -1. Use `kubectl describe deployments` to get the `Selector` value: +1. Use `kubectl describe` on deployment/daemonset to get the `Selector` value: ```shell - kubectl describe deployments -n + kubectl describe deployment/daemonset -n ``` Copy the key=value under ```Selector```, such as: @@ -242,14 +244,16 @@ The steps you should follow depend on the Helm release name: Selector: app=-nginx-ingress ``` -1. Checkout the latest available tag using `git checkout v3.3.0` +2. Checkout the latest available tag using `git checkout v3.3.0` + +3. Navigate to `/kubernates-ingress/deployments/helm-chart` -1. Update the `selectorLabels: {}` field in the `values.yaml` file located at `/kubernates-ingress/deployments/helm-chart` with the copied `Selector` value. +4. Update the `selectorLabels: {}` field in the `values.yaml` file located at `/kubernates-ingress/deployments/helm-chart` with the copied `Selector` value. ```shell selectorLabels: {app: -nginx-ingress} ``` -1. Run `helm upgrade` with following arguments set: +5. Run `helm upgrade` with following arguments set: ```shell --set controller.serviceNameOverride="-nginx-ingress" --set controller.name="" @@ -257,10 +261,10 @@ The steps you should follow depend on the Helm release name: It could look as follows: ```shell - helm upgrade test-release oci://ghcr.io/nginxinc/charts/nginx-ingress--version 0.18 --set controller.kind=deployment/daemonset --set controller.nginxplus=false/true --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="test-release-nginx-ingress" --set controller.name="" + helm upgrade test-release oci://ghcr.io/nginxinc/charts/nginx-ingress --version 0.19.0 --set controller.kind=deployment/daemonset --set controller.nginxplus=false/true --set controller.image.pullPolicy=Always --set controller.serviceNameOverride="test-release-nginx-ingress" --set controller.name="" -f values.yaml ``` -1. Once the upgrade process has finished, use `kubectl describe` on the deployment to verify the change by reviewing its events: +6. Once the upgrade process has finished, use `kubectl describe` on the deployment to verify the change by reviewing its events: ```shell Type Reason Age From Message ---- ------ ---- ---- ------- From df88dfe011f1046ec93273100f65b454b57b48cb Mon Sep 17 00:00:00 2001 From: Venktesh Date: Wed, 23 Aug 2023 12:09:36 +0100 Subject: [PATCH 14/14] fix typos --- docs/content/installation/installation-with-helm.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/content/installation/installation-with-helm.md b/docs/content/installation/installation-with-helm.md index 74cdcc7a0f..14965f4753 100644 --- a/docs/content/installation/installation-with-helm.md +++ b/docs/content/installation/installation-with-helm.md @@ -176,7 +176,7 @@ Uninstalling the release does not remove the CRDs. To remove the CRDs, see [Unin ### Background In NGINX Ingress Controller version 3.1.0, [changes were introduced](https://github.com/nginxinc/kubernetes-ingress/pull/3606) to Helm resource names, labels and annotations to fit with Helm best practices. -When using Helm to upgrade from a version prior to to 3.1.0, certain resources like Deployment, DaemonSet and Service will be recreated due to the aforementioned changes, which will result in downtime. +When using Helm to upgrade from a version prior to 3.1.0, certain resources like Deployment, DaemonSet and Service will be recreated due to the aforementioned changes, which will result in downtime. Although the advisory is to update all resources in accordance with new naming convention, to avoid the downtime please follow the steps listed in this page. @@ -228,7 +228,7 @@ The steps you should follow depend on the Helm release name: Normal ScalingReplicaSet 9m11s deployment-controller Scaled up replica set nginx-ingress-nginx-ingress- to 1 Normal ScalingReplicaSet 101s deployment-controller Scaled up replica set nginx-ingress-nginx-ingress- to 1 Normal ScalingReplicaSet 98s deployment-controller Scaled down replica set nginx-ingress-nginx-ingress- to 0 from 1 - + ``` {{%/tab%}} {{%tab name="Helm release name is not `nginx-ingress`"%}}