DRAFT
Notes on benchmarking (with Rally) the performance of creating and querying samples against the mysql datastore.
Overview
The general idea is:
- to install two different devstacks (one
stable/icehouse
the othermaster
(and thus Juno)) - detune each devstack to run the minimum required set of services
- configure ceilometer-api to run under mod_wsgi (to allow concurrent requests)
- run a RallySampleScenario against the devstack
Caveats
- Rally's use of the database can flake out when dealing with large result sets.
- Setting up Icehouse is a good deal more complex than Juno
- Volume of data is still too low for realistic measurements.
- Do Juno first as it puts some useful artifacts it place.
Make Sure
- The database is dropped between test runs.
- ceilometer-api port is not blocked by apache when starting up icehouse
Juno/master
- Clone devstack, switch to branch ... <- fill in
- Make a reasonable JunoLocalConf (which includes rally and sets ceilometer-api to use mod_wsgi)
./stack.sh
- Kill extraneous services
- Confirm rally:
rally deployment check
- Confirm ceilometer:
ceilomter sample-list -m image
- Use the sample scenario
rally task start ./scenario.json
- Record results
Icehouse
- Clone the
stable/icehouse
branch of devstack. - Make a reasonable IcehouseLocalConf
- Make sure there's no
localrc
(which would overridelocal.conf
) ./stack.sh
- Configure Rally for existing installation
- Kill extraneous services (including ceilometer-api, but leaving keystone)
- Re-enable ceilometer under mod_wsgi (details to follow)
- Restart apache.
- Confirm samples with
ceilomter sample-list -m image
or similar - Use the sample scenario
rally task start ./scenario.json
- Record results