zoukankan      html  css  js  c++  java
  • zookeeper环境搭建

      

    1.在线下载zookeeper
    先在/var/local下创建个zookeeper文件夹
    /var/local/zookeeper
    wget wget http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.11/zookeeper-3.4.11.tar.gz
    然后解压 
    tar -zxvf /var/local/zookeeper/zookeeper-3.4.11.tar.gz
    再进入zookeeper-3.4.11目录的conf下拷贝zoo_sample.cfg复制为zoo.cfg
    然后修改zoo.cfg里面的数据
    dataDir=/tmp/zookeeper
    【dataDir这个路径下需要构造myid】
    注意:
    dataDir和dataLogDir后面所指的文件夹必须要存在如果不存在的话,在启动Zookeeper服务端的时候是会报错的。
    本文讲的是单机情况下的配置情况,如果你是集群的话,请在clientPort下面添加服务器的ip。
    server.1=192.168.180.132:2888:3888
    server.2=192.168.180.133:2888:3888
     
    配置环境变量
    上面的操作都完事之后,我们需要配置一下环境变量,配置环境变量的命令如下:
    export ZOOKEEPER_INSTALL=/usr/local/zookeeper/zookeeper-3.3.6/(Zookeeper所在的目录)
    export PATH=$PATH:$ZOOKEEPER_INSTALL/bin
    启动Zookeeper
    在上面的操作都完事之后,我们需要来启动一下Zookeeper来检测下我们的成果了。
    首先我们进入到Zookeeper的bin目录下面,启动Zookeeper的命令为
    ./zkServer.sh start

    一定不要忘了前面的 . ,启动效果如图所示:

    我们可以通过 
    ./zkServer.sh status
    命令来查看Zookeeper的运行状态。如图所示:
    或者我们也可以用
    ps -ef|grep zookeeper
    来查看Zookeeper的运行状态:
     

    注意:如果你发现Zookeeper不是在运行状态的话,可以通过cat zookeeper.out来查看启动过程中的出错信息。
    zookeeper的服务端起来之后我们需要启动Zookeeper的客户端,启动命令如下:
    ./zkCli.sh
    启动结果如下所示:
    搭建环境过程遇到的问题:
    JMX enabled by default
    Using config: /home/hadoop/app/zookeeper-3.4.5/bin/../conf/zoo.cfg
    Error contacting service. It is probably not running.
     
    说明未启动成功,通过查看zookeeper-3.4.5.out,如果提示
    Cannot open channel to 1 at election address hadoop05/10.37.129.105:3888
    java.net.NoRouteToHostException: No route to host,说明无法连接远程电脑10.37.129.105:3888,很有可能开启了防火墙
    通过sudo service iptables status检查,如果确实开启,则通过sudo service iptables stop将其关闭,最后再查看状态zkServer.sh status
    此时,基本都能够正常启动了,提示:
    JMX enabled by default
    Using config: /home/hadoop/app/zookeeper-3.4.5/bin/../conf/zoo.cfg
    Mode: leader(或follower)
     
    解决方法2:
    ps -ef|grep zookeeper
    只显示2个节点。没有第三个节点。
     
    1.查看 zookeeper.out日志文件
    java.net.BindException: Address already in use      ---- 进程被占用
    以为是server进程被占用,于是把重点放在了server,却忽略了客户端进程。结果发现第三个节点的
    修改配置文件里的端口号,然后重新启动,问题就解决了
    每次如果重启失败,可以去dataDir=/tmp/zookeeper这个目录下,把zookeeper_server.pid这个文件给删除了,然后重新启动
     
    zookeeper启动成功,但是zkCli.sh进入客户端报错
    排查原因:由于conf下的zoo.cfg配置文件中的端口号错误,不是2181【原先是2182】
     
    ZooKeeperMain进程,是zkCli.sh的进程,需要进入客户端里面quit退出,该进程才会被停止掉
  • 相关阅读:
    事件的基本概念
    c# 语法 字符串内插
    tcp 的编程例子
    Action 语法的简介
    wcf 的小介绍
    Socket编程
    c# base new 等关键字基础
    虚函数和继承的关系
    arraylist,list ,数组区别
    Python爬虫-selenium模拟豆瓣电影鼠标下拉
  • 原文地址:https://www.cnblogs.com/xh0203/p/12659226.html
Copyright © 2011-2022 走看看