-
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
Add EDS to /config_dump #3362
Comments
This completes initial implementation of the /config_dump admin endpoint, allowing for detailed display of the currently loaded Envoy configuration, including versions of each resource. Note that this does not include output for EDS. That work is tracked in #3362. Fixes #2421 Fixes #2172 *Risk Level*: Low *Testing*: Unit/integration *Docs Changes*: Added *Release Notes*: Added Signed-off-by: Matt Klein <[email protected]>
This completes initial implementation of the /config_dump admin endpoint, allowing for detailed display of the currently loaded Envoy configuration, including versions of each resource. Note that this does not include output for EDS. That work is tracked in envoyproxy/envoy#3362. Fixes envoyproxy/envoy#2421 Fixes envoyproxy/envoy#2172 *Risk Level*: Low *Testing*: Unit/integration *Docs Changes*: Added *Release Notes*: Added Signed-off-by: Matt Klein <[email protected]> Mirrored from https://github.com/envoyproxy/envoy @ a2a5fc1df1541ebe0b0cd761f3e77212dbf70e5f
@htuch looks like there is an existing issue regarding eds config dump. @mattklein123 I was looking into getting a dump of effective eds weights but it seems that the /clusters endpoint dumps the endpoint weight. What would it take to get more eds info into the /clusters endpoint? |
I've had other folks ask for this as well. Would be great to get someone to take on this work. I think even disjoint from cluster, there is some value here. |
Agreed we should fix this and get EDS into config_dump. @hennna do you want to pick this up? |
It doesn't look like there's much time in the coming weeks. But are there parts of the code I can familiarize myself with to see how much work is involved? |
We also may be able to dump this information in the control plane. |
@hennna take a look at |
/cc @incfly |
Any update on the progress? |
@Rainton will be working on this over the summer. |
Signed-off-by: Yutong Li <[email protected]>
@mattklein123 re: "If a cluster is an EDS cluster, should we dump the EDS configuration as a nested item in the cluster output?" How about we make EDS standalone |
Yes see #3362 (comment). I think we should just do an independent dump here as the dump will have the cluster name, so IMO it's not needed to have it be nested. |
Add EndpointsConfigDump message to support EDS in config_dump.proto (not implemented in Envoy) Additional Description: Risk Level: Low Testing: N/A Docs Changes: N/A Release Notes: N/A This is the first step to solve #3362 Signed-off-by: Yutong Li <[email protected]>
/config_dump API now supports dumping out EDS while using parameter ?include_eds Add help method dumpEndpointConfigs() to dump out EDS in /config_dump by calling this method in the handler handlerConfigDump() This will dump out envoy::admin::v3::EndpointsConfigDump by generating envoy::config::endpoint::v3::ClusterLoadAssignment based on data stored in server_.clusterManager().clusters() Missing Field: - ClusterLoadAssignment - Policy - endpoint_stale_after - StaticEndpointConfig - last_updated - DynamicEndpointConfig - version_info - last_updated Risk Level: Medium Testing: add unit test, integration test Docs Changes: operations_admin_interface Release Notes: N/A Part of fixing #3362 Signed-off-by: Yutong Li <[email protected]>
/config_dump API now supports dumping out EDS while using parameter ?include_eds Add help method dumpEndpointConfigs() to dump out EDS in /config_dump by calling this method in the handler handlerConfigDump() This will dump out envoy::admin::v3::EndpointsConfigDump by generating envoy::config::endpoint::v3::ClusterLoadAssignment based on data stored in server_.clusterManager().clusters() Missing Field: - ClusterLoadAssignment - Policy - endpoint_stale_after - StaticEndpointConfig - last_updated - DynamicEndpointConfig - version_info - last_updated Risk Level: Medium Testing: add unit test, integration test Docs Changes: operations_admin_interface Release Notes: N/A Part of fixing envoyproxy#3362 Signed-off-by: Yutong Li <[email protected]>
Add EndpointsConfigDump message to support EDS in config_dump.proto (not implemented in Envoy) Additional Description: Risk Level: Low Testing: N/A Docs Changes: N/A Release Notes: N/A This is the first step to solve envoyproxy#3362 Signed-off-by: Yutong Li <[email protected]> Signed-off-by: yashwant121 <[email protected]>
/config_dump API now supports dumping out EDS while using parameter ?include_eds Add help method dumpEndpointConfigs() to dump out EDS in /config_dump by calling this method in the handler handlerConfigDump() This will dump out envoy::admin::v3::EndpointsConfigDump by generating envoy::config::endpoint::v3::ClusterLoadAssignment based on data stored in server_.clusterManager().clusters() Missing Field: - ClusterLoadAssignment - Policy - endpoint_stale_after - StaticEndpointConfig - last_updated - DynamicEndpointConfig - version_info - last_updated Risk Level: Medium Testing: add unit test, integration test Docs Changes: operations_admin_interface Release Notes: N/A Part of fixing envoyproxy#3362 Signed-off-by: Yutong Li <[email protected]> Signed-off-by: yashwant121 <[email protected]>
#11577 implemented this capability. |
This is a follow up from #3340. We should add EDS support also to the config_dump admin endpoint. Some thought needs to be put into how this will be managed given that on its own showing EDS output disjoint from cluster output is not that useful. If a cluster is an EDS cluster, should we dump the EDS configuration as a nested item in the cluster output?
Note that host information is available in the /clusters endpoint which is why this was not implemented with as high of an urgency.
The text was updated successfully, but these errors were encountered: