当前位置 : 主页 > 网页制作 > Bootstarp >

如何使用auto_bootstrap属性有效地启动/重新启动Cassandra节点

来源:互联网 收集:自由互联 发布时间:2021-06-12
我对auto_bootstrap的理解是 以下是我对auto_bootstrap属性的理解.首先,如果我在任何时候错了,请纠正我. 最初,cassandra.yaml文件中将不提供属性“auto_bootstrap”.这意味着默认值为“true”. true –
我对auto_bootstrap的理解是

以下是我对auto_bootstrap属性的理解.首先,如果我在任何时候错了,请纠正我.

最初,cassandra.yaml文件中将不提供属性“auto_bootstrap”.这意味着默认值为“true”.

true – 这意味着在启动/重新启动时,从所有其他节点引导/流式传输数据到相应的节点
false – 在启动/重新启动时不要流式传输数据

我们在哪里需要’auto_bootstrap:true’

1)当需要在现有集群中添加新节点时,需要将其设置为“true”以自动从集群中的所有其他节点引导数据.这将花费相当长的时间(基于群集的当前负载)来在群集中添加新节点.但这会使群集中的负载自动平衡.

我们在哪里需要’auto_bootstrap:false’

1)当需要在现有集群中快速添加新节点而不引导数据时,需要将其设置为“false”.无论群集的当前负载如何,都将快速添加新节点.稍后我们需要手动将数据流式传输到新节点以使群集负载平衡.

2)在没有数据的情况下初始化新集群时,需要将其设置为“false”.至少要在新簇中启动/添加的第一个种子节点的值应为’false’.

我的问题是

我们使用带有两个数据中心的六个节点的Cassandra 2.0.3(每个节点有3个节点).我们的Cassandra是一个独立的过程(不是服务).我将在cassandra.yaml文件中为一个节点更改一些属性.很明显,在更新cassandra.ymal文件后应重新启动节点以获取更改效果.我们的集群装载了大量数据.

如何重新启动节点
在杀死节点后,我可以简单地重启节点,如下所示

$cd install_location 
$bin/cassandra

这意味着重新启动没有auto_bootstrap属性的节点(默认为true).

与’真’

1)当前要重启的节点有自己的大数据.节点是否再次引导所有自己的数据并替换现有数据.
2)节点是否需要更多时间再次加入集群.

与’假’

我不想引导数据.所以
3)我可以将属性添加为auto_bootstrap:false并重启节点,如上所述.
4)成功重启后,我将删除auto_bootstrap属性.这样可以吗?

其他
5)当我重新启动具有相同IP地址的节点时,群集是否会通过八卦信息自动识别这是一个现有节点,因此尽管auto_bootstrap设置为true或cassandra.yaml中不存在,但重新启动节点而不流式传输数据文件?

当我重新启动具有相同IP地址的现有节点时,尽管auto_bootstrap的值不重要,但不会流式传输任何数据.所以我们只需重新启动现有节点而不触及任何参数.所以选项5适合这里.
网友评论