Skip to content

Provide support for scale-to-zero in Kubernetes Workload scaler and integrate pod condition status #4394

Open
@tacf

Description

@tacf

Proposal

Kubernetes Workload Scaler currently has limitations with downscaling, that prevent using it to as a rollout mecanism to switch a workload with a totally diferent one (check use-case)

The proposal here is to

  1. Allow the use of '0' value for parameter value
  2. Look at not only pod phase but also pod condition status. Currently the scaler activates with pods in running state, but it means that there may be downtime for this particular use case since Running != Ready

Use-Case

The actual use that we were trying to leverage was migration to Argo Rollouts. Currently there is no easy way to do this (even documentation recommends running both workloads in parallel and only then deleting the Deployment and work with the Rollout only). The Argo Rollout suggestion may work well within smaller companies, but at scale the whole procces may lead to a big operational overhead.

Since we use Keda and there is already a scaler that based itself into looking inside the cluster, it would be a perfect solution for these sorts of migrations, as everything is self contained (within the cluster. No external API or metrics required)

Is this a feature you are interested in implementing yourself?

Maybe

Anything else?

Discussion reference: #4393

Metadata

Metadata

Assignees

No one assigned

    Labels

    featureAll issues for new features that have been committed tohelp wantedLooking for support from community

    Type

    No type

    Projects

    • Status

      To Do

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions