複数ノードで動作
これまでは単体でしか動作させてなかった.
複数ノードで動作させるのは簡単なので,設定してしまおう.
設定の仕方
ノードが互いに認識できるようにする.
ここでは2つ分(以下Node A,Node B)立ち上げることにする.
インストール
Cassandraのインストールは2台目も普通に入れればOK.
storage-conf.xmlをそれぞれ編集
Node Aを192.168.0.a,Node Bを192.168.0.bとする.
# Node A側を編集 vi /etc/cassandra/storage-conf.xml <Seed>192.168.0.b</Seed> <ListenAddress>192.168.0.a</ListenAddress> # Node B側を編集 # Seedは編集しなくてOK vi /etc/cassandra/storage-conf.xml <AutoBootstrap>true</AutoBootstrap> <ListenAddress>192.168.0.b</ListenAddress>
あと,keyspaceの設定もそれぞれのノードに書くこと.
書かないとノードを認識できてもキースペースが認識できなかった.
起動
# どっちも. cassandra -f
動作確認
nodetoolで状態を確認.
nodetool ring -h localhost # 確かにRingが形成されている. Address Status Load Range Ring 152969239942589118687714590887829286072 192.168.0.b Up 2.34 KB 69534630512645496569860700257523630715 |<--| 192.168.0.a Up 4.56 KB 152969239942589118687714590887829286072 |-->|
Node A上でsetしたデータをNode B上でgetしてみる.
cassandra-cli -host localhost -port 9160 # 読める,読めるぞ! get MyKeyspace.Scores['Dan'] => (super_column=grade, (column=null, value=1, timestamp=1275403790697000)) => (super_column=cource, (column=art, value=97, timestamp=1275403790746000) (column=math, value=87, timestamp=1275403790741000)) Returned 2 results.