使用Docker官方镜像搭建ZooKeeper集群
使用Docker官方镜像搭建ZooKeeper集群
参考:
https://segmentfault.com/a/1190000006907443
使用hub.docker.com上zookeeper官方镜像
docker pull zookeeper
docker run --rm=true --name my_zookeeper zookeeper:latest
官方使用的openJDK
java.home=/usr/lib/jvm/java-1.8-openjdk/jre
使用 docker-compose 来启动 ZK 集群
docker-compose.yml
version: '2'
services:
zoo1:
image: zookeeper
restart: always
container_name: zoo1
ports:
- "2181:2181"
environment:
ZOO_MY_ID: 1
ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888
zoo2:
image: zookeeper
restart: always
container_name: zoo2
ports:
- "2182:2181"
environment:
ZOO_MY_ID: 2
ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888
zoo3:
image: zookeeper
restart: always
container_name: zoo3
ports:
- "2183:2181"
environment:
ZOO_MY_ID: 3
ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888
启动集群 -d 以后台方式运行
COMPOSE_PROJECT_NAME=zk_test docker-compose up -d
COMPOSE_PROJECT_NAME=zk_test 为 compose 工程起一个名字, 以免与其他的 compose 混淆.
使用 Docker 命令行客户端连接 ZK 集群
通过 docker-compose ps 命令, 我们知道启动的 ZK 集群的三个主机名分别是 zoo1, zoo2, zoo3, 因此我们分别 link 它们即可:
docker run -it --rm \
--link zoo1:zk1 \
--link zoo2:zk2 \
--link zoo3:zk3 \
--net zktest_default \
zookeeper zkCli.sh -server zk1:2181,zk2:2181,zk3:2181
查看集群状态:
echo stat | nc localhost 2181
echo stat | nc localhost 2182
echo stat | nc localhost 2183
推荐阅读
-
使用Docker官方镜像搭建ZooKeeper集群
-
使用docker快速搭建Spark集群的方法教程
-
docker官方镜像下载及使用Dockerfile创建镜像的方法
-
Docker如何使用nginx搭建tomcat集群
-
利用docker搭建php7和nginx运行环境全过程(官方镜像)
-
使用docker快速搭建Spark集群的方法教程
-
详解从 0 开始使用 Docker 快速搭建 Hadoop 集群环境
-
JAVAEE——宜立方商城08:Zookeeper+SolrCloud集群搭建、搜索功能切换到集群版、Activemq消息队列搭建与使用
-
详解使用docker搭建hadoop分布式集群
-
SUSE12Sp3-使用Docker导入镜像并安装redis,zookeeper,kafka