我们有健康运行的3节点Cassandra集群,但我们需要交换所有3节点的ip地址由于一些问题。所以基本上,我们想把旧的cassandra服务器ip地址从交换到新的cassandra服务器ip地址。我的问题是:-1) 为了避免任何问题,我们是否需要遵循任何具体的程序?2) 或者只是修改rpc\u地址、listen\u地址、seeds、peers表等并启动cassandra节点?请帮忙,谢谢
pw136qt21#
您已经确定了要采取的大多数步骤。此外,请确保一次只在一个节点上执行以下步骤:在 cassandra.yaml 更新rpc\u地址、listen\u地址、种子以及对以前的ip地址的任何引用。另外,确保 auto_bootstrap 设置为false(默认情况下省略指令,默认值为true)。根据您的安装,也可以查看 cassandra-topology.properties 以及 cassandra-rackdc.properties 停止Cassandra服务更改该框的ip地址(即ifconfig、添加新路由等)在 cassandra-env.sh 在以前的ip地址中包含以下指令: JVM_OPTS="$JVM_OPTS -Dcassandra.replace_address=previous_ip_address 在节点中启动cassandra服务。等到 nodetool status 报告为 UN ,您应该注意到报告了新的ip地址如果你加上 auto_bootstrap 中的指令 cassandra.yml ,将其删除 拆下 cassandra.replace_address 指令来自 cassandra-env.sh 在其他节点中重复
cassandra.yaml
auto_bootstrap
cassandra-topology.properties
cassandra-rackdc.properties
cassandra-env.sh
JVM_OPTS="$JVM_OPTS -Dcassandra.replace_address=previous_ip_address
nodetool status
UN
cassandra.yml
cassandra.replace_address
1条答案
按热度按时间pw136qt21#
您已经确定了要采取的大多数步骤。此外,请确保一次只在一个节点上执行以下步骤:
在
cassandra.yaml
更新rpc\u地址、listen\u地址、种子以及对以前的ip地址的任何引用。另外,确保auto_bootstrap
设置为false(默认情况下省略指令,默认值为true)。根据您的安装,也可以查看
cassandra-topology.properties
以及cassandra-rackdc.properties
停止Cassandra服务更改该框的ip地址(即ifconfig、添加新路由等)
在
cassandra-env.sh
在以前的ip地址中包含以下指令:JVM_OPTS="$JVM_OPTS -Dcassandra.replace_address=previous_ip_address
在节点中启动cassandra服务。等到nodetool status
报告为UN
,您应该注意到报告了新的ip地址如果你加上
auto_bootstrap
中的指令cassandra.yml
,将其删除拆下
cassandra.replace_address
指令来自cassandra-env.sh
在其他节点中重复