文档章节

docker zookeeper 集群搭建

田心双木
 田心双木
发布于 2018/09/05 18:08
字数 626
阅读 3394
收藏 14

前言

其实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进行测试,没毛病。。。。。。

 

© 著作权归作者所有

田心双木
粉丝 31
博文 121
码字总数 85991
作品 0
成都
高级程序员
私信 提问
docker入门到实战(8)使用docker-compose快速搭建zookeeper集群

镜像下载 docker pull zookeeper zookeeper 集群的搭建 创建名为docker-compose.yml的文件 输入以下内容 version: '2' services: zk1: image: zookeeper restart: always container_name: z......

编程老司机
2018/05/14
0
0
docker容器中搭建kafka集群环境

Kafka集群管理、状态保存是通过zookeeper实现,所以先要搭建zookeeper集群 zookeeper集群搭建 一、软件环境: zookeeper集群需要超过半数的的node存活才能对外服务,所以服务器的数量应该是2...

qq_41587243
2018/05/25
0
0
使用docker-compose快速搭建zookeeper集群

镜像下载 docker pull zookeeper zookeeper 集群的搭建 创建名为docker-compose.yml的文件 输入以下内容 这个配置文件会告诉 Docker 分别运行三个 zookeeper 镜像, 并分别将本地的 2181, 21...

jkxqj
2018/04/02
0
0
使用 Docker 一步搞定 ZooKeeper 集群的搭建

ZooKeeper为分布式应用提供高效、高可用的分布式协调服务,它有三种运行模式:单机模式、伪集群模式和集群模式。本文通过探索ZooKeeper的官方Docker镜像,来看看怎样快速搭建一个ZooKeeper的...

qq_41587243
2018/05/25
0
0
Java之品优购部署_day01(3)

2.2 搭建 Zookeeper 集群 2.2.1 搭建要求 真实的集群是需要部署在不同的服务器上的,但是在我们测试时同时启动十几个虚拟机 内存会吃不消,所以我们通常会搭建伪集群,也就是把所有的服务都搭...

我是小谷粒
2018/07/06
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring Boot 是所有基于 Spring 开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件。

Springboot框架搭建相关 Spring Boot 是所有基于 Spring 开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来 Spring 应用程序并且尽可能减少你的配置文件。 什么是 Spring Boo...

AndLong
30分钟前
4
0
好程序员云计算学习路线分享软件包管理

好程序员云计算学习路线分享软件包管理,安装/查询/卸载 一、软件的类型 A. 源码包 需要编译 nginx-1.12.1.tar.gz B. 二进制包 已编译 mysql-community-common-5.7.12-1.el7.x86_64.rpm 常见...

好程序员官方
32分钟前
1
0
阿里巴巴小程序繁星计划 9月27日有话要说

2019年9月27日,阿里巴巴小程序繁星计划峰会将于杭州云栖小镇召开。这是自今年3月阿里巴巴正式对外宣布全面开启小程序发展战略,阿里云携手支付宝、淘宝、钉钉、高德联合发布“阿里巴巴小程序...

Mr_zebra
35分钟前
4
0
centos下搭建Jenkins持续集成环境(安装jenkins)

centos下搭建Jenkins持续集成环境(安装jenkins) 1、安装JDK yum install -y java 2、安装jenkins 添加Jenkins库到yum库,Jenkins将从这里下载安装。 1 wget -O /etc/yum.repos.d/jenkins.rep...

linjin200
36分钟前
4
0
JDK1.8.0_181的无限制强度加密策略文件变动

JDK1.8.0_151后的版本无需去官网下载 local_policy.jar US_export_policy.jar这个jar包,只需要修改Java\jdk1.8.0_181\jre\lib\security这目录下的java.security文件配置即可。 随着越来越多...

葉者
38分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部