Setting global resource requests for sidecar proxy

The sidecar proxy now has the default requests set to

Requests:
  cpu: 100m
  memory: 128Mi

In my experience that is way more than its using and makes a cluster with a lot of small services need way to much cpu to even be able to schedule.

I Know you can override the defaults per pod with annotations:

annotations:
  sidecar.istio.io/proxyCPU: "600m"
  sidecar.istio.io/proxyMemory: "256Mi"

But i really wand to do this globally with the options available in the istio operator Istio / IstioOperator Options or similar?
Is there any way to do this currently because i can’t find it. Or does this seem like something we should add?

Found a solution for this myself. It can be set in the istioOperator resource in this way.

apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
metadata:
  namespace: istio-system
  name: istiocontrolplane
spec:
  profile: minimal
  values:
    global:
      proxy:
        resources:
          requests:
            cpu: 20m
            memory: 128Mi
          limits:
            cpu: 2000m
            memory: 1024Mi

Hi
I set this in the istioOperator but I didn’t see any change. Is there any need to restart sth?

I have just the same problem. I tried restarting both the istiod deployment and some deployments which have the sidecar and it didn’t got updated. Did you find what to do?

You need to restart the workloads after reconfiguring the istiod so the new istio-proxy can be injected with the new resources setup.