在Ubuntu上实现Zookeeper数据迁移,可参考以下方案,操作前需确保已停止Zookeeper服务以避免数据不一致:
zoo.cfg确认数据存储路径(默认/var/lib/zookeeper):grep "dataDir" /etc/zookeeper/conf/zoo.cfg
sudo tar -czvf zookeeper-data-backup.tar.gz /var/lib/zookeeper
sudo tar -czvf zookeeper-config-backup.tar.gz /etc/zookeeper/conf
sudo tar -xzvf zookeeper-data-backup.tar.gz -C /var/lib/
sudo tar -xzvf zookeeper-config-backup.tar.gz -C /etc/zookeeper/conf/
sudo chown -R zookeeper:zookeeper /var/lib/zookeeper
sudo chown -R zookeeper:zookeeper /etc/zookeeper/conf
myid文件正确配置(每个节点唯一),并启动服务:sudo systemctl start zookeeper
git clone https://github.com/kshchepanovskyi/zkcopy.git
cd zkcopy && mvn clean install
java -jar target/zkcopy.jar --source source-node:2181 --target target-node:2181
zkCli.sh工具检查节点数据是否完整:./zkCli.sh -server target-node:2181
ls /
get /path/to/node