Skip to content

openafs-contrib/openafs-filesystem-stress-test-framework

Repository files navigation

Open AFS Stress Testing Framework

Note: this tester is only tested and fully functional when running on Linux. OSX should be functional but is not supported.

Capabilities

Stress Testing

Currently the tester runs the operations defined inside of fileoperations.h over n number of files and directories in a random order and sequence. Users can edit config.cfg to alter the frequency of certain file operations occurring and the length of the test alongside other features.

Metrics

Throughout the test certain metrics will be recorded and dumped into corresponding .txt files in the metrics directory.

[Throughput: Sequential and Random Access] might deal with caching

[IO Operations: Time to Append]

[Metadata Operations: Time to Rename, Write, Delete]

Initialization

Clone the repository into the desired testing environment

Install python3 and pip

Edit config.cfg before setup

The formatting of config.cfg is of a key value pair with "=" as the delimiter

All chance parameters are the percentage likelihood a certain operation happens on a given file

test-time is an integer value for the minutes the test will run

Setting up test directories and files

Run make init to establish the test files and test directories. Directories will be in the format of testFiles-# inside of the TestDirectory directory

Run

Run make run to run the tester.

Run make viewplots to obtain the visualization of the metrics.

Rasterized .png files and vectorized .pdf files are stored in metrics directory

.pdf files are recommended

Reset

Run make clean to remove the test directories, files, and any files generated by the test suite

Run make reset to clean, setup, and run the test suite again

Experimental

Configurability remains experimental and is not fully tested

Running on OpenAFS

Seamless deployment through test machines will be implemented soon through Ansible

About

OpenAFS Filesystem Stress Testing Framework

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published