Skip to content

Pass HPA autoscaling behavior through the Helm chart #139

Description

@sdolidze

Goal

Allow Helm users to configure Kubernetes HPA scale-up and scale-down behavior. Operators can then prevent rapid replica growth from multiplying metadata-database connection demand during pressure.

Context

The chart uses autoscaling/v2 and exposes replica bounds plus CPU and memory targets. It does not render spec.behavior, so users cannot configure stabilization windows or scaling policies through values.

Settings model

Field Type Default Meaning
autoscaling.behavior Kubernetes HorizontalPodAutoscalerBehavior object omitted Native autoscaling/v2 scale-up and scale-down behavior

Chart changes

  • Add a documented optional autoscaling.behavior value.
  • Render the object under spec.behavior with toYaml.
  • Regenerate the chart README from the values documentation.

Verification

  1. ct lint --all passes.
  2. Default helm template output is unchanged.
  3. A values fixture with scale-up and scale-down policies renders valid autoscaling/v2 YAML.
  4. Nested policies, selectPolicy, and stabilizationWindowSeconds pass through without chart-specific restrictions.

Files

  • charts/lightdash/values.yaml
  • charts/lightdash/templates/hpa.yaml
  • Chart documentation and render tests

Out of scope

  • Choosing default rate limits for operators.
  • Changing replica, CPU, or memory defaults.
  • Adding application-level backpressure.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions