当前位置:   article > 正文

zookeeper集群搭建步骤_zk集群搭建成功了没咋看

zk集群搭建成功了没咋看

1.什么是zookeeper

 


zooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

zooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。

2.为什么要使用zookeeper


在大型企业的开发中,服务的数量是十分庞大的。如果我们想要添加一个服务的话,那么就需要对文件进行重新覆盖,把整个容器重启。这样导致的结果是就是:波及影响太大,维护十分困难。

此时,便需要一个能够动态注册服务和获取服务信息的地方,来统一管理服务,这个地方便称为称为服务配置中心。而zookeeper不仅实现了对cusumer和provider的灵活管理,平滑过渡功能,而且还内置了负载均衡、主动通知等功能,使我们能够几乎实时的感应到服务的状态。能够很好的帮我们解决分布式相关的问题,至今仍是市面上主流的分布式服务注册中心技术之一。

3. 准备三台虚拟机,并列出对应的IP地址和主机名,如下图所示

IP         Hostname
172.16.10.67172.16.10.67
172.16.10.68172.16.10.68
172.16.10.69172.16.10.69

zookeeper 官网:Apache ZooKeeper
最新稳定版下载地址:Apache Downloads 

3.1 三个节点一样操作,环境变量 

  1. [root@172 apache-zookeeper-3.6.3-bin]# cat /etc/profile
  2. JAVA_HOME=/usr/java/jdk
  3. PATH=$GRADLE_HOME/bin:$JAVA_HOME/bin:$NODE_HOME/bin:$NODE_HOME1/bin:$PATH
  4. CLASSPATH=.:$JAVA_HOME/jre/lib/ext:$JAVA_HOME/jre/lib/ext/jar:$JAVA_HOME/lib/tools.jar
  5. export PATH JAVA_HOME CLASSPATH
  6. export HADOOP_HOME=/root/hadoop/server/hadoop
  7. export HADOOP_INSTALL=$HADOOP_HOME
  8. export HADOOP_MAPRED_HOME=$HADOOP_HOME
  9. export HADOOP_HDFS_HOME=$HADOOP_HOME
  10. export HADOOP_COMMON_HOME=$HADOOP_HOME
  11. export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
  12. export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
  13. export ZOOKEEPER_HOME=/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin
  14. export PATH=$PATH:$ZOOKEEPER_HOME/bin
  15. export HBASE_HOME=/root/hadoop/server/hbase/hbase-2.5.0
  16. export PATH=$PATH:$HBASE_HOME/bin

3.2 配置文件:

  1. [root@172 apache-zookeeper-3.6.3-bin]# vim conf/
  2. configuration.xsl log4j.properties zoo.cfg zoo_sample.cfg
  3. [root@172 apache-zookeeper-3.6.3-bin]# vim conf/zoo.cfg
  4. [root@172 apache-zookeeper-3.6.3-bin]# cat conf/zoo.cfg
  5. # The number of milliseconds of each tick
  6. tickTime=2000
  7. # The number of ticks that the initial
  8. # synchronization phase can take
  9. initLimit=10
  10. # The number of ticks that can pass between
  11. # sending a request and getting an acknowledgement
  12. syncLimit=5
  13. # the directory where the snapshot is stored.
  14. # do not use /tmp for storage, /tmp here is just
  15. # example sakes.
  16. dataDir=/root/hadoop/server/zk/data
  17. # the port at which the clients will connect
  18. clientPort=2181
  19. server.1=172.16.10.67:2888:3888
  20. server.2=172.16.10.68:2888:3888
  21. server.3=172.16.10.69:2888:3888
  22. # the maximum number of client connections.
  23. # increase this if you need to handle more clients
  24. #maxClientCnxns=60
  25. #
  26. # Be sure to read the maintenance section of the
  27. # administrator guide before turning on autopurge.
  28. #
  29. # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
  30. #
  31. # The number of snapshots to retain in dataDir
  32. #autopurge.snapRetainCount=3
  33. # Purge task interval in hours
  34. # Set to "0" to disable auto purge feature
  35. #autopurge.purgeInterval=1
  36. ## Metrics Providers
  37. #
  38. # https://prometheus.io Metrics Exporter
  39. #metricsProvider.className=org.apache.zookeeper.metrics.prometheus.PrometheusMetricsProvider
  40. #metricsProvider.httpPort=7000
  41. #metricsProvider.exportJvmInfo=true

3.3 进入zkData中,修改myid文件,此处要与zoo.cfg中的修改相对应 

  1. [root@172 zk]# ls
  2. apache-zookeeper-3.6.3-bin data
  3. [root@172 zk]# cat data/myid
  4. 1

待三台虚拟机都配置完成后就可以开始开始测试了

四、zookeeper集群测试

  启动各个服务器的zookeeper

  1. [root@172 zk]# zkServer.sh start|status
  2. ZooKeeper JMX enabled by default
  3. Using config: /root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../conf/zoo.cfg
  4. Client port found: 2181. Client address: localhost. Client SSL: false.
  5. Mode: follower
  6. [root@172 ~]# zkServer.sh status
  7. ZooKeeper JMX enabled by default
  8. Using config: /root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../conf/zoo.cfg
  9. Client port found: 2181. Client address: localhost. Client SSL: false.
  10. Mode: leader
  11. [root@172 zk]# zkServer.sh start|status
  12. ZooKeeper JMX enabled by default
  13. Using config: /root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../conf/zoo.cfg
  14. Client port found: 2181. Client address: localhost. Client SSL: false.
  15. Mode: follower

测试:

  1. 可以看到我们启动后的17565 即是zookeeper服务端
  2. [root@172 ~]# jps
  3. 17565 QuorumPeerMain

回到zookeeper目录下,启动客户端

  1. [root@172 ~]# zkCli.sh
  2. Connecting to localhost:2181
  3. 2022-09-06 14:37:38,728 [myid:] - INFO [main:Environment@98] - Client environment:zookeeper.version=3.6.3--6401e4ad2087061bc6b9f80dec2d69f2e3c8660a, built on 04/08/2021 16:35 GMT
  4. 2022-09-06 14:37:38,732 [myid:] - INFO [main:Environment@98] - Client environment:host.name=172.16.10.68
  5. 2022-09-06 14:37:38,732 [myid:] - INFO [main:Environment@98] - Client environment:java.version=1.8.0_321
  6. 2022-09-06 14:37:38,735 [myid:] - INFO [main:Environment@98] - Client environment:java.vendor=Oracle Corporation
  7. 2022-09-06 14:37:38,735 [myid:] - INFO [main:Environment@98] - Client environment:java.home=/usr/java/jdk1.8.0_321/jre
  8. 2022-09-06 14:37:38,735 [myid:] - INFO [main:Environment@98] - Client environment:java.class.path=/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../zookeeper-server/target/classes:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../build/classes:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../zookeeper-server/target/lib/*.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../build/lib/*.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/zookeeper-prometheus-metrics-3.6.3.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/zookeeper-jute-3.6.3.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/zookeeper-3.6.3.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/snappy-java-1.1.7.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/slf4j-log4j12-1.7.25.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/slf4j-api-1.7.25.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/simpleclient_servlet-0.6.0.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/simpleclient_hotspot-0.6.0.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/simpleclient_common-0.6.0.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/simpleclient-0.6.0.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/netty-transport-native-unix-common-4.1.63.Final.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/netty-transport-native-epoll-4.1.63.Final.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/netty-transport-4.1.63.Final.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/netty-resolver-4.1.63.Final.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/netty-handler-4.1.63.Final.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/netty-common-4.1.63.Final.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/netty-codec-4.1.63.Final.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/netty-buffer-4.1.63.Final.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/metrics-core-3.2.5.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/log4j-1.2.17.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/json-simple-1.1.1.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/jline-2.14.6.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/jetty-util-ajax-9.4.39.v20210325.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/jetty-util-9.4.39.v20210325.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/jetty-servlet-9.4.39.v20210325.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/jetty-server-9.4.39.v20210325.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/jetty-security-9.4.39.v20210325.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/jetty-io-9.4.39.v20210325.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/jetty-http-9.4.39.v20210325.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/javax.servlet-api-3.1.0.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/jackson-databind-2.10.5.1.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/jackson-core-2.10.5.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/jackson-annotations-2.10.5.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/commons-cli-1.2.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../lib/audience-annotations-0.5.0.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../zookeeper-*.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../zookeeper-server/src/main/resources/lib/*.jar:/root/hadoop/server/zk/apache-zookeeper-3.6.3-bin/bin/../conf:.:/usr/java/jdk/jre/lib/ext:/usr/java/jdk/jre/lib/ext/jar:/usr/java/jdk/lib/tools.jar
  9. 2022-09-06 14:37:38,735 [myid:] - INFO [main:Environment@98] - Client environment:java.library.path=/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
  10. 2022-09-06 14:37:38,735 [myid:] - INFO [main:Environment@98] - Client environment:java.io.tmpdir=/tmp
  11. 2022-09-06 14:37:38,735 [myid:] - INFO [main:Environment@98] - Client environment:java.compiler=<NA>
  12. 2022-09-06 14:37:38,735 [myid:] - INFO [main:Environment@98] - Client environment:os.name=Linux
  13. 2022-09-06 14:37:38,735 [myid:] - INFO [main:Environment@98] - Client environment:os.arch=amd64
  14. 2022-09-06 14:37:38,735 [myid:] - INFO [main:Environment@98] - Client environment:os.version=3.10.0-862.el7.x86_64
  15. 2022-09-06 14:37:38,736 [myid:] - INFO [main:Environment@98] - Client environment:user.name=root
  16. 2022-09-06 14:37:38,736 [myid:] - INFO [main:Environment@98] - Client environment:user.home=/root
  17. 2022-09-06 14:37:38,736 [myid:] - INFO [main:Environment@98] - Client environment:user.dir=/root
  18. 2022-09-06 14:37:38,736 [myid:] - INFO [main:Environment@98] - Client environment:os.memory.free=112MB
  19. 2022-09-06 14:37:38,737 [myid:] - INFO [main:Environment@98] - Client environment:os.memory.max=228MB
  20. 2022-09-06 14:37:38,737 [myid:] - INFO [main:Environment@98] - Client environment:os.memory.total=119MB
  21. 2022-09-06 14:37:38,741 [myid:] - INFO [main:ZooKeeper@1006] - Initiating client connection, connectString=localhost:2181 sessionTimeout=30000 watcher=org.apache.zookeeper.ZooKeeperMain$MyWatcher@36aa7bc2
  22. 2022-09-06 14:37:38,745 [myid:] - INFO [main:X509Util@77] - Setting -D jdk.tls.rejectClientInitiatedRenegotiation=true to disable client-initiated TLS renegotiation
  23. 2022-09-06 14:37:38,751 [myid:] - INFO [main:ClientCnxnSocket@239] - jute.maxbuffer value is 1048575 Bytes
  24. 2022-09-06 14:37:38,758 [myid:] - INFO [main:ClientCnxn@1736] - zookeeper.request.timeout value is 0. feature enabled=false
  25. Welcome to ZooKeeper!
  26. JLine support is enabled
  27. 2022-09-06 14:37:38,816 [myid:localhost:2181] - INFO [main-SendThread(localhost:2181):ClientCnxn$SendThread@1181] - Opening socket connection to server localhost/127.0.0.1:2181.
  28. 2022-09-06 14:37:38,817 [myid:localhost:2181] - INFO [main-SendThread(localhost:2181):ClientCnxn$SendThread@1183] - SASL config status: Will not attempt to authenticate using SASL (unknown error)
  29. 2022-09-06 14:37:38,826 [myid:localhost:2181] - INFO [main-SendThread(localhost:2181):ClientCnxn$SendThread@1013] - Socket connection established, initiating session, client: /127.0.0.1:45364, server: localhost/127.0.0.1:2181
  30. 2022-09-06 14:37:38,841 [myid:localhost:2181] - INFO [main-SendThread(localhost:2181):ClientCnxn$SendThread@1448] - Session establishment complete on server localhost/127.0.0.1:2181, session id = 0x200f7ffe384000d, negotiated timeout = 30000
  31. WATCHER::
  32. WatchedEvent state:SyncConnected type:None path:null
  33. [zk: localhost:2181(CONNECTED) 0]

Linux环境下zookeeper的安装教程(超详细!!)_啊陈晓的博客-CSDN博客_linux zookeeper安装

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/724504
推荐阅读
相关标签
  

闽ICP备14008679号