Cassandra 3节点配置

时间:2017-06-10 06:17:12

标签: cassandra

我是Cassandra的新手,使用最新的Cassandra 3.10。我有3个节点链接参加Cassandra。群集名称测试群集与三个节点相同。相同的数据中心 dc1 ,机架为 rack1 ,并使用 GossipingPropertyFileSnitch 进行窃听。配置

节点A:

- 种子:“A,B,C地址”

listen_address& rpc_address与A节点ip地址相同

节点B:

- 种子:“A,B,C地址”

listen_address& rpc_address与B节点ip地址相同

节点C:

- 种子:“A,B,C地址”

listen_address& rpc_address与C节点ip地址相同

我在这里列出的可能性

i)假设A节点出现故障,则从节点B和C获取数据。

ii)如果任何一个或两个节点故障从另一个节点获取数据。如何配置这些节点。

我使用简单策略,复制因子3已使用。 如果节点故障从另一个节点获取节点数据检索,种子地址或错误?简要说明该怎么做。

1 个答案:

答案 0 :(得分:0)

回答你的问题:

如果节点A发生故障,则需要从节点B和C中获取数据 如果一个或两个节点发生故障,则需要从其他节点获取数据。

要实现上述目的,您配置的复制因子足以处理节点故障。错误的配置是让所有节点都成为种子节点。

种子节点用于引导其他节点,因此通常首先在数据中心中将第一个节点作为种子节点启动。假设您有2个数据中心。那么你应该有2个种子节点,如下面的datastax docs所述: http://docs.datastax.com/en/cassandra/3.0/cassandra/initialize/initSingleDS.html

根据您的上一条评论,您提到“检测到架构版本不匹配”。这意味着您的所有节点都不在同一个集群中。当所有节点都在运行时,使用nodetool检查架构

nodetool describecluster

这应该给节点架构版本。所有节点都应该是相同的模式版本 因此,如果任何一个节点没有相同的版本,则重新启动节点,直到模式版本相同。

修复此架构错误后,您将能够创建键空间。