zookeeper单节点超详细安装配置

作者: itcjj | 来源:发表于2017-01-17 11:29 被阅读343次

    1.在线下载操作命令:

    $ wget http://apache.fayea.com/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz
    

    2.线下安装包下载地址:

    http://mirrors.cnnic.cn/apache/zookeeper/
    

    3.解压zookeeper安装包到指定的目录(自定义)

    $ tar -zxvf zookeeper-3.4.6.tar.gz -C /usr/local
    

    4.在/usr/local/zookeeper-3.4.6目录下创建数据目录以及日志目录

    $ cd /usr/local/zooleeper-3.4.6
    
    mkdir data
    mkdir logs
    

    5.将zookeeper-3.4.6/conf目录下的zoo_sample.cfg 文件拷贝一份,命名为zoo.cfg

    $ cp zoo_sample.cfg zoo.cfg
    

    6.修改/etc/hosts配置文件

    $ vim /etc/hosts
    # zookeeper servers
    121.xx.xx.xx dubbo-provider-01
    

    7.重启网卡

    $ service network restart
    

    8.修改zoo.cfg配置文件

    $ vim zoo.cfg
    
    # The number of milliseconds of each tick
    tickTime=2000
    # The number of ticks that the initial
    # synchronization phase can take
    initLimit=10
    # The number of ticks that can pass between
    # sending a request and getting an acknowledgement
    syncLimit=5
    # the directory where the snapshot is stored.
    # do not use /tmp for storage, /tmp here is just
    # example sakes.
    dataDir=/usr/local/zookeeper-3.4.6/data
    dataLogDir=/usr/local/zookeeper-3.4.6/logs
    # the port at which the clients will connect
    clientPort=2181
    #2888,3888 are election port
    server.1=dubbo-provider-01:2888:3888
    

    配置文件解说:

    2888 端口号是 zookeeper 服务之间通信的端口。3888 是 zookeeper 与其他应用程序通信的端口。dubbo-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.在/usr/local/zookeeper-3.4.6/data下创建myid文件,编辑 myid 文件,并在对应的 IP 的机器上输入对应的编号。如果只在单点上进行安装配置, 那么只有一个 server.1。

    $ vi myid
    
    1
    

    10.将zookeeper加到系统环境变量中,方便操作它

    $ vim /etc/profile
    
    ## zookeeper env
    export ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.6
    export PATH=$ZOOKEEPER_HOME/bin:$PATH
    

    11.重启系统环境变量,使修改后的配置文件生效

    $ source /etc/profile
    

    12.防火墙中打开要用到的端口 2181、 2888、 3888

    # chkconfig iptables on
    # service iptables start
    # vi /etc/sysconfig/iptables
    
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 2181 -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 2888 -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3888 -j ACCEPT
    

    13.重启防火墙

    service iptables restart
    

    14.查看防火墙状态

    service iptables status
    

    15.启动测试zookeeper

    (1)在/usr/local/zookeeper-3.4.6/bin 目录中执行

    $ zkServer.sh start
    

    (2) 输入 jps 命令查看进程:

    $ jps
    1201 QuorumPeerMain
    QuorumPeerMain 是 zookeeper 进程,当看到这个进行表示启动正常
    

    (3) 查看状态:

    $ zkServer.sh status
    

    (4) 查看 zookeeper 服务输出信息:

    $ tail -500f zookeeper.out
    

    16.停止zookeeper进程

    zkServer.sh stop
    

    相关文章

      网友评论

        本文标题:zookeeper单节点超详细安装配置

        本文链接:https://www.haomeiwen.com/subject/gndmbttx.html