Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cassandra 升级卡桑德拉_Cassandra_Upgrade_Nodetool - Fatal编程技术网

Cassandra 升级卡桑德拉

Cassandra 升级卡桑德拉,cassandra,upgrade,nodetool,Cassandra,Upgrade,Nodetool,我的Cassandra版本是1.2.4,我正在尝试将其升级到2.0.5,我知道在第一部分中,我必须将其升级到1.0.14,然后尝试将其升级到2.0.5 当我尝试运行nodetool-h localhost removenode Host ID时,它会给出: 线程“main”java.lang.UnsupportedOperationException中出现异常:无法删除self 位于org.apache.cassandra.service.StorageService.removeNode(St

我的Cassandra版本是
1.2.4
,我正在尝试将其升级到
2.0.5
,我知道在第一部分中,我必须将其升级到
1.0.14
,然后尝试将其升级到
2.0.5

当我尝试运行
nodetool-h localhost removenode Host ID
时,它会给出:

线程“main”java.lang.UnsupportedOperationException中出现异常:无法删除self 位于org.apache.cassandra.service.StorageService.removeNode(StorageService.java:3199)

在运行该命令之前,我尝试了
nodetool upgradessstables

有什么问题?我怎样才能解决这个问题



操作系统:Ubuntu 12.04 lts

更新

  • 从官方网站下载Cassandra的1.2.13和2.0.5版本。打开在下载的cassandra的两个版本中配置cassandra.yaml。以现有(旧)版本cassandra.yaml为基础
  • 为旧卡桑德拉制作快照:nodetool快照
  • 停止记录装置(读数将继续工作):nodetool排放
  • 阻止老卡桑德拉
  • 在新版本1.2.13中复制当前(旧)Cassandra中的数据。运行它(1.2.13)
  • 为Cassandra 1.2.13执行更新命令表格式:nodetool upgradesstables-a
  • 将数据从Cassandra 1.2.13复制到Cassandra 2.0.5。
  • 精细点

  • 在2.0.5中,默认情况下包括虚拟主机-vnodes(在cassandra.yaml中记录“num_tokens:256”)
  • 在2.0.5中,将文件cassandra.yaml中的“index_interval:128”记录到表的级别属性中
  • 在2.0.5中,缺少以前版本的cassandra.yaml中的一些设置

  • 你可以尝试一下,但问题不是升级,我已经成功地完成了,问题是
    removenode
    commandOk。请确保主机ID的格式正确(UUID格式),并尝试从另一台计算机执行removenode命令。似乎不可能在必须删除的节点上运行此命令。请参阅此处的更多信息: