-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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
route: Specify "proto kernel" for ip routes and rules #31716
Conversation
v1.14 installs routes and rules with specific "proto kernel", v1.15 missed them. Without "proto kernel", it causes troubles when downgrade from v1.15 to v1.14, as v1.14 is deleting routes with "proto kernel" but there are no matching ones. Signed-off-by: Zhichuan Liang <gray.liang@isovalent.com>
/test |
@jschwinger233 could you take a minute to sketch out how this will affect the downgrade to an older From a quick glance
|
@julianwiedmann It doesn't look good... This PR installs Things are even worse when doing upgrade from old v1.15. With this PR, cilium-main calls
|
And with the same logic, an old
Ah, so for upgrade we would also need an unconditional clean-up of the |
@julianwiedmann Yes. I think it can go easier if upgrade path is 1.15-old -> 1.15-tip -> 1.16 upgrade: 1.15-old -> 1.15-tip:
downgrade: 1.15-tip -> 1.15-old:
upgrade: 1.15-tip -> 1.16 Routings are all correct without need to change. Overall, I think this PR should follow the steps: patch 1. Add extra code to delete "duplicate" routes / rules. The patch order is arranged above so as to not break git bisect. |
Right, we can stipulate that users will go through |
I re-mark this as ready for review. Please see the 1.15 backport PR #31777 for upgrade/downgrade issues. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm - think we established that all the upgrade/downgrade smarts need to happen in the v1.15
branch, and we don't need to consider them here.
@rgo3 not re-requesting review, but does the reasoning about upgrade/downgrade in #31716 (comment) check out for you? 🙏 |
SGTM. We already recommend that when upgrading to a new minor version users should upgrade to the latest patch version of the previous minor version first. Do we need to communicate this additionally in some specific 1.16 upgrade guide or is the hint in our general upgrade documentation enough? |
I think the upgrade guide already makes it clear that "upgrade to latest patch version" is required: https://docs.cilium.io/en/stable/operations/upgrade/#step-1-upgrade-to-latest-patch-version |
v1.14 installs routes and rules with specific "proto kernel", v1.15 missed them. Without "proto kernel", it causes troubles when downgrade from v1.15 to v1.14, as v1.14 is deleting routes with "proto kernel" but there are no matching ones.