因为zookeeper需要依赖jdk,所以安装zookeeper之前需要安装jdk
zookeeper官网:https://zookeeper.apache.org/ ----》download---->选择版本号------》选择镜像,下载,然后上传到服务器中



前提工作准备好了,接下来安装zk;
第一步:安装jdk,配置环境变量,并使其生效,然后校验jdk安装是否完成
- 解压jdk安装包
[root@localhost opt]# tar -zxvf jdk-8u131-linux-x64.tar.gz - 配置环境变量
- 打开环境变量文件
[root@localhost ~]# vi .bash_profile - 修改环境变量文件内容
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
JAVA_HOME=/opt/jdk1.8.0_131
export JAVA_HOME
PATH=$JAVA_HOME/bin:$PATH
export PATH- 使修改的环境变量生效
[root@localhost ~]# . .bash_profile - 查看jdk配置是否成功
[root@localhost ~]# java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)第二步:根据zookeeper安装包解压安装
[root@localhost opt]# tar -zxvf apache-zookeeper-3.7.0-bin.tar.gz 第三步:找到安装目录,为zookeeper准备配置文件
- 进入conf目录下
- 复制zoo_sample.cfg文件
- 新建data目录,
- 修改zk的配置中的dataDir目录为data目录
##进入目录
[root@localhost opt]# cd apache-zookeeper-3.7.0-bin/conf/
[root@localhost conf]# ll
total 12
-rw-r--r--. 1 king king 535 Mar 17 02:45 configuration.xsl
-rw-r--r--. 1 king king 3435 Mar 17 02:45 log4j.properties
-rw-r--r--. 1 king king 1148 Mar 17 02:45 zoo_sample.cfg
##复制zoo_sample.cfg文件
[root@localhost conf]# cp zoo_sample.cfg zoo.cfg
[root@localhost conf]# ll
total 16
-rw-r--r--. 1 king king 535 Mar 17 02:45 configuration.xsl
-rw-r--r--. 1 king king 3435 Mar 17 02:45 log4j.properties
-rw-r--r--. 1 root root 1148 Apr 1 02:20 zoo.cfg
-rw-r--r--. 1 king king 1148 Mar 17 02:45 zoo_sample.cfg
##创建zookeeper的节点存储目录
[root@localhost conf]# mkdir /zookeeperData
## vi 修改配置文件中的dataDir
## 此路径用于存储zookeeper中数据的内存快照、及事物日志文件
[root@localhost conf]# vi zoo.cfg
[root@localhost conf]# 
第四步:测试zk服务是否安装成功
- 进入zookeeper的bin目录
- 启动zookeeper
- ./zkServer.shstart
- 启动:zkServer.shstart
- 停止:zkServer.shstop
- 查看状态:zkServer.sh status
[root@localhost bin]# ./zkServer.sh start
ZooKeeper JMX enabled by default
Using config: /opt/apache-zookeeper-3.7.0-bin/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
[root@localhost bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/apache-zookeeper-3.7.0-bin/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: standalone
[root@localhost bin]# 至此zookeeper单机模式安装成功,如果需要集群模式,请加入以下配置:
第一步:基于zookeeper-3.4.10复制三份zookeeper安装好的服务器文件,目录名称分别为 zookeeper2181、zookeeper2182、zookeeper2183
[root@localhost opt]# cp -r apache-zookeeper-3.7.0-bin zookeeper2181
[root@localhost opt]# cp -r apache-zookeeper-3.7.0-bin zookeeper2182
[root@localhost opt]# cp -r apache-zookeeper-3.7.0-bin zookeeper2183
[root@localhost opt]# ll
total 193292
drwxr-xr-x. 7 root root 145 Apr 1 02:25 apache-zookeeper-3.7.0-bin
-rw-rw-rw-. 1 root root 12387614 Apr 1 01:45 apache-zookeeper-3.7.0-bin.tar.gz
drwxr-xr-x. 8 10 143 255 Mar 15 2017 jdk1.8.0_131
-rw-rw-rw-. 1 root root 185540433 Apr 1 01:46 jdk-8u131-linux-x64.tar.gz
drwxr-xr-x. 2 root root 6 Oct 30 2018 rh
drwxr-xr-x. 7 root root 145 Apr 1 02:32 zookeeper2181
drwxr-xr-x. 7 root root 145 Apr 1 02:33 zookeeper2182
drwxr-xr-x. 7 root root 145 Apr 1 02:33 zookeeper2183
[root@localhost opt]# 第二步:分别修改各个zk的配置中的端口号,并添加集群对应的配置文件,并创建对应的dataDir路径,修改各自的配置
注意:
1、这里一定要注意端口冲突,否则会启动失败,本人就是在服务器端口和leader选举端口的时候,选用端口不当,造成冲突,启动失败没有明确提示,耽误了好多时间
2、一定要记得关闭防火墙,或者开发端口号
3、在zookeeper的3.5版本以后,zk内嵌的管理控制台默认占用了8080端口,所以一台机器打集群zk是启动失败的,可以在zoo.cfg中修改此端口号
#添加控制台服务端口
admin.serverPort=12181#服务器对应端口号
clientPort=2181
#数据快照文件所在路径
dataDir=/opt/zookeeper2181/data
#集群配置信息
#server.A=B:C:D
#A:是一个数字,表示这个是服务器的编号
#B:是这个服务器的ip地址
#C:Zookeeper服务器之间的通信端口
#D:Leader选举的端口
server.1=192.168.93.2:8181:8189
server.2=192.168.93.2:8182:8289
server.3=192.168.93.2:8183:8389第三步:在 上一步dataDir指定的目录下,创建myid文件,然后在该文件添加上一步 server 配置的对应A数字
#zookeeper2181对应的数字为1
#/opt/zookeeper2181/data目录下执行命令
echo "1" > myid
#zookeeper2182对应的数字为2
#/opt/zookeeper2182/data目录下执行命令
echo "2" > myid
#zookeeper2183对应的数字为3
#/opt/zookeeper2183/data目录下执行命令
echo "3" > myid第四步:分别启动三台服务器,检验集群状态
登录命令:
./zkCli.sh ‐server 192.168.93.2:2181
./zkCli.sh ‐server 192.168.93.2:2182
./zkCli.sh ‐server 192.168.93.2:2183至此,zk的集群搭建完毕~~
版权声明:本文为TOP__ONE原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。