自己学Docker:15.Docker使用实战--zookeeper集群部署
2017-11-24 16:43
766 查看
之前有介绍过使用Docker创建MySQL服务,说明了三种方式。
使用Docker镜像
通过Dockerfile构建
通过docker stack deploy(或者docker-compose)
1,2可以归为一种,即单个应用方式: Dockerfile -> 镜像 -> 容器(docker run) 。对于搭建集群环境的话,Docker Stack方式实施和管理更为方便。所以这里搭建一个zookeeper的集群环境就不再使用1,2种,想,具体方式可以参见Docker创建MySQL服务。
如下:
上面的文件创建了三个zookeeper的集群服务,以复制模式(replicated mode)启动Zookeeper,并将容器内的2181端口分别映射到主机的2181,2182,2183。
当然,严格的说,这个也不能说是集群模式。毕竟所有容器都运行再同一主机,如果宕机,所有的zookeeper服务器都将处于脱机状态。
查看服务状态:
到https://www.apache.org/dyn/closer.cgi/zookeeper/下载zookeeper即可获得。
进入到bin目录下,执行命令。
可以成功连接到上面创建的zookeeper服务。
命令行的相关操作,可以参见
分布式服务框架ZooKeeper安装和配置
分布式服务框架ZooKeeper:四字命令
使用Docker镜像
通过Dockerfile构建
通过docker stack deploy(或者docker-compose)
1,2可以归为一种,即单个应用方式: Dockerfile -> 镜像 -> 容器(docker run) 。对于搭建集群环境的话,Docker Stack方式实施和管理更为方便。所以这里搭建一个zookeeper的集群环境就不再使用1,2种,想,具体方式可以参见Docker创建MySQL服务。
zookeeper.yml
通过docker stack deploy方式首先要编写yaml文件。样例可以参见dockerhub的zookeeper镜像的介绍。如下:
version: '3.1' services: zoo1: image: zookeeper restart: always hostname: 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 hostname: 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 hostname: 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
上面的文件创建了三个zookeeper的集群服务,以复制模式(replicated mode)启动Zookeeper,并将容器内的2181端口分别映射到主机的2181,2182,2183。
当然,严格的说,这个也不能说是集群模式。毕竟所有容器都运行再同一主机,如果宕机,所有的zookeeper服务器都将处于脱机状态。
执行,生成服务
采用如下命令:sudo docker stack deploy -c zookeeper.yml zk
查看服务状态:
sudo docker stack services zk
连接zookeeper服务
zkCli.sh
zookeeper的bin目录下提供了一个客户端连接工具zkCli.sh。到https://www.apache.org/dyn/closer.cgi/zookeeper/下载zookeeper即可获得。
进入到bin目录下,执行命令。
./zkCli.sh -server 127.0.0.1:2181
可以成功连接到上面创建的zookeeper服务。
命令行的相关操作,可以参见
分布式服务框架ZooKeeper安装和配置
分布式服务框架ZooKeeper:四字命令
相关文章推荐
- 使用 k8s/docker-compose 部署 zookeeper集群
- 自己学Docker:16.Docker使用实战--部署带Web管理工具的RabbitMQ
- 使用docker搭建部署hadoop分布式集群
- 使用docker安装部署Spark集群来训练CNN(含Python实例)
- 在CentOS7部署zookeeper集群以及简单API使用
- 使用Docker构建持续集成与自动部署的Docker集群
- 使用docker安装部署Spark集群来训练CNN(含Python实例)
- 使用Docker部署Spark集群
- 使用Docker构建持续集成与自动部署的Docker集群
- 使用 Docker 一步搞定 ZooKeeper 集群的搭建
- docker深入2-使用自定义的网络来配置zookeeper集群
- docker 使用compose安装zookeeper集群
- docker 实战---部署tomcat\weblogic集群 (二)
- zookeeper学习与实战(二)集群部署
- 使用Docker构建持续集成与自动部署的Docker集群
- 在Docker中从头部署自己的Spark集群
- 在CentOS7部署zookeeper集群以及简单API使用
- 使用 Docker 一步搞定 ZooKeeper 集群的搭建
- 使用docker安装部署Spark集群来训练CNN(含Python实例)
- 开源Nosql数据库Cassandra3.0实战-集群部署与插件使用