Skip to content

Resource Profiles

Control CPU and memory requests/limits for your components.

Named Profiles

components:
  backend:
    image: myapp:latest
    port: 8000
    resources: medium
Profile CPU Request Memory Request CPU Limit Memory Limit
small 100m 128Mi 250m 256Mi
medium 250m 256Mi 500m 512Mi
large 500m 512Mi 1000m 1Gi

Custom Resources

components:
  backend:
    image: myapp:latest
    port: 8000
    resources:
      cpu: "500m"
      memory: "512Mi"

Separate Requests and Limits

components:
  backend:
    resources:
      request:
        cpu: "100m"
        memory: "128Mi"
      limit:
        cpu: "500m"
        memory: "256Mi"
from helm_me import resources, requests, limits

backend = web(
    image=image("myapp:latest"),
    port=8000,
    resources=resources(
        request=requests(cpu="100m", memory="128Mi"),
        limit=limits(cpu="500m", memory="256Mi"),
    ),
)

App-Level Default

Set a default for all components:

apiVersion: helm-me/v1alpha1
kind: Application
metadata:
  name: my-app
resources: small  # default for all components

components:
  backend:
    image: myapp:latest
    port: 8000
    resources: medium  # override for this component