Skip to content

[Question] Best practices for implementing FederatedHPA with external metrics (KEDA + Redis) across member clusters #7114

@krax1337

Description

@krax1337

I am looking for architectural guidance on how to implement a Federated Horizontal Pod Autoscaler (FederatedHPA) that relies on external metrics (specifically utilizing KEDA and Redis).

Current Setup:

  • We have a multi-cluster setup managed by Karmada.
  • In each member cluster, we currently run KEDA which monitors a Redis instance (list length) to drive the scaling of local workloads.
  • Scaling decisions are currently isolated per cluster.

Desired Goal: I want to promote this scaling logic to the Karmada Control Plane using FederatedHPA.

  • The FederatedHPA should monitor the external metrics (Redis list length).
  • Based on these metrics, Karmada should calculate the total desired replicas.
  • Karmada should then distribute these replicas across the member clusters according to our propagation policies.

The Question: What is the recommended approach to expose these external metrics to the Karmada Control Plane?

Should KEDA be installed on the Karmada Host Cluster to scale the FederatedDeployment directly?
Or, is there a way for FederatedHPA to aggregate/listen to the external metrics generated by the KEDA instances running inside the Member Clusters?

Now this logic works with Duplicate Scheduling Type, and every deployment scaled duplicated on other cluster. This is not working with Weighted.

Metadata

Metadata

Assignees

No one assigned

    Labels

    kind/questionIndicates an issue that is a support question.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions