• (02)安装zookeeper集群


      本篇记录在3台服务器(192.168.7.151、192.168.7.152、192.168.7.153)上安装zookeeper集群的过程

    一、安装过程

      1、解压(zookeeper-3.4.6.tar.gz在/usr/local下)

    [root@localhost local]# tar -zxvf zookeeper-3.4.6.tar.gz

      2、配置环境变量

    [root@localhost zookeeper-3.4.6]# vim /etc/profile

      添加如下配置:

    export ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.6
    export PATH=$ZOOKEEPER_HOME/bin:$PATH

      3、使配置文件立即生效

    [root@localhost zookeeper-3.4.6]# source /etc/profile

      4、修改配置文件(先根据 zoo_sample.cfg 创建一个配置文件)

    [root@localhost conf]# cp zoo_sample.cfg zoo.cfg
    [root@localhost ~]# vim /usr/local/zookeeper-3.4.6/conf/zoo.cfg

      修改项如下:

    dataDir=/usr/local/zookeeper-3.4.6/tmp
    server.1=192.168.7.151:2888:3888
    server.2=192.168.7.152:2888:3888
    server.3=192.168.7.153:2888:3888

      tmp是新建的目录,存放数据文件,未修改之前的配置是:dataDir=/tmp/zookeeper

      第一台server,ID号是1,通信端口是2888,选举端口是3888。第二台server,ID号是2 ... ...

      5、在数据存放目录(/usr/local/zookeeper-3.4.6/tmp)创建id文件myid(名称不能变),文件内容只有一个1

    [root@localhost tmp]# vim myid

      6、在152、153服务器上也安装,远程拷贝过去 

    [root@localhost local]# scp -r zookeeper-3.4.6/ root@192.168.7.152:/usr/local
    [root@localhost local]# scp -r zookeeper-3.4.6/ root@192.168.7.153:/usr/local

      7、修改152、153的myid文件内容为2、3

      8、修改152、153的环境变量,如步骤2、3。

    二、测试是否安装成功

      1、启动,在三台服务器上分别执行启动命令

    zkServer.sh start

      2、执行状态命令,查看leader与follower,如果能查出服务是leader还是follower说明集群启动成功

    zkServer.sh status

      3、启动客户端命令,在一个服务器上创建一个数据

    zkCli.sh
    [zk: localhost:2181(CONNECTED) 1] ls /  #查看/目录下只有一个zookeeper
    [zookeeper]
    [zk: localhost:2181(CONNECTED) 2] create /mydata helloworld  #在/目录下创建一个mydata,里面的内容是helloworld
    Created /mydata
    [zk: localhost:2181(CONNECTED) 3] ls /  #查看/目录下,多了一个mydata
    [zookeeper, mydata]
    [zk: localhost:2181(CONNECTED) 4] get /mydata  #查看mydata的内容,输出helloworld
    helloworld
    cZxid = 0x100000004
    ctime = Fri Jan 10 22:12:33 CST 2020
    mZxid = 0x100000004
    mtime = Fri Jan 10 22:12:33 CST 2020
    pZxid = 0x100000004
    cversion = 0
    dataVersion = 0
    aclVersion = 0
    ephemeralOwner = 0x0
    dataLength = 10
    numChildren = 0
    [zk: localhost:2181(CONNECTED) 5] 

      4、登录另外两台服务器的客户端,执行以下命令,也可以获取第一台服务器写入的数据,验证成功

    [zk: localhost:2181(CONNECTED) 1] get /mydata
    helloworld
    cZxid = 0x100000004
    ctime = Fri Jan 10 22:12:33 CST 2020
    mZxid = 0x100000004
    mtime = Fri Jan 10 22:12:33 CST 2020
    pZxid = 0x100000004
    cversion = 0
    dataVersion = 0
    aclVersion = 0
    ephemeralOwner = 0x0
    dataLength = 10
    numChildren = 0
    [zk: localhost:2181(CONNECTED) 2] 
  • 相关阅读:
    自用封装javascript函数
    Jquery跨域获得Json
    【M13】以by reference 方式捕捉exceptions
    【M12】了解“抛出一个exception”与“传递一个参数”或“调用一个虚函数”之间的差异
    【48】认识template元编程
    【44】将与参数无关的代码抽离templates
    【23】宁以non-member、non-friend替换member函数
    【22】将成员变量声明为private
    【21】必须返回对象时,别妄想返回器reference
    【转】C++对象内存分配问题
  • 原文地址:https://www.cnblogs.com/javasl/p/12044446.html
Copyright © 2020-2023  润新知