• zookeeper部署


    部署参考

    https://yq.aliyun.com/articles/662422

    https://www.baidu.com/link?url=4-82ARHt_56IJ34QcMhx9zmRvZPviwtaZrRLM-SI1m3BIFDD_2gzyasBaVTPmst2&wd=&eqid=f116d2da000ca2d4000000065da2ef60

    排错参考

    https://blog.csdn.net/lll0101/article/details/95448420

    配置java环境

    #下载相应的jdk软件包,然后解压安装,我这里包名称为:jdk-8u91-linux-x64.tar.gz

    tar -xzf  jdk-8u91-linux-x64.tar.gz  ; mkdir -p /usr/java/ ; mv jdk1.8.0_25/ /usr/java/jdk1.8

    #然后配置环境变量,这样可以任何地方引用jdk,如下配置:

    #vi /etc/profile 最后面加入以下语句:

    export JAVA_HOME=/usr/java/jdk1.8

    export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

    export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOMR/bin

    #source /etc/profile   #使环境变量马上生效

    #java -version    #查看java版本,看到jdk1.8.0版本即代表java安装成功。

    下载zookeeper链接地址
    http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.13/zookeeper-3.4.13.tar.gz

    tar -zxvf zookeeper-3.4.13.tar.gz

    mv zookeeper-3.4.13 /usr/local/zookeeper

    配置zookeeper

    cp /usr/local/zookeeper/conf/zoo_sample.cfg  /usr/local/zookeeper/conf/zoo.cfg

    vi /usr/local/zookeeper/conf/zoo.cfg

    grep -v '#' /usr/local/zookeeper/conf/zoo.cfg

    tickTime=2000

    initLimit=10  

    syncLimit=5

    dataDir=/usr/local/zookeeper/data

    dataLogDir=/usr/local/zookeeper/log

    clientPort=2181

    server.1=zk1:2888:3888  #server.NUM=hostname:zk集群节点交换数据端口:zk选举端口

    server.2=zk2:2888:3888

    server.3=zk3:2888:3888

    配置参数详解:

    tickTime:发送心跳的间隔时间,单位:毫秒

    dataDirzookeeper保存数据的目录。

    clientPort:客户端连接 Zookeeper 服务器的端口,Zookeeper 会监听这个端口,接受客

    户端的访问请求。

    initLimit: 这个配置项是用来配置 Zookeeper 接受客户端(这里所说的客户端不是用户连

    Zookeeper 服务器的客户端,而是 Zookeeper 服务器集群中连接到 Leader

    Follower 服务器)初始化连接时最长能忍受多少个心跳时间间隔数。当已经超过 5 个心跳的

    时间(也就是 tickTime)长度后 Zookeeper 服务器还没有收到客户端的返回信息,那么表

    明这个客户端连接失败。总的时间长度就是 5*2000=10

    syncLimit:这个配置项标识 Leader Follower 之间发送消息,请求和应答时间长度,最

    长不能超过多少个 tickTime 的时间长度,总的时间长度就是 2*2000=4

    server.A=BCD:其 中 A 是一个数字,表示这个是第几号服务器;B 是这个服务器的 ip

    地址;C 表示的是这个服务器与集群中的 Leader 服务器交换信息的端口;D 表示的是万一

    集群中的 Leader 服务器挂了,需要一个端口来重新进行选举,选出一个新的 Leader

    配置zookeeper环境变量

    vim /etc/profile  添加下面2

    export ZOOKEEPER=/usr/local/bin/app/zookeeper

    export PATH=$ZOOKEEPER/bin:$PATH

    source /etc/profile  刷新配置文件

    在每台主机的/usr/local/zookeeper/data中添加myid,内容分别是1,2,3

    echo 1 > /usr/local/zookeeper/data/myid  在第一台zookeeper操作 

    echo 2 > /usr/local/zookeeper/data/myid  在第二台zookeeper操作

    echo 3 > /usr/local/zookeeper/data/myid  在第三台zookeeper操作

    启动zookeeper

    zkServer.sh start  启动zookeeperZooKeeper

    JMX enabled by defaultUsing config: /usr/local/bin/app/zookeeper/bin/../conf/zoo.cfg

    Starting zookeeper ... STARTED

    查看zookeeper运行状态

    zkServer.sh status   

    JMX enabled by defaultUsing config: /usr/local/bin/app/zookeeper/bin/../conf/zoo.cfg

    Mode: leader  #显示leader/follower则说明启动成功

    常用操作命令:

    zkCli.sh  进入zookeeper客户端

    [zk: localhost:2181(CONNECTED) 0] h 命令帮助

    create /20191013 helloworld  创建节点数据

    [zk: localhost:2181(CONNECTED) 16] ls / 查看有哪些数据

    [zk: localhost:2181(CONNECTED) 17] get /20191013  获取20191013数据/事件

    helloworld  获取到的数据/事件

    cZxid = 0x100000002 当前的事物ID

    ctime = Sun Oct 13 18:58:09 CST 2019 创建数据时间

    mZxid = 0x100000002 修改的事物ID

    mtime = Sun Oct 13 18:58:09 CST 2019 修改事件的时间

    pZxid = 0x100000002 父节点事物ID

    cversion = 0 当前版本

    dataVersion = 0 数据版本

    aclVersion = 0 权限

    ephemeralOwner = 0x0

    dataLength = 10 数据长度

    numChildren = 0 数据的子节点

    [zk: localhost:2181(CONNECTED) 18] set /20191013 hello 修改/设置 数据或事件

    创建observer观察节点

    vi /usr/local/zookeeper/conf/zoo.cfg

    tickTime=2000

    initLimit=10

    syncLimit=5

    dataDir=/usr/local/zookeeper/data

    dataLogDir=/usr/local/zookeeper/log

    clientPort=2181

    server.1=zk1:2888:3888

    server.2=zk2:2888:3888:observer #设置为观察节点

    server.3=zk3:2888:3888

    [root@zk2 ~]# zkServer.sh restart

    [root@zk2 ~]# zkServer.sh status

    ZooKeeper JMX enabled by default

    Using config: /usr/local/zookeeper/bin/../conf/zoo.cfg

    Mode: observer

  • 相关阅读:
    myeclipse 配置svn
    windows下 将tomcat做成服务,并于oracle后启动
    局部内部类为什么只能访问final局部变量,对于成员变量却可以随便访问?
    使用cmd查看windows端口占用情况,并关闭应用
    生成javadoc文档
    JNI以及JNA使用
    自定义标签-java
    dwr框架应用
    Hadoop生态圈简介
    tomcat之日志记录
  • 原文地址:https://www.cnblogs.com/leiwenbin627/p/11695548.html
Copyright © 2020-2023  润新知