zookeeper搭建集群

我会带着你远行 2022-02-02 10:47 459阅读 0赞

zookeeper集群的搭建

(1)准备三台机器

  1. vi /etc/hosts
  2. 192.168.33.201 hadoop1
  3. 192.168.33.202 hadoop2
  4. 192.168.33.203 hadoop3

设置三个机器的本机免密登录(三台机器配置一样):

  1. ssh-keygen -t rsa ---一直回车即可
  2. cd /root/.ssh/ ---生成了公钥和私钥
  3. cat id_rsa.pub >> authorized_keys ---将三台机器的公钥追加到授权文件中,并且分发到三台机器 /root/.ssh/下
  4. more authorized_keys ---可以查看到里面追加的公钥
  5. ssh hadoop2 --- 测试hadoop1 链接hadoop2

这三台机器是在之前安装好常用软件(jdk)配置好环境变量

  1. vi /etc/profile
  2. export JAVA_HOME =/mnt/jdk-1.8.0_60
  3. export PATH=$PATH:$JAVA_HOME/bin
  4. source /etc/profile

(2)将zookeeper安装包上传到hadoop1的/usr/local中。
lrzsz是一款在linux里可代替ftp上传和下载的程序。
要想使用lrzsz进行上传rz(也可直接鼠标拖拽)和下载sz,则必须安装lrzsz。可以使用yum install lrzsz自动安装,必须有网络。没有网络,可以制作yum本地源。

(3)解压

  1. tar -zxvf /usr/local/zookeeper-3.4.5.tar.gz
  2. mv zookeeper-3.4.5 zookeeper
  3. 同时拷贝到其他两台机器上
  4. cd /usr/local
  5. scp -r -P 22 remote_username@remote_ip:/usr/local/zookeeper ./

xshell窗口同时打开三台窗口命令行,一个窗口命令同时在三台机器上执行的方式如下:

xhell工具-》发送键输入到所有会话

(4)修改环境变量

  1. vi /etc/profile
  2. export ZOOKEEPER_HOME=/usr/local/zookeeper
  3. export PATH=$PATH:$JAVA_HOME/bin:$ZOOKEEPER_HOME/bin
  4. 刷新环境变量
  5. source /etc/profile

注意:3台机器都要修改

(5)修改配置文件

  1. cd /usr/local/zookeeper/conf
  2. cp zoo_sample.cfg zoo.cfg
  3. vi zoo.cfg

添加内容:

  1. dataDir=/usr/local/zookeeper/data (不能放在临时文件夹中,需新建data文件夹)
  2. dataLogDir=/usr/local/zookeeper/log(新建log文件夹,可不要!!!)
  3. server.1=hadoop1:2888:3888 (主机名, 心跳端口、数据端口)
  4. server.2=hadoop2:2888:3888(都是默认端口)
  5. server.3=hadoop3:2888:38882888leaderfollow之间通信,3888是投票选举时用的端口)

注意server.后面的数字必须是1开头增加

创建文件夹

  1. mkdir /usr/local/zookeeper/data
  2. mkdir /usr/local/zookeeper/log

在data文件夹中新建myid文件,myid文件的内容为1(一句话创建:echo 1 > myid)

  1. cd data
  2. echo 1 > myid

添加内容对应的机器值如下:
hadoop1 echo 1 > myid
hadoop2 echo 2 > myid
hadoop3 echo 3 > myid

(6)将三台机器的防火墙关闭掉,service iptables stop ,查看service iptables status

启动,在三个节点上分别都要执行命令

  1. cd /usr/local/zk/bin
  2. zkServer.sh start

启动完了之后,在bin目录下多了一个zookeeper.out

  1. initLimit=10
  2. # The number of ticks that can pass between
  3. # sending a request and getting an acknowledgement
  4. syncLimit=5
  5. # the directory where the snapshot is stored.
  6. # do not use /tmp for storage, /tmp here is just
  7. # example sakes.
  8. dataDir=/usr/local/zookeeper-3.4.9/data
  9. dataLogDir=/usr/local/zookeeper-3.4.9/datalog
  10. # the port at which the clients will connect
  11. clientPort=2181
  12. server.1=hadoop1:2888:3888
  13. server.2=hadoop2:2888:3888
  14. server.3=hadoop3:2888:3888
  15. # the maximum number of client connections.
  16. # increase this if you need to handle more clients
  17. #maxClientCnxns=60
  18. #
  19. # Be sure to read the maintenance section of the
  20. # administrator guide before turning on autopurge.
  21. #
  22. # http://zookeeper.apache.org/doc/current/zookeeperAdmin.html#sc_maintenance
  23. #
  24. # The number of snapshots to retain in dataDir
  25. #autopurge.snapRetainCount=3
  26. # Purge task interval in hours
  27. # Set to "0" to disable auto purge feature
  28. autopurge.purgeInterval=5
  29. autopurge.snapRetainCount=20

autopurge.purgeInterval=5
autopurge.snapRetainCount=20
上面设置的参数表示:间隔5个小时清理一次,log文件保存20个,snapshot快照文件保存20个。若zookeeper启动时超过设置的文件时,就会执行删除文件的操作。

发表评论

表情:
评论列表 (有 0 条评论,459人围观)

还没有评论,来说两句吧...

相关阅读

    相关 zookeeper

    zookeeper集群搭建 环境为安装的3个centos7虚拟机 Zookeeper节点个数(奇数)为3个。Zookeeper默认对外提供服务的端口号2181 。Zooke