Skip to content

Instantly share code, notes, and snippets.

@dselans
Created July 1, 2019 05:04
Show Gist options
  • Save dselans/331e0cfec1fc92d891488643a766f217 to your computer and use it in GitHub Desktop.
Save dselans/331e0cfec1fc92d891488643a766f217 to your computer and use it in GitHub Desktop.
cassandra-stress notes

I wasn't able to find any concrete examples of folks running cassandra-stress against TLS + auth enabled cassandra clusters; this gist hopefully fulfills that.

Setup

  • 3 node C* setup w/ lucene running on instaclustr
  • TLS Enabled
  • Auth Enabled

Run

  1. Download the certificate archive from instaclustr
  2. The archive will contain a keystore.jks file; place it wherever you're running cassandra-stress from
  3. Download and extract latest C* release
  4. cd ddac-*/tools/bin
$ ./cassandra-stress write duration=10s cl=one no-warmup -mode native cql3 user=your-username password=your-password protocolVersion=4 -transport factory=org.apache.cassandra.thrift.SSLTransportFactory truststore=/root/cassandra-testing/keystore.jks truststore-password=instaclustr -node 10.1.2.3 -port jmx=9042

Failed to connect over JMX; not collecting these stats

As far as I can tell, there is no way to disable JMX stats collection in cassandra-stress. So rather than waiting for 30+ seconds for the timeout, you can cause the JMX stats collection to fail quickly by specifying an open, non-JMX port (via -port jmx=9042).

Host does not support protocol version DSE_V1 but V5

You must specifiy a specific protocol version: -mode native cql3 user=... pass=... protocolVersion=4.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment