zoukankan      html  css  js  c++  java
  • centos7下安装zookeeper&zookeeper集群的搭建

    一、centos7下安装zookeeper

    1.zookeeper 下载地址

    https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/

    2.安装步骤

    前提:安装 jdk 和 JAVA_HOME

    第一步:解压缩 zookeeper 安装包

    [root@VM_0_11_centos ~]# mkdir zookeeper
    [root@VM_0_11_centos ~]# tar -zxvf apache-zookeeper-3.5.5-bin.tar.gz -C zookeeper/

    第二步:进入 zookeeper/apache-zookeeper-3.5.5-bin/conf 目录,修改配置文件把zoo_sample.cfg改名为zoo.cfg 

    
    
    [root@VM_0_11_centos conf]# cp zoo_sample.cfg zoo.cfg

    第三步:创建数据文件目录 

    [root@VM_0_11_centos zookeeper]# mkdir datadir
    [root@VM_0_11_centos zookeeper]# ls
    apache-zookeeper-3.5.5-bin  datadir
    [root@VM_0_11_centos zookeeper]# cd datadir/
    [root@VM_0_11_centos datadir]# pwd
    /root/zookeeper/datadir

    第四步:修改 zoo.cfg 文件

    tickTime=2000
    initLimit=10
    syncLimit=5
    dataDir=/root/zookeeper/datadir
    clientPort=2181

    保存退出

    3.启动

    [root@VM_0_11_centos apache-zookeeper-3.5.5-bin]# ls
    bin   docs  LICENSE.txt  README.md
    conf  lib   NOTICE.txt   README_packaging.txt
    [root@VM_0_11_centos apache-zookeeper-3.5.5-bin]# bin/zkServer.sh start
    ZooKeeper JMX enabled by default
    Using config: /root/zookeeper/apache-zookeeper-3.5.5-bin/bin/../conf/zoo.cfg
    Starting zookeeper ... STARTED
    [root@VM_0_11_centos apache-zookeeper-3.5.5-bin]# 

    在运行完第一条指令之后,会出现一些错误异常,产生异常信息的原因是由于Zookeeper 服务的每个实例都拥有全局配置信息,他们在启动的时候会随时随地的进行Leader选举操作。此时,第一个启动的Zookeeper需要和另外两个 Zookeeper实例进行通信。但是,另外两个Zookeeper实例还没有启动起来,因此就产生了这的异样信息。我们直接将其忽略即可,待把图中“2 号”和“3号”Zookeeper实例启动起来之后,相应的异常信息自然会消失。

    [root@VM_0_11_centos apache-zookeeper-3.5.5-bin]# bin/zkServer.sh status conf/zoo.cfg
    ZooKeeper JMX enabled by default
    Using config: conf/zoo.cfg
    Client port found: 2181. Client address: localhost.
    Error contacting service. It is probably not running.

    4.查看进程状态

    [root@VM_0_11_centos apache-zookeeper-3.5.5-bin]# jps
    9958 Jps
    9710 QuorumPeerMain
    [root@VM_0_11_centos apache-zookeeper-3.5.5-bin]# 

    5.启动客户端

    [root@VM_0_11_centos apache-zookeeper-3.5.5-bin]# bin/zkCli.sh

    二、zookeeper 集群的搭建

    前言:本次集群是在一台服务器上搭建的在,一台机器上部署了3个 server,需要注意的是在集群为分布式模式下我们使用的每个配置文档模拟一台机器,也就是说单台机器及上运行多个 Zookeeper 实例。但是,必须保证每个配置文档的各个端口号不能冲突,除了 clientPort 不同之外,dataDir 也不同。另外,还要在 dataDir 所对应的目录中创建 myid 文件来指定对应的 Zookeeper 服务器实例。

    1.创建必要目录与文件

    Zookeeper集群中,每一个节点都需创建data目录、dataLog目录以及myid文件。

    1).先创建节点文件

    [root@VM_0_11_centos zookeeper]# mkdir server1
    [root@VM_0_11_centos zookeeper]# mkdir server2
    [root@VM_0_11_centos zookeeper]# mkdir server3

    2).创建每个节点所必须的data目录、dataLog目录以及myid文件

    [root@VM_0_11_centos zookeeper]# cd server1
    [root@VM_0_11_centos server1]# mkdir data
    [root@VM_0_11_centos server1]# pwd
    /root/zookeeper/server1
    [root@VM_0_11_centos server1]# mkdir dataLog
    [root@VM_0_11_centos server1]# pwd
    /root/zookeeper/server1
    [root@VM_0_11_centos server1]# cd data
    [root@VM_0_11_centos data]# echo 1 > myid
    [root@VM_0_11_centos data]# ls
    myid
    [root@VM_0_11_centos data]# 

    其他的节点文件和这个类似,只是 server1 的 myid 文件里面是1 ,而 server2 的 myid 文件里面是2,而 server3 的 myid 文件里面是3。其值为后续zoo.cfg中配置的第几号服务器。

    2.修改 zoo.cfg 文件

    tickTime=2000
    initLimit=10
    syncLimit=5
    dataDir=/root/zookeeper/server1/data
    dataLogDir=/root/zookeeper/server1/dataLog
    clientPort=2181
    server.1=127.0.0.1:2888:3888
    server.2=127.0.0.1:2889:3889
    server.3=127.0.0.1:2890:3890

    3.创建 zoo2.cfg 和 zoo3.cfg 文件

    [root@VM_0_11_centos conf]# ls
    configuration.xsl  zoo.cfg
    log4j.properties   zoo_sample.cfg
    [root@VM_0_11_centos conf]# cp zoo.cfg zoo2.cfg
    [root@VM_0_11_centos conf]# cp zoo.cfg zoo3.cfg
    [root@VM_0_11_centos conf]# ls
    configuration.xsl  zoo2.cfg  zoo.cfg
    log4j.properties   zoo3.cfg  zoo_sample.cfg
    [root@VM_0_11_centos conf]# 

    4.根据第三步修改 zoo2.cfg 和 zoo3.cfg 配置文件

    clientPort=2182
    dataDir=/root/zookeeper/server2/data
    dataLogDir=/root/zookeeper/server2/dataLog
    clientPort=2183
    dataDir=/root/zookeeper/server3/data dataLogDir=/root/zookeeper/server3/dataLog

    5.启动服务

    [root@VM_0_11_centos apache-zookeeper-3.5.5-bin]# bin/zkServer.sh start conf/zoo.cfg
    ZooKeeper JMX enabled by default
    Using config: conf/zoo.cfg
    Starting zookeeper ... FAILED TO START
    [root@VM_0_11_centos apache-zookeeper-3.5.5-bin]# bin/zkServer.sh start conf/zoo2.cfg
    ZooKeeper JMX enabled by default
    Using config: conf/zoo2.cfg
    Starting zookeeper ... FAILED TO START
    [root@VM_0_11_centos apache-zookeeper-3.5.5-bin]# bin/zkServer.sh start conf/zoo3.cfg
    ZooKeeper JMX enabled by default
    Using config: conf/zoo3.cfg
    Starting zookeeper ... FAILED TO START
    [root@VM_0_11_centos apache-zookeeper-3.5.5-bin]# 

    6.查看服务的状态

    [root@VM_0_11_centos apache-zookeeper-3.5.5-bin]# bin/zkServer.sh status conf/zoo3.cfg
    ZooKeeper JMX enabled by default
    Using config: conf/zoo3.cfg
    Client port found: 2183. Client address: localhost.
    Mode: follower
    [root@VM_0_11_centos apache
    -zookeeper-3.5.5-bin]# bin/zkServer.sh status conf/zoo.cfg ZooKeeper JMX enabled by default Using config: conf/zoo.cfg Client port found: 2181. Client address: localhost. Mode: follower
    [root@VM_0_11_centos apache
    -zookeeper-3.5.5-bin]# bin/zkServer.sh status conf/zoo2.cfg ZooKeeper JMX enabled by default Using config: conf/zoo2.cfg Client port found: 2182. Client address: localhost. Mode: leader //2号节点是 leader 节点 [root@VM_0_11_centos apache-zookeeper-3.5.5-bin]#
  • 相关阅读:
    SQL SERVER批量/单个修改表的所有者
    设置电脑右下角显示自己的大名
    javascript 事件查询 综合
    电脑命令大全值得珍藏
    仿flash超炫焦点图播放器 · javascript for jquery
    VirtualBox使用本地硬盘分区的权限问题
    同步时间并更新到计算机
    linux下电子词典里的扩展存储卡不能访问到的问题
    virtualbox 3.0.4终于可以共享剪贴板了
    批量更改mp3文件ID3编码的脚本
  • 原文地址:https://www.cnblogs.com/BeenTogether/p/11713861.html
Copyright © 2011-2022 走看看