Benchmark Runner Tool
Project description
Benchmark-Runner
This tool provides a lightweight and flexible framework for running benchmark workloads on Kubernetes/OpenShift Pod or VM.
This tool support the following workloads:
- hammerdb: running hammerdb workload on the following databases: MSSQL, Mariadb, Postgresql on Pod and VM with Configuration
- stressng: running stressng workload on Pod or VM with Configuration
- uperf: running uperf workload on Pod or VM with Configuration
** First Phase: supports benchmark-operator workloads
Hammerdb Kibana dashboard:
Reference:
- The benchmark-runner package is located in PyPi
- The benchmark-runner container image is located in Quay.io
Table of Contents
- Installation
- Run workload using Podman or Docker
- Run workload in Pod using Kubernetes or OpenShift
- Post Installation
Installation
optional:
Download benchmark-runner image from quay.io
sudo podman pull quay.io/ebattat/benchmark-runner:latest
Run workload using Podman/Docker
Environment variables description:
mandatory: KUBEADMIN_PASSWORD=$kubeadmin_password
mandatory: WORKLOAD=$workload
Choose one from the following list:
['stressng_pod', 'stressng_vm','uperf_pod', 'uperf_vm', 'hammerdb_pod_mariadb', 'hammerdb_pod_mssql', 'hammerdb_pod_postgres', 'hammerdb_vm_mariadb', 'hammerdb_vm_mssql', 'hammerdb_vm_postgres']
mandatory: PIN_NODE_BENCHMARK_OPERATOR=$pin_node_benchmark_operator [node selector for benchmark operator pod]
mandatory: PIN_NODE1=$pin_node1 [node1 selector for running the workload]
mandatory: PIN_NODE2=$pin_node2 [node2 selector for running the workload, i.e. uperf there are server and client]
optional: ELASTICSEARCH=$elasticsearch [ elasticsearch service name]
optional: ELASTICSEARCH_PORT=$elasticsearch_port
sudo podman run --rm -e WORKLOAD=stressng_pod -e KUBEADMIN_PASSWORD=$kubeadmin_password -e ELASTICSEARCH=$elasticsearch -e ELASTICSEARCH_PORT=$elasticsearch_port -e PIN_NODE1=$pin_node1 -v /root/.kube/config:/root/.kube/config -e log_level=INFO --privileged quay.io/ebattat/benchmark-runner:latest
# For custom workload data configuration add:
-v /home/user/stressng/stressng_data.yaml:/benchmark_runner/benchmark_operator/template/stressng/stressng_data.yaml
Run workload in Pod using Kubernetes/OpenShift
[TBD]
Post Installation
optional:
Delete benchmark-runner image
sudo podman rmi quay.io/ebattat/benchmark-runner:latest
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for benchmark_runner-1.0.56-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 86fbac45b5be9c64f0999aef50af1c8938550a2d31517f9c8e5f4592f5214d75 |
|
MD5 | cdbfab182007b506281b0b8372cd685b |
|
BLAKE2b-256 | 550b7b3ac86fcf48f02cd3ee794f11f514c9d4741d61266fc717e8f8fc3616f3 |