刚才我在本地机器上使用流浪者创建了一个3节点的cassandra集群,运行cassandra 2.0.13
以下是我对每个节点的cassandra.yaml配置
node0
cluster_name: 'MyCassandraCluster'
num_tokens: 256
seed_provider:
- class_name: org.apache.cassandra.locator.SimpleSeedProvider
parameters:
- seeds: "192.168.33.10,192.168.33.11"
listen_address: 192.168.33.10
rpc_address: 0.0.0.0
endpoint_snitch: RackInferringSnitch
节点1
cluster_name: 'MyCassandraCluster'
num_tokens: 256
seed_provider:
- class_name: org.apache.cassandra.locator.SimpleSeedProvider
parameters:
- seeds: "192.168.33.10,192.168.33.11"
listen_address: 192.168.33.11
rpc_address: 0.0.0.0
endpoint_snitch: RackInferringSnitch
节点2
cluster_name: 'MyCassandraCluster'
num_tokens: 256
seed_provider:
- class_name: org.apache.cassandra.locator.SimpleSeedProvider
parameters:
- seeds: "192.168.33.10,192.168.33.11"
listen_address: 192.168.33.12
rpc_address: 0.0.0.0
endpoint_snitch: RackInferringSnitch
当我运行时
nodetool status
我得到以下结果
Datacenter: 168
===============
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns (effective) Host ID Rack
UN 192.168.33.12 88.34 KB 256 67.8% b3d6d9f2-3856-445b-bad8-97763d7b22c7 33
UN 192.168.33.11 73.9 KB 256 66.4% 67e6984b-d822-47af-b26c-f00aa39f02d0 33
UN 192.168.33.10 55.78 KB 256 65.8% 4b599ae0-dd02-4c69-85a3-05782a70569e 33
根据我在数据税上参加的教程,每个节点应该拥有33%的数据,但这里显示每个节点拥有大约65%的数据,我不知道自己做错了什么。
我没有在集群中加载任何数据,也没有创建任何密钥空间,这是一个没有任何数据的全新集群。
请帮我找出的问题
感谢
如果没有数据加载到集群中,则不应拥有任何百分比。此外,你的nodetool输出IP地址与你之前为IP设置的地址不匹配——也许你看到的是已经加载了数据的不同机器?最后,您可能不想使用RackInferringSnitch,因为您的所有节点似乎都在同一个机架中。如果你只是在一个数据中心里玩,你可以使用简单的告密者。否则,NetworkTopology适用于多个数据中心
为了使Owns/Load列在nodetool status
中准确,您需要指定一个键空间。
尝试nodetool status <keyspace name>
,它实际上会向您显示每个节点中存储了多少数据的%。