Istio Gateways Pods use too much memory, how can i fine tune them for memory usage? #49630
Replies: 3 comments 2 replies
-
Sidecar CRD's don't apply to ingress/egress gateways because their configs are already limited by the corresponding Gateway+VirtualService which translates envoy Listeners/Route/Clusters. What istio version are you on? |
Beta Was this translation helpful? Give feedback.
-
I still encounter this problem almost daily, does anyone know how to optimize the ingress gateway pod? This is the situation right now in the istio-system namespace:
These ingress gateway are basically "placeholders" pod because they are present but they don't serve any purpose yet (and probably they will be removed soon). Why do we have so much memory used for each pod?
This situation is also present in each namespace, where the ingress gateway pods use much memory (in this case it could be justified by the fact that they also have Virtual Services and Destination Rules deployed). Note: our automation (that was written before I joined) automatically links each Virtual Service created inside the namespace to the Gateway resource defined inside the namespace. Is this a bad approach? I think It could increase the usage of Memory of the Istio Ingress pods since they should store also the definitions of Virtual Service that are defined much further in the general architecture. |
Beta Was this translation helpful? Give feedback.
-
Another question for dedicated gateways inside namespaces:
for performance: would it be better to define a single Virtual Service with a host based routing, or multiple Virtual Services like in this case? The amount of configurations that Envoy saves is the same or not? |
Beta Was this translation helpful? Give feedback.
-
Hi everyone,
I have a big cluster (500-1000 pods range) with the Istio control plane installed. Each namespace of this Cluster can choose to adopt Istio or not, if Istio is adopted inside a namespace the CI/CD automation takes care of deploying a dedicated Gateway bounded to an Ingress Gateway Pod and a Sidecar (with all the necessary RBACs)
This is the sidecar resource
The Ingress Gateway template that is deployed is the same that can be generated with
Istioctl install
against the IstioOperator yaml containing only the Ingress Gateway set to trueUnfortunately the Sidecar resource doesn't apply to the proxy inside the Ingress Gateway as stated in the "Note" list of this doc (https://istio.io/latest/docs/reference/config/networking/sidecar/),. So, while the usage of memory for sidecar is low, I can't say the same thing for the Ingress Gateway pod. What I'm noticing is that each ingress gateway pod uses too much memory (More than 500Mi in most cases) even if the namespace contains 3/4 pods.
Can someone give me some advices to optimize the memory performance of the Ingress Gateway?
Beta Was this translation helpful? Give feedback.
All reactions