• zookeeper安装


    一。介绍

      1. zookeeper 是一个分布式协调服务,就是为用户的分布式应用程序提供协调服务。

      2. zookeeper 是为别的分布式程序服务的。

      3. zookeeper 本身就是一个分布式程序(只要有半数以上节点存活,就能正常工作)

      4. zookeeper 所提供的服务包括:主从协调,服务节点动态上下线,统一配置管理,分布式共享锁,统一名称服务等。

      5. zookeeper 在底层只提供了两个功能:管理(存储,读取)用户提交的数据并为用户程序提供数据节点监听服务。

    二。安装

      1. 官网下载地址:http://hadoop.apache.org/

    [root@host1 ~]# wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.13/zookeeper-3.4.13.tar.gz

      2. 解压文件

    [root@host1 ~]# tar -xvf zookeeper-3.4.13.tar.gz

      3.  删除运行不相关的文件

    [root@host1 zookeeper-3.4.13]# rm -rf src/ *.xml *.txt dist-maven/ docs/

     三。配置

      1. 进入conf文件夹

    [root@host1 zookeeper-3.4.13]# cd conf/
    [root@host1 conf]#

      2. 使配置生效(名字为 zoo.cfg 才生效)

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

      3. 配置zoo.cfg

    [root@host3 conf]# cat zoo.cfg 
    # The number of milliseconds of each tick
    # 心跳周期为2000毫秒
    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=/root/zkData
    # the port at which the clients will connect
    # 客户端连接端口
    clientPort=2181
    # the maximum number of client connections.
    # increase this if you need to handle more clients
    #maxClientCnxns=60
    #
    # Be sure to read the maintenance section of the 
    # administrator guide before turning on autopurge.
    #
    # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
    #
    # The number of snapshots to retain in dataDir
    #autopurge.snapRetainCount=3
    # Purge task interval in hours
    # Set to "0" to disable auto purge feature
    #autopurge.purgeInterval=1
    # 默认端口 2888为主从通信端口 3888为投票选举端口
    # 要在对应主机的数据目录(dataDir /root/zkData)创建名为myid的文件,里面为server.的id号
    server.1=host1:2888:3888
    server.2=host2:2888:3888
    server.3=host3:2888:3888
    [root@host3 conf]# 

      4. 在数据目录创建myid

    [root@host1 conf]# mkdir /root/zkData
    [root@host1 conf]# cd /root/zkData/
    [root@host1 zkData]# echo 1 > myid
    [root@host1 zkData]# ll
    总用量 4
    -rw-r--r-- 1 root root 2 9月   1 17:55 myid
    [root@host1 zkData]# cat myid 
    1
    [root@host1 zkData]#

      5. 拷贝zookeeper-3.4.13到其他两台

    [root@host1 ~]# scp -r zookeeper-3.4.13 root@host2:/root
    [root@host1 ~]# scp -r zookeeper-3.4.13 host3:/root

      6. 创建 host2 主机的myid

    [root@host2 ~]# mkdir /root/zkData
    [root@host2 ~]# cd /root/zkData/
    [root@host2 zkData]# echo 2 > myid
    [root@host2 zkData]# ll
    总用量 4
    -rw-r--r-- 1 root root 2 9月   2 02:50 myid
    [root@host2 zkData]# cat myid 
    2
    [root@host2 zkData]#

      7.  创建 host3 主机的myid

    [root@host3 ~]# mkdir /root/zkData
    [root@host3 ~]# cd /root/zkData/
    [root@host3 zkData]# echo 3 > myid
    [root@host3 zkData]# ll
    总用量 4
    -rw-r--r-- 1 root root 2 9月   2 02:52 myid
    [root@host3 zkData]# cat myid 
    3
    [root@host3 zkData]#

    四。启动zookeeper

      1.  启动第一台(没过半数,不能正常工作)

    [root@host1 bin]# ./zkServer.sh start
    ZooKeeper JMX enabled by default
    Using config: /root/zookeeper-3.4.13/bin/../conf/zoo.cfg
    Starting zookeeper ... STARTED
    [root@host1 bin]# ./zkServer.sh status
    ZooKeeper JMX enabled by default
    Using config: /root/zookeeper-3.4.13/bin/../conf/zoo.cfg
    Error contacting service. It is probably not running.
    [root@host1 bin]#

      2.  启动第二台(刚开始无历史数据启动时,投票给myid大的节点

    [root@host2 bin]# ./zkServer.sh start
    ZooKeeper JMX enabled by default
    Using config: /root/zookeeper-3.4.13/bin/../conf/zoo.cfg
    Starting zookeeper ... STARTED
    [root@host2 bin]# ./zkServer.sh status
    ZooKeeper JMX enabled by default
    Using config: /root/zookeeper-3.4.13/bin/../conf/zoo.cfg
    Mode: leader
    [root@host2 bin]#

      3.  启动第二台,有主节点了(leader),就直接为从节点(follower)

    [root@host3 bin]# ./zkServer.sh start
    ZooKeeper JMX enabled by default
    Using config: /root/zookeeper-3.4.13/bin/../conf/zoo.cfg
    Starting zookeeper ... STARTED
    [root@host3 bin]# ./zkServer.sh status
    ZooKeeper JMX enabled by default
    Using config: /root/zookeeper-3.4.13/bin/../conf/zoo.cfg
    Mode: follower
    [root@host3 bin]#

       4. 停止zookeeper

    [root@host1 bin]# ./zkServer.sh stop
    ZooKeeper JMX enabled by default
    Using config: /root/zookeeper-3.4.13/bin/../conf/zoo.cfg
    Stopping zookeeper ... STOPPED
    [root@host1 bin]#
  • 相关阅读:
    Mac下安装配置SDK
    macOS brew install 404:Bottle missing, falling back to the default domain错误的修复
    如何修复“无法打开应用,因为Apple无法检查其是否包含恶意软件“
    Selenium4+Python3系列(六) Selenium的三种等待,强制等待、隐式等待、显式等待
    Selenium4.0+Python3系列(四) 常见元素操作(含鼠标键盘事件)
    解决selenium+python 打开浏览器报错 DeprecationWarning executable_path has been deprecated, please pass in a Service object问题
    Selenium4+Python3系列(五) 多窗口处理之句柄切换
    技术团队:给代码评审发起者的4个建议
    中台建设:中台有效落地的6脉神剑
    在代码评审中用好这7招,很容易就能建立起你的反对同盟
  • 原文地址:https://www.cnblogs.com/GH-123/p/9570985.html
Copyright © 2020-2023  润新知