-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
ClusterLoadAssignment IPs become empty after updating Cluster configuration with the same EDS ServiceName #31535
Comments
cc @adisuissa |
This can happen because go-control-plain v0.11 does not guarantee ordering of responses for delta ADS, and thus, EDS update can be sent before CDS update to the Envoy, and will not resend EDS update when Envoy received CDS update and requested for an update for EDS. |
If you only update CDS configuration and do not update EDS configuration, then upgrading to v0.12 might not fix the problem since go-control-plane does not re-send EDS configuration if there is no change. Then it could be a similar issue as envoyproxy/gateway#2345, and you would need to use eds cache so that Envoy fails back to configurations in the cache. |
Generally speaking, in Envoy when receiving a cluster-update, a followup EDS update needs to be received from the control-plane. |
This issue has been automatically marked as stale because it has not had activity in the last 30 days. It will be closed in the next 7 days unless it is tagged "help wanted" or "no stalebot" or other activity occurs. Thank you for your contributions. |
This issue has been automatically closed because it has not had activity in the last 37 days. If this issue is still valid, please ping a maintainer and ask them to label it as "help wanted" or "no stalebot". Thank you for your contributions. |
I am using Envoy to fetch Cluster and EDS configurations from an ADS server. I've noticed an issue where, after updating the Cluster configuration (while keeping the same eds_cluster_config.service_name), the IPs in the corresponding ClusterLoadAssignment become empty, even though the content of the ClusterLoadAssignment has not changed.
Steps to reproduce:
Fetch Cluster and EDS configurations from the ADS server.
Update the Cluster configuration, keeping the same eds_cluster_config.service_name.
Observe that the IPs in the corresponding ClusterLoadAssignment become empty.
Expected behavior:
Since the eds_cluster_config.service_name and the content of the ClusterLoadAssignment have not changed, I would expect the IPs in the ClusterLoadAssignment to remain the same after updating the Cluster configuration.
Additional information:
Envoy version: v1.28
Go-control-plane: v0.11.1
ADS API Type: DELTA_GRPC
I would appreciate any help in understanding why this is happening and how to prevent it. Thank you.
The text was updated successfully, but these errors were encountered: