-
Notifications
You must be signed in to change notification settings - Fork 388
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
Mistake in a BackendTrafficPolicy causes all routes to return 404 #5147
Comments
looks like this one managed to escape all the checks, here's the error from the envoy proxy
We have 3 levels of validation
|
@zhaohuabing any idea why the xDS validate didn't kick in ? this issue can be fixed by adding a CEL validation for this case |
@arkodg the validation is done in the gateway/internal/xds/translator/translator.go Lines 427 to 441 in 549fdde
This may happen in other xDS validation as well. I'm going to send a PR to fix it. |
Created #5148 to add missing validations. The CEL validation/Gateway API translator validation for |
Fixes: envoyproxy#5147 Signed-off-by: Arko Dasgupta <[email protected]>
Fixes: envoyproxy#5147 Signed-off-by: Arko Dasgupta <[email protected]>
* fail validation if baseInterval is 0s Fixes: envoyproxy#5147 Signed-off-by: Arko Dasgupta <[email protected]> * more validations Signed-off-by: Arko Dasgupta <[email protected]> --------- Signed-off-by: Arko Dasgupta <[email protected]>
* fail validation if baseInterval is 0s Fixes: envoyproxy#5147 Signed-off-by: Arko Dasgupta <[email protected]> * more validations Signed-off-by: Arko Dasgupta <[email protected]> --------- Signed-off-by: Arko Dasgupta <[email protected]>
* fail validation if baseInterval is 0s Fixes: envoyproxy#5147 Signed-off-by: Arko Dasgupta <[email protected]> * more validations Signed-off-by: Arko Dasgupta <[email protected]> --------- Signed-off-by: Arko Dasgupta <[email protected]>
* fail validation if baseInterval is 0s Fixes: envoyproxy#5147 Signed-off-by: Arko Dasgupta <[email protected]> * more validations Signed-off-by: Arko Dasgupta <[email protected]> --------- Signed-off-by: Arko Dasgupta <[email protected]> (cherry picked from commit 4844d9a) Signed-off-by: Guy Daich <[email protected]>
* fail validation if baseInterval is 0s Fixes: envoyproxy#5147 Signed-off-by: Arko Dasgupta <[email protected]> * more validations Signed-off-by: Arko Dasgupta <[email protected]> --------- Signed-off-by: Arko Dasgupta <[email protected]> (cherry picked from commit 4844d9a) Signed-off-by: Guy Daich <[email protected]>
* fail validation if baseInterval is 0s Fixes: envoyproxy#5147 Signed-off-by: Arko Dasgupta <[email protected]> * more validations Signed-off-by: Arko Dasgupta <[email protected]> --------- Signed-off-by: Arko Dasgupta <[email protected]> (cherry picked from commit 4844d9a) Signed-off-by: Guy Daich <[email protected]>
* doc: response compression (#5071) compression docs Signed-off-by: Huabing Zhao <[email protected]> (cherry picked from commit 549fdde) Signed-off-by: Guy Daich <[email protected]> * docs: how to specify a self-signed ca for the remote jwks host in the SP JWT settings. (#5085) * docs for jwt self-signed ca Signed-off-by: Huabing Zhao <[email protected]> * fix gen Signed-off-by: Huabing Zhao <[email protected]> * update docs Signed-off-by: Huabing Zhao <[email protected]> --------- Signed-off-by: Huabing Zhao <[email protected]> (cherry picked from commit fdc7849) Signed-off-by: Guy Daich <[email protected]> * chore: fix gen (#5166) fix gen Signed-off-by: Huabing (Robin) Zhao <[email protected]> (cherry picked from commit 34db8af) Signed-off-by: Guy Daich <[email protected]> * docs: add api key auth instructions (#5097) * docs: add api key auth instruction Signed-off-by: Taufik Mulyana <[email protected]> * fix: remove unrelated links Signed-off-by: Taufik Mulyana <[email protected]> --------- Signed-off-by: Taufik Mulyana <[email protected]> (cherry picked from commit b5cf087) Signed-off-by: Guy Daich <[email protected]> * add SECURITY.md (#5167) Signed-off-by: Arko Dasgupta <[email protected]> (cherry picked from commit f7a10eb) Signed-off-by: Guy Daich <[email protected]> * chore: link SECURITY.md (#5168) Signed-off-by: Arko Dasgupta <[email protected]> (cherry picked from commit ac9026f) Signed-off-by: Guy Daich <[email protected]> * build(deps): bump actions/stale from 9.0.0 to 9.1.0 (#5162) Bumps [actions/stale](https://github.com/actions/stale) from 9.0.0 to 9.1.0. - [Release notes](https://github.com/actions/stale/releases) - [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md) - [Commits](actions/stale@28ca103...5bef64f) --- updated-dependencies: - dependency-name: actions/stale dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Arko Dasgupta <[email protected]> (cherry picked from commit 57d4aa8) Signed-off-by: Guy Daich <[email protected]> * docs: rm sectionName from some of the examples (#5173) adds whats left off from #4868 deleted the sectionName in these examples because the Service spec does not define a port `Name` Signed-off-by: Arko Dasgupta <[email protected]> (cherry picked from commit 45804e2) Signed-off-by: Guy Daich <[email protected]> * ci(fix): osv-scanner PR mode (#5174) fix: osv-scanner PR mode Signed-off-by: shahar-h <[email protected]> Co-authored-by: Guy Daich <[email protected]> (cherry picked from commit e904d3f) Signed-off-by: Guy Daich <[email protected]> * wip: docs: add standalone in container instruction (#5172) * docs: add standalone in container instruction Signed-off-by: Denis Shatokhin <[email protected]> * docs: update headings and image tag Signed-off-by: Denis Shatokhin <[email protected]> --------- Signed-off-by: Denis Shatokhin <[email protected]> (cherry picked from commit a3448c1) Signed-off-by: Guy Daich <[email protected]> * docs: update prerequisites files with installation and connectivity t… (#5094) * docs: update prerequisites files with installation and connectivity testing steps Signed-off-by: DeeBi9 <[email protected]> * lint Signed-off-by: DeeBi9 <[email protected]> * docs: remove the Note Signed-off-by: DeeBi9 <[email protected]> * remove redundant code Signed-off-by: DeeBi9 <[email protected]> --------- Signed-off-by: DeeBi9 <[email protected]> (cherry picked from commit 3253339) Signed-off-by: Guy Daich <[email protected]> * [release/v1.3] fix 1.3.0-rc.1 release note (#5175) * fix 1.3.0-rc.1 release note Signed-off-by: Guy Daich <[email protected]> * more fixes Signed-off-by: Guy Daich <[email protected]> --------- Signed-off-by: Guy Daich <[email protected]> (cherry picked from commit 4fba2bf) Signed-off-by: Guy Daich <[email protected]> * fail validation if baseInterval is 0s (#5176) * fail validation if baseInterval is 0s Fixes: #5147 Signed-off-by: Arko Dasgupta <[email protected]> * more validations Signed-off-by: Arko Dasgupta <[email protected]> --------- Signed-off-by: Arko Dasgupta <[email protected]> (cherry picked from commit 4844d9a) Signed-off-by: Guy Daich <[email protected]> * [release/1.3] release notes (#5177) Signed-off-by: Guy Daich <[email protected]> (cherry picked from commit c2215b2) Signed-off-by: Guy Daich <[email protected]> --------- Signed-off-by: Huabing Zhao <[email protected]> Signed-off-by: Guy Daich <[email protected]> Signed-off-by: Huabing (Robin) Zhao <[email protected]> Signed-off-by: Taufik Mulyana <[email protected]> Signed-off-by: Arko Dasgupta <[email protected]> Signed-off-by: dependabot[bot] <[email protected]> Signed-off-by: shahar-h <[email protected]> Signed-off-by: Denis Shatokhin <[email protected]> Signed-off-by: DeeBi9 <[email protected]> Co-authored-by: Huabing (Robin) Zhao <[email protected]> Co-authored-by: Taufik Mulyana <[email protected]> Co-authored-by: Arko Dasgupta <[email protected]> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: shahar-h <[email protected]> Co-authored-by: Denis Shatokhin <[email protected]> Co-authored-by: Deepanshu Bisht <[email protected]>
Same problem with all routes 404 when using filters
I understand that filters are not needed here and maybe they are written incorrectly, I'm just making a report that the problem in one httproute affects all httroutes in the cluster. |
Description:
A colleage and I found that a subtle mistake in a single
BackendTrafficPolicy
can make envoy proxy instances return 404's for ALL routes.Repro steps:
Create a BackendTrafficPolicy as shown above. Nothing stops a developer setting
baseInterval: 0s
.At first, nothing is wrong. Then, if you restart envoy proxies, you'll find ALL httproutes return 404s immediately. Logs show
route_not_found
for all requests but no mention of why or which resources causs this. Inspecting the raw envoy config via the admin portal, thedynamic_route_configs
section is never generated (usually its populated).To find the offending resource, we had to delete resources until discovering the problematic thing was this one
BackendTrafficPolicy
and this one value within it. Pretty scary to us. Questions:baseInterval
?Environment:
envoy-gateway: v1.2.5
Logs:
The text was updated successfully, but these errors were encountered: