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

clustermesh: remote services handling misc improvements #24515

Merged
merged 4 commits into from Apr 3, 2023

Conversation

giorio94
Copy link
Member

Please, refer to the individual commit messages for the details about the respective changes.

@giorio94 giorio94 added area/clustermesh Relates to multi-cluster routing functionality in Cilium. release-note/misc This PR makes changes that have no direct user impact. labels Mar 22, 2023
@giorio94 giorio94 requested review from a team as code owners March 22, 2023 10:46
@giorio94
Copy link
Member Author

/test

pkg/k8s/service_cache.go Outdated Show resolved Hide resolved
Copy link
Member

@nathanjsweet nathanjsweet left a comment

Choose a reason for hiding this comment

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

Nits. Quick question: What is the service mutator for?

pkg/k8s/service_cache.go Outdated Show resolved Hide resolved
pkg/loadbalancer/loadbalancer.go Show resolved Hide resolved
@giorio94
Copy link
Member Author

Following an offline discussion with @aanm, I've extracted two bug-fix commits in a separate PR (#24619) to allow them to be easily backported.

@giorio94 giorio94 added the dont-merge/blocked Another PR must be merged before this one. label Mar 29, 2023
@giorio94
Copy link
Member Author

I've added the blocked label since it requires to be rebased on top of #24619 once that one is merged (one integration test would fail otherwise).

giorio94 and others added 4 commits March 30, 2023 08:42
Previously, we filtered events received from remote services observers
based on the IncludeExternal and Shared flags. This commit changes the
logic to consider only the Shared flag, which is more idiomatic (since
IncludeExternal takes only effect in the local cluster). No behavioral
change is introduced though, since a non-global service cannot be shared.

Signed-off-by: Marco Iorio <marco.iorio@isovalent.com>
Currently, we identify services using name + namespace. This commit
extends the ID to possibly include also the cluster name, and adapts the
related external service merging logic to account for its presence. The
ServiceID with empty cluster name is reserved for backward compatibility.

Co-authored-by: Yutaro Hayakawa <yutaro.hayakawa@isovalent.com>
Signed-off-by: Marco Iorio <marco.iorio@isovalent.com>
Expose the cluster name as part of the service metadata, in case it does
not match the one of the local cluster. Then, the CLI can use that to
output a more informative status. Note: the CLI currently relies on the
cluster name not being set if the service is local, since it does not
know the local cluster name).

Signed-off-by: Marco Iorio <marco.iorio@isovalent.com>
Extend the service cache to specify additional mutators to be executed
when a service is received from k8s and converted to the internal
representation.

Signed-off-by: Marco Iorio <marco.iorio@isovalent.com>
@giorio94
Copy link
Member Author

I've added the blocked label since it requires to be rebased on top of #24619 once that one is merged (one integration test would fail otherwise).

I've force pushed to rebase onto master, given that #24619 has been merged.

@giorio94 giorio94 removed the dont-merge/blocked Another PR must be merged before this one. label Mar 30, 2023
@giorio94
Copy link
Member Author

giorio94 commented Mar 30, 2023

/test

Job 'Cilium-PR-K8s-1.24-kernel-5.4' failed:

Click to show.

Test Name

K8sDatapathConfig Host firewall With VXLAN

Failure Output

FAIL: Failed to reach 10.0.1.247:80 from testclient-host-4ttrz

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

@giorio94
Copy link
Member Author

The integration tests failed due to a new flake: #24652

@giorio94
Copy link
Member Author

giorio94 commented Mar 30, 2023

/test-1.24-5.4

Hit known flake #16122

@youngnick youngnick removed their request for review March 30, 2023 23:39
@giorio94
Copy link
Member Author

@aspsk @squeed PTAL

@maintainer-s-little-helper maintainer-s-little-helper bot added the ready-to-merge This PR has passed all tests and received consensus from code owners to merge. label Apr 3, 2023
@christarazi christarazi merged commit a17f0e6 into cilium:master Apr 3, 2023
42 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/clustermesh Relates to multi-cluster routing functionality in Cilium. ready-to-merge This PR has passed all tests and received consensus from code owners to merge. release-note/misc This PR makes changes that have no direct user impact.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants