Open jrwren opened 1 year ago
You are welcome to submit example EnvoyFilters to the api repo (https://github.com/istio/api/blob/master/networking/v1alpha3/envoy_filter.proto) or to the examples listed on our wiki (https://github.com/istio/istio/wiki/EnvoyFilter-Samples).
Timeout is a tricky one for us to test, since it can be affected by the client implementation, the client sidecar proxy (outbound listener), the server sidecar proxy (inbound listener), and the server implementation.
If I misread, and you are asking for an example for how to set idle_timeout field for TCP listeners, you can set the ISTIO_META_IDLE_TIMEOUT
environment variable on your app (https://github.com/istio/istio/blob/master/pilot/pkg/model/context.go#L655). And if you still want to use an EnvoyFilter, you can use istioctl pc listener <pod_name> -n <pod_ns> --port XXX -o json
to get the listener struct for you to match against and modify via EnvoyFilter
I'd love to submit an example to either or both of those places, but I'm not sure if what I'm looking for is even possible. I'm new enough to istio and envoy to be rather clueless. Even istioctl pc listener
is new to me. I think my problem is that I don't have a listener and I'm applying config to only the default. Sounds like I need to create a listener.
https://istio.io/latest/docs/reference/config/networking/envoy-filter/
It would be nice if there were an example for a TCP only environment which shows how to set a large or non-existing idle_timeout for certain TCP ports and also which has a default idle_timeout for all other TCP ports.