-
Notifications
You must be signed in to change notification settings - Fork 22
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
ZoneIngress view to see envoy data #2976
Comments
Useful bits:
So If I scheme this we should have a dp view a bit like: flowchart LR
inbound("`inbound:<ip>:<port>`")
cluster1("`<mesh>_cluster1_<namespace>_<zone>_msvc|extsvc|mmzsvc_<port>`")
cluster2("`<mesh>_cluster2_<namespace>_<zone>_msvc|extsvc|mmzsvc_<port>`")
inbound-->cluster1
inbound-->cluster2
|
We have a new task to add some of the traffic visualization and envoy debug information over in Zones for ZoneProxies (#2976). Zone Proxies (Ingresses/Egresses) are more or less just Dataplanes, or maybe better said just Envoy instances. It's maybe better to think of a Zone Proxy as a Kuma thing that is essentially an Envoy Instance and similarly a Dataplane as a Kuma thing that is essentially an Envoy Instance. Our current modules related to this are: - `zone-ingresses` - `zone-egresses` - `data-planes` and - `connections` Currently `data-planes` depends on `connections` for the traffic functionality related to `inbounds` and `outbounds` (a.k.a `'bounds`, a.k.a. `connections`) You can kinda see that `zones-'gresses` should also depend on `connections`, but I think its further than that. --- There is a lot of older code from before we made `connections` that is currently in `data-planes`. This is functionality/views for `XDS Configuration`, `Stats` and `Clusters`. We also have almost identical code in `zones-*gresses` for functionality/views `XDS Configuration`, `Stats` and `Clusters`. This functionality/views for `XDS Configuration`, `Stats` and `Clusters` should therefore be part of `connections` (a.k.a. "the envoy related stuff") and we reuse that for all modules that need it (similar to how we did `subscriptions`) This gives us something like: - `zone-ingresses` depends on `connections` - `zone-egresses` depends on `connections` - `data-planes` depends on `connections` Instead of: - `zone-ingresses` has its own stuff to display Envoy things - `zone-egresses` has its own stuff to display Envoy things - `data-planes` depends on `connections` This PR moves any DataSource `sources` related to `stats`, `xds` or `clusters` over to `connections`. I also tried moving the Views in this PR, but it was so frustratingly difficult and finickity to do because of the way we "flatly" structure and "overly" name our route files in a very inconsistent and error prone way that I pulled it back out and plan to PR that separately. I'll have more to say on this at some point and will probably link back here. --- Working towards #2976 Signed-off-by: John Cowen <[email protected]>
Description
This should only be the case when using MeshService.
We are now able to show by reading the config the services behind a zoneIngress.
We should be able to show a view similar to the dataplane view with stats etc.
This would make it a lot easier for users to figure if the traffic is going cross zone or not.
Have a view similar to the dataplane view.
Some things worth noting is that ingress works a bit differently (it has a single inbound listener but many outbound clusters).
Let's have this only work when using
MeshService: Exclusive
.@lahabana to add an example conf and more info
The text was updated successfully, but these errors were encountered: