刚才我使用vagrant在我的本地机器上创建了一个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
根据我从datastax参加过的教程,每个节点应该拥有33%的数据,但是这里显示每个节点拥有大约65%的数据,我无法确定自己的错误。
我没有在群集中加载任何数据,也没有创建任何密钥空间,这是一个没有任何数据的全新集群。
请帮我解决问题
感谢
答案 0 :(得分:2)
如果没有数据加载到群集中,则不应该拥有任何百分比。此外,您的nodetool输出IP地址与您之前为IP设置的地址不匹配 - 也许您正在查看已加载数据的不同计算机?最后,您可能不想使用RackInferringSnitch,因为您的所有节点似乎都在同一个机架中。如果您只是在一个数据中心内玩游戏,则可以使用简单的小故障。否则,NetworkTopology适用于多个数据中心
答案 1 :(得分:0)
要使Owns / Load列在nodetool status
中准确,您需要指定一个键空间。
尝试nodetool status <keyspace name>
,它实际上会向您显示每个节点中存储了多少数据的百分比。