Skip to content

Document VirtualServer routeSelector no-match warning (NIC) - #2301

Draft
promptless[bot] wants to merge 1 commit into
mainfrom
promptless/nic-routeselector-no-match-warning
Draft

promptless[bot] wants to merge 1 commit into
mainfrom
promptless/nic-routeselector-no-match-warning

Conversation

@promptless

@promptless promptless Bot commented Sep 19, 2026

Copy link
Copy Markdown
Contributor

Proposed changes

Documents nginx/kubernetes-ingress#10913 (which fixes nginx/kubernetes-ingress#10899): F5 NGINX Ingress Controller now emits a Warning event and sets a VirtualServer to State: Warning when its routeSelector matches no VirtualServerRoutes. Previously such a VirtualServer stayed State: Valid with no event, so it silently served no routes for the selected paths — indistinguishable from a healthy VirtualServer. This aligns selector-based attachment with named route: attachment, which already warned.

What changed:

  • content/nic/troubleshooting/troubleshoot-virtualserver.md: adds a "Warning events" subsection showing the Warning / AddedOrUpdatedWithWarning event from kubectl describe vs, the conditions that cause it (a selected VirtualServerRoute is deleted, its ingressClassName changes, or its labels change so they no longer match the selector), and how to clear it.
  • content/nic/configuration/virtualserver-and-virtualserverroute-resources.md: adds a note in the RouteSelector reference section cross-linking to the new troubleshooting content.

Notes for the reviewer:

  • Source PR Warn when routeSelector matches no VirtualServerRoutes kubernetes-ingress#10913 is open and unmerged, so this behavior is not yet in a released version. Please hold or retarget this docs PR so it merges only when the source change ships, to avoid publishing unreleased behavior on the continuously deployed site. The base is main because no NGINX Ingress Controller release branch exists and the source PR carries no milestone or version; retarget it if a release branch is cut.
  • This change looks release-note worthy, because it changes the reported state of existing users' VirtualServers. The release note and changelog entry are left to the maintainers per repository convention and are not included here.
  • The source PR is still under review with open design questions (whether removing a label as a deliberate detach should warn, and the volume of transient warnings during startup or rollout), so the documented behavior may change before it merges.

Checklist

Before sharing this pull request, I completed the following checklist:

Footnotes

  1. Potentially sensitive information includes personally identify information (PII), authentication credentials, and live URLs. Refer to the style guide for guidance about placeholder content.

Document that F5 NGINX Ingress Controller now emits a Warning event and
sets a VirtualServer to State: Warning when its routeSelector matches no
VirtualServerRoutes, instead of staying Valid with no event.

Add a "Warning events" section to the VirtualServer troubleshooting page
with the kubectl describe output, the conditions that cause the warning,
and how to clear it. Add a cross-linked note in the routeSelector
reference section.

Documents nginx/kubernetes-ingress#10913.
@github-actions github-actions Bot added documentation Improvements or additions to documentation product/nic Issues related to NGINX Ingress Controller labels Sep 19, 2026
Comment thread content/nic/troubleshooting/troubleshoot-virtualserver.md
Comment thread content/nic/troubleshooting/troubleshoot-virtualserver.md
@github-actions

Copy link
Copy Markdown

Deploy Preview will be available once build job completes!

Name Link
😎 Deploy Preview https://frontdoor-test-docs.nginx.com/previews/docs/2301/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation product/nic Issues related to NGINX Ingress Controller

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: A VirtualServer attached via routeSelector silently loses routes and stays Valid

0 participants