下载安装包zookeeper-3.4.10.tar.gz
Linux:
1. 解压压缩包到规划的目录下
tar -xvf zookeeper-3.4.10.tar.gz -C /soft
2. 切换到soft目录下
cd /soft
3. 建立软连接
ln -s zookeeper-3.4.10 zk
4. 配置环境变量
vi /etc/profile
export ZOOKEEPER_HOME=/soft/zk
export PATH=$PATH:$ZOOKEEPER_HOME/bin
5. 使环境变量生效
source /etc/profile
6. 切换到zk的配置文件所在目录
cd /soft/zk/conf/
7. 由模板创建配置文件:
cp zoo_sample.cfg zoo.cfg
8. 修改zk的配置文件
vi zoo.cfg,然后修改2处:
dataDir=/data/zookeeper
在最后一行增加如下内容
server.1=tdh-1:2888:3888
server.2=tdh-2:2888:3888
server.3=tdh-3:2888:3888
格式是这样的 server.id=host:port:port
id:自定义的整数,代表服务器编号
host:服务器的ip地址
第一个port:follower与leader之间的通信端口
第二个port:关于leader的选举投票通信端口
9. 创建数据目录
mkdir -p /data/zookeeper
10. 将配置好的文件拷贝到从节点tdh-2上,在主节点tdh-1上执行,注意修改为自己的主机名:
scp -r /soft/zookeeper-3.4.10 tdh-2:/soft/
11. 在从节点tdh-2上建立软连接,在tdh-2上执行
ln -s /soft/zookeeper-3.4.10 /soft/zk
12. 在从节点tdh-2上,修改环境变量
vi /etc/profile,在最后一行增加如下内容:
export ZOOKEEPER_HOME=/soft/zk
export PATH=$PATH:$ZOOKEEPER_HOME/bin
13. 使环境变量生效
source /etc/profile
14. 将配置好的文件拷贝到从节点tdh-3上,在主节点tdh-1上执行:
scp -r /soft/zookeeper-3.4.10 tdh-3:/soft/
15. 在从节点tdh-3上建立软连接,在tdh-3上执行
ln -s /soft/zookeeper-3.4.10 /soft/zk
16. 在从节点tdh-3上,修改环境变量
vi /etc/profile,在最后一行增加如下内容:
export ZOOKEEPER_HOME=/soft/zk
export PATH=$PATH:$ZOOKEEPER_HOME/bin
17. 使环境变量生效
source /etc/profile
18. 在tdh-1、tdh-2、tdh-3的每台主机/data/zookeeper目录中添加增加文件myid,内容分别是1,2,3
tdh-1下执行:
echo 1 > /data/zookeeper/myid
systemctl status firewalld.service,如果不是下图关闭状态,则执行一下语句:
systemctl stop firewalld.service
systemctl disable firewalld.service
tdh-2下执行:
mkdir -p /data/zookeeper
echo 2 >/data/zookeeper/myid
systemctl status firewalld.service,如果不是下图关闭状态,则执行一下语句:
#关闭防火墙
systemctl stop firewalld.service
#开机时不自动开启防火墙
systemctl disable firewalld.service
tdh-3下执行:
mkdir -p /data/zookeeper
echo 3 > /data/zookeeper/myid
systemctl status firewalld.service,如果不是下图关闭状态,则执行一下语句:
systemctl stop firewalld.service
systemctl disable firewalld.service
19. 启动zk服务,每台主机上执行
zkServer.sh start
20. 所有节点都执行以上语句后,再在每台节点上执行以下语句,查看每台服务器的状态,leader时随机分配的,且只有一个leader,其余节点为follwer
zkServer.sh status
出现的问题:
解决方案:
检查端口占用 分别检查 三个端口 2181 2888 3888
netstat -apn | grep 2181
还不行检查主机映射
vi /etc/hosts
需要三个节点都配置