elasticsearch cassandra从一个节点备份到另一个节点

z6psavjg  于 2023-03-07  发布在  ElasticSearch
关注(0)|答案(2)|浏览(141)

我是新的cassandra和gremlin。我正在使用gremlin进入和检索数据从cassandra。我想采取备份和恢复它在新节点上。我采取了快照使用nodetool。我也使用ElasticSearch索引。请帮助我与一些链接或文档

7uhlpewt

7uhlpewt1#

我使用了这篇文章的第二种方法:How do I replicate a Cassandra's local node for other Cassandra's remote node?
如果两个表的结构相同,您可以创建两个bash脚本,如下所示:

    • 1.使用以下命令导出数据:**
nodetool flush <your-keyspace-name>
nodetool cleanup <your-keyspace-name>
nodetool -h localhost -p 7199 snapshot <your-keyspace-name>
zip -r /tmp/bkp.zip /var/lib/cassandra/data/<your-keyspace-name>/
sshpass -p <password> scp -v /tmp/bkp.zip root@<ip>:/tmp
    • 2.导入数据:**
unzip /tmp/bkp.zip
nodetool cleanup <your-keyspace-name>
cd /var/lib/cassandra/data/<your-keyspace-name>/ && find /var/lib/cassandra/data/<your-keyspace-name>/ -maxdepth 5 -type d -exec sstableloader -v --nodes 127.0.0.1 {} \;

如果你注意到一些缓慢的过程,请检查这另一个职位:Cassandra's sstableloader too slow in import data

    • 重要事项:你应该使这个信息适合你的实际情况。
bfrts1fy

bfrts1fy2#

我按照下面的步骤和修复工作

用于备份

转到路径cd /var/lib/cassandra/data
然后使用以下命令获取快照

节点工具快照janusgraph -cf边缘存储-t边缘存储_mar6
节点工具快照janusgraph -cf图形索引-t图形索引_mar6

我备份了/var/lib/cassandra/data下目录janusgraph中的所有文件夹
现在移动到文件夹cd /var/lib/cassandra/data/janusgraph并键入给予命令ls -lrth
最新的文件夹将出现在底部,然后转到这些文件夹并进入出现在这些文件夹内的快照文件夹。
例如

cd /var/lib/Cassandra/数据/janusgraph/图形索引-8 e147200236 f11 edbecf 211 c2 dd 12670/快照

并将graphindex_mar6复制到新目录
我对keyspace(directory)janusgraph下的所有其他文件夹重复此操作,将所有包含今天日期的文件夹复制到新目录,并使用tar命令压缩新目录

tar cvzf janusgraph_mar6.tar.gz janusgraph

这里janusgraph是我创建的目录,并复制了keyspace(目录)janusgraph下所有文件夹的所有快照。

用于恢复

然后将janusgraph_mar6.tar.gz文件夹复制到远程计算机,我们希望将数据恢复到该计算机
解压缩janusgraph文件夹

tar xvzf janusgraph_mar6.tar.gz

然后在文件夹janusgraph下,重命名其他文件夹
例如,从边缘存储器_mar6到边缘存储器
mv边缘存储_mar6边缘存储
图形索引_mar6到图形索引
mv图形索引_mar 6图形索引
对所有文件夹重复上述步骤
然后使用以下命令恢复

稳定加载程序-d cassandra-ip /home/ubuntu/janusgraph/图形索引/
稳定加载程序-d cassandra-ip /主页/Ubuntu/janusgraph/边缘存储/

在这里,我们可以通过运行命令nodetool status获得cassandra-ip,对所有其他文件夹使用上述命令,然后重新启动cassandra

sudo服务重新启动cassandra

我的数据已恢复
因为我使用elasticsearch为索引在我的后端,我运行这我的reindexing脚本在gremlin控制台后恢复

相关问题