Continuing on from Getting started with Cassandra I’m now trying to configure two servers as a cluster. The Getting Started Step 3 was not clear the first time I read it (after writing this is makes sense), so a Google search yielded the second link as Building a Small Cassandra Cluster for Testing and Development. I love finding reference material from people I know, Padraig being a significant contributor to Drizzle.
Here is what I did to create a running Cassandra Cluster.
- Stop individual Cassandra instances
- Re-created data and log directories (I did this just to ensure a clean slate)
- I added to my local hosts file two aliases for my servers (cass01 and cass02). This helped in the following step.
- Three changes are needed to the default conf/storage-conf.xml file on my first server.
- Change <ListenAddress> from localhost to cass01
- Change <ThristAddress> from localhost to cass01
- Change <Seed> from 127.0.0.1 to cass01
- On my second server I changed the <ListenAddress> and <ThriftAddress> accordingly to cass02 and made <Seed> cass01
- Started Cassandra servers and tested successfully using the set …/get Keyspace1.Standard1[‘jsmith’] example. I was able to connect to both hosts via cassandra-cli and see the results created on just one node. I was able to create data on the second node and view on the first node.
A new command is available to describe your cluster.
$ bin/nodeprobe -host cass01 ring Address Status Load Range Ring 148029780173059661585165369000220362256 192.168.100.4 Up 0 bytes 59303445267720348277007645348152900920 |<--| 192.168.100.5 Up 0 bytes 148029780173059661585165369000220362256 |-->|
Now with my first introduction successful, time to start using and seeing the true power of using Cassandra.
Mark Jones says
I think you meant <ThriftAddress>
alec says
You’ve got a small typo in your article; ThristAddress. Should be ThriftAddress.
Thanks for the clear and concise write up!
alec says
Also since cassandra is rapidly changing, perhaps point out which cassandra version you are using here. ‘nodeprobe’ is replaced by ‘nodetool’ in 0.6.5, which is the current version as of this comment.