Skip to content

Conversation

tedli
Copy link
Contributor

@tedli tedli commented Sep 12, 2022

Please provide a description for what this PR is for.

cherry-pick #11680

In our multi cluster mesh, we found that, even we meet the namespace-sameness, cross cluster calls to remote cluster through eastwest gateway never happen in some cases. (calls always invoke to primary cluster)
After some digging, we found that the same kubernetes Service had different port.name, and the code that aggregating eds reads the port.name to match endpoint with service.
And if we correct the Service.spec.ports[_].name to be same as what in primary cluster (literally equal, both name no specified consider equal "" == "" ), cross cluster calls act as expect.
So as namespace-sameness, the addition constraint should be documented.

https://github.com/istio/istio/blob/93e4ec424b52da807228bd7784c59d646ec73733/pilot/pkg/xds/endpoint_builder.go#L240-L242

for _, ep := range endpoints {
			// TODO(nmittler): Consider merging discoverability policy with cluster-local
			if !ep.IsDiscoverableFromProxy(b.proxy) {
				continue
			}
			if svcPort.Name != ep.ServicePortName {
				continue
			}

And to help us figure out who should review this PR, please
put an X in all the areas that this PR affects.

  • Configuration Infrastructure
  • Docs
  • Installation
  • Networking
  • Performance and Scalability
  • Policies and Telemetry
  • Security
  • Test and Release
  • User Experience
  • Developer Infrastructure

@tedli tedli requested a review from a team as a code owner September 12, 2022 03:34
@istio-testing istio-testing added size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. needs-ok-to-test labels Sep 12, 2022
@istio-testing
Copy link
Contributor

Hi @tedli. Thanks for your PR.

I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@ericvn
Copy link
Contributor

ericvn commented Sep 12, 2022

/ok-to-test

@istio-testing istio-testing added ok-to-test Set this label allow normal testing to take place for a PR not submitted by an Istio org member. and removed needs-ok-to-test labels Sep 12, 2022
@ericvn
Copy link
Contributor

ericvn commented Sep 12, 2022

Although again, the automated cherry-pick in #11680 should create this PR which will be approved for merged.

#11680 really needs to be approved and merged which will do the other releases automatically.

If we don't want to push #11680, then let's merge this and cherry-pick to 1.15 (already labelled). Since @craigbox had the latest review, I'll leave this for him to approve.

@ericvn
Copy link
Contributor

ericvn commented Sep 27, 2022

@craigbox Any further comments on this PR?

Copy link
Contributor

@craigbox craigbox left a comment

Choose a reason for hiding this comment

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

add comments from #11892.

@istio-testing istio-testing merged commit db3731f into istio:master Nov 11, 2022
justedennnnn pushed a commit to justedennnnn/istio.io that referenced this pull request Jun 29, 2023
…#11680) (istio#11891)

* doc the port name should be same

* namespace sameness, accept craigbox's suggestion
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ok-to-test Set this label allow normal testing to take place for a PR not submitted by an Istio org member. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants