那麼我有一個節點集羣,我分爲兩個地址127.0.0.1和127.0.0.2。如果我嘗試將數據插入到127.0.0.1中,請使用Cassandra Client。數據成功獲取127.0.0.1添加,我也可以查看它,但如果我嘗試連接到從127.0.0.2查看,我看不到任何更新。沒有數據。我想我上次無法解釋它。下面是我在相同節點上將兩個cassandra複製到不同文件夾中的名稱Cassandra 1和Cassandra 2。相應地更新Cassandra.yaml。Cassandra集羣單節點
1)
cluster_name: 'Test Cluster'
initial_token:
data_file_directories: - /Cassandra/1/var/lib/cassandra/data
commitlog_directory: /Cassandra/1/var/lib/cassandra/commitlog
saved_caches_directory: /Cassandra/1/var/lib/cassandra/saved_caches
- seeds: "127.0.0.1,127.0.0.2"
listen_address: 127.0.0.1
rpc_address: 127.0.0.1
2)
cluster_name: 'Test Cluster'
initial_token:
data_file_directories: - /Cassandra/2/var/lib/cassandra/data
commitlog_directory: /Cassandra/2/var/lib/cassandra/commitlog
saved_caches_directory: /Cassandra/2/var/lib/cassandra/saved_caches
- seeds: "127.0.0.1,127.0.0.2"
listen_address: 127.0.0.2
rpc_address: 127.0.0.2
其他人設置是默認設置,我沒有修改任何東西。然後我創建一個keyspace和column family使用:
CREATE KEYSPACE demo with placement_strategy = 'org.apache.cassandra.locator.SimpleStrategy' and strategy_options = [{replication_factor:2}];
我還沒有指定任何分配器,所以defauly是隨機我猜。
use demo;
create column family order with comparator=UTF8Type and key_validation_class=UTF8Type and default_validation_class=UTF8Type and column_metadata=[{column_name: member, validation_class: UTF8Type},{column_name: user, validation_class: UTF8Type, index_type: KEYS},{column_name: instrument, validation_class: UTF8Type},{column_name: price, validation_class: DoubleType}, {column_name: quantity, validation_class: Int32Type},{column_name:datetime, validation_class: DateType}];
現在,如果我嘗試連接到127.0.0.1,插入數據,我相信這些數據應插入兩個127.0.0.1 127.0.0.2和,但它並非如此。
Set orders[KEY][user] = 'ABC' list orders;
有什麼不對嗎?我該怎麼做才能使其可行。
請給我一個詳細的例子,如果你有任何。我想我在創建keyspace,Column系列和數據插入時做了一些錯誤。如果你有一個兩節點插入的例子,那也是很棒的。
是的,我使用兩個IP作爲種子。我已將INFO級別更改爲DEBUG,以確保兩者都可以通信,但我一次只能看到一個IP。兩個IP都沒有通信。 – Jone 2012-04-23 06:45:50
是的,我使用兩個IP作爲種子,如果我設置爲單個IP作爲種子,那麼當我運行第二臺服務器時會出現異常。 – Jone 2012-04-23 07:00:55