Skip to content

Conversation

lucasl0st
Copy link
Contributor

Proposed changes

Problem: the readiness probe endpoint is not available on IPv6. This is a problem on IPv6 only clusters when using IPv6 for the pod network. The gateway pod refuses to come up because the readyz condition never fulfills.
Example:

Warning Unhealthy 88s (x160 over 26m) kubelet Readiness probe failed: Get "http://[fdd3:7046:2ad5:430a:39bb:bc6d:e254:a621]:8081/readyz": dial tcp [fdd3:7046:2ad5:430a:39bb:bc6d:e254:a621]:8081: connect: connection refused 

Solution: host the readyz endpoint on IPv6 as well.

Testing: deployed on an IPv6 only cluster, gateway pod now comes up successfully, HTTPRoutes become available.

Checklist

Before creating a PR, run through this checklist and mark each as complete.

  • I have read the CONTRIBUTING doc
  • I have added tests that prove my fix is effective or that my feature works
  • I have checked that all unit tests pass after adding my changes
  • I have updated necessary documentation
  • I have rebased my branch onto main
  • I will ensure my PR is targeting the main branch and pulling from my branch from my own fork

Release notes

If this PR introduces a change that affects users and needs to be mentioned in the release notes,
please add a brief note that summarizes the change.

Fix an issue regarding the readiness probe for the gateway pod on clusters with IPv6 pod networking 
Copy link

nginx-bot bot commented Aug 20, 2025

Hi @lucasl0st! Welcome to the project! 🎉

Thanks for opening this pull request!
Be sure to check out our Contributing Guidelines while you wait for someone on the team to review this.

Please make sure to include the issue number in the PR description to automatically close the issue when the PR is merged.
See Linking a pull request to an issue and our Pull Request Guidelines for more information.

@github-actions github-actions bot added the bug Something isn't working label Aug 20, 2025
Copy link
Contributor

github-actions bot commented Aug 20, 2025

✅ All required contributors have signed the F5 CLA for this PR. Thank you!
Posted by the CLA Assistant Lite bot.

@lucasl0st
Copy link
Contributor Author

I have hereby read the F5 CLA and agree to its terms

@lucasl0st lucasl0st force-pushed the fix/host-readyz-ipv6 branch 2 times, most recently from 3b70d70 to 59e75af Compare August 20, 2025 20:31
@lucasl0st lucasl0st marked this pull request as ready for review August 20, 2025 20:31
@lucasl0st lucasl0st requested a review from a team as a code owner August 20, 2025 20:31
@lucasl0st lucasl0st force-pushed the fix/host-readyz-ipv6 branch from 59e75af to f3c8b91 Compare August 20, 2025 20:39
@lucasl0st
Copy link
Contributor Author

The failing tests are not because of my changes right? 😅
Because I see them failing on main too

Let me know if I need to check it further

Copy link
Contributor

@bjee19 bjee19 left a comment

Choose a reason for hiding this comment

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

nice job

@bjee19
Copy link
Contributor

bjee19 commented Aug 20, 2025

The failing tests are not because of my changes right? 😅
Because I see them failing on main too
Let me know if I need to check it further

Yea I don't think those are because of your changes. We're in the middle of debugging some of these flakey pipeline test runs but you should be good.

@sjberman sjberman merged commit 9d7d164 into nginx:main Aug 20, 2025
61 of 64 checks passed
@github-project-automation github-project-automation bot moved this from 🆕 New to ✅ Done in NGINX Gateway Fabric Aug 20, 2025
@lucasl0st lucasl0st deleted the fix/host-readyz-ipv6 branch August 20, 2025 21:32
sjberman pushed a commit that referenced this pull request Aug 20, 2025
Problem: the readiness probe endpoint is not available on IPv6. This is a problem on IPv6 only clusters when using IPv6 for the pod network. The gateway pod refuses to come up because the readyz condition never fulfills. Example: ``` Warning Unhealthy 88s (x160 over 26m) kubelet Readiness probe failed: Get "http://[fdd3:7046:2ad5:430a:39bb:bc6d:e254:a621]:8081/readyz": dial tcp [fdd3:7046:2ad5:430a:39bb:bc6d:e254:a621]:8081: connect: connection refused ``` Solution: host the readyz endpoint on IPv6 as well.
sjberman added a commit that referenced this pull request Aug 20, 2025
Problem: the readiness probe endpoint is not available on IPv6. This is a problem on IPv6 only clusters when using IPv6 for the pod network. The gateway pod refuses to come up because the readyz condition never fulfills. Example: ``` Warning Unhealthy 88s (x160 over 26m) kubelet Readiness probe failed: Get "http://[fdd3:7046:2ad5:430a:39bb:bc6d:e254:a621]:8081/readyz": dial tcp [fdd3:7046:2ad5:430a:39bb:bc6d:e254:a621]:8081: connect: connection refused ``` Solution: host the readyz endpoint on IPv6 as well. Co-authored-by: Lucas Pape <lpape@proton.me>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working community release-notes

3 participants