Skip to main content
Version: 1.0

Autoscaling

Horizontal pod autoscaler​

The chart includes an opt-in HorizontalPodAutoscaler for hub-core. When enabled, the HPA scales the hub-core Deployment based on observed CPU utilization against the Pod's CPU request.

Enable it in your values.yaml:

hub-core:
api:
resources:
requests:
cpu: 500m
memory: 512Mi
limits:
cpu: 1000m
memory: 1Gi
autoscaling:
enabled: true
minReplicas: 2
maxReplicas: 10
targetCPUUtilizationPercentage: 70

The HPA requires a running Kubernetes metrics server in the cluster. Without it, the HPA can't read CPU metrics and doesn't scale.

note

The HPA needs CPU requests set on the hub-core container to compute utilization. The chart leaves resources empty by default. Set requests and limits explicitly before enabling the HPA, or scaling decisions are undefined.

Custom metrics​

CPU and memory are the only metrics the chart wires today. Hub-specific signals (hub-core query rate, hub-connector ingestion backlog, PostgreSQL connection saturation) are available via Prometheus. These aren't yet integrated into the chart's HPA template. If you need to scale on those signals, install a custom metrics adapter such as the Prometheus Adapter. Then manage your own HorizontalPodAutoscaler resource alongside the chart. Native chart support for custom metrics is on the roadmap.

Next step​