docker zookeeper 集群搭建
2018-09-05 18:08
886 查看
前言
其实zookeeper在一般的公司的应用不太多,注册中心、分布式锁、选举等等。之前用dubbo,就会用到zookeeper作为服务注册中心,现在转向springcloud,就很少用zookeeper了。但是近期研究分布式锁,对比了很多方案,比如数据库,redis,zookeeper等等,最终还是选择zookeeper,至于原因会在后续的文章中提到。
在开发环境中,大家应该都用的是zookeeper单点吧,但是在生产环境中我相信没有人敢用单点的,应该都是用的集群,因为万一单点挂掉的话,我们的应用也就自然而然的ConnectionException。那么,接下来我就记录一下我自己用docker搭建zookeeper集群。
准备工具
一、安装docker
二、在docker库获取镜像:zookeeper(tips:我下载的版本是3.4.13)
搭建
一、启动zookeeper单点,在开发环境中一般都用单点
二、zookeeper 集群搭建,这里我准备利用三个zookeeper节点组成一个集群,并且三个节点都在同一台主机上,如果需要节点原型在不同的主机上,修改对应的ip和端口即可
打开zookeeper链接工具ZooInspector进行测试,没毛病。。。。。。
其实zookeeper在一般的公司的应用不太多,注册中心、分布式锁、选举等等。之前用dubbo,就会用到zookeeper作为服务注册中心,现在转向springcloud,就很少用zookeeper了。但是近期研究分布式锁,对比了很多方案,比如数据库,redis,zookeeper等等,最终还是选择zookeeper,至于原因会在后续的文章中提到。
在开发环境中,大家应该都用的是zookeeper单点吧,但是在生产环境中我相信没有人敢用单点的,应该都是用的集群,因为万一单点挂掉的话,我们的应用也就自然而然的ConnectionException。那么,接下来我就记录一下我自己用docker搭建zookeeper集群。
准备工具
一、安装docker
二、在docker库获取镜像:zookeeper(tips:我下载的版本是3.4.13)
搭建
一、启动zookeeper单点,在开发环境中一般都用单点
docker run -d -p 2181:2181 --restart always --name zookeeper \ -v $PWD/volume/data:/data \ -v $PWD/volume/datalog:/datalog \ zookeeper:3.4.13
二、zookeeper 集群搭建,这里我准备利用三个zookeeper节点组成一个集群,并且三个节点都在同一台主机上,如果需要节点原型在不同的主机上,修改对应的ip和端口即可
-- 创建节点文件夹 mkdir cluster/node1 -p && mkdir cluster/node2 -p && mkdir cluster/node3 -p -- 机器ip machine_ip=10.82.12.95 -- 运行节点1 docker run -d -p 2181:2181 -p 2887:2888 -p 3887:3888 --name zookeeper_node1 --restart always \ -v $PWD/cluster/node1/volume/data:/data \ -v $PWD/cluster/node1/volume/datalog:/datalog \ -e "TZ=Asia/Shanghai" \ -e "ZOO_MY_ID=1" \ -e "ZOO_SERVERS=server.1=0.0.0.0:2888:3888 server.2=$machine_ip:2888:3888 server.3=$machine_ip:2889:3889" \ zookeeper:3.4.13 -- 运行节点2 docker run -d -p 2182:2181 -p 2888:2888 -p 3888:3888 --name zookeeper_node2 --restart always \ -v $PWD/cluster/node2/volume/data:/data \ -v $PWD/cluster/node2/volume/datalog:/datalog \ -e "TZ=Asia/Shanghai" \ -e "ZOO_MY_ID=2" \ -e "ZOO_SERVERS=server.1=$machine_ip:2887:3887 server.2=0.0.0.0:2888:3888 server.3=$machine_ip:2889:3889" \ zookeeper:3.4.13 -- 运行节点3 docker run -d -p 2183:2181 -p 2889:2888 -p 3889:3888 --name zookeeper_node3 --restart always \ -v $PWD/cluster/node3/volume/data:/data \ -v $PWD/cluster/node3/volume/datalog:/datalog \ -e "TZ=Asia/Shanghai" \ -e "ZOO_MY_ID=3" \ -e "ZOO_SERVERS=server.1=$machine_ip:2887:3887 server.2=$machine_ip:2888:3888 server.3=0.0.0.0:2888:3888" \ zookeeper:3.4.13
打开zookeeper链接工具ZooInspector进行测试,没毛病。。。。。。
相关文章推荐
- ZooKeeper此例简单介绍基于docker的zookeeper安装与集群搭建
- 【Docker环境搭建Zookeeper集群】
- 使用 Docker 一步搞定 ZooKeeper 集群的搭建
- 基本Docker zookeeper 3.4.9 集群搭建
- Bluemix平台一步一步搭建ZooKeeper + Mesos + Marathon平台管理Docker集群之二
- Docker中搭建zookeeper集群
- 使用 Docker搭建 ZooKeeper 集群
- 使用 Docker 一步搞定 ZooKeeper 集群的搭建
- mesos+marathon+zookeeper的docker管理集群亲手搭建实例(环境Centos6.8)
- docker搭建zookeeper集群
- docker 土法制作zookeeper镜像 并且搭建集群 基于centos7.2
- mesos+marathon+zookeeper的docker管理集群亲手搭建实例(详细)
- 使用 Docker 一步搞定 ZooKeeper 集群的搭建
- mesos+marathon+zookeeper的docker管理集群亲手搭建实例(详细)
- 使用docker容器创建Kafka集群管理、状态保存是通过zookeeper实现,所以先要搭建zookeeper集群
- 基于Mesos+Marathon+Zookeeper的Docker集群管理环境搭建过程分享
- 搭建zookeeper的docker集群
- 使用Docker搭建zookeeper集群
- docker搭建zookeeper集群