[英]keyspace and tables not replicating across data centre in cassandra
我正在嘗試創建cassandra集群。 為此,我有一個節點數據中心一個數據中心名為DC1,另一個數據中心是DC2。 因此,有2個單節點數據中心。 我按照這里給出的步驟http://docs.datastax.com/en/cassandra/2.0/cassandra/initialize/initializeMultipleDS.html
由於我有單節點數據中心,所以我的種子將是一台機器。 我可以為這兩台機器做ndoetool -h狀態。 我創建了一個像這樣的鍵空間
CREATE KEYSPACE sams WITH replication = {'class': 'NetworkTopologyStrategy', 'DC1': '1', 'DC2': '1'} AND durable_writes = true;
和一張桌子一樣
CREATE TABLE apikey ( appname text, appkey text, PRIMARY KEY ((appname), appkey) );
我在一個數據中心創建了密鑰空間和表。 這應該在其他機器上復制,但不會復制。 其他數據中心上沒有任何鍵空間也沒有顯示任何表。
我在這里錯過了什么?
添加nodetool輸出
nodetool -h cassandra1 status
Datacenter: DC1
===============
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns (effective) Host ID Rack
UN 100.117.100.107 178.28 KB 256 100.0% 0c5da294-2a86-472d-98ec-857ed5140417 RAC1
nodetool -h cassandra2 status
Datacenter: DC2
===============
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns Host ID Rack
UN 100.117.150.55 162.94 KB 256 ? 9f3e49f6-debc-4a9c-ba93-bc65b3851a48 RAC1
看起來您不小心設置了兩個獨立的集群,而不是跨越兩個數據中心的單個集群。
確保在cassandra.yaml中,兩個節點都具有相同的cluster_name,並且兩者都具有相同的“ - seeds:”的ip列表。 由於你只有兩個節點,我將兩個ip列為種子而不是一個。
如果節點已加入同一群集,則在運行nodetool status時應顯示這兩個節點。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.