Consider the impact of Knative with Istio.
If you use Knative with Istio at large scales (thousands of services), consider the following performance factors.
Specify ports in the Istio sidecar
In your Istio sidecar configurations, specify the ports that the Istio proxy needs to listen on, such as the following example file. If you leave the ports empty, the Istio proxy might try to keep up with all of the Knative ports that are opened, which can slow down performance.
apiVersion: networking.istio.io/v1alpha3 kind: Sidecar metadata: name: default spec: egress: - hosts: - "./*" - "istio-system/*" port: number: 8080 protocol: HTTP name: egresshttp
Consider using a separate
istiod revision for the Knative activator proxy. Sometimes, Knative resources such as the webhook depend on information from the Istio proxy, such as when scaling up Knative services. By having a separate
istiod revision for Knative, you can reduce the Istio proxy push time and speed up Knative connections.