StorPerf Architecture
There are two proposed components to StorPerf:
the Manager, which contains the results database, a web UI for review, the CLI to create VMs and test attached storage
the Agent, which is installed on the VM and runs the actual performance test against the attached storage
The manager receives commands to start performance tests. It then:
StorPerf Agent:
Pre-conditions storage using FIO
Starts FIO test run with parameters supplied
Gathers periodic metrics from FIO
Forwards metrics to Carbon for DB storage
Graphite can be used to:
Food for thought
how will you build the VMs? - in your dev environment
what goes into the VM?
create the heat templates
upload to arm
scripts to run tests and collect results
-
Manual upload to ARM
Automatic upload with a Jenkins job - ???
Jenkins job to slave to deploy the VMs and run the tests on local lab environment
There are two levels of tests being run. 1st is a unit level test performing a functional test done during the build. 2nd level is the actual performance testing.
Jenkins job to collect the test results data files: hundreds of lines of statistics, IOPS, Latency, Bandwidth, Throughput, etc stored in a whisper database which can be exported into other formats
-
Future Plans