Hey everyone,

Over the last several months I've put a lot of work into 2 projects I
started back at The Last Pickle, for stress testing Cassandra and for
building labs in AWS.  You may know them as tlp-stress and tlp-cluster.

Since I haven't worked at TLP in almost half a decade, and am the primary /
sole person investing time, I've rebranded them to easy-cass-stress and
easy-cass-lab.  There's been several major improvements in both projects
and I invite you to take a look at both of them.

easy-cass-stress

Many of you are familiar with tlp-stress.  easy-cass-stress is a fork /
rebrand of the project that uses almost the same familiar interface as
tlp-stress, but with some improvements.  easy-cass-stress is even easier to
use, requiring less guessing to the parameters to help you figure out your
performance profile.  Instead of providing a -c flag (for in-flight
concurrency) you can now simply provide your max read and write latencies
and it'll figure out the throughput it can get on its own or used fixed
rate scheduling like many other benchmarking tools have.  The adaptive
scheduling is based on a Netflix Tech Blog post, but slightly modified to
be sensitive to latency metrics instead of just errors.   You can read more
about some of my changes here:
https://rustyrazorblade.com/post/2023/2023-10-31-tlp-stress-adaptive-scheduler/

GH repo: https://github.com/rustyrazorblade/easy-cass-stress

easy-cass-lab

This is a powerful tool that makes it much easier to spin up lab
environments using any released version of Cassandra, with functionality
coming to test custom branches and trunk.  It's a departure from the old
tlp-cluster that installed and configured everything at runtime.  By
creating a universal, multi-version AMI complete with all my favorite
debugging tools, it's now possible to create a lab environment in under 2
minutes in AWS.  The image includes easy-cass-stress making it
straightforward to spin up clusters to test existing releases, and soon
custom builds and trunk.  Fellow committer Jordan West has been working on
this with me and we've made a ton of progress over the last several weeks.
 For a demo check out my working session live stream last week where I
fixed a few issues and discussed the potential and development path for the
tool: https://youtu.be/dPtsBut7_MM

GH repo: https://github.com/rustyrazorblade/easy-cass-lab

I hope you find these tools as useful as I have.  I am aware of many
extremely large Cassandra teams using tlp-stress with their 1K+ node
environments, and hope the additional functionality in easy-cass-stress
makes it easier for folks to start benchmarking C*, possibly in conjunction
with easy-cass-lab.

Looking forward to hearing your feedback,
Jon

Reply via email to