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

[collector] Add KEDA support and add hpa section #1475

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

matheus-meneses
Copy link

@matheus-meneses matheus-meneses commented Dec 26, 2024

Hi guys,

I would like to propose a new feature and a breaking change to improve the autoscaling capabilities of the OpenTelemetry Collector Helm chart.

  1. Add KEDA support:
    KEDA (Kubernetes Event-driven Autoscaling) reached General Availability in August 2023, and its ecosystem is growing rapidly. Given its importance in the Kubernetes autoscaling landscape, I believe it's crucial to add support for KEDA in our Collector's Helm chart.

  2. Restructure autoscaling configuration:
    To accommodate both HPA (Horizontal Pod Autoscaler) and KEDA, I propose a breaking change in the autoscaling configuration. This change will provide a clear separation between the two autoscaling methods and improve the overall structure of the configuration.

Proposed changes:
a. Move autoscaling.behavior to autoscaling.hpa.behavior
b. Introduce an autoscaling.mode field to select between hpa (default) and keda
c. Create a new configuration section autoscaling.keda to support KEDA-specific settings

Example of the proposed structure:

autoscaling:
  enabled: true
  mode: hpa | keda
  minReplicas: 1
  maxReplicas: 10
  targetCPUUtilizationPercentage: 80
  targetMemoryUtilizationPercentage: 80
  hpa:
    behavior: {}
  keda:
    # ... KEDA-specific settings

@povilasv
Copy link
Contributor

👋 Thanks for your contribution. Could you create the issue for this first and let's discuss it?

ATM we have this policy: https://github.com/open-telemetry/opentelemetry-helm-charts/tree/main/charts/opentelemetry-collector#crds

At this time, Prometheus CRDs are supported but other CRDs are not.

Based on my understanding, this likely this will not be accepted, unless we change this rule or make an exception.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants