Re: stress testing & lab provisioning tools

2024-02-28 Thread Alexander DEJANOVSKI
Hey Jon,

It's awesome to see that you're reviving both these projects!

I was eager to get my hands on an updated version of tlp-cluster with up to
date AMIs 
tlp-stress is by far the best Cassandra stress tool I've worked with, and I
recommend everyone to test easy-cass-stress and build additional workload
types.

Looking forward to testing these new forks.

Alex

Le mar. 27 févr. 2024, 02:00, Jon Haddad  a écrit :

> 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
>


stress testing & lab provisioning tools

2024-02-26 Thread Jon Haddad
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