Zookeeper之linux系统下安装教程

因为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服务是否安装成功

  •  进入zookeeperbin目录
  •  启动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、zookeeper2182zookeeper2183

[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版权协议,转载请附上原文出处链接和本声明。