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

bgp: Replaced localNodeStore based nodespecer with resources #23276

Merged
merged 1 commit into from
Jan 24, 2023

Conversation

dylandreimerink
Copy link
Member

@dylandreimerink dylandreimerink commented Jan 24, 2023

In PR #22397 the nodespecer implementation was turned into a cell. That implementation used the localNodeStore to get access to a generic node object that would contain annotations, labels and podCIDRs.

However, it turns out that the localNodeStore doesn't function as one might expect and didn't register updates properly.

This PR changes the implementation to use resources to subscribe to changes in the node objects of the API server directly. This is very much like the old pre-modularization implementation, but now using resources instead of informers.

Fixes: #23155

Fixed bug where the BGP Control Plane would ignore annotations on the node objects

@dylandreimerink dylandreimerink added the dont-merge/preview-only Only for preview or testing, don't merge it. label Jan 24, 2023
@maintainer-s-little-helper maintainer-s-little-helper bot added backport/1.13 This PR represents a backport for Cilium 1.13.x of a PR that was merged to main. kind/backports This PR provides functionality previously merged into master. labels Jan 24, 2023
@github-actions github-actions bot added the kind/community-contribution This was a contribution made by a community member. label Jan 24, 2023
@dylandreimerink dylandreimerink changed the title DO-NOT-MERGE: bgp: Replaced localNodeStore based nodespecer with resources bgp: Replaced localNodeStore based nodespecer with resources Jan 24, 2023
@dylandreimerink dylandreimerink added kind/bug This is a bug in the Cilium logic. release-note/bug This PR fixes an issue in a previous release of Cilium. area/bgp and removed dont-merge/preview-only Only for preview or testing, don't merge it. kind/community-contribution This was a contribution made by a community member. labels Jan 24, 2023
@dylandreimerink dylandreimerink marked this pull request as ready for review January 24, 2023 10:37
@dylandreimerink dylandreimerink requested a review from a team as a code owner January 24, 2023 10:37
@dylandreimerink
Copy link
Member Author

/test

@aanm aanm mentioned this pull request Jan 24, 2023
3 tasks
@dylandreimerink
Copy link
Member Author

/test-backport-1.13

[ modified upstream commit 9edbece ]

In PR cilium#22397 the nodespecer implementation was turned into a cell. That
implementation used the localNodeStore to get access to a generic
node object that would contain annotations, labels and podCIDRs.

However, it turns out that the localNodeStore doesn't function as one
might expect and didn't register updates properly.

This commit changes the implementation to use resources to subscribe
to changes in the node objects of the API server directly. This is
very much like the old pre-modularization implementation, but now using
resources instead of informers.

Signed-off-by: Dylan Reimerink <dylan.reimerink@isovalent.com>
@dylandreimerink
Copy link
Member Author

dylandreimerink commented Jan 24, 2023

/test-backport-1.13

Job 'Cilium-PR-K8s-1.24-kernel-4.9' hit: #22578 (96.78% similarity)

Job 'Cilium-PR-K8s-1.21-kernel-4.9' failed:

Click to show.

Test Name

K8sDatapathConfig Host firewall With VXLAN

Failure Output

FAIL: Failed to reach 192.168.56.11:80 from testclient-host-9c5nx

If it is a flake and a GitHub issue doesn't already exist to track it, comment /mlh new-flake Cilium-PR-K8s-1.21-kernel-4.9 so I can create one.

@dylandreimerink
Copy link
Member Author

dylandreimerink commented Jan 24, 2023

Alright, tests seem mostly ok.

We are hitting flake #21519 in test-1.21-4.9 and #22578 in test-1.24-4.9.

The ConformanceGKE test is failing on an issue for which I have not yet been able to find an existing report. But the other backport PR #23284 is also hitting the same issue, so it might be that its broken in the target branch.

So ignoring flakes, we should be good to go, marking ready-to-merge.

@dylandreimerink dylandreimerink added the ready-to-merge This PR has passed all tests and received consensus from code owners to merge. label Jan 24, 2023
@aanm aanm merged commit bc51b25 into cilium:v1.13 Jan 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/bgp backport/1.13 This PR represents a backport for Cilium 1.13.x of a PR that was merged to main. kind/backports This PR provides functionality previously merged into master. kind/bug This is a bug in the Cilium logic. ready-to-merge This PR has passed all tests and received consensus from code owners to merge. release-note/bug This PR fixes an issue in a previous release of Cilium.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants