1)需要提前安装python和docker-compose
注:sudo权限看自己机器的权限
安装python-pip:
sudo yum -y install epel-release
sudo yum -y install python-pip
安装docker-compose:
sudo pip install docker-compose
注意在安装过程中很有可能报错,这里列举下解决办法。
(1)报错pip版本需要升级
按照提示执行
sudo pip install --upgrade pip
(2)如果上面这段执行不过去
这个代表pip自动升级不了,需要手动找其它源来自动升级,这里我试了几个源,发现还是下面这个源最稳定。
wget https://bootstrap.pypa.io/pip/2.7/get-pip.py
python get-pip.py
pip install --upgrade setuptools
(3)安装后如果还是安装不上docker-compose
那么我们需要再执行一个命令,计算机允许从pip安装任意源
sudo pip install fonttools -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
执行完上面操作以后,再安装应该就可以安装上去了。
(4)安装好之后使用命令检测安装是否成功
sudo docker-compose --version
2)docker 拉取zookeeper
注:没有安装docker的需要先安装docker
docker pull zookeeper:3.5.9
(需指定版本号,如不指定版本,则会默认下载最新版本)
3)创建docker-compose.yml文件
(1)任意目录下新建 docker-compose.yml 文件
vi docker-compose.yml
(2)复制下面配置进入这个文件
version: '3.1'
services:
zoo1:
image: zookeeper:3.5.9
restart: always
hostname: zoo1
ports:
- 2181:2181
environment:
ZOO_MY_ID: 1
ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=zoo3:2888:3888;2181
zoo2:
image: zookeeper:3.5.9
restart: always
hostname: zoo2
ports:
- 2182:2181
environment:
ZOO_MY_ID: 2
ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=zoo3:2888:3888;2181
zoo3:
image: zookeeper:3.5.9
restart: always
hostname: zoo3
ports:
- 2183:2181
environment:
ZOO_MY_ID: 3
ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=zoo3:2888:3888;2181
(3)执行命令启动集群
sudo docker-compose up -d
出现下图代表执行成功
如果出现权限报错,需要给文件赋权
sudo chmod 777 /var/run/docker.sock
4)查看zookeeper集群状态
(1)直接查看集群状态
sudo docker-compose ps
(2)查看docker镜像容器
sudo docker ps -a
5)尝试连接zookeeper容器
(1)随便进入一个容器
sudo docker exec -it pi_zoo1_1/bin/sh
(2)进入后再执行连接命令
./bin/zkCli.sh -server 127.0.0.1:2181
出现以下结果代表成功