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へレプリカされることを確認します。