-
Notifications
You must be signed in to change notification settings - Fork 1.6k
clarify unmentioned constraint port.name equalness #11680
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
Conversation
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 aggregating eds read port.name to match endpoint with service. And if correct `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.
😊 Welcome! This is either your first contribution to the Istio documentation repo, or
Thanks for contributing! Courtesy of your friendly welcome wagon. |
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 Once the patch is verified, the new status will be reflected by the 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. |
/ok-to-test |
@tedli: Cannot trigger testing until a trusted user reviews the PR and leaves an In response to this:
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. |
/ok-to-test |
/retest |
WG Network, PTAL |
This PR is targeted for the release-1.14 branch which will shortly be archived and likely not archived again. Thus this PR will not show up in the 1.14 version of the documentation. This PR should be rebased on the main branch (and cherry-picked to 1.15 if needed). |
@tedli could you please rebase this on master or release-1.15? |
@craigbox If we approve this one, it will be cp'd to the other releases. This PR won't matter too much, unless we rebuild the 1.14 archive. But at least the tooling should cherry-pick to the istio and preliminary istio branches. Else, we could close this and approve the one in master and cherry-pick that to 1.15. |
load-balanced across all clusters in the mesh for a given service. | ||
|
||
For one or many ports within the combined service, same port value should also have same port name. |
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.
For one or many ports within the combined service, same port value should also have same port name. | |
Ports that match on _number_ must also have the same port _name_ to be considered as a combined service port.``` |
… (#11891) * doc the port name should be same * namespace sameness, accept craigbox's suggestion
…#11680) (istio#11891) * doc the port name should be same * namespace sameness, accept craigbox's suggestion
Please provide a description for what this PR is for.
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
kubernetesService
had differentport.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
And to help us figure out who should review this PR, please
put an X in all the areas that this PR affects.