docker安装和启动zookeeper,数据导入及导出

由于工作需要做一个项目测试,需要本地安装指定一个版本的zookeeper,然后将另一个zookeeper项目的数据全部都导入到本地的项目中。

1.在dockerhub中搜索指定的版本

访问https://hub.docker.com/ 搜索zookeeper,点击Tags页签,可以看到相应的版本。

docker安装和启动zookeeper,数据导入及导出_第1张图片

在对应的版本的右侧有下载拉取镜像的命令。

docker安装和启动zookeeper,数据导入及导出_第2张图片

2.docker安装指定版本的zookeeper及启动

先执行命令拉取镜像

~% docker pull zookeeper:3.4.14
~% docker images
REPOSITORY                            TAG       IMAGE ID       CREATED         SIZE
zookeeper                             3.4.10    d9fe1374256f   3 years ago     144MB

启动zookeeper容器

~% docker run -d -p 2181:2181 --name local-zookeeper --restart always d9fe1374256f

3.安装、配置和启动zkui

zkui的github地址为

https://github.com/DeemOpen/zkui.git

因为我的zookeeper在本地,所以将项目直接导入idea后,运行Main就可以了,如果需要修改zookeeper的地址或者服务启动后的访问端口的话,就修改config.cfg的配置文件就可以了。要修改的属性如下图

docker安装和启动zookeeper,数据导入及导出_第3张图片
#服务端口
serverPort=9090
#zk地址
zkServer=localhost:2181
#默认登录用户的用户名和密码
userSet = {"users": [{ "username":"admin" , "password":"manager","role": "ADMIN" },{ "username":"appconfig" , "password":"appconfig","role": "USER" }]}

启动以后,就可以直接访问http://localhost:9090访问zkui了。

docker安装和启动zookeeper,数据导入及导出_第4张图片

如果需要部署到服务器上的话,可以将应用先包,在代码目录里执行命令

# 打包
~% mvn clean package -Dmaven.test.skip=true
# 复制配置文件到target目录,然后修改相应配置
~% cp config.cfg target/
# 启动
~% java -jar zkui-2.0-SNAPSHOT-jar-with-dependencies.jar

4.使用zkui导出及导入zookeeper数据

登录zkui以后,点击expot就可以将配置导出,会打开一个新网页展示所有的配置,将这个网页保存为txt文件。

docker安装和启动zookeeper,数据导入及导出_第5张图片
docker安装和启动zookeeper,数据导入及导出_第6张图片

然后在另一台zookeeper的zkui中点击Import菜单,然后将刚刚导出的文本导入就可以了。

docker安装和启动zookeeper,数据导入及导出_第7张图片

zookeeper的数据导出真的是不好弄,在网上找了很多的文档,用日志文件的方式不管是增量日志还是全量日志,我操作还原数据都没有成功,也是正好看到zkui有导出和导入的功能,用真来是真的香。

你可能感兴趣的:(docker&k8s,日常问题大杂汇,zookeeper,docker,zkui)