cloud-bulldozer / cloud-bulldozer/benchmark-operator

[Topic] Rewrite benchmark-operator and limit scope

Open
#833 8 comments 0 reactions 0 assignees View on GitHub
Dominant language
Jinja
Stars
308
Forks
128
PR merge metrics
No merged PRs in 30d

Description

Benchmark Operator has been the Swiss Army Knife of k8s-benchmarking. However, overtime it has become extremely difficult to debug, maintain and contribute to. Similarly, we have built some other tooling to help mitigate the need to continue enhancing benchmark-operator.

After some internal evaluation, we still see the need to keep aspects of the benchmark-operator alive -- mainly for its ability to run storage based workloads. (fio, ycsb, and hammerdb).

I am suggesting we :

1. move away from the ansible-sdk mainly for the lack of easy debug. The output from the playbook execution is very busy, and it is hard to triage where issues manifest from.
2. Much of the benchmark knowledge is in https://github.com/cloud-bulldozer/benchmark-wrapper, so we could continue to use that (or maybe specific aspects of it).
3. since we move away from ansible-sdk, rewrite the benchmark-operator using the golang framework to manage the deployment of the pods running the workloads.
4. minimize the scope of benchmark-operator to be more storage focused.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.