-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Metrics Server: use gRPC connection to get metrics from Operator #3861
Conversation
4f4c8c8
to
f2bb684
Compare
/run-e2e |
1c26f08
to
1581f64
Compare
/run-e2e |
/run-e2e |
/run-e2e kafka* |
/run-e2e kafka* |
/run-e2e aws* |
/run-e2e azure* |
/run-e2e influx* |
/run-e2e aws* |
/run-e2e kafka* |
/run-e2e |
🎉 The only failed test is |
We are no longer querying the metrics values in Metrics Server but in the Operator and this affects exposed Prometheus metrics https://keda.sh/docs/2.8/operate/prometheus/#metrics-adapter I'd deprecate the exposed metrics in Metrics Server and migrate them to Operator -> this way we have one place for all Prom metrics - the Operator #1281 I'd like to avoid transferring the metrics locally from Operator to MS, it could be done to maintain the current state, but I don't like this solution. @kedacore/keda-maintainers WDYT? |
I'd document this as a breaking change and I'd continue, this is a really nice improvement for the performance and if we maintain the same names and we update the annotations in deployment, metrics will be there... |
Yeah, another big plus for me is that we will have all Prom metrics in one place. And if we implement the multi-instances support for cluster, it would benefit from this also. We can always introduce some other Prom metrics on MS side if needed. |
/run-e2e internals* |
/run-e2e internals* |
/run-e2e |
I will also send PR for docs and chart. Once this is merged I will try to tackle the caching part. |
I'm going to tackle this e2e improvement, hopefully today, does it make sense to wait till is done, in order to test this change with that test? |
I'd prefer if we go ahead and merge this, I've tested this change manually and it is working for me. I would like to follow up with other features and don't want to make this PR huge (as it already is :)) ) |
okey, I'll review this PR before starting with the other issue later on today |
Should we update docs to explain |
Yeah, that's the plan, I will send docs PR later today. But I am still not decided if we should expose this to users. Ideally I'd like to remove this part of code in the next release. This is just a back up. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome job!!!
only some nits inline, apart from them, could we add the version when the code will be removed or when has been deprecated in the [[ Deprecated ]]
comments? just to remember it, something like [[ Deprecated in v2.9]]
Signed-off-by: Zbynek Roubalik <zroubalik@gmail.com>
Signed-off-by: Zbynek Roubalik <zroubalik@gmail.com>
…ault service address Signed-off-by: Zbynek Roubalik <zroubalik@gmail.com>
Signed-off-by: Zbynek Roubalik <zroubalik@gmail.com>
Signed-off-by: Zbynek Roubalik <zroubalik@gmail.com>
Signed-off-by: Zbynek Roubalik <zroubalik@gmail.com>
Signed-off-by: Zbynek Roubalik <zroubalik@gmail.com>
I will create an issue to track this. |
/run-e2e internals* |
|
@v-shenoy would be great if you can take a look on this, more eyes more see. We would like to merge this soon and follow up. |
Sorry it was night time here, so I missed it. |
I know the PR has been merged, but leaving a few minor comments none the less. |
@@ -44,7 +43,7 @@ func init() { | |||
type Scaler interface { | |||
|
|||
// The scaler returns the metric values for a metric Name and criteria matching the selector | |||
GetMetrics(ctx context.Context, metricName string, metricSelector labels.Selector) ([]external_metrics.ExternalMetricValue, error) | |||
GetMetrics(ctx context.Context, metricName string) ([]external_metrics.ExternalMetricValue, error) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This change was missed in the docs - https://github.com/kedacore/keda-docs/blob/main/content/docs/2.9/concepts/external-scalers.md
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch, thanks!
Just added two minor comments. Overall, a great job on this :) |
Signed-off-by: Zbynek Roubalik zroubalik@gmail.com
Changes
KEDA_USE_METRICS_SERVICE_GRPC
tofalse
, this option is deprecated and should be removed in the future releasesMetricSelector
field fromScaler
interface (and thus from all scalers) since it hasn't had really any usefallback
out of theprovider
packageChecklist
Fixes #3920
Fixes #3919
Relates to #2282