Running the benchmark for S3
Prerequisites
- Ensure that you have configured the access script, as described in Setting up the benchmark for S3.
- If the cluster nodes have SSD/NVMe caches, make sure they have been flushed, as instructed in Preparing to run the benchmark.
To run GOSBench
-
On the coordinator node, start the benchmark server:
# ./server -c gosbench_script.yaml
-
On each load generator, start the benchmark workers:
# ./worker -p 8009 -s <coordinator_IP>:2000
To collect GOSBench results
GOSBench shows performance results in the console, and also uses Prometheus and Grafana to collect and graph results.
An example console output is as follows:
INFO[2022-06-07T15:09:47+03:00] Ready to accept connections INFO[2022-06-07T15:09:58+03:00] 127.0.0.1:57956 connected to us INFO[2022-06-07T15:09:58+03:00] We found worker 1 / 1 for test 0 Worker="127.0.0.1:57956" INFO[2022-06-07T15:10:03+03:00] All workers have finished preparations - starting performance test test="write test" INFO[2022-06-07T15:25:20+03:00] All workers have finished the performance test - continuing with next test test="write test" INFO[2022-06-07T15:25:20+03:00] GRAFANA: ?from=1654603803922&to=1654604720745 test="write test" INFO[2022-06-07T15:25:20+03:00] PERF RESULTS Average BW in Byte/s=6.638758826285763e+07 \ Average latency in ms=3018.8787541713014 Test runtime on server=15m16.822798366s \ Total Bytes=6.0183302998e+10 Total Operations=899 test="write test"
The line starting with INFO[<date>:<time>] GRAFANA
includes a query string that you can append to the Grafana dashboard URL. The admin panel provides the Grafana server and the S3 overview dashboard that you can use to check the benchmark behavior: