In this scenario it is assumed that there is a running Quorum network and the goal is to run Jmeter stress test on it.
To choose correct Jmeter test profile refer to section Test profiles here
Refer to scenario 4 here for all prerequisites.
cd quorum-profiling/scripts
./start-test.sh --testProfile <jmeter-test-profile> --consensus <ibft|raft> --endpoint <quorum-rpc-endpoint> --basedir <repo base dir>
example: ./start-test.sh --testProfile "4node/deploy-contract-public" --consensus "ibft" --endpoint "http://host.docker.internal:22000" --basedir ~/go/src/github.com/jpmorganchase/quorum-profiling
This brings up influxdb
, grafana
, telegraf
, Jmeter test
and tps-monitor
containers.
It can be accessed at http://localhost:3000/login
. Enter admin/admin
as user id and password to access the predefined dashboards Quorum Profiling Dashboard
& Quorum Profiling Jmeter Dashboard
. Sample dashboard are shown below.
It can be access at http://localhost:8086/
. The database name is telegraf
and user/password is telegraf/test123
if you wish to change the port, default user id/password, please edit the telegraf.conf file
Note!!! The endpoint for influxdb instance can be configured by setting up the influxdburl
in the properties file as shown below.
#to write jmeter test summary to influxdb
influxdburl=http://host.docker.internal:8086/write?db=telegraf
- Quorum node cpu/memory usage metrics can be accessed at
http://localhost:9126/metrics
. - TPS metrics can be accessed at
http://localhost:2112/metrics
.
if you wish to change the port for
prometheus
, please edit the telegraf.conf file
cd quorum-profiling/scripts
grep for
jmeter
docker container and stop it.
grep for
tpsmonitor
docker container and stop it.
run
docker-compose down
. It will stopgrafana
,telegraf
andinfluxdb