Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add activation feature for CPU/Memory scaler #6231

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

kunwooy
Copy link
Contributor

@kunwooy kunwooy commented Oct 11, 2024

Currently, the cpu & memory scaler lacks the activation feature because it delegates the scaling responsibilities to the built-in Kubernetes HPA controller. As a result, even if the scale target is currently scaled-out by the cpu/memory metric being above the threshold value, if some other Keda scalers which use External Metrics are used in conjunction with the cpu/memory scaler, it will be deactivated (and thus scaled to zero) when all other scalers using External Metrics are deactivated.

Hence, my proposal is to introduce a way to check the activation of the cpu/memory scaler. Since the scaling behavior will be handled by the HPA controller, cpu/memory scaler only needs to feed in the activation value to the scaled object controller in its GetMetricsAndActivity() method. Moreover to enable such feature, I introduce activationValue field in cpu/memory trigger's metadata.

(I have accidentally closed the last pull request: #6174)

Checklist

Fixes #6057

Relates to #

@kunwooy kunwooy requested a review from a team as a code owner October 11, 2024 01:34
@kunwooy
Copy link
Contributor Author

kunwooy commented Oct 11, 2024

@JorTurFer You suggested that I query the metrics server directly instead of querying HPA. I have modified the code (#6174 (comment)).

If approved, modification to the helm chart is needed since the operator's service account needs permission on pods.metrics.k8s.io APIs

@SpiritZhou
Copy link
Contributor

Do you mind updating the CHANGELOG.md as well?

@kunwooy
Copy link
Contributor Author

kunwooy commented Oct 16, 2024

@SpiritZhou I updated the CHANGELOG.md too.

Signed-off-by: kunwooy <vbtkdpf148@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
2 participants