Modes in kcb.sh script
This is part of the kcb.sh
script which was referenced in Running benchmarks from the CLI.
In the --incremental
mode, the code sets up a benchmark to go through a warm-up phase using the run_benchmark_with_workfload
function and then moves onto the incremental
phase where benchmark is executed for incrementing the workload each time. If a benchmark fails, the script tries to perform a binary lookup to reduce the increment value by half of the last successful workload, and in the end if it reaches a value of 1(by the means of integer math), it will assume it reached the maximum possible successful workload and prints the same information to the user.
In the --single-run
mode, which is the default mode when the --incremental
flag is not set on the CLI command, the script directly runs the benchmark with the provided workload and exits without any further processing.
In the --chaos
mode, the code sets up a single-run mode benchmark in parallel with a failure simulating kc-chaos.sh
script to kill a random pod after a certain time interval. It can take an input CHAOS_TIMEOUT
to stop the simulated failures after a given timeout.
Overall the kcb.sh
script executes the benchmark in either incremental or single-run mode, handles errors and provides informative output messages during the process.