我正在尝试将 2 节点 Cassandra 集群扩展为具有 4 个 Amazon EC2 实例的 4 节点集群。我已经创建了四个节点并在 cassandra.yaml 文件中进行了以下更改。
listen_address = 10.30.143.145
seeds = 10.30.143.145,10.159.58.234,10.170.31.252,10.158.52.84
endpoint_snitch: Ec2snitch
num_tokens: 256
我已经在所有 4 个节点上复制了这些更改。按照这个过程,我已经从单节点集群扩展到了双节点集群。但是,在配置 4 节点集群后,当我在第一个节点上执行 ./nodetool 状态时,我得到以下输出:
ubuntu@ip-10-170-31-252:~/VIQ-Cloud/software/apache-cassandra-1.2.5/bin$ ./nodetool status
Datacenter: us-east
===================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns Host ID Rack
UN 10.30.143.145 927.14 KB 256 16.1% 34d0424a-fe07-4047-a2a5-f45b9a0049d6 1a
UN 10.159.58.234 135.2 KB 256 15.7% 00308009-8755-4bce-906f-4eda53a31fc6 1a
UN 10.170.31.252 20.94 GB 256 20.9% a815f0de-64db-418c-97a3-9aa7be280280 1a
UN 10.158.52.84 311.33 KB 256 15.0% fc634f65-3cf3-4e24-a9a3-456adbd174e0 1a
Datacenter: UNKNOWN-DC
======================
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
-- Address Load Tokens Owns Host ID Rack
DN 10.170.22.214 ? 256 16.6% 253ee376-c49d-47a1-a321-4f155870c122 UNKNOWN-RACK
DN 10.31.131.35 ? 256 15.7% e94c0cb1-9635-42c9-8982-450271f7da1c UNKNOWN-RACK
显示为 DN 的两个节点的地址是其他 EC2 节点的先前私有 IP 的地址(EC2 实例的每次重启都会更改私有 IP)。
但是其他 3 个节点为我提供了 nodetool 状态的正确结果。我想知道 cassandra 从哪里挑选以前的 IP,因为我没有在 cassandra.yaml 文件中提到它们。
我按照此处的说明添加新节点。请告知为什么会发生这种情况。