压缩包下载地址:http://mirror.bit.edu.cn/apache/zookeeper/
这里多说一句,附上两种导入文件的方法:
第一种(文件太大时最好别用):
安装上传下载文件组件:yum install lrzsz
上传下载文件:rz -be
第二种(推荐):
使用Xftp导入文件
准备工作:
java环境(JDK1.7以上版本):
详情见:Linux下安装JDK
单机搭建:
创建zookeeper文件夹:
mkdir /usr/local/zookeeper
解压到zookeeper文件夹下:
tar -zxvf /usr/local/apache-zookeeper-3.5.6-bin.tar.gz -C /usr/local/zookeeper/
创建logs文件夹:
mkdir /usr/local/zookeeper/apache-zookeeper-3.5.6-bin/logs
创建data文件夹:
mkdir /usr/local/zookeeper/apache-zookeeper-3.5.6-bin/logs/data
进入conf目录:
cd /usr/local/zookeeper/apache-zookeeper-3.5.6-bin/conf
复制zoo_sample.cfg文件,将名字改为zoo.cfg:
cp -rf zoo_sample.cfg zoo.cfg
编辑zoo.cfg文件:
vim zoo.cfg
增加一行日志目录配置:
dataLogDir=/usr/local/zookeeper/apache-zookeeper-3.5.6-bin/logs
修改一行数据存储目录配置:
dataDir=/usr/local/zookeeper/apache-zookeeper-3.5.6-bin/data
进入bin目录后启动:
cd /usr/local/zookeeper/apache-zookeeper-3.5.6-bin/bin/
./zkServer.sh start
查看zookeeper启动状态:
./zkServer.sh status
集群搭建
创建三台服务器,这里我为了方便克隆了第一台虚拟机并为其他两台虚拟机配置IP地址。
配置IP详情见:CentOS 7修改IP地址
编辑zoo.cfg文件:
vim /usr/local/zookeeper/apache-zookeeper-3.5.6-bin/conf/zoo.cfg
配置集群中的 ip 地址:
server.1=第一台虚拟机IP:2888:3888
server.2=第二台虚拟机IP:2888:3888
server.3=第三台虚拟机IP:2888:3888
说明: server.1 中的这个 1 表示的是服务器的标识也可以是其他数字,表示这是第几号服务器,这个标识要和下面我们配置的 myid 的标识一致。
为每台服务器创建myid文件:
# server.1
echo "1" > /usr/local/zookeeper/apache-zookeeper-3.5.6-bin/data/myid
# server.2
echo "2" > /usr/local/zookeeper/apache-zookeeper-3.5.6-bin/data/myid
# server.3
echo "3" > /usr/local/zookeeper/apache-zookeeper-3.5.6-bin/data/myid
关闭每台防火墙(这里挺重要的,如果没有关闭的话在之后查看zookeeper状态时会出错):
systemctl stop firewalld.service
禁止每台防火墙开机启动:
systemctl disable firewalld.service
进入bin目录后启动(每台都需要执行):
cd /usr/local/zookeeper/apache-zookeeper-3.5.6-bin/bin/
./zkServer.sh start
查看zookeeper启动状态:
./zkServer.sh status
可以看到Zookeeper集群已经启动成功而且有一个leader,多个follower