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

[RFE] kube-burner comparisons #409

Closed
rsevilla87 opened this issue Aug 7, 2023 · 3 comments
Closed

[RFE] kube-burner comparisons #409

rsevilla87 opened this issue Aug 7, 2023 · 3 comments
Assignees
Labels
enhancement New feature or request stale Stale issue

Comments

@rsevilla87
Copy link
Member

rsevilla87 commented Aug 7, 2023

Is your feature request related to a problem? Please describe.

By using the comparison library from go-commons we could provide kube-burner the capacity of comparing some of the collected metrics with previously indexed data in order to detect regressions automatically.

Describe the solution you'd like

One of the strategies to address this functionality can be to create an additional configuration file holding a comparison criteria, that can be broken down in a list of queries and tolerancies.
Given that the benchmarks launched from the OCP wrapper add some interesting metadata to all the indexed documents we can perform those comparisons against a subset of benchmarks rather than a single UUID.

Something like the below can be an initial approach.

- query: metadata.ocpMajorVersion.keyword: 4.14 AND metadata.platform.keyword: AWS AND metadata.sdnType.keyword: OVNKubernetes AND metadata.totalNodes: 125 AND metricName.keyword: podLatencyQuantilesMeasurement AND quantileName.keyword: Ready
  field: P99
  tolerancy: -25  # This means that the comparison will support up to 25% of latency increase
  stat: Avg # By default will be Avg, but we support more, listed at https://github.com/cloud-bulldozer/go-commons/blob/main/comparison/types.go#L20-L25
  metric: 
    metricName: podLatencyQuantilesMeasurement
    quantileName: Ready

# Next one uses 99thEtcdDiskWalFsync, which is a metric from metrics-report profile
- query: metadata.ocpMajorVersion.keyword: 4.14 AND metadata.platform.keyword: AWS AND metadata.sdnType.keyword: OVNKubernetes AND metadata.totalNodes: 125 AND metricName.keyword: 99thEtcdDiskWalFsync
  field: value
  tolerancy: -25  # This means that the comparison will support up to 25% of latency increase
  metric: 
    metricName: 99thEtcdDiskWalFsync

Where:

This is a preliminary idea, as usual I'm open to others thoughts & feedback.

cc: @jtaleric @dry923 @vishnuchalla @smalleni @afcollins

@rsevilla87 rsevilla87 added the enhancement New feature or request label Aug 7, 2023
@rsevilla87 rsevilla87 changed the title [RFE] [RFE] kube-burner comparisons Aug 7, 2023
@vishnuchalla vishnuchalla self-assigned this Aug 28, 2023
@vishnuchalla
Copy link
Collaborator

@rsevilla87 Why do we need this when we have grafana dashboards and a UI dashboard for doing similar kinds of aggregations?

@jtaleric
Copy link
Contributor

jtaleric commented Oct 3, 2023

@rsevilla87 Why do we need this when we have grafana dashboards and a UI dashboard for doing similar kinds of aggregations?

well the dashboards are great for humans. not so great to derive pass fail in an automated environment.

the intent is to use the comparison to determine if a run is good or bad based on our KPIs.

Copy link

github-actions bot commented Jan 1, 2024

This issue has become stale and will be closed automatically within 7 days.

@github-actions github-actions bot added the stale Stale issue label Jan 1, 2024
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Jan 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request stale Stale issue
Projects
None yet
Development

No branches or pull requests

3 participants