Cassandraのクラスタ設定

大規模な環境は準備できないので、2台でクラスタ設定を行いました。
(環境)

    • node1(192.168.0.100)
    • node2(192.168.0.101)

(設定ファイル)

##
# storage-conf.xml
##

# Gossipプロトコルを使って、情報をやりとりするノード情報
<Seeds>
    <Seed>node1</Seed>
    <Seed>node2</Seed>
</Seeds>
# 他ノードとの通信ポート
<ListenAddress>サーバのIPアドレス(192.168.0.100/101)</ListenAddress>
<StoragePort>7000</StoragePort>
# クライアントとの通信ポート
<ThriftAddress>0.0.0.0</ThriftAddress>
<ThriftPort>9160</ThriftPort>
# データのレプリカ数
<ReplicationFactor>2</ReplicationFactor>

その他にも、データ分割方法やキャッシュ、スレッド数などを設定する必要がありますが、とりあえずクラスタを動かすことを目的としているので、上記以外のパラメータはデフォルトとしました。
各ノードのCassandraを起動後、"nodetool"コマンドで状態を確認します。

$ $CASSANDRA_HOME/bin/nodetool --host deb-dev01 ring
Address       Status     Load          Range                                      Ring
                                       162627632554603698714264749724469357300    
192.168.0.100 Up         691 bytes     128496447553375898927558874848384399941    |<--|
192.168.0.101 Up         0 bytes       162627632554603698714264749724469357300    |-->|

この状態で、node1に適当なテストデータを登録し、node2へレプリカされることを確認します。