You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
After applying the the Sidecar, I can see the ingress listeners are configured and envoy is correctly listening on both 127.0.0.1:8087 and 127.0.0.1:8088. But for the egress listener, envoy seems to be ignoring it.
However, after checking the the envoy's configuration, I found envoy did received the configurations of the egress listener and the related upstream cluster from xDS.
Also from the envoy config_dump, we can also find the dynamic_listener config, routeConfig and cluster config related to the egress configuration in Sidecar.
It's just, envoy doesn't actually start listener on 127.0.0.1:15050. And I can't find any informative debug logs generated by Istio and Envoy.
Version
$ istioctl version
client version: 1.21.0
control plane version: 1.20.3
data plane version: 1.20.3 (10 proxies), 1.21.2 (1 proxies)
$ kubectl version
Client Version: v1.28.2
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.23.17-eks-7a52527
Additional Information
No response
The text was updated successfully, but these errors were encountered:
The major difference between them is the egress listener listening on port 15050 has captureMode: NONE configured while the other listener (on 15051) doesn't have this configuration.
After applying this Sidecar, I restarted did systemctl restart istio on the VM, then I found Envoy started to listen on 15050 but doesn't listen on 15051. The full config dump is like this(the file below): config_dump_istio_2024-05-10T03_23_56+0000.json
Having compared the dynamic listeners of port 15050 and port 15051, I found the dynamic listener config of 15051 has this line added
"bind_to_port": false
While the listener of 15050 doesn't have this line.
I suppose this is the reason why Envoy only listens on 15050 but not on 15051. I don't know if this is the intended behaviour, but it will be nice if this behaviour can be documented in the Sidecar config reference.
Another experiment
Based on the above setup, later I added the captureMode: NONE to the 15051 egress listener config in the Sidecar obj and applied the obj. Then I did another inspection on the config_dump and I found the line "bind_to_port": false is gone on the 15051 dynamic listener, however Envoy didn't start the 15051 listener until I did a systemctl restart istio. So basically it means: any change of captureMode in the Sidecar obj requires a restart of the istio-sidecar on the VM workload to actually take effect? Is this also intended? Cause I suppose as long as Envoy receives the latest configuration from xDS, it should react to it by starting new listeners.
Is this the right place to submit this?
Bug Description
I have a VM workload connected to a single primary istio cluster. For the VM workload, I am using Sidecar to configure ingress and egress listeners
After applying the the Sidecar, I can see the ingress listeners are configured and envoy is correctly listening on both
127.0.0.1:8087
and127.0.0.1:8088
. But for the egress listener, envoy seems to be ignoring it.However, after checking the the envoy's configuration, I found envoy did received the configurations of the egress listener and the related upstream cluster from xDS.
Also from the envoy config_dump, we can also find the dynamic_listener config, routeConfig and cluster config related to the egress configuration in Sidecar.
It's just, envoy doesn't actually start listener on
127.0.0.1:15050
. And I can't find any informative debug logs generated by Istio and Envoy.Version
Additional Information
No response
The text was updated successfully, but these errors were encountered: