Envoy troubleshooting - Design discussion #4082
Replies: 6 comments 8 replies
-
I had this in my head for a little while but today I came across this again. I think it is worth it to explore. Please check out what is possible to do through the admin interface[1][2] Here's a picture of the console with all the operations to perform: My proposal would be to investigate all the available options in that interface and see if we can either digest some metrics, make it easier available (without the user having to locally forward request), show config info (e.g. server_info) or something really istio-envoy specific. [1] https://www.envoyproxy.io/docs/envoy/latest/start/quick-start/admin (QUICK START) |
Beta Was this translation helpful? Give feedback.
-
Seeing the debugging/troubleshooting information related to Envoy [1] and the information Kiali already has (clusters, listeners, routes, etc) it would be useful to to the same "walkthrough" that Istio recommends but in a more graphical way (with a relations graph between Envoy entities), for example following the same order that Istio's site suggest, step by step, but in Kiali. [1] https://istio.io/latest/docs/ops/diagnostic-tools/proxy-cmd/ |
Beta Was this translation helpful? Give feedback.
-
An interesting thing to see is more information at a glance for example:
|
Beta Was this translation helpful? Give feedback.
-
Related to exposing more functionality from the envoy admin api: #4082 (comment) Having a drop down on the workload --> logs tab where you can select the log level for the envoy proxy would be useful when debugging a particular workload. It's possible to select the log level of individual loggers through the envoy admin api but even just being able to set the global log level in Kiali would be useful. |
Beta Was this translation helpful? Give feedback.
-
Another feature idea - when a check of a proxy-status determines something is not synced, show a diff of the changes that are not synced. See: https://istio.io/latest/docs/ops/diagnostic-tools/proxy-cmd/#retrieve-diffs-between-envoy-and-istiod |
Beta Was this translation helpful? Give feedback.
-
I'm reading the Envoy docs to get a better feel for how it is configured. One thing that I can see that would be really helpful is to graphically represent the envoy config (the listeners and routes and maybe clusters) in a similar way we display the workload graph (we could even see if we could decorate our existing workload graph with this information - or overlay an envoy graph over top of it?). Seeing a graphical visualization of the envoy topology would be extremely helpful. I can then conceive of features such as clicking a node or edge and obtaining the envoy config related to that portion of the graph (so you could see, for example, the filters involved). |
Beta Was this translation helpful? Give feedback.
-
Hi everyone,
Envoy is the cornerstone of the data plane architecture of Istio [1] with very powerful capabilities but, on the other hand, complex to configure and troubleshoot [2].
One of the Kiali’s goal is to help users to understand how the Service Mesh is working and help them to understand from a high level into a low level detail what is happening when something doesn’t seem to work as expected #4066 .
Kiali has multiple features that help users to understand, debug and troubleshoot Istio Service Mesh:
This area is in quite active development kiali/kiali-ui#2170 and one of the goals is to improve this information, connect them in a way that is easy to understand for a non specialist Envoy user and correlate with rest of telemetry collected to offer a global view about what is happening.
This issue is to collect thoughts and ideas from users that may help Kiali to improve the Envoy troubleshooting scenarios.
Please, join us in these discussions :)
[1] https://istio.io/latest/docs/ops/deployment/architecture/#envoy
[2] https://www.envoyproxy.io/docs/envoy/v1.17.1/intro/arch_overview/arch_overview
Beta Was this translation helpful? Give feedback.
All reactions