动态增删Cassandra机器节点
新增机器节点的步骤:
1.新开一个VM1(192.168.5.100),修改cassandra的配置文件中的listen_address和rpc_address为当前机器的内网地址或者公网地址
修改Seeds,这里改为本VM的IP
修改rpc_address
修改listen_address
2. 保存关闭,启动新节点
3. 运行nodetool status命令查看节点状况
4. 另开一台VM2(192.168.5.201),重复步骤1-3,将
seeds = 192.168.5.100
rpc_address = 192.168.5.201
listen_address = 192.168.5.201
5. 保存关闭,启动新节点
6. 切回VM1(192.168.5.100),运行nodetool status命令查看节点状况
删除线上机器节点步骤:
1. 切回VM2,运行nodetool decommission 关闭当前节点
2. 切回VM1,运行nodetool status命令查看节点状况
删除宕机机器节点步骤:
1.重新开启VM1和VM2的两个节点,这里需要注意的是,VM2的节点进行nodetool decommission后再重启会报一个异常
解决办法:根据它的提示,我们可以进入%CASSANDRA_HOME%/data目录,清空里面的所有数据
之后再次启动VM2的节点,等待数据迁移到新节点,切回VM1运行nodetool status查看状态
2. 切回VM2,关闭Cassandra的服务(kill进程,模拟服务器断电导致宕机),切回VM1,nodetool status找出状态为DN的节点
3. nodetool removenode host-id移除节点