centos7环境安装Zookeeper步骤(图解版)

Posted 小志的博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos7环境安装Zookeeper步骤(图解版)相关的知识,希望对你有一定的参考价值。

一、下载地址

二、安装JDK环境

三、安装Zookeeper

注:以下所有演示操作lz都使用的root用户

1、在linux环境的根目录下创建如下文件夹:

  • /xz/tool/表示网上下载的安装包目录位置
  • /xz/software/ 表示软件安装后的目录位置

2、修改操作系统的/etc/hosts文件,在该文件中添加如下配置:

# zookeeper servers
192.168.3.71 edu-provider-01


3、把下载好的apache-zookeeper-3.5.9-bin.tar.gz安装包上传到新建的/xz/tool/目录下,如下所示:


4、解压 zookeeper安装包到新建的/xz/software/目录下,如下图所示:

5、在/xz/software/apache-zookeeper-3.5.9-bin/目录下创建data和logs文件夹,如下图所示:


6、将 /xz/software/apache-zookeeper-3.5.9-bin/目录下的 zoo_sample.cfg 文件拷贝一份,命名为zoo.cfg,如下图所示:

7、修改 zoo.cfg配置文件,在 zoo.cfg配置文件中添加如下内容:

dataDir=/xz/software/apache-zookeeper-3.5.9-bin/data/
dataLogDir=/xz/software/apache-zookeeper-3.5.9-bin/logs/
# the port at which the clients will connect
clientPort=2181
server.1=edu-provider-01:2888:3888


8、zoo.cfg配置文件说明

  • 2888端口号是 zookeeper服务之间通信的端口。

  • 3888是 zookeeper与其他应用程序通信的端口。

  • edu-provider-01是在 hosts中已映射了 IP的主机名。

  • initLimit:这个配置项是用来配置 Zookeeper 接受客户端(这里所说的客户端不
    是用户连接 Zookeeper服务器的客户端,而是 Zookeeper 服务器集群中连接到
    Leader 的 Follower 服务器)初始化连接时最长能忍受多少个心跳时间间隔数。
    当已经超过 10 个心跳的时间(也就是 tickTime)长度后 Zookeeper 服务器还没
    有收到客户端的返回信息,那么表明这个客户端连接失败。总的时间长度就是
    5*2000=10 秒。

  • syncLimit:这个配置项标识 Leader 与 Follower 之间发送消息,请求和应答时
    间长度,最长不能超过多少个 tickTime 的时间长度,总的时间长度就是 2*2000=4秒。

  • server.A=B:C:D:其中 A 是一个数字,表示这个是第几号服务器;B 是这个服务
    器的 IP地址或/etc/hosts文件中映射了 IP的主机名;C 表示的是这个服务器与
    集群中的 Leader 服务器交换信息的端口;D 表示的是万一集群中的 Leader 服务
    器挂了,需要一个端口来重新进行选举,选出一个新的 Leader,而这个端口就是
    用来执行选举时服务器相互通信的端口。如果是伪集群的配置方式,由于 B 都是
    一样,所以不同的 Zookeeper 实例通信端口号不能一样,所以要给它们分配不同
    的端口号。

9、在 dataDir=/xz/software/apache-zookeeper-3.5.9-bin/data/下创建 myid文件,如下所示:

  • 编辑 myid文件,并在对应的 IP的机器上输入对应的编号。如在 zookeeper上,myid
    文件内容就是 1。如果只在单点上进行安装配置,那么只有一个 server.1。

10、修改 vi /home/roots/.bash_profile,增加 zookeeper配置,如下所示:

# zookeeper env
export ZOOKEEPER_HOME=/xz/software/apache-zookeeper-3.5.9-bin/
export PATH=$ZOOKEEPER_HOME/bin:$PATH

11、使.bash_profile配置文件生效,如下所示:

[root@localhost bin]# source /home/roots/.bash_profile


12、在防火墙中打开要用到的端口 2181、2888、3888,如下所示:

  • 开启防火墙,如下图所示。

    查看防火墙的状态命令:systemctl status firewalld
    关闭防火墙的状态命令:sudo systemctl stop firewalld
    打开防火墙的状态命令:sudo systemctl start firewalld
    

  • 开放2181、2888和3888端口并重启防火墙如下图所示。

    firewall-cmd --permanent --zone=public --add-port=2181/tcp
    firewall-cmd --permanent --zone=public --add-port=2888/tcp
    firewall-cmd --permanent --zone=public --add-port=3888/tcp
    firewall-cmd --reload
    

  • 关闭防火墙,如下图所示。

    查看防火墙的状态命令:systemctl status firewalld
    关闭防火墙的状态命令:sudo systemctl stop firewalld
    打开防火墙的状态命令:sudo systemctl start firewalld
    

  • 如果希望linux系统重启后防火墙还是处于关闭的状态,需要输入如下命令。

    先输入 systemctl disable firewalld  #想重启后防火墙还是处于关闭的状态
    再输入sudo systemctl stop firewalld #关闭防火墙
    再输入 reboot #重启
    

13、启动并测试 zookeeper

  • 进入到/xz/software/apache-zookeeper-3.5.9-bin/bin/目录中执行zkServer.sh start命令,如下图所示:

    [root@localhost /]# cd /xz/software/apache-zookeeper-3.5.9-bin/bin/
    [root@localhost bin]# ./zkServer.sh start
    

  • 输入 jps 命令查看进程:

    [root@localhost bin]# jps
    

  • zookeeper客户端连接,查看是否连接成功,如下所示:

14、停止 zookeeper 进程

[root@localhost bin]# zkServer.sh stop

以上是关于centos7环境安装Zookeeper步骤(图解版)的主要内容,如果未能解决你的问题,请参考以下文章

Zookeeper3.5.7版本——集群部署(linux环境-centos7)

Zookeeper 安装步骤

Zookeeper3.5.7版本——单机部署(linux环境-centos7)

Nginx——centos7通过yum方式快速安装Nginx并测试是否安装成功(图解版)

MongoDB—— CentOS7安装MongoDB(图解版)

MongoDB—— CentOS7安装MongoDB(图解版)