Set resource limits for Dynatrace Operator components

For resource limits, we provide what we think are sensible defaults. Performance tests with environments of up to 25 nodes (e2-standard-32 nodetype on Google Kubernetes Engine), 20 DynaKubes, 2,500 namespaces, and 5,000 pods with default limits performed well.

We identified five different key indicators influencing resource consumption and how each component is impacted:

Indicator
Dynatrace Operator
Webhook
CSI Driver
Namespaces
Applicable
Applicable
Nodes
Applicable
DynaKubes
Applicable
Applicable
Pods
Applicable
Applicable
Number of OneAgent versions
Applicable

Customize resource limits

While the default resource limits should be sufficient for most use cases, you can customize them based on your specific needs.

  • Dynatrace Operator
    operator:
    requests:
    cpu: 50m
    memory: 64Mi
    limits:
    cpu: 100m
    memory: 128Mi
  • WebHook
    webhook:
    requests:
    cpu: 300m
    memory: 128Mi
    limits:
    cpu: 300m
    memory: 128Mi
  • CSI Driver
    csidriver:
    csiInit:
    resources:
    requests:
    cpu: 50m
    memory: 100Mi
    limits:
    cpu: 50m
    memory: 100Mi
    server:
    resources:
    requests:
    cpu: 50m
    memory: 100Mi
    limits:
    cpu: 50m
    memory: 100Mi
    provisioner:
    resources:
    requests:
    cpu: 300m
    memory: 100Mi
    limits:
    cpu: 300m
    memory: 100Mi
    registrar:
    resources:
    requests:
    cpu: 20m
    memory: 30Mi
    limits:
    cpu: 20m
    memory: 30Mi
    livenessprobe:
    resources:
    requests:
    cpu: 20m
    memory: 30Mi
    limits:
    cpu: 20m
    memory: 30Mi