• 创建zookeeper集群


    安装jdk

    从oracle官网下载jdk1.8

    # wget http://download.oracle.com/otn-pub/java/jdk/8u144-b01/090f390dda5b47b9b721c7dfaa008135/jdk-8u144-linux-x64.rpm
    # rpm -ivh jdk-8u144-linux-x64.rpm
    # vi /etc/profile
    export JAVA_HOME=/usr/java/jdk1.8.0_144
    export PATH=$PATH:$JAVA_HOME/bin
    # source /etc/profile
    

    下载安装包

    从web众多镜像下载一个安装包
    http://www.apache.org/dyn/closer.cgi/zookeeper/

    wget  https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/stable/zookeeper-3.4.10.tar.gz
    

    解压安装包

    # tar xf  zookeeper-3.4.10.tar.gz
    # mv  zookeeper-3.4.10  zk1
    # cp zk1 zk2 -rf
    # cp zk1 zh3 -rf
    
    

    编辑3个节点的zoo.cfg配制文件

    # cat zk1/conf/zoo.cfg
    tickTime=2000
    initLimit=10
    syncLimit=5
    dataDir=/data/zk1
    dataLogDir=/data/zk1-log
    clientPort=2181
    server.1=192.168.0.190:2887:3887
    server.2=192.168.0.190:2888:3888
    server.3=192.168.0.190:2889:3889
    
    # cat zk2/conf/zoo.cfg
    tickTime=2000
    initLimit=10
    syncLimit=5
    dataDir=/data/zk2
    dataLogDir=/data/zk2-log
    clientPort=2182
    server.1=192.168.0.190:2887:3887
    server.2=192.168.0.190:2888:3888
    server.3=192.168.0.190:2889:3889
    
    # cat zk3/conf/zoo.cfg
    tickTime=2000
    initLimit=10
    syncLimit=5
    dataDir=/data/zk3
    dataLogDir=/data/zk3-log
    clientPort=2183
    server.1=192.168.0.190:2887:3887
    server.2=192.168.0.190:2888:3888
    server.3=192.168.0.190:2889:3889
    
    

    参数说明

    tickTime=2000:
    tickTime这个时间是作为Zookeeper服务器之间或客户端与服务器之间维持心跳的时间间隔,也就是每个tickTime时间就会发送一个心跳;
    
    initLimit=10:
    initLimit这个配置项是用来配置Zookeeper接受客户端(这里所说的客户端不是用户连接Zookeeper服务器的客户端,而是Zookeeper服务器集群中连接到Leader的Follower 服务器)初始化连接时最长能忍受多少个心跳时间间隔数。
    当已经超过10个心跳的时间(也就是tickTime)长度后 Zookeeper 服务器还没有收到客户端的返回信息,那么表明这个客户端连接失败。总的时间长度就是 10*2000=20 秒;
    
    syncLimit=5:
    syncLimit这个配置项标识Leader与Follower之间发送消息,请求和应答时间长度,最长不能超过多少个tickTime的时间长度,总的时间长度就是5*2000=10秒;
    
    dataDir=/export/search/zookeeper-cluster/zookeeper-3.4.6-node1/data
    dataDir顾名思义就是Zookeeper保存数据的目录,默认情况下Zookeeper将写数据的日志文件也保存在这个目录里;
    
    clientPort=2181
    clientPort这个端口就是客户端连接Zookeeper服务器的端口,Zookeeper会监听这个端口接受客户端的访问请求;
    
    server.1=localhost:2887:3887
    server.2=localhost:2888:3888
    server.3=localhost:2889:3889
    server.A=B:C:D:
    A是一个数字,表示这个是第几号服务器,B是这个服务器的ip地址
    C第一个端口用来集群成员的信息交换,表示的是这个服务器与集群中的Leader服务器交换信息的端口
    D是在leader挂掉时专门用来进行选举leader所用
    
    

    创建目录:

    # mkdir -p  /data/zk1 
    # mkdir -p  /data/zk1-log 
    # mkdir -p  /data/zk2 
    # mkdir -p  /data/zk2-log 
    # mkdir -p  /data/zk3 
    # mkdir -p  /data/zk3-log 
    

    创建ServerID标识

    # echo "1" >/data/zk1/myid
    # echo "2" >/data/zk2/myid
    # echo "3" >/data/zk3/myid
    

    启动zookeeper

    # zk1/bin/zkServer.sh start
    # zk2/bin/zkServer.sh start
    # zk3/bin/zkServer.sh start
    

    验证部署是否成功

    登录zk1,创建一个znode

    # zk1/bin/zkCli.sh
    [zk: localhost:2181(CONNECTED) 1] create /fznode “panjunbai"    
    Created /fznode
    
    

    登录zk2,查看是否创建成功

    # zk2/bin/zkCli.sh
    [zk: localhost:2181(CONNECTED) 0] get /fznode
    “panjunbai"
    cZxid = 0x8
    ctime = Sun Sep 03 10:21:18 EDT 2017
    mZxid = 0x8
    mtime = Sun Sep 03 10:21:18 EDT 2017
    pZxid = 0x8
    cversion = 0
    dataVersion = 0
    aclVersion = 0
    ephemeralOwner = 0x0
    dataLength = 13
    numChildren = 0
    
    
  • 相关阅读:
    05用户故事与敏捷方法笔记之五
    04用户故事与敏捷方法笔记之四
    03用户故事与敏捷方法笔记之三
    框架学习.关于内省api操作bean属性
    02用户故事与敏捷方法笔记之二
    01用户故事与敏捷方法笔记之一
    问题账户需求分析
    2017年秋季个人阅读计划
    第二冲刺项目进展
    典型用户与场景
  • 原文地址:https://www.cnblogs.com/panjunbai/p/7651369.html
Copyright © 2020-2023  润新知