Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ingress-nginx] migrate to the AdvancedDaemonSet controller #4124

Merged
merged 50 commits into from
Apr 6, 2023

Conversation

yalosev
Copy link
Member

@yalosev yalosev commented Mar 16, 2023

Description

Use OpenKruise AdvancedDaemonSet controller instead of built-in.

Why do we need it, and what problem does it solve?

Kubernetes DaemonSet controller has some problems in the heavy-loaded environments, which are hard to debug. Kruise controller has more rich workflow and expected to have smooth ingress-controller rollout process

What is the expected result?

Checklist

  • The code is covered by unit tests.
  • e2e tests passed.
  • Documentation updated according to the changes.
  • Changes were tested in the Kubernetes cluster manually.

Changelog entries

section: ingress-nginx
type: feature
summary: Use `AdvancedDaemonSet` controller for smooth ingress-controller rollout.
impact: Ingress-controller Pods will restart.
impact_level: default

@yalosev yalosev force-pushed the ingress-ds-advanced branch 2 times, most recently from 9528924 to 6f92fd7 Compare March 24, 2023 13:08
@yalosev yalosev added this to the v1.45.0 milestone Mar 24, 2023
@yalosev yalosev force-pushed the ingress-ds-advanced branch 3 times, most recently from 86b1eb3 to f7e3648 Compare March 28, 2023 12:17
@yalosev yalosev added the skip/documentation-validation Skip documentation validation in pull request label Mar 29, 2023
@yalosev yalosev force-pushed the ingress-ds-advanced branch 2 times, most recently from 994e9e8 to 1f66078 Compare March 30, 2023 12:06
@yalosev yalosev added e2e/use/cri/containerd e2e/run/yandex-cloud Run e2e tests in Yandex Cloud labels Mar 30, 2023
@deckhouse-BOaTswain
Copy link
Collaborator

deckhouse-BOaTswain commented Mar 30, 2023

🔴 e2e: Yandex.Cloud for deckhouse:ingress-ds-advanced failed in 57m44s.

E2e for yandex-cloud WithoutNAT;containerd;1.23 was failed. Use:
ssh -i ~/.ssh/e2e-id-rsa cloud-user@178.154.207.18 - connect for debugging;

/e2e/abort yandex-cloud;WithoutNAT;containerd;1.23 4564841121 4564841121-1-con-1-23 /sys/deckhouse-oss/install:pr4124 cloud-user@178.154.207.18 - for abort failed cluster

Workflow details (1 job failed)

Yandex.Cloud-WithoutNAT-Containerd-1.23 - Connection string: ssh cloud-user@178.154.207.18

🔴 e2e: Yandex.Cloud, Containerd, Kubernetes 1.23 failed in 26m32s.

@github-actions github-actions bot removed the e2e/run/yandex-cloud Run e2e tests in Yandex Cloud label Mar 30, 2023
@deckhouse-BOaTswain deckhouse-BOaTswain added the e2e/cluster/failed Pull request contains failed e2e cluster label Mar 30, 2023
@yalosev yalosev added the e2e/run/aws Run e2e tests in AWS label Mar 30, 2023
@deckhouse-BOaTswain
Copy link
Collaborator

deckhouse-BOaTswain commented Mar 30, 2023

🟢 e2e: AWS for deckhouse:ingress-ds-advanced succeeded in 42m22s.

Workflow details

AWS-WithoutNAT-Containerd-1.23 - Connection string: ssh centos@18.198.213.136

🟢 e2e: AWS, Containerd, Kubernetes 1.23 succeeded in 41m45s.

@github-actions github-actions bot removed the e2e/run/aws Run e2e tests in AWS label Mar 30, 2023
@yalosev
Copy link
Member Author

yalosev commented Mar 30, 2023

/e2e/abort yandex-cloud;WithoutNAT;containerd;1.23 4564841121 4564841121-1-con-1-23 /sys/deckhouse-oss/install:pr4124 cloud-user@178.154.207.18

@deckhouse-BOaTswain
Copy link
Collaborator

deckhouse-BOaTswain commented Mar 30, 2023

🟢 e2e destroy failed: Yandex.Cloud for refs/heads/main succeeded in 4m47s.

Workflow details

🟢 e2e destroy failed: Yandex.Cloud, Containerd, Kubernetes 1.23 succeeded in 4m29s.

@deckhouse-BOaTswain deckhouse-BOaTswain removed the e2e/cluster/failed Pull request contains failed e2e cluster label Mar 30, 2023
@yalosev yalosev added the e2e/run/aws Run e2e tests in AWS label Mar 30, 2023
@deckhouse-BOaTswain
Copy link
Collaborator

deckhouse-BOaTswain commented Mar 30, 2023

🟢 e2e: AWS for deckhouse:ingress-ds-advanced succeeded in 27m3s.

Workflow details

AWS-WithoutNAT-Containerd-1.23 - Connection string: ssh centos@3.76.183.197

🟢 e2e: AWS, Containerd, Kubernetes 1.23 succeeded in 26m22s.

@github-actions github-actions bot removed the e2e/run/aws Run e2e tests in AWS label Mar 30, 2023
@yalosev yalosev changed the title [ingress-nginx] lets try [ingress-nginx] migrate to the AdvancedDaemonSet controller Mar 31, 2023
@yalosev yalosev marked this pull request as ready for review March 31, 2023 10:24
@yalosev yalosev requested a review from nabokihms as a code owner March 31, 2023 10:24
@EvgenySamoylov EvgenySamoylov linked an issue Mar 31, 2023 that may be closed by this pull request
2 tasks
@yalosev yalosev self-assigned this Apr 4, 2023
Copy link
Member

@nabokihms nabokihms left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I understand what is happening, yet I still left some comments to clarify details.

modules/402-ingress-nginx/Chart.yaml Outdated Show resolved Hide resolved
modules/402-ingress-nginx/images/kruise/patches/README.md Outdated Show resolved Hide resolved
modules/402-ingress-nginx/images/kruise/patches/README.md Outdated Show resolved Hide resolved
modules/402-ingress-nginx/images/kruise/patches/README.md Outdated Show resolved Hide resolved
modules/402-ingress-nginx/templates/kruise/webhook.yaml Outdated Show resolved Hide resolved
yalosev and others added 4 commits April 5, 2023 18:59
Co-authored-by: Maksim Nabokikh <maksim.nabokikh@flant.com>
Signed-off-by: Yuriy Losev <yuriy.losev@flant.com>
Co-authored-by: Maksim Nabokikh <maksim.nabokikh@flant.com>
Signed-off-by: Yuriy Losev <yuriy.losev@flant.com>
Co-authored-by: Maksim Nabokikh <maksim.nabokikh@flant.com>
Signed-off-by: Yuriy Losev <yuriy.losev@flant.com>
Signed-off-by: Yuriy Losev <yuriy.losev@flant.com>
yalosev and others added 7 commits April 6, 2023 11:19
Co-authored-by: Maksim Nabokikh <maksim.nabokikh@flant.com>
Signed-off-by: Yuriy Losev <yuriy.losev@flant.com>
Co-authored-by: Maksim Nabokikh <maksim.nabokikh@flant.com>
Signed-off-by: Yuriy Losev <yuriy.losev@flant.com>
Co-authored-by: Maksim Nabokikh <maksim.nabokikh@flant.com>
Signed-off-by: Yuriy Losev <yuriy.losev@flant.com>
Signed-off-by: Yuriy Losev <yuriy.losev@flant.com>
Signed-off-by: Yuriy Losev <yuriy.losev@flant.com>
Signed-off-by: Yuriy Losev <yuriy.losev@flant.com>
Signed-off-by: Yuriy Losev <yuriy.losev@flant.com>
@yalosev yalosev added the e2e/run/aws Run e2e tests in AWS label Apr 6, 2023
@deckhouse-BOaTswain
Copy link
Collaborator

deckhouse-BOaTswain commented Apr 6, 2023

🟢 e2e: AWS for deckhouse:ingress-ds-advanced succeeded in 29m28s.

Workflow details

AWS-WithoutNAT-Containerd-1.23 - Connection string: ssh centos@3.73.249.249

🟢 e2e: AWS, Containerd, Kubernetes 1.23 succeeded in 27m0s.

@nabokihms nabokihms merged commit 74e8fcc into main Apr 6, 2023
32 checks passed
@nabokihms nabokihms deleted the ingress-ds-advanced branch April 6, 2023 19:48
This was referenced Apr 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
skip/documentation-validation Skip documentation validation in pull request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[ingress-nginx] Controller does not do rolling update correctly
3 participants